状況
走行体がどこを走っているか、走行体自身が把握していないとき。
問題
走行体がコースのどの部分を走っているか走行体自身が把握していないと、
難所ポイントに差し掛かった際、走行体がどのような駆動をすればよいか決定できない。
フォース
- ログを取ることが出来る
- 走行体にどの場所を走っているか、走行中に開発者が伝えることはできない
- コースの再現が出来ている
解決策
角度と距離、時間、ジャイロセンサーの値を利用して、走行体自身がコースのどこを走っているかを把握する。
具体的には、練習の走行の際に、各コーナーを曲がる角度と距離、時間を観測しておく。
その値と参照することで走行体の現在地を走行体自身が知ることができる。
また、障害物を検知する方法として、障害物が接触したときのジャイロセンサーの値を観測することで
ジャイロセンサーの値が変更されたタイミングと照らし合わせることにより、走行体が障害物を検知することができる。
事例
自己位置推定することで、難所ポイント手前でしっぽを収納することや様々な作戦の切り替えを行うことが出来た。
※切り替えの確認については
ログで状態確認を参照
ただし、
自己位置推定はあくまでも、観測の値にずれがない場合成功する。
よって、途中で若干のコースアウトや予期せぬ事態(他の障害物にあたる)ことがあると、
時間や角度の値が信用できないものとなる。この場合、値の変更によってガレージイン手前で停止するチームが続出した。
最終更新:2012年12月19日 17:24