度にする. モータを回してロボットを 10 m だけ前に走らせる. 右腕でボールをまっすぐ投げる. Tokyo Tech, the Society for the Study of Robotics, 2019 Classical Control Theory Seminar, the 1st Class 4 / 45
「入力を適切に操作して,望ましい出力を得よう」 というのが制御の基本的な考え方である. Tokyo Tech, the Society for the Study of Robotics, 2019 Classical Control Theory Seminar, the 1st Class 5 / 45
制御則を選ぶ: システムの特性や,実現したい挙動から選ぶ 古典制御論? 現代制御論? 3. 適切な制御器を設計する 時定数は? ロバスト性(モデル化誤差への強さ)は? Tokyo Tech, the Society for the Study of Robotics, 2019 Classical Control Theory Seminar, the 1st Class 6 / 45
力学系の挙動は多くの場合, 時間 t に関する微分方程式にて記述可能である. 12 1もちろん,微分方程式で表現されないものもある 2熱伝導など,空間に関する微分を含むものもあるが,今回は考えない Tokyo Tech, the Society for the Study of Robotics, 2019 Classical Control Theory Seminar, the 1st Class 8 / 45
0 f(t)e−stdt が収束するとき,f(t) のラプラス変換として定義する. F(s) = ∞ 0 f(t)e−stdt 簡単のため,以降ではラプラス演算子 L を用いて, F(s) = L[f(t)] のように書くことにする. Tokyo Tech, the Society for the Study of Robotics, 2019 Classical Control Theory Seminar, the 1st Class 9 / 45
= L[g(t)],a と b は実数. 1. 線形性: L[af(t) + bg(t)] = aF(s) + bG(s) 2. 時間微分はおよそ s の乗算に相当: L df dt = sF(s) − f(0) L dnf dtn = snF(s)−sn−1f(0)−sn−2 df dt t=0 −· · · − dn−1f dtn−1 t=0 3. 時間積分は 1 s の乗算に相当: L t 0 f(τ)dτ = 1 s F(s) Tokyo Tech, the Society for the Study of Robotics, 2019 Classical Control Theory Seminar, the 1st Class 10 / 45
L[f(at)] = 1 a F s a 5. s 領域で推移: L[eatf(t)] = F(s − a) 6. t 領域で推移: L[f(t − a)] = e−asF(s) ただし,0 < t < a において f(t − a) = 0 Tokyo Tech, the Society for the Study of Robotics, 2019 Classical Control Theory Seminar, the 1st Class 11 / 45
7. 初期値定理: lim t→0 f(t) = lim s→∞ sF(s) 8. 最終値定理: lim t→∞ f(t) = lim s→0 sF(s) 9. 合成積(畳み込み積分) : L t 0 f(t − τ)g(τ)dτ = F(s)G(s) Tokyo Tech, the Society for the Study of Robotics, 2019 Classical Control Theory Seminar, the 1st Class 12 / 45
f(t) = 1 2πj c+j∞ c−j∞ F(s)estds により計算される. ラプラス演算子 L を用いると, f(t) = L−1[F(s)] のように表される. Tokyo Tech, the Society for the Study of Robotics, 2019 Classical Control Theory Seminar, the 1st Class 13 / 45
像関数 F δ(t) 1 sin ωt ω s2+ω2 us (t) 1 s cos ωt s s2+ω2 t 1 s2 e−at sin ωt ω (s+a)2+ω2 tn n! 1 sn+1 e−at cos ωt s+a (s+a)2+ω2 e−at 1 s+a te−at 1 (s+a)2 Tokyo Tech, the Society for the Study of Robotics, 2019 Classical Control Theory Seminar, the 1st Class 14 / 45
とする. ここで,y(0) = ˙ y(0) = · · · = y(n)(0) = 0 を仮定する. 注目するシステム(系)が,ある関数 G(s) を用いて Y (s) = G(s)U(s) の形で表現できるとき, G(s) をこのシステムの伝達関数3と呼ぶ. 逆に,伝達関数は次のように与えられる. G(s) = Y (s) U(s) 3今回の場合,厳密には「入力から出力までの伝達関数」と呼ぶ Tokyo Tech, the Society for the Study of Robotics, 2019 Classical Control Theory Seminar, the 1st Class 16 / 45
+ f m は質量,k はバネ定数,c は粘性摩擦係数である. このシステムの出力を位置座標 x,入力を外力 f とする. 両辺をラプラス変換すると,X = L[x], F = L[f] とすれば m · s2X = −kX − c · sX + F これを整理すると, このシステムの入力から出力までの伝達関数 G(s) は G(s) = X F = 1 ms2 + cs + k となる. Tokyo Tech, the Society for the Study of Robotics, 2019 Classical Control Theory Seminar, the 1st Class 17 / 45
bm−1 sm−1 + · · · + b1 s + b0 an sn + an−1 sn−1 + · · · + a1 s + a0 ここで N(s) を分子多項式,D(s) を分母多項式と呼ぶ. 分子の最高次数 m と分母の最高次数 n を考える. m ≤ n を満たすとき, この伝達関数はプロパーである4と言い,G(∞) = 0 となる. N(s) = 0 を満たす s を零点, D(s) = 0 を満たす s を極という. 4プロパーでないものは物理的に実現不可能である Tokyo Tech, the Society for the Study of Robotics, 2019 Classical Control Theory Seminar, the 1st Class 18 / 45
Gu − + u w y 加え合わせ点 y = u − w u y z 引き出し点 y = u, z = u ブロック線図は,これらを組み合わせて構成される. Tokyo Tech, the Society for the Study of Robotics, 2019 Classical Control Theory Seminar, the 1st Class 21 / 45
G1 u y 結合後 2. 並列結合 u G1 G2 + + y 結合前 G1 + G2 u y 結合後 Tokyo Tech, the Society for the Study of Robotics, 2019 Classical Control Theory Seminar, the 1st Class 22 / 45
結合前 G1 1+G1G2 u y 結合後 これら 3 つが, ブロック線図の基本的な結合方式である. 加え合わせの符号に応じて, 結合後の伝達関数の符号も変化する. Tokyo Tech, the Society for the Study of Robotics, 2019 Classical Control Theory Seminar, the 1st Class 23 / 45
モータの抵抗を R,インダクタンスを L,電機子電流を i(t), 逆起電力定数を Kr ,トルク定数を Kτ ,発生トルクを τ(t), 出力軸の慣性モーメントを J, 回転軸の粘性摩擦係数を B とする. また, E(s) = L[e(t)], Ω(s) = L[ω(t)], I(s) = L[i(t)], T(s) = L[τ(t)] とする. Tokyo Tech, the Society for the Study of Robotics, 2019 Classical Control Theory Seminar, the 1st Class 24 / 45
+ Kr ω(t) だから,両辺ラプラス変換すると, E(s) = RI(s) + L · sI(s) + Kr Ω(s) このとき,ブロック線図は次のようになる. − + E Kr Ω 1 Ls+R I Tokyo Tech, the Society for the Study of Robotics, 2019 Classical Control Theory Seminar, the 1st Class 25 / 45
だから,両辺ラプラス変換して J · sΩ(s) = T(s) − BΩ(s) ブロック線図は次のようになる. 1 Js+B T Ω Tokyo Tech, the Society for the Study of Robotics, 2019 Classical Control Theory Seminar, the 1st Class 27 / 45
1 Js+B T Ω これから,印加電圧から速度までの伝達関数 P(s) が P(s) = Kτ (Ls + R)(Js + B) + Kr Kτ であることを導ける. Tokyo Tech, the Society for the Study of Robotics, 2019 Classical Control Theory Seminar, the 1st Class 28 / 45
δ(t) はディラックのデルタ関数で,次の 2 条件を満たす. ∞ −∞ δ(t)dt = 1 ∞ −∞ f(t)δ(t) = f(0) また,次のように 考えることができる. δ(t) = lim →0 1 (0 < t < ) 0 (else) Tokyo Tech, the Society for the Study of Robotics, 2019 Classical Control Theory Seminar, the 1st Class 30 / 45 -1 -0.5 0 0.5 1 0 2 4 6 8 10
であり, U(s) = L[δ(t)] = 1 であることから, インパルス応答は y(t) = L−1[G(s)] によって計算できる. Tokyo Tech, the Society for the Study of Robotics, 2019 Classical Control Theory Seminar, the 1st Class 31 / 45
を,t > 0 で 1 を取る. us (t) はヘヴィサイドの階段関数であり, us (t) = 0 (t < 0) 1 (t > 0) である. Tokyo Tech, the Society for the Study of Robotics, 2019 Classical Control Theory Seminar, the 1st Class 32 / 45 -1 -0.5 0 0.5 1 0 0.5 1 1.5 2
であり, U(s) = L[us (t)] = 1 s であることから, ステップ応答は y(t) = L−1 G(s) 1 s によって計算できる. Tokyo Tech, the Society for the Study of Robotics, 2019 Classical Control Theory Seminar, the 1st Class 33 / 45
G(s)U(s) であることから,出力は y(t) = L−1 [G(s)U(s)] = t 0 g(t − τ)u(τ)dτ と表現される. 右辺の演算は畳み込み積分 (convolution) と呼ばれ, ある時刻 t における出力は過去の入力に依存する 過去の入力による影響の重みは g によって決まる ということが読み取れる. Tokyo Tech, the Society for the Study of Robotics, 2019 Classical Control Theory Seminar, the 1st Class 34 / 45
で与えられるシステムを, 一次系(または一次遅れ系)と呼ぶ. 一次系において,K はゲイン,T は時定数と呼ぶ. Tokyo Tech, the Society for the Study of Robotics, 2019 Classical Control Theory Seminar, the 1st Class 35 / 45
K s − KT Ts + 1 = K 1 − e− t T 一次系はステップ応答においては,次の性質を有する. 出力は定常値 K に収束する 時刻 t = T において,出力は定常値 K の 63.2% となる 応答の t = 0 における接線は,t = T で値 K を取る 0 2 4 6 8 10 0 0.2 0.4 0.6 0.8 1 0 2 4 6 8 10 0 0.2 0.4 0.6 0.8 1 Tokyo Tech, the Society for the Study of Robotics, 2019 Classical Control Theory Seminar, the 1st Class 37 / 45
+ 2ζωn s + ω2 n で与えられるシステムを, 二次系(または二次遅れ系)と呼ぶ. 二次系において,K はゲイン,ζ は減衰係数, ωn は自然角周波数と呼ぶ. p.17 で紹介したマス・バネ・ダンパ系 G(s) = 1 ms2+cs+k では, ζ は粘性摩擦係数 c に比例し, ωn は固有周波数 k m に一致する. Tokyo Tech, the Society for the Study of Robotics, 2019 Classical Control Theory Seminar, the 1st Class 38 / 45
− ζ2 1 − ζ2ωn (s + ζωn )2 + (1 − ζ2)ω2 = Kωn 1 − ζ2 e−ζωnt sin ωn 1 − ζ2t 0 10 20 30 -1 -0.5 0 0.5 1 Tokyo Tech, the Society for the Study of Robotics, 2019 Classical Control Theory Seminar, the 1st Class 39 / 45
K s − K(s + 2ζωn) s2 + 2ζωns + ω2 n = L−1 K s − K(s + ζωn) (s + ζωn)2 + (1 − ζ2)ω2 n − Kζ 1 − ζ2 q − ζ2ωn (s + ζωn)2 + (1 − ζ2)ω2 n = K 1 − e−ζωnt cos(ωn 1 − ζ2t) + ζ 1 − ζ2 sin(ωn 1 − ζ2t) = K 1 − e−ζωnt 1 − ζ2 sin(ωn 1 − ζ2t + θ) (θ = tan−1 1 − ζ2 ζ ) Tokyo Tech, the Society for the Study of Robotics, 2019 Classical Control Theory Seminar, the 1st Class 40 / 45
余裕のある方は C 言語の復習もしておいてください. 6東工大に在籍している方は,無償での利用が可能です. 詳しくは下記リンク先をご覧ください. https://www.t3.gsic.titech.ac.jp/matlab_individual/ Tokyo Tech, the Society for the Study of Robotics, 2019 Classical Control Theory Seminar, the 1st Class 44 / 45