このページの翻訳は最新ではありません。ここをクリックして、英語の最新版を参照してください。
サブシステム内のサンプル時間
サブシステムには、以下の 2 つのカテゴリがあります。Triggered と Non-Triggered です。Triggered Subsystem では、一般的にサブシステムのサンプル時間はトリガー信号から取得されます。1 つの例外は、Triggerブロックを使用して、Triggered Subsystem を作成する場合です。ブロックの[トリガー タイプ]を[関数呼び出し]に設定し、[サンプル時間タイプ]を[周期的]に設定すると、SampleTime
パラメーターがアクティブになります。この場合は、"ユーザー" がTriggerブロックのサンプル時間を指定します。それによって、サブシステムのサンプル時間が確立されます。
Non-Triggered Subsystem には次の 4 つの種類があります。
バーチャル
Enabled
Atomic
アクション
金宝app®は、バーチャル サブシステムおよび Enabled Subsystem のサンプル時間を、それらの内容のそれぞれのサンプル時間を基準として計算します。
Atomic Subsystem は、サブシステムのブロックにSystemSampleTime
パラメーターが含まれている特殊なケースです。さらに、–1 の既定値以外のサンプル時間に対し、Atomic Subsystem 内のブロックは、Inf
の値、–1、またはサブシステムのSampleTime
パラメーターの同一 (離散) 値のみをもつことができます。Atomic Subsystem が継承のまま残されている場合、Simulink ではバーチャル サブシステムや Enabled Subsystem と同じようにブロックのサンプル時間を計算します。ただし、サブシステムのSampleTime
パラメーターの主な目的は、Atomic Subsystem 内で、すべて継承に設定されている多数のブロックを同時に指定できるようにすることです。Atomic Subsystem で設定されたサンプル時間を取得するには、コマンド プロンプトで次のコマンドを使用します。
get_param(AtomicSubsystemBlock,‘SystemSampleTime’);
最後に、Action Subsystem のサンプル時間はIfブロックまたはSwitch Caseブロックによって設定されます。
異なるサンプル レートが指定されたブロックを含む Non-Triggered Subsystem の場合、Simulink は、サブシステムのコンパイルされたサンプル時間を、サブシステムに存在するすべてのサンプル レートの cell 配列として返します。これを確認するには、MATLAB プロンプトでget_param
コマンドを使用します。
get_param(subsystemBlock,'CompiledSampleTime')