投稿者「cacsd」のアーカイブ
保護中: 出力FB
What’s new? (2024/10/28)
2025.4.7 『RCPSP法による造船工程計画の実践』のサポートページの準備を始めました。しばらくはパスワード入力が必要です。
2024.10.28 『ゼミナール 制御技術入門』の修正版ver.1.1が近々刊行されます。
2024.9.5 『ゼミナール 制御技術入門』のフォローアップサイトを、大まかに仕上げました。また、正誤表に1件追加しました。
2024.5.6 正誤表を作成しました。
正誤表
2024.5.2 『ゼミナール 制御技術入門』のフォローアップサイトの整備が遅れて申し訳ありません。ようやく5章まで要点を中心に仕上げました。また、古いプログラムをアップしていたので、一部修正し更新しました。
2024.1.9 次がXに出ました。
【近代科学社Digital 新刊】刊行決定!
『ゼミナール 制御技術入門』
詳細はこちら⇓https://t.co/REMl6QG03J— 近代科学社Digital (@KDD_KDDigital) January 9, 2024
2023.12.30 本サイトの全面改訂を始めます。
問・演習問題の解答(1章)
問1.1 十分大きな ![]() ![]() ![]() ![]() 問1.2 問1.3 答は図1.12。 問1.4 座標変換 【1】 回路方程式はつぎのように整理できる。
ブロック線図は図3.4参照。 【2】 【3】 状態方程式??を考えると,平衡状態では 式??からこれを辺々引いて,つぎの状態方程式を得る。 【4】 シミュレーション結果はつぎのとおり。
|
8. 伝達関数から状態方程式を導く
線形系を知るということは,インパルス応答を知るということにほかならない。というのは,どのような入力が与えられても,インパルス応答とのたたみこみ積分を行って出力(零状態応答)が得られるからである。インパルス応答をラプラス変換したものを「伝達関数」と呼ぶ。ステップ応答の微分がインパルス応答であり,周波数応答の逆フーリエ変換がやはりインパルス応答であるから,実際には,「システム同定」実験を通してステップ応答や周波数応答を得て(伝達関数を陰に陽に求めて),さまざまな制御方式を設計することがよく行われている。
一方,これまで私たちは,物理法則に基づいて状態方程式と出力方程式からなる状態空間表現を得ていたが,もし同定実験を通して得られた伝達関数から状態空間表現を求めることができれば,これまで学んださまざまな特性解析・コントローラ設計の方法を適用できるであろう。インパルス応答や伝達関数は線形系の入出力関係を表すので「外部記述」と呼ばれ,これに対応する状態空間表現は「内部記述」と呼ばれる。そして,外部記述から内部記述を求めることを「実現」という。 本章では,状態空間表現の構造のより深い理解のためもあって,この実現問題を扱う。実は,与えられた外部記述に対応する状態空間表現は無数に存在する。これは状態空間の次数と座標軸の取り方に自由度が存在するためである。特に,最小次数の状態空間表現を求めることを「最小実現」という。興味深いのは,最小次数が可制御かつ可観測の性質により特徴付けられることである。また,座標軸の適切な取り方の一つに,特に信号処理分野で有用性が認められている「平衡実現」と呼ばれるものがある。 |
7. 非線形の運動方程式から始める
これまで扱ってきた制御対象は,その運動方程式が線形の微分方程式で表される「線形系」としていた。ところが実際には,例えば,ロボットアームの運動方程式に見られるように,非線形の微分方程式で表される「非線形系」が多い。このとき,これまで学んできた線形系に対する制御理論(LQ制御やLQI制御)はどのように役立つのだろうか。
まず,運動方程式(高階の非線形微分方程式)から「非線形状態方程式」を1階の連立非線形微分方程式として求めておく。つぎに,物理的な釣り合いの状態,すなわち「平衡状態」を考える。その平衡状態付近での運動を,「線形化」された状態方程式で表し,これに対して例えばLQI制御を適用する。 このアプローチは1入力1出力系ばかりでなく多入力多出力系に対しても適用できて,これまで数多くの制御問題の解決が図られてきた。その実績こそが,前章までに述べてきた線形システム制御論の有用性を示唆し,これを学ぶことの強い動機付けを与えている。 そこで,本章では,運動方程式が非線形の微分方程式で表される対象の制御問題として,水タンクの水位制御問題を考え,LQI制御を適用しながら線形システム制御論に基づくアプローチを説明する。皆さんは,計算機を用いて,LQIコントローラの数値計算と閉ループ系の時間応答シミュレーションに挑戦してほしい。そして,できれば適当な制御実験を試みてほしい。自分で考えたアルゴリズムで物をうまく動かすことができたときは,きっと小躍りしたくなるであろう。 |
6. 定値外乱を抑制する
これまで,安定性の定義,安定化の可能性とその方策を学んできた。その結果,私たちは,閉ループ系の零入力応答を適切に安定化する,すなわち,ある初期状態から出発して速やかに零状態(平衡状態)にもっていくことはできる。この零入力応答は,適当な強さのインパルス入力に対する零状態応答に等しいことを思い出してほしい。
例えば,一定速度で回転しているモータを考え,これに瞬間的な負荷がかかって,その速度が乱されたとする。このときは,状態フィードバックによってもとの速度に復帰させることができる。しかし,モータで何か対象物を回転させるときは,モータ軸への持続的な負荷が生じ,極端な場合はモータは回転することさえできないであろう。同様に,飛行機,船舶,車などのビークルに強い向い風が吹けば定速を維持することは困難となるであろう。 また,モータやビークルでは,速度の設定値を変えることが制御の大切な役割なのに,そのための手段はまったく学んでいない。 したがって,これまでの知識だけでは多くの現実問題を解くことはできない。実際の問題では,必ずといっていいほど,さまざまな「定値外乱」の影響を受ける状況のもとで,「設定値」の保持や,ときには変更を要求されるからである。このような問題を解決するためには,これまでの制御方式に加えて,まず「積分動作」の導入による構造的な改良が必要となる。本章では,定値外乱の影響の除去や,設定値の変更に対応できるように,積分動作を入れて安定化を行う方策について学ぶ。その安定化にLQ制御を適用するとき,その制御方式を簡潔に表すために「LQI制御」と呼ぶ。 |
6.1 1次系における定値外乱の影響を抑制する
6.1.1 定値外乱の影響
1章で述べた直流モータの状態方程式(1.11)すなわち
を思い出そう。これは,二つの入力変数 以下では,この状況を一般化した次式で表される1次系を考える。 ここで,
いま,1次系(2)に対して,状態フィードバック を行うと,閉ループ系 を得る。ここで, となる。第2項は と計算できるので, すなわち,定値外乱が加わると とはならない。このことをシミュレーション例で確認しよう。 シミュレーション 6.1
このような定値外乱の影響を取り除くために,式(3)の代わりに のような方策を用いる。このときの閉ループ系 の時間応答は となる。これより,外乱を打ち消すように と選べば,式(8)を達成できる。しかしながら, |
図6.2の下に次の問を設定していましたが,紙幅の関係で省略しました。
図6.2で,であることを確かめなさい。
6.1.2 積分動作を加える
この方法の基礎となるアイデアは
を達成できれば そこで,式(13)を満足する を達成することができないか検討しよう。 まず,式(2)と,式(13)の を合わせて を構成する。式(16)に を代入すると,閉ループ系は となる。そのブロック線図を図6.3に示す。
さて, となる。ここで, と計算できるから と表される。したがって を得る。ここで となり,外乱の影響が抑制されていることと,式(14)が成り立つことが確認できる。また,式(17)からつぎが成り立つ。 シミュレーション6.2
|
図6.4の下に次の問を設定していましたが,紙幅の関係で省略しました。
図6.4で,,
であることを確かめなさい。
また,(19),(20),(21)においであることに注意してください。
6.1.3 設定値を変更する
前節では,定値外乱の加わる1次系
に対して,制御目的 を達成する方法を学んだ。ここでは,任意の定数 を達成する問題を考える。この
この問題の解決のためには,外乱を抑制するための図6.4を,図6.5に示すように変更すればよい。実際,式(27)を のような積分動作を導入すればよいことに気づくであろう。 式(25)と式(26)を合わせて を構成する。いま,式(29)に を代入すると となる。 を得る。この第1行は, を得る。ここで,設定値 また,つぎが成り立つ。 それでは,フィードフォワード項による速応性改善の効果をシミュレーションによって確かめよう。 シミュレーション6.3
問6.1 |
6.2 積分型コントローラ
6.2.1 積分動作を加えた状態フィードバック
次式で表される可制御かつ可観測で,![]() ![]() ![]() ここで,状態方程式には,操作入力 のように選び( を達成したい。ここで,定数ベクトル の関係を満足しているはずである。したがって,どのような が成り立つように選ぶものとする。
さて,制御目的(39)を達成するために,図6.8に示すような,つぎの積分動作を加えた状態フィードバックを考える。 ここで,第2項は積分動作を表している。このように を得る。式(36)と式(43)を合わせて を得る。式(44)に,式(42)すなわち を代入すると,閉ループ系は,つぎのように表される。 いま, よって, を用いて ここで, のように計算される。ところで,式(46)から を得る。この第1ブロック行は,式(40)より となって,式(40)の第2ブロック行から制御目的(39)が成り立つ。また,式(50)の第2ブロック行から を得る。ここで,設定値 のように表され,ここで, |
6.2.2 積分動作を加えたオブザーバベース\,コントローラ
式(42)の代わりに,実際には,状態オブザーバ
の出力を用いて を実施することになる。ここでの積分動作を加えたオブザーバベース\,コントローラは,式(56)を式(55)に代入した と,式(43)を合わせて,つぎのように表される。 これによる閉ループ系は,式(56)を式(36)に代入した と,式(43),(57)を合わせて のように表される。そのブロック線図を図6.9に示す。
いま,閉ループ系(61)に,座標変換 を行えば となり,閉ループ系の固有値は,積分動作を加えた状態フィードバックだけの閉ループ系の固有値と状態オブザーバの固有値からなる。 ここで, すなわち を得る。したがって,定値外乱が存在するときは状態オブザーバに関して定常偏差が残るにもかかわらず,制御目的(39)が成り立つことがわかる。また,フィードフォーワードゲイン |
6.3 LQI設計
これまで,閉ループ系(18),(31),(46),(63)において,![]() 制御目的(39)が達成されたとき成り立つ式(40)より を得る( 偏差系E1: この両辺を微分すれば,状態変数の中の定数ベクトルを除くことができて 偏差系E2: を得る。さらに,式(36)と(38)をまとめた から式(40)を引いて,つぎの関係式が成り立つ。 これに基づいて,偏差系E2に座標変換を行えば 偏差系E3: を得る。ここで,つぎの関係式を用いた。 問6.2 問6.3 例えば,偏差系E1に対して,状態フィードバック を用いて,閉ループ系を安定化すれば, 以下に,偏差系E3をLQ制御により安定化して,積分動作を加えたオブザーバベース\,コントローラを構成する手順を示す。 アルゴリズム6.1 <LQI設計> 入力パラメータ1 出力パラメータ ステップ1 被制御変数の決定
ステップ2 偏差系の安定化 偏差系 を,状態フィードバック によるLQ制御で安定化する。その際,評価関数としては を用いる。ただし, さらに, ステップ3 オブザーバゲイン 例えば,アルゴリズム5.2のステップ2を用いる。 を解いて, ステップ4 LQIコントローラの構成
ただし この積分動作を加えたオブザーバベース\,コントローラを簡潔にLQIコントローラ}(LQI controller),これによる制御方式をLQI制御(LQ control with integral action)と呼ぶ。 問6.4 |
前章までに,状態フィードバックと状態オブザーバを組み合わせた安定化コントローラ(オブザーバベース\,コントローラ)を,どのような条件のもとで構成できるかについて検討し,それが可制御性と可観測性(可安定性と可検出性)であることを述べた。そこでつぎに,状態フィードバックと状態オブザーバの構成を合理的に行うことを考えたい。
まず,状態フィードバックについては,代表的な方法として最小2乗規範に基づく方法がある。これは,状態フィードバックによる閉ループ系における時間応答の2乗面積が最小となるように,状態フィードバックゲインを定めるものである。ここで,状態変数の時間的振る舞いの2乗面積ばかりでなく,どのような入力を用いて閉ループ系を構成したかを評価するために,入力変数の時間的振る舞いの2乗面積についても同時に考えることが肝要である。こうして得られる制御方式を,状態フィードバックによる「LQ制御」と呼ぶ。この状態フィードバックゲインは,「リッカチ方程式」と呼ばれる行列に関する2次方程式を解いて求めることができる。 つぎに,状態オブザーバについてであるが,オブザーバベース\,コントローラによる閉ループ系における時間応答の2乗面積の和を最小化する立場から考える。この値は,理想的な状態フィードバックだけの場合と比べて,状態オブザーバを用いるので増加(劣化)する。そこで,この増分が小さくなるようにオブザーバゲインを定めることが行われる。 本章で述べる制御方式は「最適制御」と呼ばれるものの一つで,歴史的には「LQG理論」として確率システムの制御の立場から研究されてきた。しかし,ここでは確定的な議論にとどめて,主要な結果を説明した。 |
4. センサが足りないが大丈夫か
前章で,状態フィードバックによって安定化可能である条件(可安定性)や閉ループ系の固有値を任意に設定できる条件(可制御性)を学んだ。ただし,すでに指摘しておいたように,状態フィードバックという制御手段は,すべての状態変数にセンサを付けること(![]() \par それでは,状態オブザーバは,制御対象の状態空間表現が与えられるとき,いつでも構成可能なのであろうか。答えはノーである。状態オブザーバが構成可能な条件は「可検出性」として知られている。可検出性は,前章で学んだ可安定性と密接な関係(双対関係)にある。これについて学ぶのが本章の一つの目標である。可安定性を強めた概念として可制御性があったように,可検出性を強めた概念として「可観測性」があり,これについても本章で学ぶ。最後に,2~4章の重要な結論として,制御対象の安定化可能条件が可安定性と可検出性であり,その手段がオブザーバベース\,コントローラであることを述べる。 |
3. いつ安定化できるのか
前章で,状態方程式から安定性を調べる方法を学んだ。すなわち,対象が安定であるとは![]() ![]() さて,状態フィードバックによって安定化可能である条件は「可安定性」と呼ばれるが,これを直接明らかにするのは容易ではない。そこで,状態フィードバックによって |
特異値分解(singular-value decomposition)
——————————————————————————————————————–
定理 をサイズ
の行列(
)とする。このとき,サイズ
の直交行列
とサイズ
の直交行列
が存在して
(1)
が成り立つ。ここで,サイズの行列
は,次を満たす(
は,
がサイズ
の行列であることを示す(
は行数と列数の区切)。)。
(2)
(3)
を満足するものである。
証明 だから,仮定
より,
は
個の正固有値と
個の零固有値をもち,互いに直交する固有ベクトルをもつ。そこで,
の固有値の正の平方根を,大きい順に,
のように表し,対応する固有ベクトル
を
を満足するようにとることができる。いま,
を式3のように,また
(4)
とおくと,は直交行列となり,つぎが成り立つ。
(5)
(6)
式6の第2式の左から,をかけて
(7)
また,とおくと,式6の第1式から
を得る。そこで,
を
が直交行列となるように選ぶと
(8)
が成り立つ。これより,式1を得る。
——————————————————————————————————————–
——————————————————————————————————————–
例題 行列の特異値分解は
(9)
のように与えられることを確かめなさい。
解答 のサイズは
であるが,
のサイズは
であるので,
を計算すると
となる(サイズ
の行列
の特異値を手計算で求めるには,
と
のが同じ非零固有値をもつことから,サイズの小さいほうの固有値計算を行えばよい。)。これから,
の固有値は
で,その正の平方根
が特異値であるが,定理??の
の対角成分の特異値は大きい順に並べる約束であるので
(10)
のように,と
が決まる。つぎに,
については,視察によって
(11)
としてよい。ここでと
が直交しており,
の制約がある。式(11)から
が出て,
と定まる。
——————————————————————————————————————–
それでは,階段化アルゴリズムについて述べる。
——————————————————————————————————————–
アルゴリズム<階段化アルゴリズム(staircase algorithm)>
入力パラメータ
出力パラメータ
ステップ1 初期化
とおく。
ステップ2 の階数決定
を
に更新し,
に対して,つぎの特異値分解を行い,
の階数
と
を求める。
(12)
(13)
もしまたは
ならば,
と設定して終了する。そうでないときは,ステップ3へ行く。
ステップ3 座標変換
を,
を用いて
(14)
と設定し,と
を,次式から求める。
(15)
ステップ4 の切り出し
を
に更新し,
に対してつぎの分割を行い,
を得て,ステップ2へ戻る。
(16)
——————————————————————————————————————–
——————————————————————————————————————–
例題
階段化アルゴリズムを用いて,つぎの可安定性を調べなさい。
(17)
解答 階段化アルゴリズムの各ステップは,つぎのように計算される。
ステップ1:とおく。
ステップ2:とし,
に対する特異値分解
(18)
から,の階数
と
が求まる。
ステップ3:かつ
なので,ステップ4へ行く。
ステップ4:とし,
を求めると
(19)
となり,とする。
ステップ5:とする。
に対する分割から,
を得る。
ステップ2′:とする。
は零行列なので,その階数は
である。
ステップ3′:なので,
のように設定する。
以上から,式(24)は,つぎのように得られた。
(20)
ここで,は零行列で,
より,条件S0が成り立つ。よって,
は可安定である。
——————————————————————————————————————–
まず,可安定性と可制御性は座標変換により不変であることを示す。
——————————————————————————————————————–
定理 が可安定対[可制御対]ならば,
も可安定対[可制御対]である。
証明 次系
に対する
による安定化可能性は,座標変換後の
に対する
による安定化可能性と等価である。実際
(21)
が成り立ち,閉ループ系の固有値は,座標変換によって不変だからである。
可制御性については,シルベスターの公式
(
は
の列数)
を用いて
(22)
が成り立つことから,定理の主張を得る。
——————————————————————————————————————–
この定理に基づいて,可安定性や可制御性の判別をしやすいように座標変換行列を選ぶことを考える。すなわち,
次系
に対して,つぎを満足するように座標変換できるかどうかを調べる。
(23)
ただし,は可制御対とする。このブロック線図を描いてみればわかるように,状態
は入力
の影響を受けることはない。したがって,可制御性は成立しないこと,そして
が安定行列かどうかが可安定性と関係していることは想像がつくであろう。以下では,この判定法が導かれること示す。
「式(23)のように座標変換できれば,が安定行列のとき可安定性が成り立ち,そうでないときは可安定性は成り立たない。また,式(23)のように座標変換できなければ,可制御性が成り立っている。」
つぎの結果は,階段化アルゴリズムを用いて得られる。
——————————————————————————————————————–
定理
サイズの行列
とサイズ
の行列
に対して,つぎのように変換する直交行列
が存在する。
(24)
ここで,は正整数,また
のサイズを
とするとき(
),つぎが成り立つ(
は横長の形状となり,行フルランクをもつ。また,
は横長で,行フルランクをもつ行列または零行列のどちらかである。)。
(25)
(26)
(27)
このとき,が可制御対であるための必要十分条件は
条件C0: 式(24)において,
が成り立つことである。また,が可安定対であるための必要十分条件は、つぎが成り立つことである。
条件S0: 式(24)において,のとき,
は安定行列
——————————————————————————————————————–
のとき,式(23)のような形式が得られていることは,式\(ref{eq3.4.3})の
を上の
と読み替えれば明らかであろう。また,可安定性と可制御性と相違は,前者が
ばかりでなく
を許すところにあることに注意する。可制御性の条件C0と可安定性の条件S0の妥当性は,あとで示す。
それでは,まず可制御性について,新しい条件を追加した定理を述べる。
——————————————————————————————————————–
定理 可制御性が成り立つための等価な条件
定義: 任意初期状態を,任意有限時間内に,任意状態に移動可能
条件C1:
条件C2:
条件C3: を選んで,
の固有値を任意に設定可能
条件C4: (
は
のすべての固有値)
条件C5: (
は
のすべての固有値)
ここで,条件C4を満足するの固有値
は可制御固有値,満足しない固有値は不可制御固有値と呼ばれる。
——————————————————————————————————————–
前節までに,定義条件C1
条件C2
条件C3を示したので,以下では,条件C3
条件C0
条件C4
条件C5
条件C2を示す。
——————————————————————————————————————–
証明 <条件C3条件C0>
とすると,式(24)を用いて
(28)
となり,閉ループ系においての固有値はそのまま残るが,C3に矛盾である。
証明 <条件C0条件C4>
を任意の複素数とする。
に,式24を適用すると
(29)
を得る。ここで,は横長の形状となり,行フルランク(行数に等しい階数)をもつので
(30)
に,シルベスターの公式を適用して
(31)
を得る。この階数がより小さくなるのは,式(29)から明らかなように,
が
の固有値に等しい場合である。したがって,
は
の固有値について調べれば十分である。すなわち,条件C4を得た。
証明 <条件C4条件C5>
条件C4は,を
次元ベクトルとして
(32)
すなわち
(33)
と等価である。
証明 <条件C5条件C2>
条件C5より
(34)
を得て
(35)
が成り立つ。これは条件C2を意味する。
——————————————————————————————————————–
それでは,可安定性が成り立つための条件について考えよう。可制御であれば可安定であるので,問題は,不可制御で可安定の場合をどのように特徴付けるかである。不可制御であれば条件C0が不成立なので,となり,
の固有値だけは状態フィードバックによってどうすることもできない。このとき可安定であるためには,
が安定行列であることを前提とするしかない。これは条件S0そのものであり,可安定性の条件としての妥当性が得られた。
このことを踏まえて,可安定性の条件はつぎのように表される。
——————————————————————————————————————–
定理 可安定性が成り立つための等価な条件
定義 状態フィードバックにより安定化可能
条件S1: (
は
のすべての不安定固有値)
条件S2: \quad (〃)
証明 定義条件S0だから,条件S1
条件S2との等価性を示せばよい。そのために,
のとき,式(29)の行列のランクが落ちるのは
(36)
(37)
の部分で,が
の固有値に一致した場合である。したがって,条件S0を保証するためには,
に
のすべての不安定固有値を入れて,式(37)を調べ,列フルランクとなればよい。すなわち,条件C4
条件C5において,
は
のすべての不安定固有値という条件をつければよい。
——————————————————————————————————————–
上の可制御性と可安定性のさまざまな条件のうち,理論展開では条件C5とS2が,数値計算では条件C0,C4と,条件S0,S1がよく用いられる(条件C5条件C4と条件S2
条件S1による判定法は,PBH(Popov-Blevitch-Hautus)法と呼ばれる。)。
例えば,可制御性は状態フィードバックにより不変であることを示そう。
——————————————————————————————————————–
定理 が可制御対ならば
も可制御対である。
証明 条件C5より,任意のに対して
(38)
成り立つので,これを仮定して
(39)
を示せばよい。実際,より
(40)
を得るが,このようなは,仮定(38)より,
でなければならない。
——————————————————————————————————————–