斜め走行

全日本に向けて斜め走行を実装してました。

さしあたって、まずは軌道を描くためのシミュレータを作成しました。
軌道を生成する方法にはクロソイド曲線等の方法が有るかと思いますが、何も考えず角速度が滑らかに変化するよう解析的に求めるように適当に作ってました。

作ったパターンは、旋回半径の小さいスラローム、旋回半径の大きいスラローム、45度ターン、135度ターン、180度ターン、斜め90度ターンの6パターンです。
マシン中央軌道を赤、タイヤ軌道をピンク、マシン横幅を灰色で示しています。





そしてこのシミュレータが計算したパラメータから、斜め走行実装を行いました。

そしてそして斜め走行の調整をすべく、中部地区11月月例会に参加したのですが、、、そもそも探索が上手くいかないという事態。壁切れ方法を大幅に改良したつもりが、逆にどうやら大改悪になっている模様。
予選突破したいがための斜め走行の実装に追われたせいで、完走すらできそうにないという危険な香りが漂ってきました。

それでも何とか探索できたので、斜め走行にトライ。

…上の動画は一番うまくいった場合を撮影しているので、実際はもっとボロボロでした。
結局全日本では斜めできそうにありません。
ジャイロ使っていないのも原因ですが、2番目のような失敗は必ず起きるというのは実は次の理由からあらかじめ想定されていました。

斜めの壁を避けるのに使う前センサをマシンの横幅いっぱいのところにつけるべきなのに内側に付いている。
これでは高い指向性を持つSFH4550で壁の存在を検出できる訳が有りません。本来なら赤色の枠で書いた位置に、若干外側に向けて設置した方が良いと思うのですが…。

時間があれば作りなおすのですが…残念ながら時間取れません。というかセンサ作りなおす時間は取れそうですが調整している時間が有りません。
予選突破したかったのですが、そもそも今回の月例の結果から考えるとどうもそんなこと言っていられないレベル。
何とか完走するために大会までにマップの保存方法や、探索中の補正について改良しようと思います。