とりあえずフィードバック制御

「なんとなく」ではなく、「きちんと」動かすための古典制御に関する技術ブログを目指しています。開発言語は主にMATLAB/Octaveです。

 

むだ時間の離散化について

 

 


 今回は、むだ時間の伝達関数の離散化について書きたいと思います。特に、ここで取り上げる内容は、サンプリング時間未満の値をもつようなむだ時間の離散化です。つまり、むだ時間\(L\)、サンプリング時間\(T_s\)、\({\bf mod}(a, b)\)を\(a \div b\)の余りを示すとしたとき、

\begin{align*} {\bf mod}(L, T_s) \neq 0 \end{align*}

のような状況を指します。結果的には、パルス伝達関数の分子多項式に違いが現れます(サンプリング時間未満の値の影響は分子多項式で表現される)。

 

先ずは、離散化する伝達関数を次の一次遅れ+むだ時間系とします。重要な部分は、最初にむだ時間の端数と整数部を分けることです。

\begin{align} G(s) &= \frac{K}{1+Ts}e^{-Ls} \notag \\ &= \frac{K}{1+Ts}e^{-(dT_s + L_0)s} \label{eq:eq1} \\ &= \underline{\frac{K}{1+Ts}e^{(T_s - L_0)s}} \cdot e^{-(d + 1)T_ss} \label{eq:eq2} \end{align}

ここで、\(L\)の整数部は\(d={\bf floor}(L/T_s)\)、端数は\(L_0 = {\bf mod}(L, T_s)\)で表しました。(\ref{eq:eq1})のように分割できればもう9割方の計算は終了です。あとは、(\ref{eq:eq2})の下線部分を留数定理なりを使ったゼロ次ホールドによる離散化の計算結果と残りの整数部のむだ時間を合わせれば、

\begin{align} G(z^{-1}) = \underline{\frac{b_0 + b_1z^{-1}}{1 + a_1z^{-1}}} \cdot z^{-(d+1)} \label{eq:eq3}\end{align}

\begin{align*} a_1 = -e^{-\frac{T_s}{T}} \end{align*} \begin{align*} b_0 = K\{1 - e^{-\frac{T_s - L_0}{T}}\} \end{align*} \begin{align*} b_1 = K\{e^{-\frac{T_s - L_0}{T}} - e^{-\frac{T_s}{T}}\} \end{align*}

みたいな結果になります。むだ時間の端数を無視、あるいは端数がない場合は分子多項式の次数は0次(\( b_0 \)だけ)になり、冒頭で述べた通り、端数の影響は分子多項式に吸収される形で表現されます。

 

 以上で終わりになりますが、今回の離散化の計算過程は大幅に割愛(結構面倒くさい...)したので、時間があるときに改めて離散化(ゼロ次ホールド)をテーマに記事を投稿します。

 結局のところ、この厳密な離散化がむだ時間補償器の設計や数値シミュレーションの精度にどれぐらい寄与・貢献するかまでは調べたことがありませんが、必要に応じてこの結果を活用していきましょう。制御対象のモデルを作成する際に、扱う次数の選択も制御系設計の一つなので。

 ちなみに、(\ref{eq:eq3})の分子多項式において、次のような特性方程式を考えます。

\begin{align} b_0 + b_1z^{-1} = 0 \label{eq:eq4} \end{align}

(\ref{eq:eq4})の解は零点と呼ばれますが、零点がむだ時間の端数\(L_0\)の値次第で、

\begin{align} z &= -\frac{b_1}{b_0} \notag \\ &= -\frac{e^{-\frac{T_s - L_0}{T}} - e^{-\frac{T_s}{T}}}{1 - e^{-\frac{T_s - L_0}{T}}} > 1 \label{eq:eq5} \end{align}

を満たすとき、システム\(G(z^{-1})\)は不安定零点をもち、非最小位相系になります。よくディジタル制御を扱っている論文※1(やや古い?)に、

連続系の制御対象がたとえ不安定零点をもたなくても離散化した系が不安定零点をもつことがあり、ディジタル制御系設計の一つの大きな問題になっている。

みたいな一文をよく見かけます。あまり詳しく読み解いたことはありませんが、今回の記事の端数があるようなむだ時間の離散化は、不安定零点が現れる一例だと思います。離散化で意図せず非最小位相系になってしまったとき、先の次数選択の話が浮上してきます。端数を無視すること(離散化したモデルの分子多項式の次数を0次で設計)で、分子多項式には不安定零点は現れないようになります。

 

厳密な離散化にも欠点があったんですね。

 

※1・・・Properties of Zeros of Sampled Systems