サブシステムのタイプの検討
サブシステムはバーチャルまたは非バーチャルにすることができます。
"バーチャル サブシステム" は、ブロック線図を視覚的に整理するのに役立ちます。バーチャル サブシステムでブロックをグループ化したりバーチャル サブシステムを展開したりすると、ブロックのパスが変わることによってブロックの実行順序に影響が及ぶことがあります。
"非バーチャル サブシステム" は、"Atomic サブシステム" とも呼ばれ、ブロック線図を機能的に整理するのに役立ちます。非バーチャル サブシステムでブロックをグループ化したり非バーチャル サブシステムを展開したりすると、モデルの動作が変わります。非バーチャル サブシステムは、親モデルの実行時に、それぞれ単一ブロックまたはアトミック単位として実行されます。非バーチャル サブシステム内のブロックは連続的に実行されます。
ヒント
コントローラーおよびその他のスタンドアロン コンポーネントに対して、非バーチャル サブシステムまたは参照モデルを使用して、関連するブロックを囲むハード境界を定義します。ハード境界を事前に定義することで、コンポーネント用のコードを生成するときに、コストのかかるリファクタリングを行わずに済みます。
サブシステムがバーチャルなのか非バーチャルなのかを判断するには、以下のいずれかの方法を使用します。
ブロックの境界線を確認する。バーチャル サブシステムの境界線は細くなっています。非バーチャル サブシステムの境界線は太くなっています。
関数
get_param
を使用して boolean のブロック パラメーターIsSubsystemVirtual
をクエリする。例については、サブシステムがバーチャルかどうかの判断を参照してください。
次の表では、非バーチャル サブシステムのタイプのいくつかを分類しています。