主要内容

このページの翻訳は最新ではありません。ここをクリックして,英語の最新版を参照してください。

党卫军

説明

党卫军を使用して実数値の,または複素数値の状態空間モデルを作成したり,動的システムモデルを状態空間モデル形式に変換したりします。党卫军を使用して,一般化状態空間(一族)モデルや不確かさをもつ状態空間(号航空母舰(鲁棒控制工具箱))モデルを作成することもできます。

状態空間モデルは1階微分方程式で関連付けられる一連の入力,出力,および状態変数としての物理システムの数学的な表現です。状態変数は出力変数の値を定義します。党卫军モデルオブジェクトは输出またはMIMO状態空間モデルを連続時間または離散時間で表現できます。

連続時間では,状態空間モデルは次の形式をとります。

x ˙ 一个 x + B u y C x + D u

ここで,xuおよびyはそれぞれ状態,入力および出力を表し,一个BCおよびDは状態空間行列です。党卫军オブジェクトは,一个BCおよびDを,サンプル時間,名前,入力および出力に固有の遅延などの情報と共に格納しているMATLAB®の状態空間モデルを表します。

状態と入力行列および出力行列を直接指定して,または別の種類のモデル(伝達関数モデル特遣部队など)を変換して,状態空間モデルオブジェクトを作成することができます。詳細については,状態空間モデルを参照してください。党卫军モデルオブジェクトを使用して次のことができます。

  • 線形解析を実行する

  • 制御設計を実行するための線形時不変(LTI)モデルを表す

  • 他のLTIモデルと組み合わせて,より複雑なシステムを表現する

作成

説明

