microbitを使って物理コントローラをつくろう!(micro:bit More)
今回の記事では、拡張機能のなかでもmicrobitの様々な機能と連携できる「micro:bit More」を使ってみます。
micro:bit Moreは、Scratchに付属するmicro:bit拡張よりも高機能で、micro:bitに備わっているセンサーや出力の機能をほぼすべて利用できます。この拡張機能は、@yengawa_labさまが作成された機能を利用させて頂いております。
@yengawa_labさまの開発する拡張機能についての詳細は、下記を御覧ください。
https://lab.yengawa.com/project/microbit-more-v2/
こちらも大変魅力的な拡張機能を利用させていただき、ユカイ工学一同、まことに感謝しております。
今回は、こちらの拡張機能をつかって生きものロボットを操作する物理コントローラを作成してみましょう。
この記事ではこんなことができます。
これまでの記事と比べ手順が多いですが、順番に説明しますのでご安心ください。
用意するもの
・動かしたい生きものロボット(ココロキット内蔵)
・ScratchおよびScratch linkが実行可能なwindows/mac PC
・microbit本体
・microbit物理コントローラキット:joystick:bit
microbitとは?
お手頃な価格でセンサがたくさん内蔵されたマイコンボードです。ココロキットと並んで、はじめてのプログラミングや電子工作におすすめのボードですのでぜひチェックしてみてください。Scratchからもmicrobitのプログラミングを体験することができます。
Scratch linkをPCにインストールする
microbitとお使いのPC上のScratchを連携させるために、Scratch linkという外部アプリケーションをインストールします。Scratch linkを使うとココロキット以外の様々なBluetoothを利用したロボットキットとScratchを接続することができます。
インストールの詳細手順は、こちらのリンク先を参照してください。
Scratch linkを起動します
Scratch linkをインストールすることができたら、アプリケーションを起動します。さらに、ツールバーを確認して起動していることを確かめてください。下記は、window/macそれぞれの起動確認の様子です。
microbitに必要なファイルを書き込みます
Scratch linkと接続するためのマイクロコントローラのプログラムを書き込みます。手順は簡単です。
まず、下記の microbit-mbit-more-v2-0_2_0.hexというファイルをPCにダウンロードしてください。(このファイルはこちらのリンク先からも取得できます。)
つぎに、microbitとPCをmicroUSBケーブルを使って接続します。
ケーブルを接続すると、PCはUSBメモリのようにmicrobitを認識します。そこに、さきほどダウンロードしたファイルをドラッグ&ドロップすると準備は完了です。
拡張機能をロードします
つぎにココロキットやmicro:bit Moreの拡張機能を利用するために、kurikitのScratchをGoogle Chromeで開きます。
左下の拡張機能を追加ボタンから、「ココロキット」と「micro:bit More」をロードします。micro:bit Moreをロードするといつも見ない画面になりますが、こちらは接続のための画面です。
microbitと接続する
上の手順でScratch linkが正しく起動して、ファイルが書き込まれたmicrobitに電源が入っていると、下のようにデバイスが表示されます。接続ボタンをクリックするとBluetoothで無線接続します。
接続が完了すると上のような画面になるので、エディターへ行くボタンをクリックします。この接続の画面は、micro:bit Moreのブロックの右上のボタンをクリックすると、開くことができます。
microbitにHelloWorldを表示しよう
さあ、プログラムを作るための準備が整いました。microbitのディスプレイにHelloworldを表示してみましょう。
microbit本体のボタン入力を取得するプログラムを作ろう
つぎに、microbit本体に取り付けられているボタンの入力をScratchから取得するプログラムを作りましょう。プログラムはこちらになります。
はい、簡単ですね!
microbitのコントローラ拡張キットを使ってみよう
今回は、生きものロボットを動かす物理コントローラということでジョイスティックを利用したいので、joystick:bitというmicrobitの拡張キットを利用します。
microbitをソケットに差し込み、電池を入れて電源をオンにします。(LEDが点灯します)続いて、上で説明した手順でScratchと接続しましょう。
ジョイスティックの値を調べよう
つぎにジョイスティックの値の調べ方を説明します。今回用いるjoystick:bitという拡張キットのそれぞれのスティックの位置は、ピン0と1のアナログレベルを調べることで取得できます。
アナログレベルについては、この記事では詳しく解説しませんが、スティックの位置が、0〜1024の値で出力されるようなものと考えておいてください。
ためしに、x軸の位置を表示するプログラムを作ってみましょう。プログラムはこちらです。スティックの位置に応じて値が変化することが確認できます。
物理コントローラのプログラムを作成しよう
ここまででスティックの値を取得する方法を説明しました。次に、その値に応じてロボットを動かしましょう。シンプルにするために、下記のアルゴリズムでロボットを動かします。
プログラムはこちらになります。
動かしてみよう
ココロキットと接続してプログラムを実行します。
今回は、microbitを使った物理コントローラを作る方法を学びました。
少しこれまでの記事と比べて手順が多かったですが、microbitと連携させるとセンサ等も使うことができるのでぜひ試してみてください。
今回の記事のプログラムはこちらからダウンロードできます。
これを作ってくれたら、ハッシュタグ#kurikitをつけて見せてもらえると嬉しいです!
この記事が気に入ったらサポートをしてみませんか?