MIRS2009 白線・ゴール通過動作 |
MIRS0901-SOFT-0006 |
版数 |
最終更新日 |
作成 |
承認 |
改訂記事 |
A01 |
2009/2/27 |
坂代 |
武藤 |
初版 |
1.目的
2.概要
3.まとめ
1 目的
本ドキュメントは、MIRS0901の白線・ゴール動作についてまとめたものである。
2 概要
今回の競技では、DBの手前に白線があり、ゴール地点には白い長方形領域があるため、それらを判別・区別しなければならない。
同時に、白線ではDBを真正面でとらえられるように補正をかける必要があり、ゴールではゴールしたことをアピールする動作を行う。
まず、白線とゴールを判別する必要がある。白線とゴールの違いは白い領域の長さであるので、白線センサーでそれを判別する。
MIRS0901には前方左右2箇所と中央1箇所に白線センサーが設置してあり、白線であるときは前方2つのセンサーのみが反応し、ゴールであるときは、
3つの白線センサーが全て反応するはずである。そのことを用いて白線とゴールを判別する。
以下に、白線・ゴール動作のフローチャートを示す。なお以下のフローチャートは、前方の白線センサーが反応した後の動作を示したものである。
また、ws1,ws2は前方左右の白線センサー、ws3は中央の白線センサーのことを指している。
fig.1
白線・ゴール通過動作のフローチャート
白線動作についての解説
白線は、DBが前方にあることを示しているので、白線を発見した場合、画像処理を行う。しかし、白線を発見していきなり画像処理を行っても、DBを真正面に捉えられているか分からない。
また、DBとMG3の距離も重要な要素であるため、それらをある程度調節しなくてはならない。
以下に、白線発見時の各種補正動作について示す
角度補正:電子コンパスを用いて行う。角度補正については、別ドキュメントにて同様の記述があるのでここでは省略する。
距離補正:白線センサーを用いて行う。MIRS0901には前方2箇所、中央1箇所に白線センサーがついている。前方2箇所のどちらかが反応した地点で画像処理を行う。
本来なら、白線を初めて検知した地点で画像処理を行えばいいと思うが、ゴール判別のために一定距離前進しなくてはならないのでそれができない。そこで、白線・ゴール判別を行った
後に、白線と判断したなら再び前方の白線センサーが反応するまで後退するといったことを行う。このようにして、DBとの距離をある程度一定に保つことを可能にしている。
なお、この動作はfig.1にも既に示してある。
以下に、白線発見時の一連の動作の例を示す。画像数の関係上、GIFアニメーションを用いることにする。
fig.2 白線動作の一例
3 まとめ
DBを読み取れないと競技がそこで止まってしまうので、白線動作は非常に重要な動作である。
また、ソフトウェアだけでなく、ハードウェアの面も、白線を認識でき、且つ白線以外を誤認識しないために、地面との距離や可変抵抗の調整などを行わないとならない。
環境が変わるたびに各種調整を行うことが重要である。
関連文書 |