Main Content

最新のリリースでは、このページがまだ翻訳されていません。 このページの最新版は英語でご覧になれます。

Discrete State-Space

離散状態空間システムの実現

  • ライブラリ:
  • Simulink / Discrete

説明

空でない行列に対するブロックの動作

Discrete State-Space ブロックは、次のように記述されるシステムを実現します。

x(n+1)=Ax(n)+Bu(n)y(n)=Cx(n)+Du(n),

ここで、u は入力、x は状態、y は出力です。行列係数は、下の図に示すように、次のような特性をもっていなければなりません。

  • [A] は、n 行 n 列の行列でなければなりません。n は状態数です。

  • [B] は、n 行 m 列の行列でなければなりません。m は入力数です。

  • [C] は、r 行 n 列の行列でなければなりません。r は出力数です。

  • [D] は、r 行 m 列の行列でなければなりません。

ブロックは 1 つの入力を受け入れ、1 つの出力を生成します。入力ベクトルの幅は [B] 行列と [D] 行列の列数です。出力ベクトルの幅は [C] 行列と [D] 行列の行数です。初期状態ベクトルを定義するには、[初期条件] パラメーターを使用します。

[A][B][C][D]、または [初期条件] にゼロのベクトルまたは行列を指定するには、関数 zeros を使用します。

空行列に対するブロックの動作

行列 [A][B]、および [C] が空である場合 (例: [])、ブロックの機能は y(n) = Du(n) になります。[初期条件] ベクトルも空である場合、ブロックはゼロの初期状態ベクトルを使用します。

端子

入力

すべて展開する

幅が [B] 行列と [D] 行列の列数と等しい入力ベクトル。詳細については、説明を参照してください。

ヒント

整数および固定小数点の入力信号の場合、Fixed-Point State-Space ブロックを使用します。

データ型: single | double

出力

すべて展開する

幅が [C] 行列と [D] 行列の行数と等しい出力ベクトル。詳細については、説明を参照してください。

データ型: single | double

パラメーター

すべて展開する

メイン

行列係数 A を実数の n 行 n 列の行列で指定します。n は状態数です。行列係数の詳細については、説明を参照してください。

プログラムでの使用

ブロック パラメーター: A
型: 文字ベクトル
値: スカラー | ベクトル | 行列
既定の設定: '1'

行列係数 B を実数の n 行 m 列の行列で指定します。n は状態数、m は入力数です。行列係数の詳細については、説明を参照してください。

プログラムでの使用

ブロック パラメーター: B
型: 文字ベクトル
値: スカラー | ベクトル | 行列
既定の設定: '1'

行列係数 C を実数の r 行 n 列の行列で指定します。r は出力数、n は状態数です。行列係数の詳細については、説明を参照してください。

プログラムでの使用

ブロック パラメーター: C
型: 文字ベクトル
値: スカラー | ベクトル | 行列
既定の設定: '1'

行列係数 D を実数の r 行 m 列の行列で指定します。r は出力数、m は入力数です。行列係数の詳細については、説明を参照してください。

プログラムでの使用

ブロック パラメーター: D
型: 文字ベクトル
値: スカラー | ベクトル | 行列
既定の設定: '1'

初期状態ベクトルをスカラーまたはベクトルとして指定します。初期状態ベクトルには、inf または NaN の値を含めることはできません。

プログラムでの使用

ブロック パラメーター: InitialCondition
型: 文字ベクトル
値: スカラー | ベクトル
既定の設定: '0'

サンプルの時間間隔を指定します。サンプル時間の指定を参照してください。

プログラムでの使用

ブロック パラメーター: SampleTime
型: 文字ベクトル
値: スカラー | ベクトル
既定の設定: '-1'

状態属性

ブロックの状態に固有名を割り当てるにはこのパラメーターを使用します。既定の設定は ' ' です。このフィールドが空白のままの場合、名前は割り当てられません。このパラメーターを使用する場合、以下のことを考慮してください。

  • 有効な識別子は英字またはアンダースコア文字で始まり、英数字またはアンダースコア文字が続きます。

  • 状態名は選択されたブロックに対してのみ適用されます。

