先日、「マイクロビットロボカー」をつくりました(記事は こちら)。
ふたつのモーターで動く車です。マイクロビットでモーターを制御することで、前進、後進、右折、左折など、自由に動かすことができます。
今回は、この「マイクロビットロボカー」を、iPhoneで操作してみようと思います。
- iPhoneの「micro:bit」アプリを使います。
- 「Gamepad」の「A」「B」「C」「D」ボタンで、ロボカーを「前進」「後進」「左回転」「右回転」させます。
- 「LEDs」で、マイクロビットのLEDに表示されているのと同じ内容を、iPhone画面にも表示させます。
リンク
最初にプログラムをつくります。
- MakeCodeエディタにて、「高度なブロック」>「拡張機能」で「bluetooth」を選択します。
- 「radio」と「bluetooth」は同時に使用できないというメッセージが表示されるので、「一部の拡張機能を削除してbluetoothを追加する」をクリックします。
- 追加された「Bluetooth」>「Bluetooth LEDサービス」を「最初だけ」に追加します。
- 「Gamepad」の操作内容を受信するには、「高度なブロック」>「制御」>「イベントが届いたとき 発生源 MES_DPAD_CONTROLLER_ID 値 MICROBIT_EVT_ANY」を使います。受信した値は「高度なブロック」>「制御」>「イベントの値」です。「A」「B」「C」「D」ボタンを押したとき、「イベントの値」は「1」「3」「5」「7」になります。
プログラム全体は以下のようになります。
つくったプログラムをマイクロビットに書き込み、ロボカーに差し込み、電源を入れておきます。
次に、iPhone側の準備をします。
- iPhoneで「micro:bit」アプリを開きます。
- 「Choose micro:bit」でiPhoneとマイクロビットのペアリングを行います。
- 「Monitor and Control」を開きます。
- 「Add」で「Gamepad」を画面に追加します。
- 「Add」で「LEDs」を画面に追加します。
- 「LEDs」画面左上の点々をタップし、「Monitor and set」を選択します。
いよいよ動かしてみます。
- 「Monitor and Control」画面で「Start」をタップします。
- 「Gamepad」の「A」「B」「C」「D」をタップすると、ロボカーが「前進」「後進」「左回転」「右回転」します。また、マイクロビットのLEDと「Monitor and Control」の「LEDs」画面に、進行方向にあわせた「矢印」が表示されます。