このページの翻訳は最新ではありません。ここをクリックして,英語の最新版を参照してください。
状態空間モデル
党卫军
を使用して実数値の,または複素数値の状態空間モデルを作成したり,動的システムモデルを状態空間モデル形式に変換したりします。党卫军
を使用して,一般化状態空間(一族
)モデルや不確かさをもつ状態空間(号航空母舰
(鲁棒控制工具箱))モデルを作成することもできます。
状態空間モデルは1階微分方程式で関連付けられる一連の入力,出力,および状態変数としての物理システムの数学的な表現です。状態変数は出力変数の値を定義します。党卫军
モデルオブジェクトは输出またはMIMO状態空間モデルを連続時間または離散時間で表現できます。
連続時間では,状態空間モデルは次の形式をとります。
ここで,x
、u
およびy
はそれぞれ状態,入力および出力を表し,一个
、B
、C
およびD
は状態空間行列です。党卫军
オブジェクトは,一个
、B
、C
およびD
を,サンプル時間,名前,入力および出力に固有の遅延などの情報と共に格納しているMATLAB®の状態空間モデルを表します。
状態と入力行列および出力行列を直接指定して,または別の種類のモデル(伝達関数モデル特遣部队
など)を変換して,状態空間モデルオブジェクトを作成することができます。詳細については,状態空間モデルを参照してください。党卫军
モデルオブジェクトを使用して次のことができます。
線形解析を実行する
制御設計を実行するための線形時不変(LTI)モデルを表す
他のLTIモデルと組み合わせて,より複雑なシステムを表現する
一个
- - - - - -状態行列Nx
行Nx
列の行列状態行列。Nx
行Nx
列の行列として指定します。ここでNx
は状態の数です。この入力はプロパティ一个の値を設定します。
B
- - - - - -入力から状態への行列Nx
行ν
列の行列入力から状態への行列。Nx
行ν
列の行列として指定します。ここでNx
は状態の数,ν
は入力の数です。この入力はプロパティBの値を設定します。
C
- - - - - -状態から出力への行列纽约
行Nx
列の行列状態から出力への行列。纽约
行Nx
列の行列として指定します。ここでNx
は状態の数,纽约
は出力の数です。この入力はプロパティCの値を設定します。
D
- - - - - -直達行列纽约
行ν
列の行列直達行列。纽约
行ν
列の行列として指定します。ここで纽约
は出力の数,ν
は入力の数です。この入力はプロパティDの値を設定します。
ts
- - - - - -サンプル時間スカラーとして指定されたサンプル時間。詳細については,Tsプロパティを参照してください。
ltiSys
- - - - - -状態空間形式に変換する動的システム状態空間形式に変換する動的システム。输出または天线系统動的システムモデル,または動的システムモデルの配列として指定します。変換できる動的システムには次のものが含まれます。
一族
や号航空母舰
(鲁棒控制工具箱)モデルなどの一般化された,あるいは不確かさをもつLTIモデル(不確かさをもつモデルを使用するには鲁棒控制工具箱™ソフトウェアが必要です)。
結果として得られる状態空間モデルは次を仮定します。
調整可能な制御設計ブロックについては調整可能なコンポーネントの現在値。
不確かさをもつ制御設計ブロックについてはモデルのノミナル値。
idtf
(系统辨识工具箱)、中的难点
(系统辨识工具箱)、idproc
(系统辨识工具箱)、idpoly
(系统辨识工具箱)、idgrey
(系统辨识工具箱)モデルなどの,同定されたLTIモデル。同定されたモデルの変換する成分を選択するには,组件
を指定します。组件
を指定しない場合,党卫军
は,同定されたモデルの測定成分を既定で変換します。(同定されたモデルを使用するには系统辨识工具箱™ソフトウェアが必要です)。
组件
- - - - - -同定されたモデルのコンポーネント“测量”
(既定値) |“噪音”
|“增强”
同定されたモデルの変換対象とするコンポーネント。次のいずれかとして指定します。
“测量”
- - - - - -sys
の測定成分を変換します。
“噪音”
- - - - - -sys
のノイズ成分を変換します。
“增强”
- - - - - -sys
の測定成分とノイズ成分の両方を変換します。
组件
が適用されるのは,sys
が同定されたLTIモデルである場合のみです。
同定されたLTIモデルおよびその測定成分とノイズ成分の詳細については,同定されたLTIモデルを参照してください。
ssSys
- - - - - -最小実現または明示的な形式に変換する動的システムモデル党卫军
モデルオブジェクト最小実現または明示的な形式に変換する動的システムモデル。党卫军
モデルオブジェクトとして指定します。
sys
——出力システムモデル党卫军
モデルオブジェクト|一族
モデルオブジェクト|号航空母舰
モデルオブジェクト出力システムモデル。以下として返されます。
状態空間 (党卫军
)モデルオブジェクト(入力一个
、B
、C
およびD
が数値行列の場合,または別のモデルオブジェクトタイプから変換する場合)。
一般化状態空間モデル(一族
)オブジェクト(1つ以上の行列一个
、B
、C
およびD
にrealp
パラメーターや一般化行列(genmat
)などの調整可能なパラメーターが含まれている場合)。例については,固定パラメーターと調整可能なパラメーターの両方をもつ状態空間モデルの作成を参照してください。
不確かさをもつ状態空間モデル(号航空母舰
)オブジェクト(1つ以上の入力一个
、B
、C
およびD
に不確かさをもつ行列が含まれている場合)。不確かさをもつモデルを使用するには鲁棒控制工具箱ソフトウェアが必要です。
一个
- - - - - -状態行列Nx
行Nx
列の行列状態行列。Nx
行Nx
列の行列として指定します。ここでNx
は状態の数です。状態行列は,目的とする状態空間モデル実現に応じて、次のような様々な方法で表現できます。
モデル正準形式
コンパニオン正準形式
可観測正準形式
可制御正準形式
詳細については,正準状態空間実現を参照してください。
B
- - - - - -入力から状態への行列Nx
行ν
列の行列入力から状態への行列。Nx
行ν
列の行列として指定します。ここでNx
は状態の数,ν
は入力の数です。
C
- - - - - -状態から出力への行列纽约
行Nx
列の行列状態から出力への行列。纽约
行Nx
列の行列として指定します。ここでNx
は状態の数,纽约
は出力の数です。
D
- - - - - -直達行列纽约
行ν
列の行列直達行列。纽约
行ν
列の行列として指定します。ここで纽约
は出力の数,ν
は入力の数です。D
は静的ゲイン行列とも呼ばれ,定常状態の条件下での入力に対する出力の比率を表します。
E
- - - - - -暗黙的な状態空間モデルの行列Nx
行Nx
列の行列暗黙的な,または記述子の状態空間モデルの行列。Nx
行Nx
列の行列として指定します。E
は既定では空であり,これは状態方程式が明示的であることを意味します。暗黙的な状態方程式E dx/dt = Ax + Buを指定するには,このプロパティを一个
と同じサイズの正方行列に設定します。記述子状態空間モデルの作成の詳細は,dss
を参照してください。
按比例缩小的
- - - - - -スケーリングが有効であるか無効であるかを示す逻辑値。0
(既定値) |1
スケーリングが有効であるか無効であるかを示す逻辑値。0
または1
として指定します。
按比例缩小的
が0
(無効)に設定されている場合,状態空間モデルsys
で動作するほとんどの数値アルゴリズムは,数値的な精度の向上のため,状態ベクトルを自動的に再スケーリングします。こうした自動スケーリングは,按比例缩小的
を1
(有効)に設定することで抑止できます。
スケーリングの詳細は,预分频
を参照してください。
StateName
- - - - - -状態名' '
(既定値) |文字ベクトル|文字ベクトルの细胞配列状態名。次のいずれかとして指定します。
文字ベクトル-“速度”
などの1次モデルの場合。
文字ベクトルの细胞配列- 2つ以上の状態をもつモデルの場合。
StateName
は,既定ではすべての状態について空' '
です。
StatePath
- - - - - -状態パス' '
(既定値) |文字ベクトル|文字ベクトルの细胞配列線形化で状態ブロックパスを管理しやすくするための状態パス。次のいずれかとして指定します。
文字ベクトル- 1次モデルの場合
文字ベクトルの细胞配列- 2つ以上の状態をもつモデルの場合
StatePath
は,既定ではすべての状態について空' '
です。
StateUnit
- - - - - -状態単位' '
(既定値) |文字ベクトル|文字ベクトルの细胞配列状態単位。以下のいずれかとして指定します。
文字ベクトル-“米/秒”
などの1次モデルの場合
文字ベクトルの细胞配列- 2つ以上の状態をもつモデルの場合
StateUnit
を使用して,各状態の単位を追跡します。StateUnit
はシステムの動作に影響しません。StateUnit
は,既定ではすべての状態について空' '
です。
InternalDelay
- - - - - -モデルの内部遅延モデルの内部遅延。ベクトルとして指定します。内部遅延は、たとえば、システムで遅延のあるフィードバック ループを閉じるときや、遅延システムを順番にまたは並列で接続するときに生じます。内部遅延の詳細については、むだ時間のある閉フィードバックループを参照してください。
連続時間モデルの場合,内部遅延はモデルのTimeUnit
プロパティで指定された時間単位で表現されます。離散時間モデルの場合,内部遅延はサンプル時間Ts
の整数倍として表現されます。たとえばInternalDelay = 3
は3サンプリング周期の遅延を意味します。
内部遅延の値はプロパティInternalDelay
を使用して変更できます。ただし,sys。我ntern一个lDelay
のエントリの数は,モデルの構造に組み込まれているので変更できません。
InputDelay
- - - - - -入力遅延0
(既定値) |スカラー|ν
行1列のベクトル各入力チャネルの入力遅延。次のいずれかとして指定します。
スカラー——输出システムに入力遅延を,または多入力システムのすべての入力に同じ遅延を指定します。
ν
行1列のベクトル——多入力システムの入力に別々の入力遅延を指定します。ν
は入力の数です。
連続時間システムの場合は,TimeUnit
プロパティによって指定された時間単位で入力遅延を指定します。離散時間システムの場合は,サンプル時間Ts
の整数倍で入力遅延を指定します。
詳細については,線形システムでのむだ時間を参照してください。
OutputDelay
- - - - - -出力遅延0
(既定値) |スカラー|纽约
行1列のベクトル各出力チャネルの出力遅延。次のいずれかとして指定します。
スカラー——输出システムに出力遅延を,または多出力システムのすべての出力に同じ遅延を指定します。
纽约
行1列のベクトル——多出力システムの出力に別々の出力遅延を指定します。纽约
は出力の数です。
連続時間システムの場合は,TimeUnit
プロパティによって指定された時間単位で出力遅延を指定します。離散時間システムの場合は,サンプル時間Ts
の整数倍で出力遅延を指定します。
詳細については,線形システムでのむだ時間を参照してください。
TimeUnit
- - - - - -時間変数の単位“秒”
(既定値) |“纳秒”
|微秒的
|的毫秒
|“分钟”
|“小时”
|“天”
|“周”
|“月”
|“年”
|……時間変数の単位。次のいずれかとして指定します。
“纳秒”
微秒的
的毫秒
“秒”
“分钟”
“小时”
“天”
“周”
“月”
“年”
TimeUnit
の変更は他のプロパティには影響しませんが,システム全体の動作が変わります。chgTimeUnit
を使用して,システム動作を変更せずに時間単位を変換します。
InputName
- - - - - -入力チャネル名”
(既定値) |文字ベクトル|文字ベクトルの细胞配列入力チャネル名。以下のいずれかとして指定します。
文字ベクトル(単入力モデルの場合)。
文字ベクトルの细胞配列(多入力モデルの場合)。
”
(いずれの入力チャネルにも名前を指定しない場合)。
あるいは,自動的なベクトル拡張を使用して多入力モデルの入力名を割り当てることもできます。たとえば,sys
が2入力モデルである場合は,以下のようになります。
sys。我nputName =“控制”;
入力名は自動的に{“控制(1)”,“控制”(2)}
へと拡張されます。
省略形表記u
を使用して,InputName
プロパティを参照できます。たとえば,sys.u
はsys。我nputName
と同じです。
InputName
の使用目的は次のとおりです。
モデル表示とプロット上のチャネルの識別
米姆システムのサブシステムの抽出
モデル相互接続時における接続点の指定
InputUnit
- - - - - -入力チャネル単位”
(既定値) |文字ベクトル|文字ベクトルの细胞配列入力チャネル単位。以下のいずれかとして指定します。
文字ベクトル(単入力モデルの場合)。
文字ベクトルの细胞配列(多入力モデルの場合)。
”
(いずれの入力チャネルにも単位を指定しない場合)。
InputUnit
を使用して入力信号の単位を指定します。InputUnit
はシステムの動作に影響しません。
InputGroup
- - - - - -入力チャネルグループ入力チャネルグループ。構造体として指定します。InputGroup
プロパティを使用して,米姆システムの入力チャネルをグループに割り当て,各グループを名前で参照します。InputGroup
のフィールド名はグループ名であり,フィールドの値は各グループの入力チャネルです。以下に例を示します。
sys.InputGroup.controls = [1 2];sys.InputGroup.noise = [3 5];
これは,入力チャネル1
と2
,および3.
と5
をそれぞれ含む,控制
および噪音
という名前の入力グループを作成します。その後,以下を使用して控制
入力からすべての出力にサブシステムを抽出できます。
sys (:,“控制”)
既定では,InputGroup
はフィールドのない構造体です。
OutputName
- - - - - -出力チャネル名”
(既定値) |文字ベクトル|文字ベクトルの细胞配列出力チャネル名。次のいずれかとして指定されます。
文字ベクトル(単出力モデルの場合)。
文字ベクトルの细胞配列(多出力モデルの場合)。
”
(いずれの出力チャネルにも名前を指定しない場合)。
あるいは,自動的なベクトル拡張を使用して多出力モデルの出力名を割り当てることもできます。たとえば,sys
が2出力力モデルである場合は,以下のようになります。
sys。OutputName =“测量”;
出力名は自動的に{“测量(1)”,“测量”(2)}
へと拡張されます。
省略形表記y
を使用してOutputName
プロパティを参照することもできます。たとえば,sys.y
はsys。OutputName
と同じです。
OutputName
の使用目的は次のとおりです。
モデル表示とプロット上のチャネルの識別
米姆システムのサブシステムの抽出
モデル相互接続時における接続点の指定
OutputUnit
- - - - - -出力チャネル単位”
(既定値) |文字ベクトル|文字ベクトルの细胞配列出力チャネル単位。次のいずれかとして指定されます。
文字ベクトル(単出力モデルの場合)。
文字ベクトルの细胞配列(多出力モデルの場合)。
”
(いずれの出力チャネルにも単位を指定しない場合)。
OutputUnit
を使用して出力信号の単位を指定します。OutputUnit
はシステムの動作に影響しません。
OutputGroup
- - - - - -出力チャネルグループ出力チャネルグループ。構造体として指定します。OutputGroup
プロパティを使用して,米姆システムの出力チャネルをグループに割り当て,各グループを名前で参照します。OutputGroup
のフィールド名はグループ名であり,フィールドの値は各グループの出力チャネルです。以下に例を示します。
sys.OutputGroup.temperature = [1];sys.InputGroup.measurement = [3 5];
これは,出力チャネル1
,および3.
と5
をそれぞれ含む,温度
および测量
という出力グループを作成します。その後,以下を使用してすべての入力から测量
出力にサブシステムを抽出できます。
系统(“测量”:)
既定では,OutputGroup
はフィールドのない構造体です。
的名字
- - - - - -システム名”
(既定値) |文字ベクトルシステム名。文字ベクトルとして指定します。たとえば,“system_1”
とします。
笔记
- - - - - -ユーザー指定のテキスト{}
(既定値) |文字ベクトル|文字ベクトルの细胞配列システムに関連付けるユーザー指定のテキスト。文字ベクトルまたは文字ベクトルの细胞配列として指定します。たとえば,系统分配的
とします。
用户数据
- - - - - -ユーザー指定のデータ[]
(既定値) |任意のMATLABデータ型システムに関連付けるユーザー指定のデータ。任意のMATLABデータ型として指定します。
SamplingGrid
- - - - - -モデル配列のサンプリンググリッドモデル配列のサンプリンググリッド。構造体配列として指定します。
SamplingGrid
を使用して,モデル配列の各モデルに関連付けられている変数値を追跡します。これには同定された線形時不変(IDLTI)モデル配列も含まれます。
構造体のフィールド名をサンプリング変数の名前に設定します。フィールドの値を,配列内の各モデルに関連付けられているサンプリングされた変数の値に設定します。すべてのサンプリング変数は数値スカラーでなければならず、サンプル値のすべての配列はモデル配列の次元と一致しなければなりません。
たとえば,t = 0:10
の各時点で線形時変システムのスナップショットを記録することにより,線形モデルの11行1列の配列sysarr
を作成することができます。次のコードは線形モデルでの時間サンプルを格納します。
sysarr。SamplingGrid =结构(“时间”0:10)
同様に2つの変数ζ
とw
を個別にサンプリングすることにより,6行9列のモデル配列米
を作成できます。次のコードは(ζ,w)
の値を米
にマッピングします。
[zeta,w] = ndgrid(<6 values of zeta>,<9 values of w>)“ζ”ζ,' w 'w)
米
を表示する際,配列の各エントリは対応するζ
とw
の値を取り込みます。
米
(:: 1, - 1)(ζ= 0.3 w = 5) = 25 -------------- s ^ 2 + 3 s + 25米(:,:,2,1)[ζ= 0.35 w = 5] = 25 ---------------- s ^ 2 + 3.5 s + 25…
複数のパラメーター値または操作点で仿金宝app真软件®モデルを線形化することにより生成されたモデル配列の場合,SamplingGrid
には配列の各エントリに対応する変数値が自動的に入力されます。たとえば,金宝app仿真软件控制设计™のコマンド线性化
(金宝app仿真软件控制设计)およびslLinearizer
(金宝app仿真软件控制设计)により,SamplingGrid
が自動的に入力されます。
既定では,SamplingGrid
はフィールドのない構造体です。
以下のリストには,党卫军
モデルオブジェクトで使用できる関数の代表的なサブセットが含まれています。一般に,動的システムモデルに適用できるすべての関数は党卫军
オブジェクトに適用できます。
次の状態空間行列で定義される输出状態空間モデルを作成します。
行列A, B, CおよびDを指定して状態空間モデルを作成します。
一个= [-1.5,2;1,0];B = (0.5; 0);C = [0, 1];D = 0;sys = ss (A, B, C, D)
(1) C (2) y (1) 0 (1) D (1) y (1) 0 (1)
サンプル時間が0.25秒であり次の状態空間行列をもつ状態空間モデルを作成します。
状態空間行列を指定します。
A = [0 1;- 1];B = [0; 3);C = [0 1];D = 0;
サンプル時間を指定します。
t = 0.25;
状態空間モデルを作成します。
sys = ss (A, B, C, D, Ts);
この例では,慣性テンソルJ
0.2と振幅がの減衰力F
で角を中心にして回転しているキューブについて考えます。システムへの入力は駆動トルクであり,角速度が出力です。このキューブの状態空間行列は次のようになります。
行列一个
、B
、C
およびD
を指定して,連続時間状態空間モデルを作成します。
J = [8 -3 -3;3 8 3;3 3 8];F = 0.2 *眼(3);= - j \ F;B =发票(J);C =眼(3);D = 0;sys = ss (A, B, C, D)
sys = = (x1, x2) x3 x1 x2 -0.04545 -0.02727 -0.02727 -0.02727 -0.04545 -0.02727 x3 -0.02727 -0.02727 -0.04545 B = u1, u2 u3 x1 x2 0.2273 0.1364 0.1364 0.1364 0.2273 0.1364 x3 0.1364 0.1364 0.2273 C = (x1, x2) x3 y1 1 0 0 y2 0 1 0 y3 0 0 1 D = u1, u2 u3 y1 0 0 0 y2 0 0 0 0 0 0 3日元连续时间状态空间模型。
行列C
および行列D
を見ると,システムには3つの入力と3つの出力が含まれているため,sys
はMIMOです。米我米O 状態空間モデルの詳細については、米姆状態空間モデルを参照してください。
次の離散時間,多入力,多出力の,サンプル時間t = 0.2
秒の状態行列を使用して,状態空間モデルを作成します。
状態空間行列を指定して,離散時間MIMO状態空間モデルを作成します。
A = [7, 0, 0, -10);B = [5, 0, 0, 2];C =(1, 4, 4、0.5);D =[0 2; 2、0];t = 0.2;sys = ss (A, B, C, D, ts)
C = x1 x2 y1 1 -4 y2 -4 0.5 D = u1 u2 y1 0 -2 y2 2 0采样时间:0.2秒
状態空間行列を作成し,サンプル時間を指定します。
A = [0 1;- 1];B = [0; 3);C = [0 1];D = 0;t = 0.05;
値と名前のペアを使用して状態名と入力名を指定し,状態空間モデルを作成します。
sys = ss (A, B, C, D, Ts,“StateName”,{“位置”“速度”},...“InputName”,“力”);
状態名と入力名の数は,一个
、B
、C
,およびD
の次元と一致しなければなりません。
入力と出力に名前を付けるのは,米姆システムで応答プロットを扱うときに有用である可能性があります。
步骤(系统)
ステップ応答プロットのタイトルの入力名力
に注目してください。
この例では,別の状態空間モデルから継承された,同じ时间プロパティと输入单位プロパティをもつ状態空間モデルを作成します。次の状態空間モデルについて考えます。
まず,TimeUnit
プロパティおよびInputUnit
プロパティが”分钟
“に設定された状態空間モデルsys1
を作成します。
A1 = [-1.5, 2; 1,0];B1 = (0.5; 0);C1 = [0, 1];D1 = 5;sys1 = ss (A1, B1, C1, D1,“TimeUnit”,“分钟”,“InputUnit”,“分钟”);
sys1
の时间プロパティおよび输入单位プロパティが”分钟
“に設定されていることを検証します。
propValues1 = [sys1.TimeUnit sys1.InputUnit]
propValues1 =1 x2单元格{“分钟”}{“分钟”}
sys1
から継承されたプロパティをもつ2つ目の状態空間モデルを作成します。
A2 = [7, 1, 0, 2];B2 = (0.85; 2);C2 = (10, 14);D2 = 2;sys2 = ss (A2, B2, C2, D2, sys1);
sys2
がの时间および输入单元sys1
から継承されていることを検証します。
propValues2 = [sys2.TimeUnit sys2.InputUnit]
propValues2 =1 x2单元格{“分钟”}{“分钟”}
この例では,静的ゲインのMIMO状態空間モデルを作成します。
2次の入力,2出力の静的ゲイン行列について考えます。
ゲイン行列を指定して静的ゲイン状態空間モデルを作成します。
D =[2、4;3、5];sys1 = ss (D)
sys1 = D = u1 u2 y1 2 4 y2 3 5静态增益。
以下の伝達関数の状態空間モデルを計算します。
伝達関数モデルを作成します。
H = [tf([1 1],[1 3 3 2]);Tf ([1 0 3],[1 1 1])];
このモデルを状態空間モデルに変換します。
sys = ss (H);
状態空間モデルのサイズを調べます。
大小(系统)
状态空间模型,有2个输出,1个输入,5个状态。
状態の数は,H(年代)の输出エントリの累積次数に等しくなります。
H(年代)の最小実現を得るには,次のように入力します。
sys = ss (H,“最低”);大小(系统)
状态空间模型,有2个输出,1个输入,3个状态。
結果として得られるモデルの次数は3です。これは,H(年代)を表現するために必要とされる最小の状態数です。この状態数を確認するには,H(年代)を1次系と2次系の積としてリファクタリングします。
この例では,同定された多項式モデルの測定成分とノイズ成分を2つの別々の状態空間モデルに抽出します。
identifiedModel.mat
のBox-Jenkins多項式モデルltiSys
を読み込みます。
负载(“identifiedModel.mat”,“ltiSys”);
ltiSys
は同定された
形式の離散時間モデルで,
は測定成分,
はノイズ成分を表します。
測定成分とノイズ成分を状態空間モデルとして抽出します。
sysMeas = ss (ltiSys,“测量”)
sysMeas = A = x1 x2 x1 1.575 -0.6115 x2 1 0 B = u1 x1 x1 0.5 x2 0 C = x1 x2 y1 -0.2851 0.3916 D = u1 y1 0输入延迟(采样周期):2采样时间:0.04秒
结合sysNoise = ss (ltiSys,“噪音”)
结合sysNoise = = (x1, x2) x3 x1 1.026 -0.26 0.3899 1 x2 0 0 x3 0.5 0 0 B = 0.25 v@y1 x1 x2 0 x3 0 x1 C = x3日元0.319 -0.04738 0.07106 0.04556 D = v@y1 y1输入组:名字通道噪声1样品时间:0.04秒离散时间状态空间模型。
測定成分はプラントモデルとすることができ,ノイズ成分は制御システム設計の外乱モデルとして使用できます。
記述子状態空間モデル(E≠我)を作成します。
A = [2 -4;4 2];b = [1;0.5);C = [-0.5, -2];d = [1];E = [10 0;3 0.5);sysd = dss (a, b, c, d, e);
システムの明示的な実現(E=我)を計算します。
syse = ss (sysd,“明确”)
A = x1 x2 x1 2 -4 x2 20 -20 B = u1 x1 -1 x2 -5 C = x1 x2 y1 -0.5 -2 D = u1 y1 -1连续时间状态空间模型。
記述子と明示的な実現には等価なダイナミクスがあることを確認します。
bodeplot (sysd syse,“g——”)
この例では,固定パラメーターと調整可能なパラメーターの両方をもつ状態空間一族
モデルを作成する方法を説明します。
ここで,一个とbは初期値がそれぞれ-1
と3.
の調整可能なパラメーターです。
realp
を使用して調整可能なパラメーターを作成します。
一个= realp (“一个”1);b = realp (“b”3);
一个
とb
の代数式を使って一般化行列を定義します。
A = [1 A +b;0 A *b];
一个
は,块
プロパティに一个
とb
を含む一般化行列です。一个
とb
の初期値から,一个
の初期値は(1 2; 0 3)
です。
固定値状態空間行列を作成します。
B = [-3.0, 1.5];C = [0.3 0];D = 0;
党卫军
を使用して状態空間モデルを作成します。
sys = ss (A, B, C, D)
sys =广义连续时间状态空间模型,具有1个输出、1个输入、2个状态和以下块:a:标量参数,2次出现。b:标量参数,2次。输入“ss(sys)”查看当前值,输入“get(sys)”查看所有属性,输入“sys. sys”查看当前值。与积木互动。
sys
は,調整可能なパラメーター一个
およびb
を含む一般化LTIモデル(一族
)です。
この例では,次の状態空間行列で定義された输出状態空間モデルについて考えます。
0.5秒の入力遅延と2.5秒の出力遅延を考慮し,行列A, B, CおよびDを表す状態空間モデルオブジェクトを作成します。
一个= [-1.5,2;1,0];B = (0.5; 0);C = [0, 1];D = 0;sys = ss (A, B, C, D,“InputDelay”, 0.5,“OutputDelay”, 2.5)
sys = A = x1 x2 x1 -1.5 -2 x2 1 0 B = u1 x1 x1 0.5 x2 0 C = x1 x2 y1 0 1 D = u1 y1 0输入延迟(秒):0.5输出延迟(秒):2.5连续时间状态空间模型。
得到
コマンドを使用してMATLABオブジェクトのすべてのプロパティを表示することもできます。
(系统)
[2 x2双]B: [2 x1双]C: [0 1] D: 0 E:[]扩展:0 StateName: {2 x1细胞}StatePath: {2 x1细胞}StateUnit: {2 x1细胞}InternalDelay: [0 x1双]InputDelay: 0.5000 OutputDelay: 2.5000 Ts: 0 TimeUnit:“秒”InputName: {"} InputUnit: {"} InputGroup: [1 x1 struct] OutputName: {"} OutputUnit: {"} OutputGroup: [1 x1 struct]指出:[0x1 string] UserData: [] Name: " SamplingGrid: [1x1 struct] "
LTIモデルのむだ時間の指定の詳細については,むだ時間の指定を参照してください。
この例では,次の状態行列を表す状態空間システムオブジェクトについて考えます。
党卫军
コマンドを使用して状態空間オブジェクトsys
を作成します。
= (-1.2, -1.6, 0; 1, 0, 0, 0, 1, 0];B = (1, 0, 0);C =(0、0.5、1.3);D = 0;sys = ss (A, B, C, D);
次に,負の単位ゲインについて閉ループ状態空間モデルオブジェクトを計算し,閉ループ状態空間システムオブジェクトsysFeedback
を見つけます。
sysFeedback =反馈(sys, 1);P =杆(sysFeedback)
P =3×1复杂-0.2305 - 1.3062i -0.7389 + 0.00000 i
単位ゲインのフィードバックループは,すべての極が負の実数部をもつため安定しています。閉ループの極を確認すると,安定性を2進数で評価できます。業務上は,安定性が堅牢(または脆弱)であるかがわかると非常に役に立ちます。堅牢性を示すものとして,安定性が失われる前の,ループゲインの変化の度合いがあります。根軌跡プロットを使用すると,ループが安定しているk
値の範囲を推定できます。
rlocus(系统)
ループゲインの変化は堅牢な安定性を示す1つの要素にすぎません。一般的に,不完全なプラントのモデル化は,ゲインと位相の両方が正確にわかっていないことを意味します。モデル化誤差はゲインの交差周波数(開ループゲインが0分贝の周波数)付近で最も悪影響を及ぼすため,この周波数でどの程度の位相の変化を許容できるかも問題になります。
ゲイン余裕と位相余裕は,以下のようにボード線図に表示できます。
波德(sys)网格
より詳細な例については,ゲインと位相余裕の評価を参照してください。
この例では,次の行列で表されるシステムについて,0.75 rad / sのターゲット帯域幅をもつ二自由度PIDコントローラーを設計します。
党卫军
コマンドを使用して状態空間オブジェクトsys
を作成します。
一个= (-0.5,-0.1,1,0);B = (1, 0);C = [0, 1];D = 0;sys = ss (A, B, C, D)
(1) C (1) y (1) 0 (1) D (1) y (1) 0 (1)
ターゲット帯域幅を使用し,pidtune
を使用して二自由度コントローラーを生成します。
wc = 0.75;C2 = pidtune (sys,“PID2”wc)
C2 = 1 u = Kp (b*r-y) + Ki——(r-y) + Kd*s (c*r-y) s,具有Kp = 0.513, Ki = 0.0975, Kd = 0.577, b = 0.344, c = 0并联形式的连续二自由度PID控制器。
タイプ“PID2”
を使用すると,pidtune
により二自由度コントローラーが生成され,pid2
オブジェクトとして表現されます。表示によりこの結果を確認します。表示にはまた,pidtune
がすべてのコントローラー係数を,設定点の重みb
およびc
を含めて調整し,性能とロバスト性のバランスを取っていることも示されます。
ライブエディターによる対話型のPID調整については,PIDコントローラーの調整ライブエディタータスクを参照してください。このタスクを使用すると,PIDコントローラーを対話的に設計し,ライブスクリプト用のMATLABコードを自動的に生成できます。
スタンドアロンアプリによる対話型のPID調整には,PID調整器を使用します。アプリを使用したコントローラーの設計の例については、高速設定値追従用のPIDコントローラーの設計を参照してください。
5つの入力と4つの出力をもつ状態空間プラントG
3,およびつの入力と2つの出力をもつ状態空間フィードバックコントローラーK
を考えてみましょう。プラントG
の出力1、3、4をコントローラーK
の入力に接続し,コントローラー出力をプラントの入力4と2に接続しなければなりません。
この例では,次の一連の行列によって表されるG
およびK
の両方についての2つの連続時間状態空間モデルについて考えます。
AG) = [3, 0.4, 0.3, -0.5, -2.8, -0.8, 0.2, 0.8, 3];BG = [0.4, 0, 0.3, 0.2, 0; -0.2,, 0.1, -0.9, -0.5, 0.6, 0.9, 0.5, 0.2, 0];CG =[0、-0.1、1;0,-0.2,1.6,-0.7,1.5,1.2,-1.4,-0.2,0];DG = [0, 0, 0, 0, 1, 0, 0.4, -0.7, 0, 0.9, 0, 0.3, 0, 0, 0, 0.2, 0, 0, 0, 0);sysG = ss (AG)、BG、CG DG)
sysG = 0.3 = 0.4 (x1, x2) x3 x1 3 x2 -0.5 -2.8 -0.8 x3 0.2 - 0.8 3 B = u1, u2 u3 u4 u5 x1 0.4 0 1 0.1 -0.9 -0.5 -0.2 0.3 - 0.2 0 x2 x3 0.6 0.9 0.5 0.2 0 C = -0.1 (x1, x2) x3 y1 0 1 y2 0 -0.2 1.6 y3日元-0.7 1.5 1.2 -1.4 -0.2 0 D = u1, u2 u3 u4 u5 y1 0 0 0 0 1 y2 0 0.3 0.4 - -0.7 0.9 y3 0 0 0 0 y4 0.2 0 0 0 0连续时间状态空间模型。
正义与发展党= (-0.2,2.1,0.7,-2.2,-0.1,-2.2,-0.4,2.3,-0.2);BK = (-0.1, -2.1, -0.3, -0.1, 0, 0.6; 1, 0, 0.8);CK = [1, 0, 0, -0.4, -0.2, 0.3);DK = [0, 0, 0, 0, 0, -1.2);sysK = ss (AK, BK, CK, DK)
sysK = = (x1, x2) x3 x1 x2 -0.2 2.1 0.7 -2.2 -0.1 -2.2 x3 -0.4 2.3 -0.2 B = u1, u2 u3 x1 0.6 -0.1 -0.1 -2.1 -0.3 x2 0 x3 1 0 x1 0.8 C = x3 y1 1 0 0 y2 -0.4 -0.2 0.3 D = u1, u2 u3 y1 0 0 0 y2 0 0 -1.2连续时间状态空间模型。
フィードバックループで接続される入力と出力に基づいてfeedout
およびfeedin
ベクトルを定義します。
Feedin = [4 2];Feedout = [1 3 4];sys =反馈(sysG sysK、feedin feedout, 1)
sys = = (x1, x2) x3 x4 x5 x6 x1 3 0 0 x2 1.18 -2.56 -0.8 0.4 0.3 0.2 -1.3 -1.312 - 0.584 -0.2 - 0.3 x3 3 x4 -0.27 0.56 - 0.18 2.948 -2.929 -2.42 -2.2 -0.84 -0.11 0.1 -2.2 -0.1 -0.452 1.974 0.889 x5 x6 1 -1.12 -0.26 -0.4 2.3 -0.2 B = u1, u2 u3 u4 u5 x1 0.4 0 1 0.1 -0.9 -0.5 -0.44 0.3 - 0.2 0 x2 x3 0.816 0.9 0.5 0.2 0 x4 -0.2112 - -0.63 0 0 0.1 x5 0.12 0 0 00.1x60.16000 -1 C = x1 x2 x3 x4 x5 x6 y1 0 -0.1 -1 0 0 0 y2 -0.672 -0.296 1.6 0.16 0.08 -0.12 y3 -1.204 1.428 1.2 0.12 0.06 -0.09 y4 -1.4 -0.2 0 0 0 0 D = u1 u2 u3 u4 u5 y1 0 0 0 0 -1 y2 0.096 0.4 -0.7 0 0.9 y3 0.072 0.3 0 0 0 y4 0.2 0 0 0 0 Continuous-time state-space model.
大小(系统)
有4个输出,5个输入,6个状态的状态空间模型。
sys
は,G
とK
の指定された入力と出力を接続して取得される結果の閉ループ状態空間モデルです。
次のMATLABコマンドに対応するリンクがクリックされました。
コマンドをMATLABコマンドウィンドウに入力して実行してください。WebブラウザーはMATLABコマンドをサポートしていません。
你也可以从以下列表中选择一个网站:
选择中国网站(中文或英文)以获得最佳网站性能。其他MathWorks国家站点没有针对您所在位置的访问进行优化。