このパラメーターを設定し、[適用] ボタンをクリックすると、[状態名を Simulink の信号オブジェクトに関連付ける] が有効になります。

詳細については、個別の信号、状態、およびパラメーター データ要素へのストレージ クラスの適用 (Simulink Coder)を参照してください。

プログラムでの使用

ブロック パラメーター: StateName
型: 文字ベクトル
値: 一意の名前
既定の設定: ''

状態名が Simulink® 信号オブジェクトに関連付けられるようにするには、このチェック ボックスをオンにします。

依存関係

このパラメーターを有効にするには、[状態名] の値を指定します。このパラメーターは、モデル コンフィギュレーション パラメーター [信号の関連付け][なし] 以外の値に設定している場合にのみ表示されます。

このチェック ボックスをオンにすると、[コード生成ストレージ クラス] が無効になります。

プログラムでの使用

ブロック パラメーター: StateMustResolveToSignalObject
型: 文字ベクトル
値: 'off' | 'on'
既定の設定: 'off'

ターゲット パッケージが定義する信号オブジェクト クラスを選択してカスタム ストレージ クラスのパッケージを選択します。たとえば、組み込みパッケージ mpt からカスタム ストレージ クラスを適用するには [mpt.Signal] を選択します。Embedded Coder® で ERT ベースのコード生成ターゲットを使用している場合を除き、カスタム ストレージ クラスは生成されたコードに影響しません。

目的のクラスがリストに表示されない場合は、[クラス リストのカスタマイズ] を選択します。詳細については、Load Storage Class Packages into Embedded Coder Dictionary (Embedded Coder)を参照してください。

ストレージ クラスの詳細については、個別の信号、状態、およびパラメーター データ要素へのストレージ クラスの適用 (Simulink Coder)を参照してください。カスタム ストレージ クラスの詳細については、Organize Parameter Data into a Structure by Using Struct Storage Class (Embedded Coder)を参照してください。

プログラムでの使用

ブロック パラメーター: StateSignalObject
型: 文字ベクトル
値: 'Simulink.Signal' | '<StorageClass.PackageName>'
既定の設定: 'Simulink.Signal'

コード生成の状態ストレージ クラスを選択します。

[信号オブジェクト クラス] を使用して、Simulink 以外のパッケージからカスタム ストレージ クラスを選択します。

依存関係

このパラメーターを有効にするには、[状態名] の値を指定します。

プログラムでの使用

ブロック パラメーター: StateStorageClass
型: 文字ベクトル
値: 'Auto' | 'Model default' | 'ExportedGlobal' | 'ImportedExtern' | 'ImportedExternPointer' | 'Custom' | ...
既定の設定: 'Auto'

const または volatile などのストレージ型修飾子を指定します。

メモ

TypeQualifier は将来のリリースで削除されます。ストレージ型修飾子をデータに適用するには、カスタム ストレージ クラスとメモリ セクションを使用します。Embedded Coder で ERT ベースのコード生成ターゲットを使用している場合を除き、カスタム ストレージ クラスとメモリ セクションは生成されたコードに影響しません。

シミュレーション時、このブロックは次の値を使用します。

  • 状態名が関係付けられる信号オブジェクトの初期値

  • 信号オブジェクトの最小値と最大値

詳細については、データ オブジェクトを参照してください。

依存関係

このパラメーターを有効にするには、[コード生成ストレージ クラス][ExportedGlobal][ImportedExtern][ImportedExternPointer] または [Model default] に設定します。このパラメーターは以前にこの値を設定している場合を除き、非表示です。

プログラムでの使用

ブロック パラメーター: RTWStateStorageTypeQualifier
型: 文字ベクトル
値: '' | 'const' | 'volatile' | ...
既定の設定: ''

ブロックの特性

データ型

double | single

直接フィードスルー

はい

多次元信号

いいえ

可変サイズの信号

いいえ

ゼロクロッシング検出

いいえ

拡張機能

PLC コード生成
Simulink® PLC Coder™ を使用して構造化テキスト コードを生成します。

R2006a より前に導入