当サイトは2020年小学生のプログラミング必修化に向けて、関連する情報を纏めています。サイトリニューアルしました。

Micro:bit(マイクロビット)で学ぶ スマホで戦車を動かしてみる 2/3

Micro:bit(マイクロビット)で学ぶ スマホで戦車を動かしてみる 2/3

 

前回は、テスト用プログラムでゲームパッドのボタンを押すと、ボタン名をMicro:bitに表示するところまで紹介しました。今回はMoto:bitという製品を使いテスト的に戦車を動かすまで紹介します。

1.Moto:bitとは

SparkFunという会社が製造して、日本ではスイッチサイエンスさんが取り扱われいるMicro:bitのロボット拡張用ボードです。このボードに直接Micro:bitが接続でき、2つのDCモーター、6つのセンサー、2つのサーボモーターなどが接続できます。電源は3V~11Vに対応しておりMicro:bit、モーターなどに電源供給してくれます。戦車に組み込むには少し大きいのですが、確実に動くはずなのでこれでテストし、最終的に独自のモーター制御回路にしていきたいと思います。以下、戦車の砲塔部分に実装したMicro:bitとMoto:bitです。
microbit_tank-33

2.Moto:bit用にテストプログラムを修正

 

A.Moto:bit用パッケージをMakecodeに読み込む
A.Moto:bit用パッケージをMakecodeに読み込む

A-1.Makecodeを立ち上げ、右上の歯車アイコンをクリックして表示されるメニューから『パッケージを追加する』を選択します。
microbit_tank-17

A-2.『パッケージを追加する』ウインドウが開くので、検索ワードとしてMoto:bitを入力して検索します。
microbit_tank-34

A-3.Moto:bitのパッケージが見つかりますので、選択します。
microbit_tank-35

A-4.Moto:bitのパッケージを追加されました。
microbit_tank-36

B.Moto:bit用にテスト用プログラムを修正
B.Moto:bit用にテスト用プログラムを修正

B-1.修正したプログラムは以下となります。次のステップで順に各ブロックの説明をしていきます。
microbit_tank-37

B-2.プログラムがスタートした事を示す為に、最初だけ『Test』とメッセージを表示します。
microbit_tank-25

B-3.ブルートゥースが接続された時は、急にモーターなどが動き出さないようP0デジタル出力をOFF(0)にして、ブルートゥースサービスを組み込み、接続完了を示す為に『C』とメッセージを表示します。
microbit_tank-38

B-4.Aボタンを前進、Bボタンを後進、Cボタンを左旋回、Dボタンを右旋回、4ボタンを停止としてプログラムしました。
microbit_tank-23

B-5.ボタンAでは、確認用のLED表示と左右のモーターを前進にします。出力は抑えて50%にしてあります。
microbit_tank-39

B-6.ボタンBでは、確認用のLED表示と左右のモーターを後進にします。
microbit_tank-40

B-7.ボタンCでは、確認用のLED表示と左のモーターを停止しています。
microbit_tank-41

B-8.ボタンDでは、確認用のLED表示と右のモーターを停止しています。
microbit_tank-42

B-9.ボタン4では、確認用のLED表示と左右のモーターを停止しています。
microbit_tank-43

B-10.ブルートゥースが切断されたら、全ての出力をオフにして、切断を示すDをLEDに表示します。
microbit_tank-44

B-11.完成したテスト用プログラムです。試してみたい方ダウンロードしてください。

3.Micro:bit とIpadでテスト

前回の記事では、Micro:bitとアンドロイドスマホをペアリングしてテストする方法を紹介しましたが、この記事ではIpadでテストしてみます。残念ながらゲームパッドはIpadでは有料アプリとなってしまいましたが、ペアリングとLED点灯などのテストは無料アプリで確認可能です。以下の3つのアプリをIpadに導入しました。そのアプリの使い方を紹介します。

nRF Connect:このアプリではIpadとMicro:bitをブルートゥースでペアリングでき、Micro:bitで動いているブルートゥースサービスが確認できます。
apple

Bitty Blue:このアプリは、アンドロイドアプリのMicro:bit Blueからゲームパッド機能を除いたアプリで、LED点灯やボタンなどのテストができます。
apple

