mathjax

2018年12月28日金曜日

はじめての制御工学 講義01~講義06 を読む。

はじめての制御工学

先月第2版が発売になったようだが、以前にこの初版を読もうとして講義01での誤字の多さ、説明の文章の意味の通らなさなどなどから、訂正の為の自分の書き込みが膨大になってしまいこんなもの読めるかと放置していた。

個人的な趣味だが数式が美しくない本(組版が宜しくない本)というのは基本的に読みたくない。この本は美しくない本に分類されると思うが、LaTeXで書くかどうかが分かれ目なのだろうか?

しかし、先ほどまで読んでいた『演習で学ぶ基礎制御工学 新装版』が説明もなくという言葉を使い始め、内容が理解できずに読むことを断念せざるを得なくなったのだが、この本ではが索引にも登場し、説明されているように思われるため、ここまで『演習で学ぶ基礎制御工学 新装版』等で学んできたことの復習も兼ね初めから読み直してみることとする。


講義01


読み直してみても酷い事には変わりがない。以前の自分に知識が無かったからでは無く、日本語として破綻しているから訂正の書き込みだらけになったのだ。
講義01 制御とは ~微分方程式とのつながり~
1.1 位置,速度,加速度の関係
1.2 微分とは
1.3 微分方程式とは
1.4 指数関数の性質
1.5 制御とは
1.6 システムとモデル
1.7 手動制御と自動制御
1.8 フィードフォワード制御とフィードバック制御


1.1 速度は距離の時間微分であり、加速度は速度の時間微分である。書いていないが加速度は距離の2回微分であるとも言える。
$$\begin{array}{l}v=\displaystyle\lim_{\triangle t\rightarrow0}\displaystyle\frac{\triangle x}{\triangle t}\\a=\displaystyle\lim_{\triangle t\rightarrow0}\displaystyle\frac{\triangle v}{\triangle t}\\\end{array}$$

1.2 不思議なことに微分の説明を後から行っている。また本書の説明の仕方が自分には全く合わなかった。以前は新書だと侮っていたが、サイエンス・アイ新書の『マンガでわかる微分積分』が、数十年前に概念の理解もあいまいなままに習ってそのまま忘れ去っていた微分積分を「何となく分かる」レベルにしてくれた。微分が何なのか分かっている人は1.2を読まなくていいし、分からない人は1.2を読んでもきっとピンとこないので『マンガでわかる微分積分』を読むことをお勧めする。


ちなみに、高校では$'$をダッシュと読んでいたけれど、大学ではプライムになった。ちなみに最近は$\frac{dy}{dx}$を「でぃーわい、でぃーえっくす」と上から読むようだけれど、昔は「dx分のdy」のように読んでいたように思うが、最近はそれは間違いと言われているらしい。それでも自分は困らないし慣れないので昔憶えた通りで読んでいる。

$$f'(x)=\frac{dy}{dx}=\frac{df(x)}{dx}=\frac d{dx}f(x)=\displaystyle\lim_{h\rightarrow0}\displaystyle\frac{f(x+h)-f(x)}h$$

また微分をドットで表す表記もある。
$$\overset\cdot x(x)$$

1.3 ここに書かれている微分方程式の説明を読むと分かるものも分からなくなるので読まない方が良い。Wikipediaの説明を緩くするぐらいがちょうど良いと思う。

微分方程式は、ある関数とその導関数(高階導関数も含む)の関係式として書かれている関数方程式。その方程式を満たす関数を求めることを微分方程式を解くという。時間変数$y(t)$の微分方程式を解くと、"変数$y(t)$が具体的にどのように変化するのかが分かるようになる"。

微分方程式を解く実例として登場する式(1.6)に関して、これが変形分離形であるという説明があるがそんな説明は必要なのだろうか?制御に於いて何か意味がある言葉なのかと思えば、これは数学用語で微分の解法を説明するために書かれていることが分かった。説明の中での数式の扱いがスマートではない。

1.4 なぜこんなに説明が下手なのだろう?"本書では微分方程式を考える場合,底として$e$を用いる"とあるけれど、そうでは無く「制御で扱う微分方程式では、ネイピア数$e$を底とする指数関数が多く登場する」では無いのか?"数学の世界では$y=e^x$と書くことが多いが,工学の世界では$y(t)=e^t$と書くことが多い"じゃなくて、変数が時間だから$t$を使うということなのに。
$$e^0=1\\\frac{de^t}{dt}=e^t$$なので$$\frac{dy(t)}{dt}=y(t)$$
の$y(0)=1$の解は$y(t)=e^t$。ネイピア数$e=2.731828\cdots$なので、$e>1$から$y(t)=e^t$のグラフは図1.2のように$t$が大きくなるにつれて急速に大きくなる。また、工学の世界では時間が正のみを考えるのが殆どなので$t\geq0$の状況を考えればよい。

