マスクを作成して Simulink とパラメーターを共有
Stateflow® チャート、状態遷移表、真理値表のマスクを作成すると、Simulink® モデル内でのブロックの使用方法や共有方法が簡単になります。マスクはブロックの内容を非表示にする Chart ブロック、State Transition Table ブロック、および Truth Table ブロックのカスタム インターフェイスであり、次のような Atomic ブロックとして表示されます。
意味のあるアイコンと端子で外観を変更する。
パラメーターにユーザー インターフェイスを作成する。
カスタマイズされたドキュメンテーションを追加する。
どのパラメーターをマスク ユーザー インターフェイスを通して変更するかを決定します。これらのパラメーターに意味のある説明を追加できます。たとえば、モデル sf_car では、shift_logic チャートにあるマスクを使用して、パラメーター TWAIT を調整できます。モデルを開くには次のように入力します。
openExample("sf_car")[マスク パラメーター] ダイアログ ボックスを開くには、Stateflow チャートをダブルクリックします。このダイアログ ボックスには、パラメーターの説明 "Delay before gear change (tick)" と、値を編集するためのボックスが含まれます。この値は、マスク内のパラメーター TWAIT に関連付けられています。このボックス内の値を編集すると、Stateflow はシミュレーション中に TWAIT に新しい値を代入します。

チェック ボックス、コンテキスト メニュー、オプション ボタンなど、マスク パラメーター用に他のタイプのユーザー インターフェイスを作成できます。
マスクは、Simulink ライブラリからアクセスできる Stateflow ブロック (チャート、状態遷移表、真理値表) 上で作成できます。チャート内で、ステートなどのオブジェクトをマスクすることはできません。
詳細については、ブロック マスクの作成 (Simulink)を参照してください。
Stateflow チャート用のマスクの作成
モデル old_sf_car の Stateflow チャートにマスクを作成するには、次の手順に従います。
モデルを開きます。
openExample("old_sf_car")
Simulink エディターで、チャート
shift_logicを選択します。マスク エディターを開きます。[ステート チャート] タブで、[マスクの作成] をクリックします。
マスクへのアイコンの追加
ブロック アイコンの外観をカスタマイズするには、描画コマンドを使用するか、イメージを読み込みます。詳細については、マスクの表示と初期化のコマンド (Simulink)を参照してください。
マスク エディターで、[アイコン] タブを選択します。
ツールストリップの [グラフィカル] をクリックし、[描画コマンド] を選択します。
エディット ボックスで、以下を入力します。
image("shift_logic.svg")[マスクの保存] をクリックします。
マスクへのパラメーターの追加
Stateflow ブロック用のマスクを作成するとき、ブロック パラメーターにカスタム インターフェイスを定義できます。ブロック パラメーターには、マスク エディターに同じ名前の対応するパラメーターを定義することでアクセスします。すると、マスクのパラメーター ダイアログ ボックスを通じて、こうしたパラメーターへのユーザー インターフェイスが提供されます。マスク パラメーターは、編集可能なフィールドとして [マスク パラメーター] ダイアログ ボックスに表示されます。Stateflow は、シミュレーション中にこれらの値を対応するブロック パラメーターに適用します。
たとえば、チャート shift_logic はパラメーター TWAIT をもっています。TWAIT をパラメーターとしてマスクに追加するには、次の手順に従います。
マスク エディターで、[パラメーターとダイアログ] タブを選択します。
[コントロール] ペインの [パラメーター] で、[編集] アイコンをクリックします。
[プロンプト] で、[マスク パラメーター] ダイアログ ボックスにおける、新しいマスク パラメーター用のプロンプトを入力します。
Delay before gear change(tick)
[名前] の下に、マスク内のパラメーターの名前を入力します。
TWAIT
[マスクの保存] をクリックします。
新しいマスクの表示
マスクを作成すると、Simulink キャンバスに shift_logic チャートの新しいアイコンが表示されます。アイコンをダブルクリックすると、[マスク パラメーター] ダイアログ ボックスが開きます。このダイアログ ボックスには、パラメーター TWAIT のプロンプトがあります。エディット ボックスの値が、シミュレーション中にパラメーター TWAIT に代入されます。

マスク内を表示
チャート上の [マスク内部を検索] バッジをクリックすることにより、マスクされたブロックの内容を表示および編集できます。このバッジはチャートの左下隅に下向き矢印で示されます。あるいは、[ステート チャート] タブで、[マスク内を表示] をクリックします。マスク内を表示しても、ブロックのマスクは解除されません。
マスクの編集
マスクを編集するには、[ステート チャート] タブで [マスクの編集] をクリックします。マスク エディターでは、マスク アイコンの変更、パラメーターの変更、ドキュメンテーションの追加が可能です。マスクを削除するには、マスク エディターの下の隅にある [マスクの解除] をクリックします。マスクを変更したら、[適用] をクリックして変更を保存します。
参考
トピック
- Simulink および MATLAB ワークスペースとのパラメーターの共有
- マスクの基礎 (Simulink)
- マスク エディターの概要 (Simulink)
- マスクの表示と初期化のコマンド (Simulink)