bitty controller:ゲームパッドアプリです。このアプリのみ有料です。
apple

A.nRF Connect でペアリングする
A.nRF Connect でペアリングする

A-1.設定メニューからBluetoothを選択します。ブルートゥースデバイスが表示されますので、BBC Micro:bitをクリックします。もし、無ければ今までMicro:bitをペアリングしていないのでA-4へ。
microbit_tank-45

A-2.下の画面が表示されますので、『このデバイスの登録を解除』をタップします。
microbit_tank-46
A-3.下の画面が表示されますので、OKをタップします。
microbit_tank-47

A-4.Micro:bitを、AとBボタンを押しながらリセットボタンを押してペアリングモードにします。

A-5.nRF Connectアプリを立ち上げると、以下の様にペアリング可能なデバイスが表示されますので、Micro:bitの『CONNECT』をタップします。
microbit_tank-48a

A-6.以下の画面が表示されますので、ペアリングをタップします。
microbit_tank-49
A-7.以下の様に、ペアリングしたMicro:bitで動いているブルートゥースサービスが表示されます。これでペアリング完了です。Micro:bitに✔が表示されていますので、リセットしておきます。
microbit_tank-50

B.Bitty Blueで接続を確認
B.Bitty Blueで接続を確認

Micro:bitには、私が作成したプログラムがロード済みである前提の手順です。

B-1.Bittty Blueアプリを起動すると、以下の画面が表示されますので、SCANをタップします。
microbit_tank-51

B-2.ペアリングしたMicro:bitが表示されますので、Micro:bitをタップします。
microbit_tank-52

B-3.以下のメニューが表示されますので、『Display Control』をタップします。
microbit_tank-53

B-4.以下の画面が表示されます。Micro:bitにはブルートゥースで接続したということでCが表示されていますので、それがタブレットに表示されます。ここでグレーの■をクリックすると、そのLEDがMicro:bitで点灯します。次のステップは、全てのLEDを点灯させてみた例です。下にある『Send Text』ボタンをタップすると『Hello』がMicro:bitに表示されます。Helloは変更できます。
microbit_tank-55

B-5.タブレットで全てのLEDを赤くすると、Micro:bitのLEDが全点灯します。
microbit_tank-56

C.bitty controllerで戦車を動かす
C.bitty controllerで戦車を動かす

bitty controllerは2018/6現在、240円の有料アプリです。

C-1.Bittty Controllerを起動すると、以下の画面が表示されますので、Scanをタップします。
microbit_tank-57

C-2.ペアリングが完了していれば、下のようにMicro:bitが見つかりますので、見つかったMicro:bitをタップします。
microbit_tank-58

C-3.ゲームパッドが表示されます。これを使って次のステップで動かした映像を紹介します。
microbit_tank-59

C-4.以下の様に動かすことができました。動きが緩慢なのは電池が消耗気味のためです。また、基盤が大きいため、砲台部分に載せて電池は車体内に入れてあります。
Tank_move

戦車を動かす2回目の記事は以上です。次のステップでは、車体内に収まるモーター制御回路を作りたいと思います。プログラムもMoto:bitではなく、DI/DOの出力を制御する形に変更予定です。


最後まで記事をお読みいただきありがとうございます。
記事の改善に役立てたいと思いますので、よろしければアンケートにご協力ください。

記事内容についてお伺い


良く解る解る解りにくい部分がある解りにくい 


 

クロームブラウザーをご使用の方へ

当サイトへの訪問ありがとうございます。その際、グーグルクロームブラウザーをお使いの方にお知らせです。グーグルクロームブラウザーでは、2018年7月から、サイトにより以下の表示がブラウザーのアドレスバーに表示されます。当サイトでも表示されますが、心配ありませんのでご安心ください。
SSL案内1
これは、SSLと呼ばれるWebサイトとそのサイトを閲覧しているユーザとのやり取り(通信)を暗号化するための仕組みを使用していないためです。ネットショッピング、銀行サイトではパスワードやクレジットカードの情報を扱いますので、必須の仕組みです。当サイトでは、そのような情報を扱っておりませんので、暗号化は必須ではありませんが、訪問される方により安心していただけるように、SSL化を予定しております。このメッセージはSSL化完了まで念のため表示します。

マイクロビットカテゴリの最新記事