前の記事はこちら RoboCupJunior Rescue New Simulation GPSによる迷路探索
自分のPythonの勉強も兼ねて、ちまちまと RoboCupJunior Rescue New Simulation のプログラム作りを楽しんでいます。
前回は・・・GPSを使った迷路探索ができるようになりました。
これは、距離センサーを使って壁との距離を測りながら進まなくても、(GPSを使えば)単純にロボットの絶対座標がわかるので、それを使って進む、というものでした。
普通の迷路探索であれば、これで終わりなのですが・・・
迷路上には障害が置かれています。
だから、いつも「経路の真ん中を進む」では、障害物にぶつかって先に進めないかもしれません。
ということで、やっぱり距離センサーを使って、障害物を(検知して)回避することが必要になります。
ロボットの左前、右前の距離を測りながら進んで、障害物があって通路が狭くなっているところは、その狭いところをすり抜けるように進みます。
動画はこちら
RoboCupJunior Rescue New Simulation(DEMO) sample robot-8
動画の 0:43 と 2:12 あたりで、綺麗に障害物をよけて進んでいます。
ところで、なぜ上の動画は最新バージョンのプラットフォームでないのか・・・ですが・・・(Erebus-v21_1_2)
最新版(Erebus-v21_2_0)で、同じプログラムを実行してみたのがこちら
RoboCupJunior Rescue New Simulation(DEMO) sample robot-9
こちらも、動画の 0.43 あたりで障害物をよけますが・・・なんだかぎこちないです。
さらに・・・ 2:05 あたりで、障害物の影響で多少経路が曲がるハズなのですが、全然曲がらず・・・その先で、うまく障害物をよけられずに、(障害物に)ぶつかって動かなくなってしまいます。
(仕方がないので、「Give Up」です。)
プログラムが悪いと言われれば、そうなのかもしれませんが・・・やっぱりプラットフォームのデグレなんじゃないかと・・・(笑)