Main Content

Variant Connector ブロックを使用した機械システムでのバリアントのモデル化

この例では、リーフ タイプの Variant Connector ブロックを使用して、異なったバリアント構成に対し速度源と質量の変位をシミュレートする方法を説明します。Variant Connector ブロックを使うと、コンポーネントを物理的に取り外したりシミュレーションから除外することなしに、シミュレーション中にネットワーク内で一連のコンポーネントをアクティブまたは非アクティブにすることができます。

モデルの探求

機械システム内のバリアント リーフ領域のモデル例を開くには、MATLAB® コマンド プロンプトで「openExample('simscape/VariantLeafRegionInMechanicalSystemExample')」と入力します。

The variant leaf region in mechanical system model that represents a mechanical system

このモデルには、VC_1 と VC_2 の 2 つの Variant Connector ブロックがあります。これらはリーフ タイプの Variant Connector ブロックです。VC_1 はバリアント条件 A == 1 をもち、VC_2 はバリアント条件 B == 1 をもちます。

シミュレーション中に、Simulink® は、それぞれのリーフ タイプの Variant Connector ブロックに関連付けられたバリアント条件を計算します。ある Variant Connector ブロックのバリアント条件が true として評価された場合、そのブロックのリーフ領域内にあるすべての物理コンポーネントがアクティブになります。たとえば、A == 1true として評価された場合、LeafRegion_1 内のコンポーネントがアクティブになります。A == 1false として評価された場合、LeafRegion_1 内のコンポーネントは非アクティブのままです。

異なったバリアント構成での機械システムのシミュレート

バリアント条件変数 A および B は、PostLoadFcn コールバックで定義されます。これらの変数の値を表示または変更するには、[モデル化] タブで、[モデル設定][モデル プロパティ] を選択します。[コールバック] タブの [モデルのコールバック] ペインで、[PostLoadFcn] をクリックします。この例では、A = 1B = 2 の値となります。これらの変数に基づいて、関連付けられたリーフ領域がアクティブになります。

ケース 1: LeafRegion_1 がアクティブで LeafRegion_2 が非アクティブ

  1. [モデル プロパティ] ウィンドウで、A の値を 1 に、B2 に設定します。

  2. [実行] をクリックして、Variant Connector ブロックから接続先のコンポーネントへと、バリアント条件が伝播することを確認します。

  3. 伝播されたバリアント条件とブロックのアクティブ化状態を解析するには、[デバッグ] タブで、[情報のオーバーレイ][バリアント凡例] を選択します。バリアント条件の凡例の詳細については、Visualize Propagated Variant Conditions in Variant Conditions Legendを参照してください。

    • A == 1true として評価。LeafRegion_1 内のコンポーネントがアクティブになります。

    • B == 1false として評価。LeafRegion_2 内のコンポーネントが非アクティブになります。

    The simulation result of the variant leaf region in mechanical system model when LeafRegion1 is active and LeafRegion2 is inactive

  4. A == 1trueB == 1false という条件に対応する [Variant Leaf Region in Mechanical System] テーブルの [Plot] リンクをクリックすることにより、質量および速度源の変位を表示します。

Displacement of mass which appears as red and the source of velocity which appears as blue in the mechanical system plotted against time when LeafRegion1 is active and LeafRegion2 is inactive

ケース 2: LeafRegion_1 が非アクティブで LeafRegion_2 がアクティブ

  1. [モデル プロパティ] ウィンドウで、A の値を 1 に、B2 に設定して、モデルをシミュレートします。

  2. バリアント条件とブロックのアクティブ化状態を解析します。

    • A == 1false として評価。LeafRegion_1 内のコンポーネントが非アクティブになります。

    • B == 1true として評価。LeafRegion_2 内のコンポーネントがアクティブになります。

  3. A==1falseB==1true という条件に対応する [Variant Leaf Region in Mechanical System] テーブルの [Plot] リンクをクリックすることにより、質量および速度源の変位を表示します。

    Displacement of mass which appears as red and the source of velocity which appears as blue in the mechanical system plotted against time when LeafRegion1 is inactive and LeafRegion2 is active

同様に、AB の値を 0 に設定して、シミュレーション中に両方の領域が非アクティブになる様子を解析することもできます。

関連するトピック