Main Content

MATLAB システム ブロックのサンプル時間の指定

ブロックのサンプル時間とは、ブロックが出力を生成する時期、そしてその内部状態を更新する時期を示すパラメーターです。MATLAB System ブロックにサンプル時間を指定するには、createSampleTime を呼び出す getSampleTimeImpl メソッドを実装します。現在のサンプル時間とシミュレーション時間を確認するために MATLAB System ブロックをクエリするには、getSampleTime メソッドと getCurrentTime メソッドを使用します。詳細については、MATLAB System ブロックの System object のサンプル時間の指定を参照してください。

MATLAB System ブロックのサンプル時間のタイプ

シミュレーションで離散サンプル時間を使用する場合、Simulink® が計算するのは、各固定時間間隔でのシミュレーションの出力のみです。離散サンプル時間を指定するには、createSampleTime'Type''Discrete' に設定してから 'SampleTime' プロパティを設定します。

サンプル時間が継承される場合、Simulink はモデル内のブロックの役割に応じて、ブロックの最適なサンプル時間を決定します。継承されるサンプル時間を指定するには、createSampleTime'Type''Inherited' に設定します。継承されるサンプル時間を使用するとき、'AlternatePropagation' または 'ErrorOnPropagation' の名前と値のペアを指定することで、特定のサンプル時間を変更したり、エラー終了させることができます。

固定マイナー ステップ サンプル時間では、Simulink はマイナー タイム ステップでブロックを実行せず、更新はメジャー タイム ステップでのみ行われます。固定マイナー タイム ステップを指定するには、createSampleTime'Type''Fixed In Minor Step' に設定します。

制御可能なサンプル時間を使用するには、分解能 Tbase をもつ制御可能なサンプル時間を指定してブロックを構成します。Tbase は、ブロック実行間の最小許容時間間隔です。制御可能なサンプル時間を使用するブロックは、Tbasen 倍時に実行するよう動的に設定できます。ブロックの次の実行は以下のようになります。

Tnext = n Tbase + T

MATLAB System ブロックで Tbase を指定するには、createSampleTime で、'Type''Controllable' に設定し 'TickTime' プロパティを Tbase に設定します。setNumTicksUntilNextHit を使用して、MATLAB System ブロックで n を設定できます。

サンプル時間のタイプの詳細については、サンプル時間のタイプを参照してください。System object™ メソッドを使用する MATLAB System ブロックのサンプル時間を制御する方法の例を確認するには、MATLAB System ブロックの System object のサンプル時間の指定を参照してください。

参考

| | | |

関連するトピック