Main Content

Combo Box

ドロップダウン メニューからパラメーター値を選択

  • ライブラリ:
  • Simulink / Dashboard

  • Combo Box block

説明

Combo Box ブロックでは、パラメーターの値をいくつかの値のいずれか 1 つに設定できます。Combo Box ブロックのパラメーターで、選択可能な各値とそのラベルを定義できます。Combo Box ブロックをその他の Dashboard ブロックと共に使用し、コントロールおよびインジケーターからなる、モデルの対話型のダッシュボードを作成します。

Combo Box ブロックをダブルクリックしても、シミュレーション中やブロックが選択されているときは、そのダイアログ ボックスは開きません。ブロックのパラメーターを編集する場合は、[プロパティ インスペクター] を使用するか、ブロックを右クリックしてコンテキスト メニューから [ブロック パラメーター] を選択できます。

Dashboard ブロックの接続

Dashboard ブロックはモデル要素への接続に端子を使用しません。Dashboard ブロックを変数やブロック パラメーターに接続するには、接続モードを使用します。接続モードを使用すると、モデル内で Dashboard ブロックを接続するプロセスが簡単になり、特に複数のブロックを一度に接続する場合に便利です。Dashboard ブロックを 1 つ接続するには、ブロック ダイアログ ボックスの [接続] テーブルを使用することもできます。

ヒント

ノーマル モードとアクセラレータ モードのシミュレーション中にモデルで Dashboard ブロックの接続を変更できます。

メモ

Dashboard ブロックは、モデル ブロック線図を更新するまで変数に接続できません。Dashboard ブロックを変数に接続するか、モデルを開いてシミュレーションを実行するまでの間に変数の値を変更するには、Ctrl + D キーを使用してモデル ブロック線図を更新します。

接続モードに切り替えるには、接続する Dashboard ブロックをキャンバスで選択します。Simulink® ツールストリップに、選択したブロックのタイプの名前が付いたタブが表示されます。ブロックのタブで [接続] をクリックします。接続モードでは、ブロックを 1 つ以上選択すると、接続に使用できるパラメーターと変数のリストが表示されます。選択した Dashboard ブロックに接続する変数またはパラメーターをリストから選択します。

選択した変数またはブロック パラメーターの値が非スカラーである場合は、[接続] テーブルの下部にあるテキスト ボックスを使用して、Dashboard ブロックに接続する要素を指定します。ベクトル、行列、または配列の要素に接続するには、3 または (1,3) のように、要素のインデックスを指定します。バスまたは構造体の要素に接続するには、ドットを使用して階層内の各レベルを示し、最上位レベルは省略して、バスまたは構造体階層のコンテキストで要素を指定します。たとえば、選択した複合変数またはパラメーター内に入れ子にされている構造体またはバス a のスカラー要素 b に接続するには a.b と指定します。

別の Dashboard ブロックを接続するには、別の Dashboard ブロックで一時停止し、その上に表示される [接続] ボタンをクリックします。次に、モデル内で信号およびブロックを選択し、接続するモデル要素を選択します。

Simulink model of the Van der Pol equation with all components selected, a Slider block in connect mode, and the Connection table visible

モデルで Dashboard ブロックの接続が完了したら、[ブロック] タブで [接続完了] をクリックします。

ヒント

ShowInitialText ブロック パラメーターをもつ関数 set_param を使用して、接続されていないブロックに表示されるメッセージを非表示にできます。ブロックを接続すると、メッセージも表示されなくなります。

パラメーターのログ記録

Dashboard ブロックに接続されている調整可能なパラメーターはシミュレーション データ インスペクターに記録されます。シミュレーション データ インスペクターでは、記録された信号データと共にパラメーター値を表示できます。UI を使用して、または関数Simulink.sdi.exportRunを使用して、シミュレーション データ インスペクターからパラメーター データをエクスポートすることで、MATLAB® ワークスペースでログ記録されたパラメーター データにアクセスできます。シミュレーション データ インスペクターの UI を使用したデータのエクスポートの詳細については、ワークスペースまたはファイルへのデータのエクスポートを参照してください。パラメーター データは Simulink.SimulationData.Parameter オブジェクトに格納され、エクスポートされた Simulink.SimulationData.Dataset の要素としてアクセスできます。

制限

  • Dashboard Scope ブロックおよび Display ブロックを除き、Dashboard ブロックは実数のスカラー信号にのみ接続できます。

  • ツールストリップは、パネル内にあるブロックをサポートしません。

  • コメント アウトされたブロックには、ブロック ダイアログの [接続] テーブルを使用して Dashboard ブロックを接続することはできません。コメント化されたブロックに接続モードを使用して Dashboard ブロックを接続した場合、ブロックのコメントを解除するまでは Dashboard ブロックに接続された値が表示されません。

  • Dashboard ブロックは参照モデル内のモデル要素には接続できません。

  • モデルの階層構造をシミュレーションすると、参照モデル内の Dashboard ブロックで更新は実行されません。

  • Dashboard ブロックは、ラピッド アクセラレータ シミュレーションをサポートしていません。

  • シミュレーション中に Dashboard ブロックを変数またはパラメーターに接続すると、その変数またはパラメーターのデータはシミュレーション データ インスペクターに記録されません。シミュレーション データ インスペクターに変数とパラメーターのデータを記録するには、シミュレーションを実行する前に Dashboard ブロックを変数またはパラメーターに接続します。

  • [既定のパラメーター動作][インライン] に設定してエクスターナル モードでモデルをシミュレーションするときに、Dashboard ブロックがパラメーターと変数の値を変更するように見える場合があります。ただし、その変更はシミュレーションに伝播されません。たとえば、Gain ブロックには Dashboard ブロックを使用して [ゲイン] パラメーターに加えられた変更が表示されますが、シミュレーションで使用された [ゲイン] 値は変更されません。

