しろねこらぼ(旧)

しろねこの気まぐれ技術日記

制御偏差と定常偏差

フィードバック制御系において目標値が変化したり外乱が加わると制御量が変化する。制御量は出力とも呼ばれ、制御量と目標値の差は(制御)偏差と呼ばれる。
適切に設計されたフィードバック制御系であれば徐々に偏差は減少するが、定常状態となった後にも残っている場合がある。このような偏差を定常偏差という。
フィードバック制御系の偏差E(s)
\begin{align}
E(s)=\dfrac{R(s)}{1 + G(s)}
\end{align}
となる。定常偏差は
\begin{align}
e(t \to \infty ) = \lim_{t \to \infty} e(t) = \lim_{t \to 0} s E(s)
\end{align}
で与えられる。

pandasを使ったcsvファイルの読み込み

pandasを使ったcsvファイルの操作が思いのほか使いやすかったので残しておく。
pandasがインストールされている環境で

import pandas as pd
df = pd.read_csv('FILEPASS/FILENAME.csv',encoding = 'cp932',usecols=[2])
print(df)

とすればcsvファイルの2列目を読み込むことができる。
encoding = 'cp932'はエンコード方式の指定、usecols=[2]は読み込む列番号の指定をする。

print(df)は確認
コンソール画面に結果が表示される(はず)

二次遅れ系の過渡応答の極大極小値

前回二次遅れ系の伝達関数G(s)
\begin{align}
G(s)=\dfrac{\omega_{n}^2}{s^2 + 2 \zeta \omega_{n} s+ \omega_{n}^2}
\end{align}
についての行過ぎ量を求める式
\begin{align}
f(t) = 1 - (-1)^n e^{ -\zeta \dfrac{n \pi }{\sqrt{1-\zeta^2}} } \hspace{5mm} (n=0,1,2 \cdots)
\end{align}
を求めた。
まず二次遅れ系のインディシャル応答は
\begin{align}
f(t)=1-\dfrac{e^{- \zeta \omega_{n} t} }{\sqrt{1-\zeta^2}} \sin \left (\sqrt{1-\zeta^2} \omega_{n} t + \tan^{-1} \dfrac{\sqrt{1-\zeta^2}}{\zeta} \right )
\end{align}
ここで
\begin{align}
\omega = \sqrt{1-\zeta^2} \omega_{n} \hspace{5mm} \phi=\tan^{-1} \dfrac{\sqrt{1-\zeta^2}}{\zeta}
\end{align}
とすれば
\begin{align}
f(t)=1-\dfrac{e^{- \zeta \omega_{n} t} }{\sqrt{1-\zeta^2}} \sin \left ( \omega t + \phi \right )
\end{align}
と簡潔に表すことができた。また前回の結果から応答の極大極小値の座標は
\begin{align}
\left ( \dfrac{n \pi }{\sqrt{1-\zeta^2} \omega_{n}},1 - (-1)^n e^{ -\zeta \dfrac{n \pi }{\sqrt{1-\zeta^2}} } \right )
\end{align}
となることからグラフを書けば
f:id:sironekoblog:20201218150538j:plain
となる。グラフから明らかのようにn=1のとき極大、n=2のとき極小値をとる。

二次遅れ系のインディシャル応答と行過ぎ量

