<< 目次を表示 >> ページ位置: シミュレーション > 数学的なシミュレーション > SysPhS シミュレーション > 独自のSysPhSコンポーネントの作成 > SimulinkあるいはSimscape固有のブロックの作成 |
SimulinkやSimuScapeではさまざまなコンポーネントが利用できるため、SysPhSのコンポーネントパターンで提供されている基本的なブロックには含まれないSimulinkやSimuScape固有のコンポーネントや部品をシミュレーション対象のモデルに含める必要がある場合があります。このような場合には、Enterprise Architectで作成するブロック要素に対して、Simulinkコンポーネントを参照するように設定します。
ブロックのSimulink情報の設定
Enterprise ArchitectのSysPhSコンポーネントでSimulinkコンポーネントを参照する手順は以下の通りです。
次の図は、 Simulink内のJK Flip-Flop要素に対して上記の情報を参照している例です。
上の例では、名前欄に設定すべき内容は以下の通りです。
次の図は、Enterprise Architectのプロパティサブウィンドウで取得した情報を設定した例です。
Simulinkのクラスパスに関する情報はMathWorksのヘルプをご覧ください。
ブロックのSimscape情報の設定
Enterprise ArchitectのSysPhSコンポーネントでSimscapeコンポーネントを参照する手順は以下の通りです。
次の図は、 Simscape内のJOp-Amp要素に対して上記の情報を参照している例です。
上の例では、名前欄に設定すべき内容は以下の通りです。
SysPhSポートの追加
ブロックのポートには、型付けされていないポートと、定義済みのポート型があります。
型付けされていないポートは、ツールボックスからSimulinkポート要素をダイアグラム内のブロックにドラッグ&ドロップして作成します。
SysPhSの定義済みポートタイプ(ブール信号入力ポートやアナログ信号出力ポートなど)を参照するには、以下の手順になります。
例えば、次の図では、フリップフロップに「j」と「k」のポートが作成され、「j」のポートが設定され、「k」のポートがポートとして定義されている途中です。
Simulinkのポートの順序
SimulinkのPortsは、Modelicaの名前参照とは異なり、配列を使用して定義されるため、ポートの作成順序が重要になります。INポートの順序とOUTポートの順序は別々に定義されます。ポートの順序はSimulinkで確認でき、最初のポートがブロックの一番上に表示されます。
フリップフロップのポートを例にとると、INポートのSimulinkでの順序は次のようになります。
j, clk, k (このトピック内の画像の「J-K Flip Flop」要素を参照)
したがって、これらのポートは、Enterprise Architect内でもこの順序で作成する必要があります。ブロック定義図では、ポートは作成順ではなく、アルファベット順に表示されていることに注意してください。
順番が正しく適用されていない場合には、SysMLのダイアグラムではOUTポートが正しく表示されているが、Simulinkでのシミュレーション時にはINポートに誤って接続されるということが起きえます。このような場合には、ポートの作成順序が正しく適用されていることを確認してください。
参照: