車両制御 — 計画した軌道を正確になぞる
経路計画が描いた「理想の線」の上を、慣性も遅れもある実物の車体に走らせる — それが制御の仕事です。誤差を打ち消す PID、幾何で少し先を狙う Pure Pursuit、未来ごと最適化する MPC。3つの制御思想を、同じ「曲がる」課題の上で動かして比べます。
1. 制御は自動運転の「最後の1メートル」を受け持つ
認識 → 予測 → 計画 → 制御。パイプラインの最終段である制御器は、計画層が出力した参照軌道(位置・速度の列)を受け取り、ステアリング角・アクセル・ブレーキという物理的な操作量に変換します。上流がどれほど賢い軌道を描いても、それをなぞれなければ車は車線を外れます。
制御ループは通常 10〜100 Hz で回り、毎周期「いまの誤差」を測って操作量を更新します。難しさの源泉は、車がすぐには言うことを聞かないこと — 操舵には応答遅れがあり、タイヤの力には上限があり、乗員は急な加減速を嫌います。
2. 車両を2輪に潰す — 自転車モデル
制御則を設計するには、まず「ハンドルを切ると車がどう動くか」の数理モデルが要ります。低速域の定番が運動学的自転車モデル。左右のタイヤを1本にまとめ、前輪の舵角 δ とホイールベース L だけで旋回を記述します。前後輪それぞれの車軸に垂直な線を引くと1点 — 旋回中心 (ICR) — で交わり、車はその点を中心とした円弧上を走ります。
高速域ではタイヤの横すべり(スリップ角)が無視できなくなり、力学的自転車モデルやタイヤモデルに拡張しますが、「舵角 = 曲率の選択」という骨格は同じです。以降の3つの制御器は、いずれもこのモデルの上で「どの曲率を選ぶか」を決める方法だと読めます。
3. 誤差をフィードバックで消す — PID 制御
最も古典的で、いまも現場の至る所にいるのが PID 制御。車線中心からの横ずれ e を測り、その現在値(P)・累積値(I)・変化率(D)の重み付き和で操作量を決めます。
下の実験は、直線とカーブが混ざったコースを一定速度で走る車の車線維持。初期状態では車線から 2.2 m ずれた位置からスタートします。①まず Kp だけを上げてみてください — 中心に戻ろうとしては行き過ぎ、いつまでも振動します。②Kd を加えると行き過ぎる前にブレーキがかかり、振動が減衰。③横風をオンにすると、PD だけでは押し戻しきれず一定の残り偏差(定常偏差)が時系列グラフに現れます。④Ki を少し入れると、たまり続けた誤差の積分が風を打ち消し、偏差がゼロに戻ります。
4. 幾何で「少し先」を狙う — Pure Pursuit
PID は経路の形を知らず、いまの誤差しか見ません。Pure Pursuit(純追跡)は一歩進んで、経路上の少し先の点(注視点)を狙います。自車から距離 Ld(ルックアヘッド距離)だけ先にある経路上の点を選び、「いまの向きのまま、その点を通る円弧」を描いてその曲率で舵を切る — 毎周期これを繰り返すだけの、驚くほど単純な幾何制御です。
5. 未来を予測して最適化する — モデル予測制御 (MPC)
PID も Pure Pursuit も「アクチュエータの限界」「障害物」「乗り心地」といった制約や複数目的を明示的には扱えません。MPC(Model Predictive Control)は発想を変えます。車両モデルでホライズン(数秒先)までの挙動をシミュレーションできるのだから、毎周期こう解けばよい:
- いまの状態から、ホライズン先までの操作列の候補を多数考える
- 各候補の軌道をモデルで予測し、コスト(経路逸脱・障害物・急操舵…)を計算
- 最良の操作列を選ぶ — が、実行するのは最初の1歩だけ
- 次の周期で、新しい観測から全部やり直す
この「解いては1歩、解いては1歩」を receding horizon(後退ホライズン)と呼びます。予測が多少外れても毎周期作り直すので、フィードバックとしての頑健さも保たれます。
6. 3つの系譜と、現実の壁
| 手法 | 系譜 | 考え方 | 長所 | 短所 |
|---|---|---|---|---|
| PID | 誤差フィードバック | 偏差の P・I・D の重み和 | 単純・実績豊富・モデル不要 | 先読みなし。ゲインが速度域ごとに要調整 |
| Pure Pursuit | 幾何制御 | 注視点を通る円弧を追う | 頑健で滑らか、実装が軽い | Ld 調整が難所。コーナー内側をショートカット |
| Stanley | 幾何制御 | 前輪の横偏差+方位偏差 | 経路への収束が速い | 高速・雑音に敏感になりやすい |
| LQR | 最適制御 | 線形モデルで最適ゲインを解析的に導出 | 理論保証・計算が軽い | 制約(飽和・障害物)を扱えない |
| MPC | 最適制御 | ホライズン最適化+毎周期再計画 | 制約・多目的・先読みを明示的に扱える | 計算コスト大。モデル精度に依存 |
7. まとめ
- 制御=計画への追従。参照軌道と現実の車体のずれを、10〜100 Hz のループで潰し続ける。
- 自転車モデル:舵角 δ を選ぶことは曲率 1/R = tan δ / L を選ぶこと。すべての横方向制御の共通土台。
- PID:誤差の現在(P)・過去(I)・未来(D)。Kp だけでは振動、Kd で減衰、定常偏差は Ki が消す。
- Pure Pursuit:注視距離 Ld が「忠実さ ⇔ 滑らかさ」を握る。短=振動気味、長=ショートカット。
- MPC:ホライズン先まで最適化して1歩だけ実行、を繰り返す。ホライズンの長さが先読みの深さそのもの。
- 実車では遅延・飽和・モデル誤差が支配的。制御則の選択と同じくらい、その扱いが性能を決める。