指数関数$y(t)=e^{at}$のグラフを$y(t)=e^{t}$のグラフとは別に$a$がマイナスの場合だけプロットしたものを載せているが、$a$がプラスの物も同時に載せた方がイメージがしやすいのではないかと思う。


1.5 ここの記載で素晴らしいなと思ったのは、制御の用語がJIS規格(JIS Z8116)で定められているらしいことが分かったこと。さすがは大学教授。適当な用語で書かれた書籍に悩まされたことがあったため、少なくともJISで定めた基準があるということを知りとても安心した。

1.6 システムの説明がとても苦しいように思う。でもシステムのモデル化の意味とかを説明しているのは良い。
"実際のシステムの動きをできるだけ正確に数式で表すことをシステムのモデル化と呼び,その数式をシステムの数学モデルと呼ぶ。"
(ちなみに本分は、太字と「」と()とを使い過ぎて文章が非常に読みにくい。)


講義02 システムの数学モデル


2.1 静的システム
"時刻$t$での入力の値$f(t)$だけで出力$x(t)$の値が決まるものを静的システム(static system)と呼ぶ"

2.2 動的システム
"動的システム(dynamic system)とは,入力と出力の関係式において変数を微分したものが含まれるシステムである"
静的システムと動的システムの説明がしてあるのは素晴らしいけれど、動的システムの説明微妙だろ、積分も含まれるだろ。動的システムの説明として適切なのはむしろ、
"動的システムは静的システムと違い,現在の出力の値が過去の入力の時間変化の影響を受けている"
の方だ。だからこそ
"システムである物体の入力と出力の関係が微分方程式で記述される"
のだろう。(厳密には積分微分方程式になるけれど。)

動的システムの機械系のモデル、電気系のモデル、機械系と電気系が混在する直流モーターのモデルの例を示しているのは、読者の理解に役立つと思う。


講義03 伝達関数の役割


3.1でラプラス変換を、3.2で伝達関数を説明しているが、ふんわり過ぎるし、伝達関数が何なのか表現できていないという点から、この本で学習は出来ない。但し、読者がこの説明の流れで理解できるかどうかは分からないものの、1次遅れ系(first order system)、2次遅れ系(second order system)に関しては、伝達関数の分母が$s$に関して1次多項式になる場合と、2次多項式になる場合であるとしっかり説明されているのは良い。それだとしても、伝達関数の理解に関しては森先生の力業『演習で学ぶ基礎制御工学 新装版』が避けられないだろう。

3.3は、なし崩し的な感じで、ブロック線図の説明になってゆく。だが、足し合わせや引き出しに白丸だ黒丸だ、+,-の記号を付けろ、などなど基本的な説明がちゃんとされているのは良い。森先生の本はこういう所が省略されている。

3.4のシステムのアナロジーの説明
"機械系のモデルでも電気系のモデルでも微分方程式が同じ形式であれば,伝達関数は同じ形式となることが分かる.このような性質を,機械系と電気系の類似(アナロジー:analygy)という"
"アナロジーの性質は非常に重要である.いいかえると,機械系の制御,電気電子系の制御ではなく,一般形としての制御工学があり,その中身を理解しておけばどのような種類のシステムでも関係なく,制御工学の知識が適用可能である."
この説明がされていることはとても良いと思う。制御工学の意義が分かる。



講義04 動的システムの応答


4.3でインパルス応答を微分方程式から求める方法が書かれている。微分方程式の入力信号の項にデルタ関数$\delta(t)$を代入して式を解くという言われてみれば当たり前だけれども、森先生の本では説明されていなかったものなので、参考になった。。。違う、最後はラプラス変換に持っていくのかと思ったら微分方程式を解いている。なるほど、4.4のラプラス変換で求める方法と4.3の微分方程式で求める方法で結論が同じことを示しているのか。


講義05


5.1

