ばねマスダンパ系について、古典制御と現代制御の各変数の相互関係とそれらの解析結果が一致することを示す。
ばねマスダンパ系の運動方程式は
\begin{align}
M \ddot{y}(t) + C \dot{y} (t) + ky (t) =u(t)
\end{align}
で与えられる。
まずこのシステムを古典制御の視点から解析する。微分方程式をラプラス変換をして整理すれば
\begin{align}
G(s)=\frac{Y(s)}{U(s)}=\frac{1}{Ms^2+Cs+k}
\end{align}
を得る。MATLAでは
s=tf('s');
M=1;
C=1;
k=1;
G=1/(M*s^2+C*s+k);
figure;
step(G)
grid on
次に現代制御の視点から解析する。初めに状態変数
\begin{align}
x_{1} (t) &=y(t) \\
x_{2} (t) &=\dot{y}(t)
\end{align}
を定義する。これらの定義から直ちに
\begin{align}
x_{2}(t) &=\dot{x}_{1}(t)
\end{align}
が得られるので代入すれば
\begin{align}
\dot{x}_{2}(t) &=\frac{1}{M} \left (- C x_{2}(t) – k x_{1}(t) + u(t) \right )
\end{align}
これより
\begin{align}
\frac{d}{dt}
\begin{bmatrix}
x_{1}(t) \\ x_{2}(t)
\end{bmatrix} &=
\begin{bmatrix}
0 & 1 \\
-\frac{k}{M} & -\frac{C}{M}
\end{bmatrix}
\begin{bmatrix}
x_1 \\ x_2
\end{bmatrix} +
\begin{bmatrix}
0 \\ \frac{1}{M}
\end{bmatrix} u(t) \\
y&= \begin{bmatrix}
1 & 0
\end{bmatrix}
\begin{bmatrix}
x_1 \\ x_2
\end{bmatrix}
\end{align}
を得る。MATLABでは
A=[0 1; -k/M -C/M];
B=[0; 1/M];
C=[1 0];
D=0;
Gs=ss(A,B,C,D);
figure;
step(Gs)
grid on
コード
s=tf('s');
M=1;
C=1;
k=1;
G=1/(M*s^2+C*s+k);
figure;
step(G)
grid on
A=[0 1; -k/M -C/M];
B=[0; 1/M];
C=[1 0];
D=0;
Gs=ss(A,B,C,D);
figure;
step(Gs)
grid on
コメント
[…] 前回の記事の続き […]