こんにちは、ナチュロボです。レゴマインドストーム、13記事目でございます。前回が本の「7. the WallFollower program: navigating a maze」の内容の前半、壁伝いに直進するプログラムでございました。
今回もその続きで、角を曲がれるようなプログラムを追加していきます。直線と角をクリアーできれば、シンプルな迷路は攻略できるはず…!
それでは、どうぞ。
プログラムへブロックを追加。タブビュー機能を使いました
前回のプログラムに、ブロックを追加する形になります。
しかし、ループブロックの中にスイッチブロックを入れている、ということまでは教科書でわかったものの、掲載されている図となんか違う…?ことが気になっておりました。
このスイッチブロック、右側に二つの線があって、それぞれ「✓」(条件満足)、「×」(条件不満足)のどちらかに分岐するようにしています。
いじってみたところなんと、「タブビュー」なる機能を使って見え方をシンプルにできたではございませんか。
位置は、ブロック左上の「□■」的なところ(うまく表現できずすみません汗)をクリックするだけでございました。押してみると…
おぉ、見え方がずいぶんスッキリしました。「✓」、「×」のタブを押すことで、表示されるブロックを切り替えることができます。便利!
プログラム完成!角をうまく回転できるでしょうか
ということでタブビュー機能を使いながら、プログラムを作成完了しました。
直線のブロックのプログラムから、ブロックを4つ(スイッチ、停止、ステアリングを2つ)追加しただけですね。
タッチセンサが反応したら、モーターを停止し、そのままバック、そして左回転、という動作を加えております。
若干前回のプログラムからパラメータを微調整しながらも、次の3パターンについて、回転動作がうまくいくか、実験してみました。
シンプルな四角
カクカク階段
袋小路脱出
最後の袋小路脱出テストは、迷路脱出とほぼ同様の難易度ですよね!あくまで試行錯誤を何度か重ねた結果ではございますが、なんとかうまくいきました。
動画でその様子を記録していますので、ぜひチェックしてくださいね。
いかがでしたでしょうか。実は、最初の四角は一発でうまく回れたのですが、次の階段、袋小路脱出テストはいろいろと調整が必要でした。
調整前は、左回転が一回ではうまくいかなかったり、回転中にロボットが壁にぶつかったり…。パラメータを変えたり、ロボットのケーブルを縮めたりして、なんとかかんとかうまくいったのです…!
なるほど、こういった躓きから新しい気づきを得る…!ことも楽しいですね~。
今日の感想
以上、迷宮を脱出するための角回転攻略プログラムと、実験の様子をお伝えしました。
調整がいろいろと発生したものの、最終的には今回の実験はうまくいきまして、ホッとしました~。
さて、次は迷路脱出最終編、段ボール迷路を作成して、実験してみました!
それでは、また!
ナチュロボより