次のような二次遅れ系の伝達関数G(s)
\begin{align}
G(s)=\dfrac{\omega_{n}^2}{s^2 + 2 \zeta \omega_{n} s+ \omega_{n}^2}
\end{align}
について、不足振動となる\zeta < 1の行き過ぎ量を考える。
この場合の応答は
\begin{align}
y(t)=1-\dfrac{e^{- \zeta \omega_{n} t} }{\sqrt{1-\zeta^2}} \sin \left (\sqrt{1-\zeta^2} \omega_{n} t + \tan^{-1} \dfrac{\sqrt{1-\zeta^2}}{\zeta} \right )
\end{align}
ここで
\begin{align}
\omega = \sqrt{1-\zeta^2} \omega_{n} \hspace{5mm} \phi=\tan^{-1} \dfrac{\sqrt{1-\zeta^2}}{\zeta}
\end{align}
とすれば
\begin{align}
y(t)=1-\dfrac{e^{- \zeta \omega_{n} t} }{\sqrt{1-\zeta^2}} \sin \left ( \omega t + \phi \right )
\end{align}
と簡潔に表すことができる。
ここで行き過ぎ量は
\begin{align}
\frac{dy(t)}{dt}=0
\end{align}
で求めることができるから
\begin{align}
\frac{dy(t)}{dt}&=\dfrac{d}{dt} \left \{1-\dfrac{e^{- \zeta \omega_{n} t} }{\sqrt{1-\zeta^2}} \sin \left ( \omega t + \phi \right ) \right \} \\
&=- \left (- \zeta \omega_{n} \right ) \dfrac{e^{- \zeta \omega_{n} t} }{\sqrt{1-\zeta^2}} \sin \left ( \omega t + \phi \right ) -\dfrac{e^{- \zeta \omega_{n} t} }{\sqrt{1-\zeta^2}} \omega \cos \left ( \omega t + \phi \right )
\end{align}
ここで条件より
\begin{align}
\zeta \omega_{n} \dfrac{e^{- \zeta \omega_{n} t} }{\sqrt{1-\zeta^2}} \sin \left ( \omega t + \phi \right ) &=\dfrac{e^{- \zeta \omega_{n} t} }{\sqrt{1-\zeta^2}} \omega \cos \left ( \omega t + \phi \right ) \\
\zeta \omega_{n} \sin \left ( \omega t + \phi \right ) &= \omega \cos \left ( \omega t + \phi \right ) \\
\tan \left ( \omega t + \phi \right ) &= \dfrac{\omega}{\zeta \omega_{n} }
\end{align}
これより
\begin{align}
\tan \left ( \omega t + \tan^{-1} \dfrac{\sqrt{1-\zeta^2}}{\zeta} \right ) &= \dfrac{\sqrt{1-\zeta^{2}} }{\zeta}
\end{align}
ここで
\begin{align}
\omega t = n \pi \hspace{5mm} (n=0,1,2 \cdots)
\end{align}
であれば上式は成り立つ。定義より
\begin{align}
\sqrt{1 -\zeta^2}\omega_{n} t= n \pi \hspace{5mm} t = \dfrac{n \pi }{\sqrt{1-\zeta^2} \omega_{n}}
\end{align}
となるから
\begin{align}
f(t) = 1 - \dfrac{e^{-\zeta \dfrac{n \pi }{\sqrt{1-\zeta^2} }}} {\sqrt{1-\zeta^2}} \sin \left ( n \pi + \tan^{-1} \dfrac{\sqrt{1-\zeta^2}}{\zeta} \right )
\end{align}
加法定理
\begin{align}
\sin(a \pm b) = \sin a \cos b \pm \cos a \sin b
\end{align}
より
\begin{align}
f(t) &= 1 - \dfrac{e^{-\zeta \dfrac{n \pi }{\sqrt{1-\zeta^2} }}} {\sqrt{1-\zeta^2}} \left \{ \sin n \pi \cos \left( \tan^{-1} \dfrac{\sqrt{1-\zeta^2}}{\zeta} \right ) + \cos n \pi \sin \left( \tan^{-1} \dfrac{\sqrt{1-\zeta^2}}{\zeta} \right ) \right\}\\
&= 1 - (-1)^n e^{ -\zeta \dfrac{n \pi }{\sqrt{1-\zeta^2}} }
\end{align}
より行き過ぎ量を求める式を得る。

回転行列の固有値と固有ベクトル

x軸周りの回転を表す回転行列


