連続直線への追従サンプル

何についての説明か

vuitls の pathUtils.h の直線追従の補助コマンドについての説明です。あらかじめ決められた直線経路を追従させたい場合に使うと便利。


次直線への乗り換え

ビーゴの走行系は目標の追従直線に対し、指定曲率rで追従しようとする。

to_line.png

現在追従中の直線Aと次に追従すべき直線B、追従時の曲率rが定められた場合、その追従経路は以下のように示すことができる。

update_timing.png

この図より、直線Aを走行していて直線Bに乗り換える場合、地点Pで直線Bへ追従するコマンドを発行すればよいことがわかる。つまり、あらかじめ追従したい経路を直線で表現することにより直線乗り換えのタイミングを制御できる。


サンプルプログラム

連続直線への追従をそれを実現する関数は, followLinesUpdate となる。それを用いてあらかじめ決められた連続直線への追従サンプルは以下の通り。今回のデモプログラム lines::cpp では、追従予定の直線を描画している。

lines_example.jpg

シミュレータによる実行結果


Generated on Mon Apr 13 22:52:06 2009 by  doxygen 1.5.7.1