sys= ss (一个BCDは,次の形式の連続時間状態空間モデルオブジェクトを作成します。

x ˙ 一个 x + B u y C x + D u

たとえば,Nx個の状態,纽约個の出力,ν個の入力をもつプラントについて考えます。状態空間行列は次のようになります。

  • 一个は,NxNx列の実数値または複素数値の行列です。

  • Bは,Nxν列の実数値または複素数値の行列です。

  • Cは,纽约Nx列の実数値または複素数値の行列です。

  • Dは,纽约ν列の実数値または複素数値の行列です。

sys= ss (一个BCDtsは,サンプル時間ts(秒)をもつ次の形式の離散時間状態空間モデルオブジェクトを作成します。

x n + 1 一个 x n + B u n y n C x n + D u n

サンプル時間を未指定のままにするには,ts-1に設定します。

sys= ss (一个BCDltiSysは,入力名および出力名,内部遅延およびサンプル時間の値などのプロパティをモデルltisysから継承した状態空間モデルを作成します。

sys= ss (Dは,静的ゲインDを表す状態空間モデルを作成します。出力状態空間モデルは党卫军 ([],[],[], D)と等価です。

sys= ss (___名称,值は,前述の任意の入力引数の組み合わせについて名称,值のペアの引数を1つ以上使用して,状態空間モデルのプロパティを設定します。

sys= ss (ltiSysは,動的システムモデルltiSysを状態空間モデルに変換します。ltiSysに調整可能な要素,または不確かさの要素が含まれている場合,党卫军は,それらの要素に対して,それぞれ現在の値,またはノミナル値を使用します。

sys= ss (ltiSys组件は,同定された線形時不変(LTI)モデルltiSysのうち,指定された组件の測定成分,ノイズ成分またはその両方を党卫军オブジェクト形式に変換します。この構文は,ltiSysが,idtf(系统辨识工具箱)中的难点(系统辨识工具箱)idproc(系统辨识工具箱)idpoly(系统辨识工具箱)またはidgrey(系统辨识工具箱)オブジェクトなどの,同定された(LTI)モデルである場合にのみ使用します。

sys= ss (ssSys“最小”)は,状態が制御不可能でも観測不可能でもない,最小限の状態空間実現を返します。この実現はminreal (ss (sys))と等価です。ここで,行列一个は可能な限り最小の次元をもちます。

状態空間形式への変換は,输出の場合は一意的には定義されません。また,米姆の場合には,実現が最小になることも保証されません。詳細は,推奨される使用表現を参照してください。

sys= ss (ssSys,“显式”)は動的システム状態空間モデルssSysの明示的な状態空間実現(E = I)を返します。ssSysが非プロパーの場合,党卫军はエラーを返します。明示的な状態空間実現の詳細については,状態空間モデルを参照してください。

入力引数

すべて展開する

状態行列。NxNx列の行列として指定します。ここでNxは状態の数です。この入力はプロパティ一个の値を設定します。

入力から状態への行列。Nxν列の行列として指定します。ここでNxは状態の数,νは入力の数です。この入力はプロパティBの値を設定します。

状態から出力への行列。纽约Nx列の行列として指定します。ここでNxは状態の数,纽约は出力の数です。この入力はプロパティCの値を設定します。

直達行列。纽约ν列の行列として指定します。ここで纽约は出力の数,νは入力の数です。この入力はプロパティDの値を設定します。

スカラーとして指定されたサンプル時間。詳細については,Tsプロパティを参照してください。

状態空間形式に変換する動的システム。输出または天线系统動的システムモデル,または動的システムモデルの配列として指定します。変換できる動的システムには次のものが含まれます。

  • 特遣部队zpk党卫军,またはpidモデルなどの連続時間または離散時間の数値LTIモデル。

  • 一族号航空母舰(鲁棒控制工具箱)モデルなどの一般化された,あるいは不確かさをもつLTIモデル(不確かさをもつモデルを使用するには鲁棒控制工具箱™ソフトウェアが必要です)。

    結果として得られる状態空間モデルは次を仮定します。

    • 調整可能な制御設計ブロックについては調整可能なコンポーネントの現在値。

    • 不確かさをもつ制御設計ブロックについてはモデルのノミナル値。

  • idtf(系统辨识工具箱)中的难点(系统辨识工具箱)idproc(系统辨识工具箱)idpoly(系统辨识工具箱)idgrey(系统辨识工具箱)モデルなどの,同定されたLTIモデル。同定されたモデルの変換する成分を選択するには,组件を指定します。组件を指定しない場合,党卫军は,同定されたモデルの測定成分を既定で変換します。(同定されたモデルを使用するには系统辨识工具箱™ソフトウェアが必要です)。

同定されたモデルの変換対象とするコンポーネント。次のいずれかとして指定します。

  • “测量”- - - - - -sysの測定成分を変換します。

  • “噪音”- - - - - -sysのノイズ成分を変換します。

  • “增强”- - - - - -sysの測定成分とノイズ成分の両方を変換します。

组件が適用されるのは,sysが同定されたLTIモデルである場合のみです。

同定されたLTIモデルおよびその測定成分とノイズ成分の詳細については,同定されたLTIモデルを参照してください。

最小実現または明示的な形式に変換する動的システムモデル。党卫军モデルオブジェクトとして指定します。

出力引数

すべて展開する

出力システムモデル。以下として返されます。

  • 状態空間 (党卫军)モデルオブジェクト(入力一个BCおよびDが数値行列の場合,または別のモデルオブジェクトタイプから変換する場合)。

  • 一般化状態空間モデル(一族)オブジェクト(1つ以上の行列一个BCおよびDrealpパラメーターや一般化行列(genmat)などの調整可能なパラメーターが含まれている場合)。例については,固定パラメーターと調整可能なパラメーターの両方をもつ状態空間モデルの作成を参照してください。

  • 不確かさをもつ状態空間モデル(号航空母舰)オブジェクト(1つ以上の入力一个BCおよびDに不確かさをもつ行列が含まれている場合)。不確かさをもつモデルを使用するには鲁棒控制工具箱ソフトウェアが必要です。

プロパティ

すべて展開する

状態行列。NxNx列の行列として指定します。ここでNxは状態の数です。状態行列は,目的とする状態空間モデル実現に応じて、次のような様々な方法で表現できます。

  • モデル正準形式

  • コンパニオン正準形式

  • 可観測正準形式

  • 可制御正準形式

詳細については,正準状態空間実現を参照してください。

入力から状態への行列。Nxν列の行列として指定します。ここでNxは状態の数,νは入力の数です。

状態から出力への行列。纽约Nx列の行列として指定します。ここでNxは状態の数,纽约は出力の数です。

直達行列。纽约ν列の行列として指定します。ここで纽约は出力の数,νは入力の数です。Dは静的ゲイン行列とも呼ばれ,定常状態の条件下での入力に対する出力の比率を表します。

暗黙的な,または記述子の状態空間モデルの行列。NxNx列の行列として指定します。Eは既定では空であり,これは状態方程式が明示的であることを意味します。暗黙的な状態方程式E dx/dt = Ax + Buを指定するには,このプロパティを一个と同じサイズの正方行列に設定します。記述子状態空間モデルの作成の詳細は,dssを参照してください。

スケーリングが有効であるか無効であるかを示す逻辑値。0または1として指定します。

按比例缩小的0(無効)に設定されている場合,状態空間モデルsysで動作するほとんどの数値アルゴリズムは,数値的な精度の向上のため,状態ベクトルを自動的に再スケーリングします。こうした自動スケーリングは,按比例缩小的1(有効)に設定することで抑止できます。

スケーリングの詳細は,预分频を参照してください。

状態名。次のいずれかとして指定します。

  • 文字ベクトル-“速度”などの1次モデルの場合。

  • 文字ベクトルの细胞配列- 2つ以上の状態をもつモデルの場合。

StateNameは,既定ではすべての状態について空' 'です。

線形化で状態ブロックパスを管理しやすくするための状態パス。次のいずれかとして指定します。

  • 文字ベクトル- 1次モデルの場合

  • 文字ベクトルの细胞配列- 2つ以上の状態をもつモデルの場合

StatePathは,既定ではすべての状態について空' 'です。

状態単位。以下のいずれかとして指定します。

  • 文字ベクトル-“米/秒”などの1次モデルの場合

  • 文字ベクトルの细胞配列- 2つ以上の状態をもつモデルの場合

StateUnitを使用して,各状態の単位を追跡します。StateUnitはシステムの動作に影響しません。StateUnitは,既定ではすべての状態について空' 'です。

モデルの内部遅延。ベクトルとして指定します。内部遅延は、たとえば、システムで遅延のあるフィードバック ループを閉じるときや、遅延システムを順番にまたは並列で接続するときに生じます。内部遅延の詳細については、むだ時間のある閉フィードバックループを参照してください。

連続時間モデルの場合,内部遅延はモデルのTimeUnitプロパティで指定された時間単位で表現されます。離散時間モデルの場合,内部遅延はサンプル時間Tsの整数倍として表現されます。たとえばInternalDelay = 3は3サンプリング周期の遅延を意味します。

内部遅延の値はプロパティInternalDelayを使用して変更できます。ただし,sys。我ntern一个lDelayのエントリの数は,モデルの構造に組み込まれているので変更できません。

各入力チャネルの入力遅延。次のいずれかとして指定します。

  • スカラー——输出システムに入力遅延を,または多入力システムのすべての入力に同じ遅延を指定します。

  • ν行1列のベクトル——多入力システムの入力に別々の入力遅延を指定します。νは入力の数です。

連続時間システムの場合は,TimeUnitプロパティによって指定された時間単位で入力遅延を指定します。離散時間システムの場合は,サンプル時間Tsの整数倍で入力遅延を指定します。

詳細については,線形システムでのむだ時間を参照してください。

各出力チャネルの出力遅延。次のいずれかとして指定します。

  • スカラー——输出システムに出力遅延を,または多出力システムのすべての出力に同じ遅延を指定します。

  • 纽约行1列のベクトル——多出力システムの出力に別々の出力遅延を指定します。纽约は出力の数です。

連続時間システムの場合は,TimeUnitプロパティによって指定された時間単位で出力遅延を指定します。離散時間システムの場合は,サンプル時間Tsの整数倍で出力遅延を指定します。

詳細については,線形システムでのむだ時間を参照してください。

サンプル時間。以下として指定します。

  • 0(連続時間システムの場合)。

  • 離散時間システムのサンプリング周期を表す正のスカラー。TsTimeUnitプロパティによって指定される時間単位で指定します。

  • -1(サンプル時間が指定されていない離散時間システムの場合)。

メモ

Tsを変更してもモデルの離散化やリサンプリングは行われません。連続時間表現と離散時間表現の間の変換を行うには,汇集d2cを使用します。離散時間システムのサンプル時間を変更するには,d2dを使用します。

時間変数の単位。次のいずれかとして指定します。

  • “纳秒”

  • 微秒的

  • 的毫秒

  • “秒”

  • “分钟”

  • “小时”

  • “天”

  • “周”

  • “月”

  • “年”

TimeUnitの変更は他のプロパティには影響しませんが,システム全体の動作が変わります。chgTimeUnitを使用して,システム動作を変更せずに時間単位を変換します。

入力チャネル名。以下のいずれかとして指定します。

  • 文字ベクトル(単入力モデルの場合)。

  • 文字ベクトルの细胞配列(多入力モデルの場合)。

  • (いずれの入力チャネルにも名前を指定しない場合)。

あるいは,自動的なベクトル拡張を使用して多入力モデルの入力名を割り当てることもできます。たとえば,sysが2入力モデルである場合は,以下のようになります。

sys。我nputName =“控制”

入力名は自動的に{“控制(1)”,“控制”(2)}へと拡張されます。

省略形表記uを使用して,InputNameプロパティを参照できます。たとえば,sys.usys。我nputNameと同じです。

InputNameの使用目的は次のとおりです。

  • モデル表示とプロット上のチャネルの識別

  • 米姆システムのサブシステムの抽出

  • モデル相互接続時における接続点の指定

入力チャネル単位。以下のいずれかとして指定します。

  • 文字ベクトル(単入力モデルの場合)。

  • 文字ベクトルの细胞配列(多入力モデルの場合)。

  • (いずれの入力チャネルにも単位を指定しない場合)。

InputUnitを使用して入力信号の単位を指定します。InputUnitはシステムの動作に影響しません。

入力チャネルグループ。構造体として指定します。InputGroupプロパティを使用して,米姆システムの入力チャネルをグループに割り当て,各グループを名前で参照します。InputGroupのフィールド名はグループ名であり,フィールドの値は各グループの入力チャネルです。以下に例を示します。

sys.InputGroup.controls = [1 2];sys.InputGroup.noise = [3 5];

これは,入力チャネル12,および3.5をそれぞれ含む,控制および噪音という名前の入力グループを作成します。その後,以下を使用して控制入力からすべての出力にサブシステムを抽出できます。

sys (:,“控制”

既定では,InputGroupはフィールドのない構造体です。

出力チャネル名。次のいずれかとして指定されます。

  • 文字ベクトル(単出力モデルの場合)。

  • 文字ベクトルの细胞配列(多出力モデルの場合)。

  • (いずれの出力チャネルにも名前を指定しない場合)。

あるいは,自動的なベクトル拡張を使用して多出力モデルの出力名を割り当てることもできます。たとえば,sysが2出力力モデルである場合は,以下のようになります。

sys。OutputName =“测量”

出力名は自動的に{“测量(1)”,“测量”(2)}へと拡張されます。

省略形表記yを使用してOutputNameプロパティを参照することもできます。たとえば,sys.ysys。OutputNameと同じです。

OutputNameの使用目的は次のとおりです。

  • モデル表示とプロット上のチャネルの識別

  • 米姆システムのサブシステムの抽出

  • モデル相互接続時における接続点の指定

出力チャネル単位。次のいずれかとして指定されます。

  • 文字ベクトル(単出力モデルの場合)。

  • 文字ベクトルの细胞配列(多出力モデルの場合)。

  • (いずれの出力チャネルにも単位を指定しない場合)。

OutputUnitを使用して出力信号の単位を指定します。OutputUnitはシステムの動作に影響しません。

出力チャネルグループ。構造体として指定します。OutputGroupプロパティを使用して,米姆システムの出力チャネルをグループに割り当て,各グループを名前で参照します。OutputGroupのフィールド名はグループ名であり,フィールドの値は各グループの出力チャネルです。以下に例を示します。

sys.OutputGroup.temperature = [1];sys.InputGroup.measurement = [3 5];

これは,出力チャネル1,および3.5をそれぞれ含む,温度および测量という出力グループを作成します。その後,以下を使用してすべての入力から测量出力にサブシステムを抽出できます。

系统(“测量”:)

既定では,OutputGroupはフィールドのない構造体です。

システム名。文字ベクトルとして指定します。たとえば,“system_1”とします。

システムに関連付けるユーザー指定のテキスト。文字ベクトルまたは文字ベクトルの细胞配列として指定します。たとえば,系统分配的とします。

システムに関連付けるユーザー指定のデータ。任意のMATLABデータ型として指定します。

モデル配列のサンプリンググリッド。構造体配列として指定します。

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はフィールドのない構造体です。

オブジェクト関数

以下のリストには,党卫军モデルオブジェクトで使用できる関数の代表的なサブセットが含まれています。一般に,動的システムモデルに適用できるすべての関数は党卫军オブジェクトに適用できます。

すべて展開する

一步 動的システムのステップ応答プロット,ステップ応答データ
冲动 動的システムのインパルス応答プロット,インパルス応答データ
lsim 動的システムの任意の入力へのシミュレーションされた時間応答をプロットする。シミュレーションされた応答データ
波德 周波数応答,またはゲインと位相データのボード線図
尼奎斯特 周波数応答のナイキスト線図
尼克尔斯 周波数応答のニコルス線図
带宽 周波数応答帯域幅
動的システムの極
输出動的システムの零点とゲイン
pzplot プロットのカスタマイズオプションを使用した動的システムモデルの極——零点プロット
保证金 增益裕度、相位裕度和交叉频率
zpk 零点-極ゲインモデル
特遣部队 伝達関数モデル
汇集 連続時間から離散時間へモデルを変換
d2c 離散時間から連続時間へモデルを変換
d2d 離散時間モデルのリサンプリング
反馈 複数のモデルのフィードバック接続
连接 動的システムのブロック線図相互接続
系列 2つのモデルの直列接続
平行 2つのモデルの並列接続
pidtune 線形プラントモデルのためのPID調整アルゴリズム
rlocus 動的システムの根軌跡プロット
等方面 線形2次レギュレーター(LQG)設計
lqg 線形2次ガウシアン(LQG)設計
lqi 線形 2 次積分制御
卡尔曼 カルマンフィルター設計,カルマン推定器

すべて折りたたむ

次の状態空間行列で定義される输出状態空間モデルを作成します。

一个 - 1 5 - 2 1 0 B 0 5 0 C 0 1 D 0

行列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秒であり次の状態空間行列をもつ状態空間モデルを作成します。

一个 0 1 - 5 - 2 B 0 3. C 0 1 D 0

状態空間行列を指定します。

A = [0 1;- 1];B = [0; 3);C = [0 1];D = 0;

サンプル時間を指定します。

t = 0.25;

状態空間モデルを作成します。

sys = ss (A, B, C, D, Ts);

この例では,慣性テンソルJ0.2と振幅がの減衰力Fで角を中心にして回転しているキューブについて考えます。システムへの入力は駆動トルクであり,角速度が出力です。このキューブの状態空間行列は次のようになります。

一个 - J - 1 F B J - 1 C D 0 w h e r e J 8 - 3. - 3. - 3. 8 - 3. - 3. - 3. 8 一个 n d F 0 2 0 0 0 0 2 0 0 0 0 2

行列一个BCおよび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秒の状態行列を使用して,状態空間モデルを作成します。

一个 - 7 0 0 - 1 0 B 5 0 0 2 C 1 - 4 - 4 0 5 D 0 - 2 2 0

状態空間行列を指定して,離散時間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”“力”);

状態名と入力名の数は,一个BC,およびDの次元と一致しなければなりません。

入力と出力に名前を付けるのは,米姆システムで応答プロットを扱うときに有用である可能性があります。

步骤(系统)

图中包含一个坐标轴。标题为From: Force To: Out(1)的轴包含一个铅字行对象。该对象表示sys。

ステップ応答プロットのタイトルの入力名に注目してください。

この例では,別の状態空間モデルから継承された,同じ时间プロパティと输入单位プロパティをもつ状態空間モデルを作成します。次の状態空間モデルについて考えます。

一个 1 - 1 5 - 2 1 0 B 1 0 5 0 C 1 0 1 D 1 5 一个 2 7 - 1 0 2 B 2 0 8 5 2 C 2 1 0 1 4 D 2 2

まず,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

ゲイン行列を指定して静的ゲイン状態空間モデルを作成します。

D =[2、4;3、5];sys1 = ss (D)
sys1 = D = u1 u2 y1 2 4 y2 3 5静态增益。

以下の伝達関数の状態空間モデルを計算します。

H 年代 年代 + 1 年代 3. + 3. 年代 2 + 3. 年代 + 2 年代 2 + 3. 年代 2 + 年代 + 1

伝達関数モデルを作成します。

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次系の積としてリファクタリングします。

H 年代 1 年代 + 2 0 0 1 年代 + 1 年代 2 + 年代 + 1 年代 2 + 3. 年代 2 + 年代 + 1

この例では,同定された多項式モデルの測定成分とノイズ成分を2つの別々の状態空間モデルに抽出します。

identifiedModel.matのBox-Jenkins多項式モデルltiSysを読み込みます。

负载(“identifiedModel.mat”“ltiSys”);

ltiSysは同定された y t B F u t + C D e t 形式の離散時間モデルで, B F は測定成分, C D はノイズ成分を表します。

測定成分とノイズ成分を状態空間モデルとして抽出します。

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——”

图中包含2个轴。axis 1包含2个类型为line的对象。这些对象表示sysd, syse。axis 2包含2个类型为line的对象。这些对象表示sysd, syse。

この例では,固定パラメーターと調整可能なパラメーターの両方をもつ状態空間一族モデルを作成する方法を説明します。

一个 1 一个 + b 0 一个 b B - 3. 0 1 5 C 0 3. 0 D 0

ここで,一个bは初期値がそれぞれ-13.の調整可能なパラメーターです。

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モデル(一族)です。

この例では,次の状態空間行列で定義された输出状態空間モデルについて考えます。

一个 - 1 5 - 2 1 0 B 0 5 0 C 0 1 D 0

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モデルのむだ時間の指定の詳細については,むだ時間の指定を参照してください。

この例では,次の状態行列を表す状態空間システムオブジェクトについて考えます。

一个 - 1 2 - 1 6 0 1 0 0 0 1 0 B 1 0 0 C 0 0 5 1 3. D 0 状态矩阵

党卫军コマンドを使用して状態空間オブジェクト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(系统)

图中包含一个坐标轴。轴线包含5个线型对象。该对象表示sys。

ループゲインの変化は堅牢な安定性を示す1つの要素にすぎません。一般的に,不完全なプラントのモデル化は,ゲインと位相の両方が正確にわかっていないことを意味します。モデル化誤差はゲインの交差周波数(開ループゲインが0分贝の周波数)付近で最も悪影響を及ぼすため,この周波数でどの程度の位相の変化を許容できるかも問題になります。

ゲイン余裕と位相余裕は,以下のようにボード線図に表示できます。

波德(sys)网格

图中包含2个轴。Axes 1包含一个类型为line的对象。该对象表示sys。Axes 2包含一个类型为line的对象。该对象表示sys。

より詳細な例については,ゲインと位相余裕の評価を参照してください。

この例では,次の行列で表されるシステムについて,0.75 rad / sのターゲット帯域幅をもつ二自由度PIDコントローラーを設計します。

一个 - 0 5 - 0 1 1 0 B 1 0 C 0 1 D 0

党卫军コマンドを使用して状態空間オブジェクト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つの出力をもつ状態空間プラントG3,およびつの入力と2つの出力をもつ状態空間フィードバックコントローラーKを考えてみましょう。プラントGの出力1、3、4をコントローラーKの入力に接続し,コントローラー出力をプラントの入力4と2に接続しなければなりません。

この例では,次の一連の行列によって表されるGおよびKの両方についての2つの連続時間状態空間モデルについて考えます。

一个 G - 3. 0 4 0 3. - 0 5 - 2 8 - 0 8 0 2 0 8 - 3. B G 0 4 0 0 3. 0 2 0 - 0 2 - 1 0 1 - 0 9 - 0 5 0 6 0 9 0 5 0 2 0 C G 0 - 0 1 - 1 0 - 0 2 1 6 - 0 7 1 5 1 2 - 1 4 - 0 2 0 D G 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

一个 K - 0 2 2 1 0 7 - 2 2 - 0 1 - 2 2 - 0 4 2 3. - 0 2 B K - 0 1 - 2 1 - 0 3. - 0 1 0 0 6 1 0 0 8 C K - 1 0 0 - 0 4 - 0 2 0 3. D K 0 0 0 0 0 - 1 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は,GKの指定された入力と出力を接続して取得される結果の閉ループ状態空間モデルです。

R2006aより前に導入