embot WOW!

2020.10.27

【embotでプログラミングを学ぼう⑤】時刻や位置をプログラムの材料にする:解説編

– 【embotレベル】3
– 【プログラムの技】タブレットの情報を使う
– 【主に使うプログラム】タブレット(時刻、方角、位置、ジャイロ)

embotのプログラミングでは、タブレットの時刻や方角などに応じて動くプログラムを作ることができます。「レベル3」から使える新しい技を覚えましょう。

タブレットの情報をプログラムに使う

embotのプログラミングに使うタブレットは、時刻や位置などさまざまな情報を持ってます。embotのプログラミングアプリで「レベル3」以上を選ぶと、これらの情報をプログラムの材料として使うことができます。使える情報は次の4つです。

・時刻[時、分、秒]
・方角[方位]
・位置[緯度、経度]
・ジャイロ(傾き)[X、Y、Z]

embotでタブレットの情報をチェック

まず、embotのプログラミングアプリで、「時刻」「方角」「位置」「ジャイロ(傾き)」がどこに表示されるのかを確認しましょう。「レベル3」に設定して、新しいプログラムを作成します。

フローチャートの画面が表示されたら、右側の「info」エリアの[タブレット]ボタンをタップしてください。次の図の通り、たくさんのアイコンが表示されます。

アイコンの形が何の情報かを示しています。アイコンをタップすれば、その値が表示されます。

タブレットの向きを変えたり、タブレットを持って歩き回ったりしながら何度もアイコンをタップしてみてください。値が変わることがわかります。

それぞれの情報がどんなルールで数値で表現されているのかを紹介します。

<時刻>
現在の時刻を数字で示します。
[時]0~23
[分]0~59
[秒]0~59

<方角>
タブレットの画面上部が向いている方位を数字で示します。
北を基準に1周360°の角度に置き換えて数字で表されます。タブレットの向きに注意してください。
[方位]0(=360)~359

<位置>
タブレットがある位置を「緯度」「経度」で示します。
「緯度」と「経度」は、地球上のどこにいるかを示す数値で、「緯度」が南北の位置、「経度」が東西の位置を表します。
世界地図で使われるような数値ですから、緯度や経度が1°変わるには、ものすごく長い距離を移動しなければなりません。embotでは、短い距離で数値を変化させるために、小数点以下13桁で表します。
[緯度]x.xxxxxxxxxxxxx
[経度]x.xxxxxxxxxxxxx

<ジャイロ(傾き)>
タブレット本体の傾きを、X軸、Y軸、Z軸を基準に数字で示します。
各軸の数値の表し方は次の図の通りです。
[X]-90~90
[Y]-90~90
[Z]0~359

「ジャイロ(傾き)」の情報を使うときは、アプリを表示したときのタブレットの向きを図と同じように、下部が右側に来るようにしてください。画面の向きが切り替わるタブレットを使っている場合は向きをロックしておきましょう。

embotでプログラムしてみよう

タブレットの情報の見方や数値化の法則が確認できたので、実際にプログラムの材料に使ってみましょう。

フローチャートの画面で[start][function][end]のブロックを1個ずつ置いてつなぎます。[function]をタップしてプログラムを編集します。

ライトをつけるプログラムを作ります。[ライト1をつける][○秒待つ][ライト1をけす]ブロックを順に置きます。

[○秒待つ]ブロックの「○」には数字を入れられます。ここに数字を入力する代わりに、右側の「infoエリア」から「時(H)」のアイコンをドラッグして入れてください。

「時(H)」のアイコンが[○秒待つ]ブロックに入りました。タブレットの情報をプログラムの材料に使う時は、このように、使いたい情報のアイコンをプログラムに組み込んでおきます。

アイコンは数字の入れ物になっていて、プログラムを実行するたびに、タブレットの情報から値が入ります。

例えば、
・8時2分47秒にプログラムを実行すると、「8」時なので[8秒待つ]になる
・10時35分6秒にプログラムを実行すると、「10」時なので[10秒待つ]になる
というわけです。

フローチャートの画面に戻ってプログラムを実行してみてください。プログラムを実行した際の「時」の数値が、ライトがつく秒数になっていることが確認できます。

もどる

アプリは、embotを購入されていなくても、
お試しいただけます。