立ち上がり時間に関して、
"立ち上がり時間 $t_r$ は,応答 $y(t)$が初期値0から定常値 $y_\infty$ に向かう傾きを与える.つまり,立ち上がり時間 $t_r$ が小さければグラフの傾きは大きく,応答 $y(t)$はより早く定常値に向かい,またその逆も成り立つ."
とあるけれども、"その逆"とは何だ?立ち上がり時間 $t_r$ が大きければグラフの傾きが小さいということか?それとも立ち上がり時間 $t_r$ が大きければ、応答 $y(t)$が定常値に向かうのが遅いということか?それとも、応答 $y(t)$ が早く定常値に向かう為には立ち上がり時間 $t_r$ が小さいことが必要ということか?元の説明だけで十分それは分かること。なぜ",またその逆も成り立つ."という要らない言葉を付け加えるのか。

制定時間に関して、
"オーバーシュートが生じないシステムでは応答性が低ければ応答は遅く,制定時間も遅い(図5.2).また速応性が高くてもオーバーシュートが過大な場合は振動が収まりにくく,制定時間が遅い(図5.3)"
とあるけれども、"応答は遅く"ではなく「応答の変化は遅く」だと思うし、制定時間はともに"遅い"ではなく"長い"ではないのか?

5.2

もしかして、この本はインパルス応答やステップ応答は伝達関数にインパルス信号やステップ信号のラプラス変換を掛けることで得られることは説明しているけれど、明示的に伝達関数に入力信号のラプラス変換を掛けたものが応答だとは説明していない?p51の所で微妙に説明しているけれど、インパルス信号のラプラス変換が1だから、インパルス応答のラプラス変換が伝達関数そのものであることが明示されていないように思われる。
図5.4と図5.5を組み合わせたもの
(1次遅れ系$\frac K{Ts+1}$のインパルス応答とステップ応答

インパルス応答とステップ応答は対称な波形となるのに、なぜか図5.4と図5.5は描くTの値を変えていてそれを分かりにくくしている。それと、時定数 $T$ によって変化により時間がかかることはこの図で分かるけれども、インパルス応答に関しては、$K=T$ としたことで、時定数 $T$ が大きな時には初期のインパクトがそもそも小さいということが伝わなくなってしまっている。

5.2.1
1次遅れ系のインパルス応答について説明しているが、説明が非常に周りくどい。
$$G(s)=\frac b{s+a}=\frac K{Ts+1},\;\left(T=\frac1a>0,\;K=\frac ba>0\right)$$
という1次遅れ系のインパルス応答なので単純に逆ラプラス変換をすればよいので、
$$\mathcal{L}^{-1}\left[\frac{\displaystyle K}{\displaystyle Ts+1}\right]=\mathcal{L}^{-1}\left[\frac{\displaystyle\frac KT}{\displaystyle s+\frac1T}\right]=\frac KTe^{-\frac1Tt}$$
$T, K$ は共に正の値なので、初期値が $K/T$ で減衰しつつ0に近づく波形となるが、$T$が大きいほど収束が遅いことが分かる。

5.2.2
この本は式の展開で丁寧に説明しないといけないところと、どうでもいい所のバランスがおかしいように思う。○○はラプラス変換表の××を見たとか、変換できる形まで展開してあればその説明は要らないだろう。それなのに、部分分数分解の解法を4.6で通分して連立方程式を解く方式を説明して後は同じ方式で行うのだと説明している。森先生の本は、より簡単で計算ミスの少ないHeavisideの展開定理を使って部分分数分解を行っているし、登場した3つの演習全てで展開の過程を説明している。

5.3
この節のノリがもの凄く気持ち悪い。1次遅れ系の分母多項式の極が時定数を表していることを以て、より高次の分母多項式を持つ伝達関数に於いても曲がシステムの応答に影響を及ぼしていることを示そうとしているけれども、例えば1次遅れ系だとこうなるけれども、伝達関数の分母多項式の曲はシステムの応答に影響を及ぼすんですよという説明の方が良い。制御工学に於いては既知の事象であっても、より狭い範囲の例を以てそれを証明できるかのような表現は違和感を覚える。

何度読んでも5.3の回りくどい説明がウザい&キモい。

1次遅れ系のインパルス応答や単位ステップ応答で、時間に応じて値が変化するのは $e^{-\frac 1Tt}$ の部分でシステムの応答の特性が現れていると言えるが、これは$\mathcal{L}^{-1}[e^{-\frac1Tt}]=\frac1{s+1/T}$から生じる物なので、1次遅れ系のシステムの応答の特性は、伝達関数の分母多項式 $Ts+1=0$ の解が応答の特性を表していることになる。また、分母方程式=0の根を極(pole)と呼ぶ。

講義06以降で、伝達関数の分母多項式が2次式以上の場合にも極がシステムの応答に影響を及ぼしていることを示してゆく。

みたいな書き方が良いんじゃないか?

講義06


二次遅れ系の伝達関数の一般形、
$$G(s)=\frac{K\omega_n^2}{s^2+2\zeta\omega_ns+\omega_n^2}, (\zeta>0, \omega_n>0, K:定数)$$

$\zeta$(ゼータ)が登場する。不慣れな表記かもしれないからとp67の下の説明に"機械力学の分野では,$\omega_n$,$\zeta$は、それぞれ固有角周波数,減衰比と呼ばれている."と説明が有るのだが、だとしたら、どう読むのかも教えて欲しい。読み方が分からない記号が登場する数式と文章をそのまま読むのはかなり辛い。


6.1では2次遅れ系のインパルス応答を求めるのだが、伝達関数の極 $\alpha, \beta$ を2次方程式の解の公式から求めるべく、判別式を使って3つの場合に場合分けまでしておいて、最初の場合に於いて根を説明したと思ったら、それとは全く関係ない方法で、伝達関数を変形して逆ラプラス変換をしてインパルス応答を求める流れになっている。「何をしているんだせっかく根を求めたのに」とイライラして読んでいたのだが、読み進めて行って気が付いた。根が分かることとインパルス応答(=時間関数=逆ラプラス変換)が求まることには直接的な関連がない。

(更に、多分、恐らくだが、同じ伝達関数であっても、$\zeta$ の値によって、対応する時間関数が違う。ラプラス変換を学び直した時に気になって仕方なかった「sの範囲の条件」がこれに関連しているのではないかと思う。→いや、整理してゆくと時間関数の形は良く似て来たぞ。)

そして $\zeta>1$ の場合の逆ラプラス変換の計算は理解できる気がしないので理解しない(頑張れば理解できるのだろうが知りたくもない)。結果と意味するところだけ押さえればよい。


$0<\zeta<1$の場合
$$\begin{eqnarray*}\alpha,\beta&=&\color{red}-\zeta\omega_n\color{black}\pm j\color{blue}\sqrt{1-\zeta^2}\omega_n \tag{6.4}\\\color{black}y(t)&=&\frac{K\omega_n}{\sqrt{1-\zeta^2}}e^{\color{red}-\zeta\omega_n\color{black}t}\sin \color{blue}\sqrt{1-\zeta^2}\omega_nt \color{black}\tag{6.6}\end{eqnarray*}$$
$\zeta=1$の場合
$$\begin{eqnarray*}\alpha=\beta&=&\color{red}-\omega_n\\\color{black}y(t)&=&K\omega_n^2te^{\color{red}-\omega_n\color{black}t}\tag{6.8}\end{eqnarray*}$$
$\zeta>1$の場合
$$\begin{eqnarray*}\alpha,\beta&=&\color{red}-\zeta\omega_n\color{black}\pm \color{blue}\sqrt{\zeta^2-1}\omega_n \\\\y(t)&=&\frac{K\omega_n}{2\sqrt{\zeta^2-1}}\left\{e^{\left(-\zeta\omega_n+\sqrt{\zeta^2-1}\omega_n\right)t}-e^{\left(-\zeta\omega_n-\sqrt{\zeta^2-1}\omega_n\right)t}\right\}\tag{6.13}\\&=&\frac{K\omega_n}{2\sqrt{\zeta^2-1}}e^{-\zeta\omega_nt}\left(e^{\sqrt{\zeta^2-1}\omega_nt}-e^{-\sqrt{\zeta^2-1}\omega_nt}\right)\\&=&\frac{K\omega_n}{\sqrt{\zeta^2-1}}e^{\color{red}-\zeta\omega_n\color{black}t}\sinh {\color{blue}\sqrt{\zeta^2-1}\omega_nt}\end{eqnarray*}$$

6.1.2
$\zeta>0, \omega_n>0$ の場合を考えているので、上記3つのどの $\zeta$ の状態でも、指数関数の指数は負になり0に収束する。$0<\zeta<1$ を不足減衰(under-damping)と呼び、インパルス応答は振動しながら減衰する。$\zeta=1$を臨界減衰(critical damping)、$\zeta>1$を過減衰(over-damping)と呼び、どちらも振動せずに減衰するが、臨界減衰の方が早く収束する。また、$\omega_n$を大きくすると、振幅は大きく、0に収束するまでの時間は短くなる。





0 件のコメント:

コメントを投稿