Main Content

合成インターフェイスのガイドライン

モデルの外観を簡略化するには、信号、メッセージ、または保存接続をグループ化して、モデル コンポーネントとブロックの "合成インターフェイス" を作成します。合成インターフェイスでは、モデル コンポーネントの端子数とブロック線図の線の数が減ります。合成インターフェイスの要素はそれぞれ別の ID を保持します。

"バーチャル バス" は、合成インターフェイスのほとんどのモデル化の要件を満たし、さまざまなタイプの要素をグループ化するための柔軟性を提供します。ブロック線図における線の複雑さと煩雑さが低減され、インターフェイスの段階的な変更が容易になります。たとえば、コンポーネントのインターフェイスに要素を追加または削除する必要がある場合、端子を追加または削除するよりバスを変更するほうが簡単です。

バーチャル バスなどの合成インターフェイスを作成する際は、線をその機能に基づいてグループ化します。信号、メッセージ、または接続を論理グループに整理することで、将来大幅なリファクタリングが必要になる可能性を低減します。

コンポーネント インターフェイスでは、In Bus Element ブロックと Out Bus Element ブロックを使用します。In Bus Element ブロックを使用すると、バス要素を使用時に名前で抽出できます。Out Bus Element ブロックを使用すると、同じ出力端子の複数の Out Bus Element ブロックに要素を接続することで出力バスを作成できます。

インターフェイスにバスの構成を適用するには、Simulink.Bus オブジェクトを使用します。

バス定義を構造体として生成コードに実装するか、For Each Subsystem などのサブシステムでバスを反復して処理するには、バーチャル バスを "非バーチャル バス" にすることを検討してください。

合成インターフェイスの可視化

次の比較的単純なモデルがあるとします。

Model ex_modeling_simulation_data_inspector.slx

このモデルの各コンポーネント インターフェイスには複数の端子があり、信号線によってモデルが煩雑になっています。

合成インターフェイスでは、線の数を減らすことでブロック線図を簡略化できます。

Model ex_modeling_composite_signals.slx

バーチャル バスでは、センサー データ、システム目標、制御信号、およびシステムの外乱の 4 種類の機能に基づいてブロック線図の信号線が簡略化されます。

コンポーネントのインターフェイスでは In Bus Element ブロックと Out Bus Element ブロックが使用されます。たとえば、Controller という名前のサブシステムのコンテンツについて考えます。

Contents of the subsystem named Controller

In Bus Element ブロックと Out Bus Element ブロックにはそれぞれ、sensor.x1 などの対応する要素を表示するラベルが付いています。この例では、sensor は端子の名前で、x1 はバス要素の名前です。2 つの In Bus Element ブロックは、信号線の分岐を避けるためにこの要素を選択しています。

合成インターフェイスの定義

合成インターフェイスを作成する前に、高水準と低水準のモデル化要件について検討します。

1. Explore Composite Interfaces

高水準のモデル化要件に基づいて信号、メッセージ、または保存接続をグループ化する方法を決定します。

2. Compare Capabilities of Composite Interfaces

バーチャル バス、非バーチャル バス、およびバス配列を低水準のモデル化要件と比較します。

ヒント

モデル コンポーネントの境界、データのスコープ、およびインターフェイス属性を特定するには、モデル コンポーネントのインターフェイスの定義を参照してください。