小学校の玄関にかざるあいさつロボットを作りました。
制作に際しては、
①児童がロボットの前を通ると動作する(イーオの人感センサー使用)
②サーボモーターを使って、人形の腕が動く
③音声で、挨拶をする。
④時間によって、挨拶の内容が変わる。
(例)朝・・・おはよう 昼・・・クイズ 夕方・・・さようなら
⑤NeoPixelを使って、装飾する。
これを、micro:bitとiːo(イーオ)などを使用して制作します。構成図です。
micro:bitは時刻用の部品が載っていません。今回は、時刻によって挨拶内容を変えたいので、RTC(時計)ユニットを使用しています。また、音声を使用するためにMP3プレーヤーを使用しました。
MP3プレーヤーの使用方法
シリアル通信を使って、micro:bitとMP3プレーヤーを通信させます。
micro:bit MP3プレーヤー
P1(TX) ----- TX
P2(RX) ----- RX
3vまたは5V ----- VCC
GND ----- GND
MakeCodeエディタの拡張機能から、DFPLAYERを検索して読み込みます。
音は、MicroSDカードにMP3形式で書き込みをします。
音は、スマホなどを使って録音することも可能ですし、音楽なども流せます。今回は、私のダミ声で言うよりも「VOICEBOXのずんだもんのかわいい声」を使って再生させました。
ファイルナンバーを入れると再生されるのですが、ファイル名を指定することはできないようです。あと、私がやった範囲では、フォルダー指定がうまく行きませんでした。ご存じの方がいらっしゃったら、教えてください。
RTCユニットの使用方法については、すでにブログに記載しておりますので、そちらをご覧ください。
NeoPixelとサーボモーターに関しても、3線(VCC、GND、データー線)を通して接続するだけです。
展示で使用するために、電池ではなく、USB(5V)を通してイーオ(裏面 電源ライン)に電源を供給しています。
プログラムに関しては、次のように
朝(8・9時台)・・・あいさつ3種類の音声
昼(10時~2時59分)・・・学校クイズ3種類
夕方(3時以降) ・・・さようならの3種類の音声
これをランダムに出力するようにしています。
イーオだと、拡張性も優れているので、これだけで音声・LED・時刻・サーボモーターなどを制御できます。
インターネットに接続できるとAIによる画像認識や音声認識が可能になるので、より高度なロボットの制作も可能になります。しかし、現状多くの学校では、このようなプログラミング用機器を校内のネットワークに接続することができないようです。今後、プログラミング教育を推し進めるためにも、プログラミング機材(ArduinoやRaspberryPiなどのマイクロコンピュータ機材も含めて)が校内のネットワークに接続できるようになってほしいとおもいます。