マインドストームでルンバ代替お掃除機を作成
2ヶ月ほど前、マインドストームを購入したところなんですが、「ロボット教材「教育版レゴ マインドストーム」最新版 無線LANなど新機能追加、国内では2013年9月発売予定」 って、なに?新しいバージョンがでるのでしょうか?もう少し待った方がよかったのかしら?
Wikipedia みると、「レゴマインドストームNXTセットは小売り版と教育用の2つのバージョンで出荷されている。」 との記述。
自分は、こっちを買ったんですけど、
教育用ってこっちのことか?違うのかな?こちらは、高いのでもしそうなら、レゴ マインドストーム NXT2.0 (英語版) 8547 購入で、良かった感じですが。。。
まぁ、よくわからんからいいや。
ということで、入門用で30分くらいで作成した戦車(?)みたいなやつにちょいちょい部品を付け足して、まずは、慣れるために、ルンバ対抗プロダクトをつくりたいと思います。
。。。ということで、試行錯誤の末、こんな感じに仕上げました。
両目みたいなやつは、距離センサー。シャコの手みたいなやつはタッチセンサーとなってます。
後ろの枠は、掃除用にクイックルワイパー 的なモノをとりつけるためのもの。
拡げるとこんな感じ。
で、肝心のプログラミングなんですが、、、、制御系のプログラミングは全くの畑違いで、どうすればいいのか皆目検討がつきません。
が、ここで書籍などにあたる前に、先ずは童心にかえって素直な気持ちでやってみよう!
ということで、いろいろプログラムくんではうごかして、うごかしてはプログラムかえてをしながら以下の図のような感じにしてみました。
全体を一つの大きなループに入れて、5分間処理をするように設定し、中に3つの処理分岐ブロックを起きました。
中の3つの処理分岐ブロックは、それぞれ、距離センサー、タッチセンサー× 2 によって処理を分岐します。
上段は、センサーが反応した場合、で下段は、センサーが効かない場合。
センサーが効かない場合は、エンドレスで前進するようにそれぞれの処理ブロックに書いてます。
同じ処理が複数個所にでてくること自体がすでになんかなぁな気がしないでもないですが、ここは遊びと割り切って気にしないで行きます。
で、左から、距離センサーは、障害物との距離が近づいたら、一旦バックして、方向転換させる。ということで、動作アイコン2つを並べてます。タッチセンサーは、左手がタッチしたら、右旋回、右手がタッチしたら左旋回させます。ということで、動作アイコン1つずつ。
と、簡単にかいてますけど、とくに説明書などを見ずにやってたので、そこそこ手こずりはしました。
が、かなりこれは直感的でわかりやすいインターフェースですね。すぐにある程度やりたいことはできる様になる気がします。
で、実際に、書斎を掃除させたのが以下となります。上図のようにブロックをならべていくつかプロパティを変更するだけで、ここまで(?)動きます。うーん面白い。
よし、次は何つくろうかな。