このページは現在編集途上です

手っ取り早く感覚的に理解をしたい場合は、下記の参考文献が役に立ちます。

4 二輪車の制御理論

本章では、大学課程での力学を踏まえた詳細な解説として、2輪車の力学モデルを提示し、状態の数式化、制御則設計、安定性解析、そしてジャイロ効果に関する誤解の解消までを詳述します。

4.1 倒立振子モデルの数学的定式化

倒立振子は、角度 \( \theta \) の小さな動作範囲を考慮した線形近似モデルで表します。
そして、ROBOBIKE(以下車体と表す)について下記の設定(モデル化)を行います。

  • 前後方向の軸をロール軸(y軸)、上下方向をヨー軸(z軸)、左右方向の軸をピッチ軸(x軸)とする
  • は剛体である
  • すべての質量が重心位置に集中する
  • 前項に起因して、車体の慣性モーメントは無い


運動方程式は以下のように記述されます:

\[
I \cdot \ddot{\theta} = mgh \cdot \theta + u
\]

ここで、\( I \) は慣性モーメント、\( m \) は質量、\( g \) は重力加速度、\( h \) は重心の高さ、\( u \) は制御入力トルクを表します。

4.2 状態空間モデルの導出

状態変数を \( x = [\theta, \dot{\theta}]^T \) と定義すると、状態空間表現は以下のようになります:

\[
\begin{bmatrix}
\dot{\theta} \\
\ddot{\theta}
\end{bmatrix}
=
\begin{bmatrix}
0 & 1 \\
\frac{mgh}{I} & 0
\end{bmatrix}
\begin{bmatrix}
\theta \\
\dot{\theta}
\end{bmatrix}
+
\begin{bmatrix}
0 \\
\frac{1}{I}
\end{bmatrix}
u
\]

4.3 制御則設計

代表的な制御則として、状態フィードバック制御が挙げられます。制御入力 \( u \) を状態の線形結合として設計します:

\[
u = -Kx = -\begin{bmatrix} K_p & K_d \end{bmatrix}
\begin{bmatrix}
\theta \\
\dot{\theta}
\end{bmatrix}
\]

ここで、\( K_p \) は比例ゲイン、\( K_d \) は微分ゲインです。これにより、倒立振子の安定化を図ります。

また、PI制御の例としては:

\[
u(t) = -K_p \cdot \theta(t) - K_i \int_0^t \theta(\tau) \, d\tau
\]

があり、定常偏差の除去に寄与します。

  • 「ジャイロ効果で倒れない」は誤解であることを明言
  • 倒立振子モデルの導入(高校物理レベルの記法) [ I \cdot \frac{d^2\theta}{dt^2} = mgh \cdot \theta + u ]
  • 制御則の例(状態フィードバック、PI制御など) [ u(t) = -K_p \theta(t) - K_i \int_0^t \theta(\tau) , d\tau ]
  • ジャイロスコピックプリセッションが式に現れないことの確認

第5章 ROBOBIKEの制御実装と工夫

  • 実際の制御構成(RTOS、マルチタスク、I2Cセンサ)
  • 倒立制御の安定化のためのパラメータ調整
  • ソフトウェア設計のポイント(C言語、ESP-IDF)
  • 複数台走行時の制御同期や干渉対策