Using Simulink | ![]() ![]() |
サブシステム
Simulinkは、複雑なシステムをブロック線図によって表わされた相互接続したサブシステムの集合としてモデリングすることができます。SimulinkのSubsystemブロックとSimulinkモデルエディタを使ってサブシステムを作成します。階層的なモデルを作成するために、任意のレベルでサブシステムにサブシステムを組み込むことができます。トリガ入力またはイネーブル入力で遷移が生じるときにのみ実行される、条件付きで実行されるサブシステムを作成できます。
カスタムブロック
Simulinkを使って、モデルで利用することができるカスタムブロックのライブラリを作成することができます。グラフィカルに、またプログラマブルにカスタムブロックを作成できます。グラフィカルにカスタムブロックを作成するには、ブロックの挙動を表わすブロック線図を描画し、このブロック線図をSimulinkのSubsystemブロック内にwrapし、Simulinkのブロックのマスク機能を使ってブロックにパラメータダイアログを設定します。ブロックをプログラマブルに作成するには、ブロックのシステム関数を含むM-ファイルまたはMEX-ファイルを作成します(Writing S-Functions を参照)。結果のファイルは、S-ファンクションと呼ばれます。その後そのS-ファンクションをモデル内のSimulinkのS-functionブロックと関連付けます。S-functionブロックをSubsystemブロック内に設定し、パラメータダイアログをSubsystemブロックに追加することにより、パラメータダイアログをS-functionブロックに追加できます。
信号
Simulinkは、ブロックの出力値を参照するために用語signal を使います。Simulinkを使って、信号名、データタイプ(例、8ビット、16ビット、32ビット整数)、数値タイプ(実数または複素数)、大きさを(1次元または2次元配列)含む多くの信号の属性を指定することができます。多くのブロックは、任意のデータタイプまたは数値タイプ、大きさの信号を受け取り、出力できます。他のブロックは、扱うことができる信号の属性に制限があります。
システムの連続状態の決定
Simulinkモデルは、連続状態の時間微係数を指定しますが、状態自身の値は指定しません。そのため、システムのシミュレーション時に、Simulinkは状態微係数を数値積分することによって、連続状態を計算する必要があります。多くの一般的な目的の数値積分手法が存在し、特定のアプリケーションにおける利点を有します。Simulinkは、数値積分手法のうち、最も安定で効率的かつ精度の高いOrdinary Differential Equation (ODE)ソルバと呼ばれる実現法を提供しています。モデルで利用するためのソルバを指定することができ、シミュレーションの実行中に変更することもできます。
![]() | 連続ブロックと離散ブロック | ダイナミックシステムのシミュレーション | ![]() |