Main Content

Combo Box

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

  • Combo Box block

ライブラリ:
Simulink / Dashboard

説明

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

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

Dashboard ブロックの接続

Dashboard ブロックはモデル要素への接続に端子を使用しません。Dashboard ブロックを接続するには、接続モードを使用します。接続されていないブロックで接続モードに切り替えるには、接続するブロックをポイントし、[接続] ボタン をクリックします。接続されているブロックで接続モードに切り替えるには、ブロックを選択すると表示される省略記号 (…) をポイントし、展開されるアクション メニューで [接続] ボタンをクリックします。

制御ブロックをモデル内のパラメーターに接続するか、制御ブロックの接続を変更するには、接続モードに切り替えます。接続するパラメーターが含まれているブロックを選択します。表示されるリストから、接続するパラメーターを選択します。次に、Dashboard ブロックをポイントし、[接続完了] ボタン をクリックします。

モデルのブロック線図を更新するまで、制御ブロックは変数で定義されているパラメーターに接続できません。シミュレーションが実行されていないときに、変数で定義されたパラメーターに接続するか、接続されているパラメーターの値を定義する変数の値を変更するには、Ctrl+D を押してモデルのブロック線図を更新します。

スカラー値をもつパラメーター、あるいは行列または構造体の要素に接続できます。詳細については、Connect Dashboard Blocks to Simulink Modelを参照してください。

Dashboard ブロックは Stateflow® チャートにも接続できます。詳細については、Dashboard ブロックと Stateflow との接続 (Stateflow)を参照してください。

次のアニメーションは、Combo Box ブロックをモデルに接続する方法を示しています。

An unconnected Combo Box block connects to the Gain parameter of a Gain block.

パラメーターのログ記録

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

すべて展開する

Combo Box ブロックを使用すると、シミュレーション前またはシミュレーション中にパラメーターの値をいくつかある選択肢の 1 つに設定できます。たとえば、モデル comboBoxGain では、Combo Box ブロックが Gain ブロックの [ゲイン] パラメーターに接続されています。Combo Box ブロックは、ゲイン値 0510、または 15 を選択できるように構成されています。

Block parameters dialog box for the Combo Box block.

モデルのシミュレーションを実行します。ゲイン値を変更するには、Combo Box ブロックをクリックし、リストから値を選択します。

Animation of the comboBoxGain model during simulation

制限

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

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

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

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

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

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

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

パラメーター

すべて展開する

接続

Dashboard ブロックはモデル要素への接続に端子を使用しません。モデル内のパラメーター値に Dashboard ブロックを接続するには、接続モード、Simulink® ツールストリップ、または [ブロック パラメーター] ダイアログ ボックスの [接続] テーブルを使用します。スカラー値をもつパラメーター、または行列の要素に接続できます。接続モードの詳細とツールストリップを使用した接続方法の詳細については、Connect Dashboard Blocks to Simulink Modelを参照してください。

[接続] テーブルを使用して、スカラー値をもつパラメーターに制御ブロックを接続するか、スカラー値をもつパラメーターに制御ブロックの接続を変更するには、次の手順を実行します。

  1. ブロックを選択します。

  2. ブロックを接続するには、プロパティ インスペクターの [パラメーター] タブで [接続] をクリックします。ブロックの接続を変更するには、代わりに [変更] をクリックします。

  3. 接続するパラメーター値が含まれているブロックを選択します。

  4. テーブルで接続するパラメーターを選択します。

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

モデルのブロック線図を更新するまで、制御ブロックは変数で定義されているパラメーターに接続できません。シミュレーションが実行されていないときに、変数で定義されたパラメーターに接続するか、接続されているパラメーターの値を定義する変数の値を変更するには、Ctrl+D を押してモデルのブロック線図を更新します。

Dashboard ブロックは Stateflow チャートにも接続できます。詳細については、Dashboard ブロックと Stateflow との接続 (Stateflow)を参照してください。

プログラムでの使用

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

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

メイン

ブロックの状態値とラベルを設定するために、数値と列挙値がペアとなる列挙データ型を使用できます。列挙データ型を使用してブロックの状態を指定するには、まず [列挙データ型] オプションを選択します。次に、テキスト ボックスに列挙データ型の名前を指定します。指定された列挙データ型の定義は 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 で導入

すべて展開する