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

モデル コンポーネントのタイプの選択

便利なモデル コンポーネントは範囲が適切に定義されており、要件によって定義された機能を実行し、大規模なシステムの一部を構成しています。

コンポーネントを定義するときは、以下の潜在的な要件について検討します。

  • ファイルの競合 — 各コンポーネントの作業を行うのが 1 人だけである場合はコンポーネントを大きくすることができます。複数の人がコンポーネントを共有する必要がある場合は、設計を小さい論理的な単位に分割しなければなりません。複数の人が同じファイルを編集しなければならない場合は、比較レポートからの Simulink モデルのマージを参照してください。

  • 再利用性 — モデル内でブロックのグループを複数回使用する予定がある場合は、そのブロックのグループを再利用可能なコンポーネントに定義します。重複を防ぐことで、モデルをより簡単に保守できます。重複のある既存のモデルをリファクタリングするには、モデルのリファクタリングによるコンポーネントの再利用の向上 (Simulink Check)を参照してください。

  • コード生成 — 物理コンポーネント (デジタル コントローラーなど) 用のスタンドアロン コードを生成しなければならない場合は、物理コンポーネントを表し、適切に定義されたインターフェイスをもつ 1 つのコンポーネントが必要です。

  • 検証コスト — モデルのある部分が頻繁に変更され、多額のテスト費用がかかる場合、モデルのこの部分をコンポーネントとして別のファイルで管理しなければなりません。コンポーネントが別々のファイルで定義されている場合、プロジェクトのソース管理を使用して変更を管理および追跡できます。ソース管理の詳細については、構成管理を参照してください。

  • シミュレーション速度 — 数値特性の異なるコンポーネントに異なるソルバーを使用すると、シミュレーション速度が高速化する可能性があります。同様に、サンプルレートに基づいてブロックをグループ化することでシミュレーション速度が高速化する可能性があります。詳細については、ソルバー プロファイラーおよびパフォーマンス アドバイザーを使用したシミュレーション パフォーマンスの改善を参照してください。

Simulink コンポーネント

異なるタイプの Simulink® コンポーネントは異なるサイズと機能をターゲットにしています。たとえば、参照モデルには 500 個を超えるブロックが含まれているのが一般的です。

Simulink モデルでは、次のコンポーネント タイプを任意に組み合わせて使用できます。

コンポーネントのタイプ定義コンテンツのソースモデルでの実装
サブシステム

ダイナミックなインターフェイスを備えたブロックの一意のグループ。視覚的または機能的です。

なし — コンテンツを各サブシステムに手動で追加しなければなりません。

Subsystem ブロック
サブシステム参照

ダイナミックなインターフェイスを備えたブロックの再利用可能なグループへの参照。視覚的または機能的です。

参照サブシステムが含まれるサブシステム ファイル (.slx)

Subsystem Reference ブロック
モデル参照

適切に定義されたインターフェイスを備えたモデルへの参照。機能的で、親モデルに依存しません。

参照モデルが含まれるモデル ファイル (.slx)

Model ブロック
バリアント システム

コンポーネントの複数の実装。アクティブな実装は 1 つのみです。バリアント システムによって、単一モデル内のさまざまな要件セットに対応することができます。

バリアントの選択肢にはその他の任意のコンポーネント タイプを指定でき、複数のコンポーネント タイプを組み合わせることもできます。

なし — バリアントの選択肢を各バリアント システムに手動で追加しなければなりません。

Variant Subsystem ブロック
リンク付きブロック。ライブラリに格納されている任意のコンポーネントにリンクできます。

ライブラリに格納されているブロックのリンクされたインスタンス。ライブラリ リンクを無効にすると、リンク付きブロックの各インスタンスが一意になります。

サブシステム参照またはモデル参照をライブラリからモデルにドラッグすると、モデルはコンテンツを定義するサブシステム ファイルまたはモデル ファイルを直接参照します。親ライブラリ ブロックに直接適用されたマスクがある場合にのみ、モデルはライブラリ リンクをもちます。通常は、参照ファイルに保存され、ライブラリ リンクを必要としないモデル マスクを使用しなければなりません。

親ライブラリ ブロックまたはプロトタイプ ブロックが含まれるライブラリ ファイル (.slx)

ライブラリ リンクをもつブロック

高水準のコンポーネント選択ガイドライン

このフロー チャートは、コンポーネント タイプを選択するにあたっての開始点を提供します。

このフロー チャートの結果に基づいてコンポーネントを実装する前に、追加のモデル化要件について検討してください。モデル化要件とのコンポーネントの互換性の詳細については、モデル コンポーネント タイプの機能の比較を参照してください。

サブシステムが大きくなることが予期される場合は、ブロックを機能的にグループ化し、それらを一緒に実行するように、サブシステムを Atomic にします。ブロックを機能的にグループ化することで、より簡単にサブシステムを参照モデルに変換できるようになります。

参考

| |

関連するトピック