Main Content

簡単なマスクの作成

ブロックをマスクするには、マスク エディターを使用して対話的に実行する方法とプログラムで実行する方法があります。この例では、[マスク エディター] を使用してブロックをマスクする方法を示します。プログラムでブロックをマスクする方法については、プログラムによるマスクの制御を参照してください。

マスクの例については、Simulink のマスクの例を参照してください。

手順 1: マスク エディターを開く

  1. ブロックをマスクするモデルを開きます。たとえば、subsystem_exampleを開きます。

    このモデルには、次の直線の方程式をモデル化する Subsystem ブロックが含まれています。 y = mx + b.

  2. Subsystem ブロックを選択し、[サブシステム] タブの [マスク] グループで、[マスクの作成] をクリックします。

    mask editor

手順 2: マスクの定義

マスク エディターの 4 つのタブで、ブロック マスクを定義し、マスクのダイアログ ボックスをカスタマイズできます。

各ペインの詳細については、マスク エディターの概要を参照してください。

[パラメーターとダイアログ] タブ

このタブでは、パラメーター、表示、アクション項目などを制御するコントロールをマスク ダイアログ ボックスに追加します。

ブロック マスクに [エディット] ボックスを追加するには次を行います。

  1. 左側のペインで、[パラメーター] の下にある [エディット] を 2 回クリックして、[ダイアログ ボックス] ペインに 2 つの新しい行を追加します。

  2. この 2 つの [エディット] パラメーターの [プロンプト] 列に、SlopeIntercept と入力します。[プロンプト] 列に入力した値は、マスク ダイアログ ボックスに表示されます。同様に、[名前] 列に mb と入力します。[名前] 列に入力した値は、マスク パラメーターの名前になります。マスク パラメーターの名前は、有効な MATLAB® 名でなければなりません。

  3. 右側のペインで、[プロパティ エディター][プロパティ][ダイアログ][レイアウト] の各セクションに値を指定します。

  4. [適用] をクリックします。

  5. マスク エディターを終了せずにマスク ダイアログ ボックスをプレビューするには、[プレビュー] をクリックします。

詳細については、[パラメーターとダイアログ] ペインを参照してください。

メモ

Simulink® マスク パラメーターは同じマスクの別のパラメーターを参照できません。

[コード] ペイン

このペインでは、マスク パラメーターを制御する MATLAB コードを指定します。たとえば、マスク パラメーターの事前定義された値を指定できます。

例にある方程式 y = mx + b について考えます。'm' に対応する子ブロックの値を設定するには、[コード] ペインで関数 set_param を使用します。

メモ

詳細については、[コード] ペインを参照してください。

[アイコン] ペイン

このタブでは、ブロック マスクのアイコンを作成します。左側の [プロパティ] ペインで、アイコンのプロパティや表示設定を指定できます。

ブロック マスクにイメージを追加します。

  1. [ブロックのフレーム] ドロップダウン ボックスで [表示] を選択します。

  2. [アイコンの透明性] ドロップダウン ボックスで [不透明] を選択します。

  3. [アイコンの単位] ドロップダウン ボックスで [オートスケール] を選択します。

  4. アイコンの回転を制限するために、[アイコンの回転] リストから [固定] を選択します。

  5. [アイコンを描画するコマンド] テキスト ボックスに、次を入力します。

    x = [0 0.5 1 1.5];y = [0 0.5 1 1.5]; 
    % An example to defines the variables x and y
    plot(y,x) % Command to plot the graph

    描画コマンドの構文の詳細については、アイコンを描画するコマンドを参照してください。

  6. 変更を保存するには、[適用] をクリックします。マスク エディターを終了せずにブロック マスク アイコンをプレビューするには、[プレビュー] をクリックします。

メモ

詳細については、[アイコン] ペインを参照してください。

動的または静的なブロック マスク アイコンを作成できます。詳細については、マスク アイコンの描画slexMaskDisplayAndInitializationExample を参照してください。

[制約] ペイン

マスク パラメーターの制約ではマスク パラメーターに対する検証を作成することができ、独自の検証コードを記述する必要はありません。3 種類の制約、つまりパラメーター制約、クロス パラメーター制約、端子制約があります。

パラメーター制約: マスクには、ユーザー入力値を受け入れるパラメーターを含めることができます。マスク ダイアログ ボックスを使用して、マスク パラメーターの入力値を指定できます。制約を使用して、マスク パラメーターの入力値を、必ず指定された範囲内に収めることができます。たとえば、Gain ブロックのマスクについて考えます。入力値が 1 ~ 10 の範囲内でなければならないという制約を設定できます。指定された範囲外の入力を提供すると、エラーが表示されます。左ペインの制約ブラウザーは、共有の制約を管理するのに役立ちます。

クロス パラメーター制約: クロスパラメーター制約は [エディット] または [コンボボックス] タイプの 2 つ以上のマスク パラメーター間に適用されます。Parameter1 が Parameter2 よりも大きくなければならないといったシナリオを指定する場合に、クロスパラメーター制約を使用できます。

端子制約: マスクされたブロックの入力端子と出力端子に対する制約を指定できます。モデルをコンパイルするときに、端子の属性が制約に対してチェックされます。

手順 3: マスクの操作

  1. マスクをプレビューし、ブロックのマスクを解除したり、ブロック マスクを編集したりできます。

  2. マスクされたブロックをダブルクリックします。

    マスク ダイアログ ボックスが表示されます。

  3. マスク ダイアログ ボックスの [Slope] と [Intercept] のボックスに値を入力します。出力を表示するには、モデルをシミュレートします。

  4. [OK] をクリックします。

  5. マスクの定義を編集するために、Subsystem ブロックを選択して、ツールストリップの [サブシステム] タブで [マスクの編集] をクリックします。詳細については、既存のマスクの管理を参照してください。

  6. マスク ブロックを選択し、[Subsystem ブロック] タブの [マスク] グループで [マスク内を表示] をクリックすると、次が表示されます。

    • マスク サブシステム内のブロック

    • マスク ブロックの組み込みブロック ダイアログ ボックス

    • リンク付きのマスク ブロックのベース マスク ダイアログ ボックス

関連するトピック