Main Content

再利用可能なコンポーネントのパラメーター インターフェイス

サブシステム、参照モデル、およびカスタム ライブラリ ブロックを他のモデルで再利用可能なコンポーネントとして使用できます。システムをコンポーネント化する方法の決定に役立つガイドラインについては、モデル コンポーネントのタイプの検討を参照してください。

通常、再利用可能なアルゴリズムでは、数値ブロック パラメーター (Gain ブロックの [ゲイン] パラメーターなど) は次のいずれかになります。

  • コンポーネントのすべてのインスタンスで同じ値を使用する。

  • コンポーネントのインスタンスごとに異なる値を使用する。各値はインスタンス固有。

既定では、数値リテラルまたは式を使用してブロック パラメーターの値を設定する場合、パラメーターはコンポーネントのすべてのインスタンスで同じ値を使用します。MATLAB® 変数、Simulink.Parameter オブジェクト、または他のパラメーター オブジェクトをワークスペースまたはデータ ディクショナリで使用して複数のブロック パラメーター値を設定する場合、これらのパラメーターもコンポーネントのすべてのインスタンスで同じ値を使用します。

参照モデル

モデル参照を使用して再利用可能なコンポーネントを作成する場合に、各インスタンスに固有のパラメーター値を設定するには、参照モデルのモデル引数を構成します。Model ブロックを別のモデルに追加してモデルをインスタンス化する際は、Model ブロックで引数の値を設定します。同じ親モデルまたは別のモデルに別の Model ブロックを追加する場合、同じ引数に対して異なる値を設定できます。オプションで、2 つを超えるインスタンスを作成する場合、インスタンスの一部に同じ値を設定し、他のインスタンスに別の値を設定できます。

モデルに多くのモデル引数がある場合は、引数を単一の構造体にパッケージ化することを検討してください。多数の引数を構成する代わりに、単一の引数として構造体を構成します。この手法を使うと、コンポーネントの数学的機能を変更せずに、コンポーネントの各インスタンスで設定しなければならないモデル引数の値の数を減らすことができます。

モデル引数の詳細については、再利用可能な参照モデルのインスタンスのパラメーター化を参照してください。

サブシステム

サブシステムまたはカスタム ライブラリを使用して再利用可能なコンポーネントを作成する場合に、各インスタンスに固有のパラメーター値を設定するには、マスク、マスク パラメーターおよびパラメーターのプロモーションを使用します。モデルでコンポーネントをインスタンス化する際は、Subsystem ブロックでマスク パラメーターの値を設定します。コンポーネントを同じモデルまたは異なるモデルでもう一度インスタンス化すると、同じマスク パラメーターに異なる値を設定できます。オプションで、2 つを超えるインスタンスを作成する場合、インスタンスの一部に同じ値を設定し、他のインスタンスに別の値を設定できます。

サブシステムに多数のマスク パラメーターがある場合は、パラメーターを単一の構造体にパッケージ化することを検討してください。多数のマスク パラメーターを構成する代わりに、単一のパラメーターとして構造体を構成します。この手法を使うと、コンポーネントの数学的機能を変更せずに、コンポーネントの各インスタンスで設定しなければならないマスク パラメーターの値の数を減らすことができます。

サブシステムの詳細については、Subsystem を参照してください。カスタム ブロック ライブラリの詳細については、カスタム ブロックの設計と作成を参照してください。マスクの詳細については、マスクの基礎を参照してください。構造体の詳細については、関連するブロック パラメーター定義を構造体に整理を参照してください。

関連するトピック