パラメーター

すべて展開する

接続

[接続] テーブルを使用して、制御する変数またはブロック パラメーターを選択します。ブロックを信号に接続するには、次のようにします。

  1. 1 つ以上のブロックを含むモデルで選択を行います。

  2. 接続する変数またはパラメーターを選択します。

    選択した変数またはブロック パラメーターの値が非スカラーである場合は、[接続] テーブルの下部にあるテキスト ボックスを使用して、Dashboard ブロックに接続する要素を指定します。ベクトル、行列、または配列の要素に接続するには、3 または (1,3) のように、要素のインデックスを指定します。バスまたは構造体の要素に接続するには、ドットを使用して階層内の各レベルを示し、最上位レベルは省略して、バスまたは構造体階層のコンテキストで要素を指定します。たとえば、選択した複合変数またはパラメーター内に入れ子にされている構造体またはバス a のスカラー要素 b に接続するには a.b と指定します。

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

モデルの理解とデバッグを容易にするために、シミュレーション中に Dashboard ブロックをモデルの変数とパラメーターに接続することができます。

メモ

[接続] テーブル内のワークスペース変数を確認するには、Ctrl + D キーを使用してモデル ブロック線図を更新します。

プログラムでの使用

Dashboard ブロックを調整可能なパラメーターまたは変数にプログラムによって接続するには、Simulink.HMI.ParamSourceInfo オブジェクトを使用します。Simulink.HMI.ParamSourceInfo オブジェクトには 4 つのプロパティが含まれます。このプロパティの一部は、Dashboard ブロックのパラメーターへの接続に適用され、一部は Dashboard ブロックの変数への接続に適用されます。特定の Dashboard ブロックは、パラメーターまたは変数のいずれかに接続しているため、一部のフィールドには接続に関する値が設定されていません。

ブロック パラメーター: Binding
型: Simulink.HMI.ParamSourceInfo
既定の設定: []

メイン

ブロックの状態値とラベルを設定するために、数値と列挙値がペアとなる列挙データ型を使用できます。列挙データ型を使用してブロックの状態を指定するには、まず [列挙データ型] オプションを選択します。次に、テキスト ボックスに列挙データ型の名前を指定します。指定された列挙データ型の定義は MATLAB パス上またはベース ワークスペースに保存しなければなりません。

例: myEnumType

プログラムでの使用

列挙データ型を使用してブロックの状態ラベルと値をプログラムで指定するには、UseEnumeratedDataType パラメーターに 'on' を指定し、EnumeratedDataType パラメーターの列挙データ型の名前を指定します。

ブロック パラメーター: UseEnumeratedDataType
型: string または文字配列
値: 'on' | 'off'
既定の設定: 'off'
ブロック パラメーター: EnumeratedDataType
型: string または文字配列
既定の設定: ''

ブロック ラベルの位置。ブロックがモデル内の要素に接続されている場合、ラベルは接続された要素の名前です。

プログラムでの使用

ブロック パラメーター: LabelPosition
型: 文字ベクトル
値: 'Hide' | 'Bottom' | 'Top'
既定の設定: 'Hide'

接続されたパラメーターに対する値の選択元である一連の状態。各 [状態] は、[状態値][状態ラベル] で構成されています。

  • 状態値 — 対応する [ラベル] で状態を選択するときに、接続された変数またはパラメーターに代入される値。

  • 状態ラベル — 各状態のラベル。[ラベル] を使用して、スイッチが下部に配置された場合に接続されたパラメーターが取る値を表示することも、説明的なテキスト ラベルを入力することもできます。

[+] ボタンをクリックしてさらに [状態] を追加します。

ブロックの既定のコンフィギュレーションには次の [状態] が含まれます。

状態値状態ラベル
0Label1
1Label2
2Label3

プログラムでの使用

ブロックの States をプログラムによって設定するには、フィールド ValueLabel が含まれる構造体配列を使用します。ブロックに設定する各状態の構造体を配列に含めます。

state1.Value = 1;
state1.Label = 'State 1';
state2.Value = 2;
state2.Label = 'State 2';
radioStates = [state1 state2];
ブロック パラメーター: States
タイプ: 構造体
既定の設定: 3x1 構造体配列

形式

ブロックの背景の不透明度。0 ~ 1 のスカラー値として指定します。

例: 0.5

プログラムでの使用

ブロック パラメーター: Opacity
タイプ: スカラー
既定の設定: 1

テキストを含むブロックの前景色。標準色のパレットから色を選択するか、カスタムの色を指定できます。

プログラムでの使用

ブロックの ForegroundColor パラメーターを値が 0 から 1 の間の 13 列の [r g b] ベクトルを定義する string または文字ベクトルとして指定します。

ブロック パラメーター: ForegroundColor
: 文字ベクトル | string
値: [r g b] ベクトル

背景色。標準色のパレットから色を選択するか、カスタムの色を指定できます。

プログラムでの使用

ブロックの BackgroundColor パラメーターを値が 0 から 1 の間の 13 列の [r g b] ベクトルを定義する string または文字ベクトルとして指定します。

ブロック パラメーター: BackgroundColor
: 文字ベクトル | string
値: [r g b] ベクトル

ブロックの特性

データ型

double | half | integer | single

直達

いいえ

多次元信号

いいえ

可変サイズの信号

いいえ

ゼロクロッシング検出

いいえ

拡張機能

バージョン履歴

R2017b で導入