2018年のコースはL/R共にゴール直後に急カーブがあって苦慮したチームが多かったと思います。
競技を見た範囲では以下のパターンが見られました。
- 最速で通過して減速しつつラインを外れてからコース復帰
- ゴール手前で減速
- 最速で通過して倒立とラインとレースを維持
「1.ラインを外れてからコース復帰」はコースに復帰できないリスクが高く、実際に戻れないチームも見られました。
「2.ゴール手前で減速」はタイムを競っているのにとても残念です。
東海地区大会ではLコースのゴール計測を担当していましたが、ゴールゲート寸前で不意に減速するので、
(来たぞ、来たぞ、来たぞ、、おお!おおぉぉぅぅうぉぉい!)となってしまいましたw
倒立走行を維持した急減速の方法
3.の倒立とライントレースを維持して急減速する方法について解説します。
倒立振子APIは現在位置の維持をフィードバック制御で行っています。
前進・後退処理は、forward値によって現在居るべき位置の更新をすることによって実現しています。
倒立振子APIのモデルやETRC_BalancePostar_masked.pdfの theta が含まれている変数の辺りが該当します。
倒立制御の設計思想は、 走行体がバランスしている近傍のみを考慮 ですので、急加速・急停止はできません。
forward値は強いローパスフィルター(LPF)によって穏やかに走行体位置へ反映されていきます。
ではどうするのか?2018年モデルの見た範囲では見つけられなかったのですが、過去モデルの立体難所攻略にあるようにジャイロオフセットを使用します。
forward値はどうがんばっても強いLPFによって反応してくれないのですが、倒立振子APIの仕事は倒立維持が最優先ですので、ジャイロオフセットには機敏に反応してくれます。
本当は安定倒立しているところに 倒れそうだよ! とウソの情報を送り込むイメージになります。
2018年プライマリークラスのゴール処理は次のように作りました。
一定時間ジャイロオフセットを変更する処理はジャイロセンサーのクラスに持たせているので、
オフセット量と時間を指定すれば、指定時間経過後に自動でオフセットを解除してくれます。
実際に走行確認を行った様子です。
ETロボコン2018 EV3way-ET開発機によるDP-Lコース攻略
最後に
ジャイロオフセットは倒立を維持するために機敏に反応してくれますが、前進・後退させるのはあくまでもforwardです。このバランスが崩れると結果的に破綻します。現在居るべき位置の変動を考慮して制御してあげてください。