しゅうのマイクロマウス研修 キット製作研修

しゅうのマイクロマウス研修 – Pi:Co Classic 3編 Part 9

しゅうのマイクロマウス研修 - Pi:Co Classic 3編 Part 9 しゅうのマイクロマウス研修

こんにちは、しゅうです。

前回スラロームのシミュレーションなどを行いました。今回はスラロームを探索と最短経路走行に実装してみました。

スラローム

実装する注意点

割り込み処理でしっかりスラローム時と直線走行時で計算を切り替えること。左右それぞれのモータ用の加速度や速度変数が必要となってきます。僕はglob_var.hに色々と変数を書き足して行きました。

その他には、実装した最初の時点では、スラロームを行う関数にパラメータを直接入れていましたが、これらはパラメータ用のファイルにまとめておけばいいことに気づきました・・・その方が毎度値を設定せずにすみますからね。

実戦!

これで、実装を行ってみたところ下の動画のように無事スラローム探索と最短走行ができるようになりました!動画の前半は従来の超信地旋回を使った走行で後半がスラローム走行です。

Shu – Pi:Co Solving maze (with slalom)

探索スタートからゴール→スタート地点に戻って最短走行開始→ゴールの到達

までの時間を計測すると

・超信地旋回の時は55秒

・スラローム走行の時は39秒

というタイムでした。これが、実際の競技迷路の時だと四倍近い(4*4 → 16*16になるので)タイム差が出そうですね。ちなみに実際の大会だとスタートからゴールエリアに入ったところまでを計測するので(どちらも最短走行時)、

・超信地旋回の時は16秒

・スラローム走行の時は7秒

で、できています・・・圧倒的な差ですね!

まとめ

実は上の動画はたまたま(ギリギリ)成功した例です。半々の確率で壁に激突したり、上手にスラロームに切り替えることができていなかったりします。

というわけで今後のToDoとして!
– スラローム走行の安定化
– 斜め走行へのチャレンジ

があります。あとは、自分が好きなMacOSの方でも開発ができるように環境を整えたいですね・・・

次週から更新がゆっくりになっていくと思いますが、頑張っていきますので応援よろしくお願いいたします♪

タイトルとURLをコピーしました