先日、「マイクロビットロボカー」をつくりました(記事は こちら)。
ふたつのモーターで動く車です。マイクロビットでモーターを制御することで、前進、後進、右折、左折など、自由に動かすことができます。
今回は、マイクロビットをもう1台準備し、それを無線の送信機にすることで、「マイクロビットロボカー」を無線で操作してみようと思います。
- 無線送信機用のマイクロビットを準備します。こちらのマイクロビットには「MI:電源ボード」を取り付けておきます。
- 送信機の「A」「B」ボタンを同時に押したとき「前進」、「A」ボタンだけを押したとき「左回転」、「B」ボタンだけを押したとき「右回転」させます。
リンク
リンク
親機のプログラムは以下のとおりです。
現在のボタンの状態を「値」、直前のボタンの状態を「前の値」とします。「値」と「前の値」が異なるとき(何らかのボタン操作があったとき)に、無線で「値」を送信します。
「値」については、「A」「B」ボタンが同時に押されているときは「1」、「A」のみ押されているときは「5」、「B」のみ押されているときは「7」、どちらも押されていないときは「0」とします。
子機のプログラムは以下のとおりです。
無線で「値」を受信したときに、その「値」に応じてロボカーを動かします。
ロボカーを動かすための関数群(「前進」「右回り」など)は、基本動作のプログラムから変更ありません(基本動作のプログラムを流用しているため、関数「後進」が残っていますが、今回はこの関数は使いません)。
送信機、ロボカーともに電源を入れ、送信機のボタンを押すと、押したとおりにロボカーが動きます。
なお、私がマイクロビットの使い方を習得するのにあたっては、以下の書籍を参考にさせていただきました。
リンク
初心者向けから、比較的高度なものまで、さまざまな情報が記載されているだけでなく、子供向けの作例も多数掲載されていますので、「プログラミング教育」のための題材さがしなどにもおすすめです。
リンク