\begin{align} \textbf{C}_{x}(\boldsymbol{η}) =
\begin{pmatrix}
1 & 0 & 0\\
0 & \cos \phi & \sin \phi \\
0 & -\sin \phi & \cos \phi
\end{pmatrix}
\end{align}
固有値

\begin{align}
\begin{vmatrix}
t-1 & 0 & 0\\
0 & t-\cos \phi & -\sin \phi \\
0 & \sin \phi & t-\cos \phi
\end{vmatrix}=0
\end{align}
より
\begin{align}
(t-1)(t^2-2 \cos \theta t +1) = 0
\end{align}
実数の固有値t=1となる。
t=1のとき
\begin{align}
\begin{pmatrix}
0 & 0 & 0\\
0 & 1-\cos \phi & -\sin \phi \\
0 & \sin \phi & 1-\cos \phi
\end{pmatrix}
\begin{pmatrix}
x \\ y \\ z
\end{pmatrix} = 0
\end{align}
より、これを満たすベクトルは
\begin{align}
(x,y,z)=(1,0,0)
\end{align}
となり回転軸と等しくなる。

RLC直列回路の共振周波数

RLC直列回路の共振周波数を求める。RLC直列回路のインピーダンスz
\begin{align}
Z=R+j \left ( \omega L - \frac{1}{\omega C} \right )
\end{align}
共振の条件は\Im [Z= 0]より
\begin{align}
\omega L - \frac{1}{\omega C} & = 0\\
\omega^2 L C &= 1
\end{align}
\omega=2\pi fより
\begin{align}
f=\frac{1}{2 \pi \sqrt{LC}}
\end{align}
となる。このときの周波数ff_{0}と表し、共振周波数という。

最終値の定理

時間関数x(t)について、t=\inftyの値をラプラス変換により得られた結果X(s)より直接求める場合最終値の定理を用いると便利である。
\begin{align}
\int_{0}^{\infty} \dfrac{dx(t)}{dt} e^{-st} dt = sX(s) - x(0)
\end{align}
左辺について次のような極限
\begin{align}
\lim_{s \to 0} \int_{0}^{\infty} \dfrac{dx(t)}{dt} e^{-st} dt = \int_{0}^{\infty} \dfrac{dx(t)}{dt} dt
\end{align}
これより
\begin{align}
\lim_{\textit{τ} \to \infty} \int_{0}^{\textit{τ}} \dfrac{dx(t)}{dt} dt = \lim_{\textit{τ}\to \infty} x(\textit{τ}) - x(0)
\end{align}
また、上式の左辺は
\begin{align}
\lim_{s \to 0} \int_{0}^{\infty} \dfrac{dx(t)}{dt} e^{-st} dt = \lim_{s \to 0} sX(s) - x(0)
\end{align}
これより比較すれば
\begin{align}
\lim_{s \to 0} sX(s) = \lim_{ t \to \infty} x(t)
\end{align}
を得る。この結果を最終値の定理という。

初期値の定理

時間関数x(t)について、t=0の値をラプラス変換により得られた結果X(s)より直接求める場合初期値の定理を用いると便利である。
\begin{align}
\int_{0}^{\infty} \dfrac{dx(t)}{dt} e^{-st} dt = sX(s) - x(0)
\end{align}
両辺の極限をとって
\begin{align}
\lim_{s \to \infty} \int_{0}^{\infty} \dfrac{dx(t)}{dt} e^{-st} dt =\lim_{s \to \infty} \left \{ sX(s) - x(0) \right \}
\end{align}
ここで左辺は明らかに
\begin{align}
\lim_{s \to \infty} \int_{0}^{\infty} \dfrac{dx(t)}{dt} e^{-st} dt =0
\end{align}
より
\begin{align}
\lim_{s \to \infty} \left \{ sX(s) - x(0) \right \} = 0
\end{align}
これより
\begin{align}
\lim_{s \to \infty} sX(s) = \lim_{t \to 0} x(t)
\end{align}
を得る。この結果を初期値の定理という。