Main Content

In Bus Element, Bus Element In

外部端子から入力を選択

  • ライブラリ:
  • Simulink / Ports & Subsystems

    Simulink / Sources

    HDL Coder / Ports & Subsystems

    HDL Coder / Sources

  • In Bus Element block

説明

Bus Element In ブロックとしても知られる In Bus Element ブロックは、Inport ブロックと Bus Selector ブロックの機能を組み合わせたものです。このブロックのブロック タイプは Inport であり、同じ端子を使用するすべての In Bus Element ブロックは、[ブロック パラメーター] ダイアログ ボックスを共有します。

In Bus Element ブロックを使用してバスの要素、バス、非バス信号、または端子に関連付けられたメッセージを選択できます。バスから複数の要素を選択するには、複数の In Bus Element ブロックを使用します。

In Bus Element ブロックではメッセージと信号の要素を出力として混在させることはサポートされていません。

端子と関連するブロックの作成

In Bus Element ブロックを挿入する際に、ブロックのラベルには既定値が入力されます。ラベルは、端子名とバス要素の 2 つの対話型のテキスト フィールドで構成されます。ブロックに関連付けられた端子の名前を変更するには、ラベルの最初のテキスト フィールドをクリックして編集します。

関連する In Bus Element ブロックを作成するには、[ブロック パラメーター] ダイアログ ボックスで [選択した信号のブロックを追加します] ボタンを選択できます。

複数のブロックが同じ端子に関連付けられており、その端子の名前を変更する場合、その端子を共有するすべてのブロックが、新しい端子の名前を反映するよう更新されます。

Ctrl を押したままで既存の In Bus Element ブロックを新しい場所へドラッグすることで、追加の端子を作成できます。マウスを離すときに、端子を作成するか、コピーされているブロックに関連付けられた既存の端子を使用するかのオプションがあります。

端子の入力を調べる

関連するあらゆる In Bus Element ブロックについて、[ブロック パラメーター] ダイアログ ボックスで端子に関連付けられた要素を表示できます。

黒色の要素名は、既に In Bus Element ブロックに関連付けられています。グレーの要素名は、使用可能ですが現在使用されていません。赤色の要素名は、In Bus Element ブロックによって指定されているにもかかわらず、入力バスでは使用できません。

[選択した信号のブロックを追加します] ボタン をクリックして、選択した各要素について、In Bus Element ブロックを作成できます。

入力バスで使用できない要素など、選択された要素に関連付けられているブロックを削除するには、[選択した信号のブロックを削除します] ボタン をクリックします。

要素の選択

ブロックに関連付けられたバス要素を変更するには、ラベルの 2 番目のテキスト フィールド内でクリックして編集します。

バスが端子に接続されている場合は、バスの要素を表示されるリストから選択できます。バスの要素を以前に指定された要素名と共にすべて表示するには、テキストをクリアします。要素のリストは、入力されているテキストを含む要素のみを含めるようフィルター処理されます。

バス要素を記述するラベルの部分にある各ドットは、バス階層の新しいレベルを示します。ラベルのサイズを小さくするには、ブロックを選択し、省略記号で一時停止し、アクション バーから [コンパクトな表記法] を選択して要素名のみを表示します。バス階層を再度表示するには、アクション バーから [展開された表記法] を選択します。

2 番目のテキスト フィールドからテキストを削除することで、非バス信号を含めて、端子に接続している入力全体をパス スルーできます。

参照モデルは、次のいずれかのシナリオにおいて、In Bus Element ブロックを使用したバス全体のパス スルーをサポートします。

  • バスが Simulink.Bus オブジェクトによって定義されている。

  • 追加の In Bus Element ブロックがバスの各リーフ要素を参照モデルに渡す。

複製を持つ In Bus Element ブロックを選択することで、重複ブロックを強調表示できます。開いているブロック線図または新しいタブに関連するブロックを表示するには、選択後に表示される省略記号で一時停止します。その後、操作バーから [関連するブロック] Related Blocks button を選択します。選択したブロックに複数のブロックが対応している場合は、関連するブロックのリストが開きます。関連するブロックのリストはテキスト ボックスに検索語を入力してフィルター処理できます。関連するブロックをリストから選択すると、関連するブロックが表示された開いているブロック線図または新しいタブにウィンドウのフォーカスが移ります。

属性の指定

データ型などの属性を指定するには、バス、信号またはメッセージの名前で一時停止します。次に、表示される鉛筆ボタンをクリックします。

Pencil button next to bus name

これらは、属性を指定するとバス、信号またはメッセージの名前の横に表示されます。属性の概要をクリックして、バス、信号またはメッセージの属性を編集します。

Attribute summaries next to bus and bus element names

キューの属性の指定

キューの属性は、ブロックがモデルの最上位レベルにあり、[データ モード] パラメーターを [メッセージ] に設定している場合にのみ表示されます。

キュー タイプなど、キューの属性を指定するには、バスまたはバス要素の名前の横にあるエンベロープ ボタンをクリックします。

Envelope button next to bus element name

入力データの読み込み

In Bus Element ブロックを使用してバスに対する外部入力データを読み込むことができます。In Bus Element ブロックは、バスの要素に対するデータを読み込むことも、バス全体に対するデータを読み込むこともできます。In Bus Element ブロックを使用してバス全体に対するデータを読み込む場合、Simulink.Bus オブジェクトを使用してブロックのデータ型を指定しなければなりません。バス要素に対する入力データの読み込みの詳細については、In Bus Element ブロックを使用したバスの入力データの読み込みを参照してください。

timeseries オブジェクト、timetable オブジェクト、または SimulationDatastore オブジェクトの構造体を使用して、ルートレベルの In Bus Element ブロックのグループに対してシミュレーション入力データを読み込むことができます。In Bus Element ブロックは、stringenumeratedfixed point を除くすべてのデータ型に対して読み込まれたデータを内挿します。

端子

出力

すべて展開する

親サブシステムまたはモデルの対応する外部入力端子からバス、信号またはメッセージを選択します。

バス要素は選択できますが、バス配列の要素は選択できません。

データ型: single | double | half | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | string | Boolean | fixed point | enumerated | bus
複素数のサポート: あり

パラメーター

すべて展開する

ブロックのパラメーターと対応する端子を対話的に編集するには、ブロックをダブルクリックします。

他のブロックまたは端子でまだ使用されていない端子名を指定します。名前は親 Subsystem ブロックまたは Model ブロックに表示されます。名前は、ブロックの横にも表示されます。複数のブロックが同じ端子にアクセスできます。

プログラムでの使用

ブロック パラメーター: PortName
型: 文字ベクトル
: 'InBus' | '<port name>'
既定の設定: 'InBus'

ブロックに対応する端子が親 Subsystem または Model ブロックに現れる順序を指定します。

  • 別の端子を作成するブロックを追加する場合、端子番号は次に利用可能な番号になります。

  • ある端子に関連付けられているすべてのブロックを削除すると、その端子が削除されます。どの番号も省略されることなく連番になるように、その他の端子の番号を付け直します。

  • 端子の数を超える端子番号を指定すると、その番号の端子と、その番号まで連番になる他の端子が作成されます。

プログラムでの使用

ブロック パラメーター: Port
型: 文字ベクトル
値: 実数の整数
既定の設定: '1'

ブロックの背景色を指定します。これを指定すると、選択したバス要素に関連付けられているブロック、またはバス要素を選択していない場合は、端子に関連付けられているすべてのブロックの色が設定されます。

プログラムでの使用

ブロック パラメーター: BackgroundColor
型: 文字ベクトル
値: 'black' | 'white | 'red' | 'green' | 'blue' | 'cyan' | 'magenta' | 'yellow' | 'gray' | 'lightBlue' | 'orange' | 'darkGreen' | '[r,g,b]'。ここで、rg および b は、0.0 ~ 1.0 の範囲の赤、緑、青のカラー値です。
既定の設定: 'black'

バス要素の長いリストをフィルター処理するために使用する検索用語を指定します。検索用語は引用符で囲まないでください。フィルターは部分的な文字列検索を行い、正規表現をサポートします。正規表現文字をリテラルとして使用するには、エスケープ文字 (\) を含めます。たとえば、疑問符を使用するには、sig\?1 と入力します。

属性

属性を指定するには、鉛筆ボタンをクリックするか、バス、信号またはメッセージの名前の横にある属性の概要をクリックします。

データ型は継承されるか、直接指定されるか、Simulink.NumericType オブジェクトなどのデータ型オブジェクトとして表現されます。

次のいずれかのオプションを指定できます。

  • 継承したデータ型

  • 組み込みの Simulink® データ型 — たとえば、[single][uint8] を指定します。Simulink でサポートされているデータ型を参照してください。

  • 固定小数点データ型 — 関数 fixdt を使用します。たとえば、[fixdt(1,16,0)] を指定します。

  • 列挙データ型 — Enum: が前に付いた型名を使用します。たとえば、[Enum: myEnumType] を指定します。

  • バス データ型 — Bus: が前に付いた Simulink.Bus オブジェクトの名前を使用します。たとえば、[Bus: myBusObject] を指定します。

  • 値の型 — ValueType: が前に付いた Simulink.ValueType オブジェクトの名前を使用します。たとえば、[ValueType: windVelocity] を指定します。

  • カスタムのデータ型 — 型を指定する MATLAB® 式を使用します。たとえば、DataTypeMode プロパティが 'Fixed-point: unspecified scaling' 以外の値に設定されている Simulink.NumericType オブジェクトを指定できます。

Simulink.ValueType オブジェクトまたは Simulink.Bus オブジェクトを指定する場合は、データ型以外のものも定義します。そのオブジェクトでは [最小値][最大値][単位] などのプロパティも定義します。ValueType オブジェクトで指定されたプロパティ値は、ブロックで指定された対応するプロパティ値をオーバーライドします。たとえば、ブロックで [単位]ft/s に設定されているとします。ブロックの [データ型]ValueType オブジェクトが指定されており、そのオブジェクトの単位として m/s が使用されている場合、ブロックは ft/s ではなく m/s を使用します。

プログラムでの使用

ブロック パラメーター: OutDataTypeStr
: 文字ベクトル
: 'Inherit: auto' | 'double' | 'single' | 'half' | 'int8' | 'uint8' | 'int16' | 'uint16' | 'int32' | 'uint32' | 'int64' | 'uint64' | 'boolean' | 'fixdt(1,16)' | 'fixdt(1,16,0)' | 'fixdt(1,16,2^0,0)' | 'string' | 'Enum: <class name>' | 'Bus: <object name>' | 'ValueType: <object name>' | '<data type expression>'
既定の設定: 'Inherit: auto'

バス要素のデータ モードを指定します。

  • [継承] — バス要素はデータ モードを継承する。

  • [信号] — バス要素は信号でなければならない。

  • [メッセージ] — バス要素はメッセージでなければならない。

    In Bus Element ブロックでは、データ モードとして [メッセージ] を選択すると、バスまたはバス要素の横にエンベロープ ボタンが表示されます。エンベロープ ボタンを使用して、メッセージ要素ごとにカスタムのキュー プロパティを指定します。Out Bus Element ブロックではキューの指定はサポートされません。

依存関係

このパラメーターを有効にするには、ブロックがモデルの最上位レベルでなければなりません。

プログラムでの使用

ブロック パラメーター: DataMode
: 文字ベクトル
: 'inherit' | 'signal' | 'message'
既定の設定: 'inherit'

バスの仮想性を継承するか、バスをバーチャルまたは非バーチャルとして定義するかを指定します。詳細については、合成信号のタイプを参照してください。

このパラメーターは、ブロックがバスの仮想性を継承または定義するかを決定します。ブロックがバスの仮想性を定義し、入力バスの仮想性が一致しない場合、モデルをコンパイルするとエラーが発生します。

依存関係

このパラメーターを有効にするには、[データ型]Bus オブジェクトに設定します。

プログラムでの使用

ブロック パラメーター: BusVirtuality
: 文字ベクトル
: 'inherit' | 'virtual' | 'nonvirtual'
既定の設定: 'inherit'

信号の次元を指定します。

  • -1 — 信号はどのような次元ももつことができます。

  • N — 信号はサイズ N のベクトルでなければなりません。

  • [R C] — この信号は、RC 列の行列でなければなりません。

プログラムでの使用

ブロック パラメーター: PortDimensions
: 文字ベクトル
: '-1' | 整数 | [整数, 整数]
既定の設定: '-1'

許可される信号の型を指定します。

  • 継承 — 可変サイズの信号と固定サイズの信号が許可されます。

  • 可変 — 可変サイズの信号のみが許可されます。

  • 固定 — 固定サイズの信号のみが許可されます。可変サイズの信号は許可されません。

この信号が可変サイズの場合、[次元] パラメーターは信号の最大次元を指定します。

プログラムでの使用

パラメーター: VarSizeSig
型: 文字ベクトル
値: 'Inherit' | 'No' | 'Yes'
既定の設定: 'Inherit'

信号の物理単位を指定します。サポートされる単位のリストについては、「Allowed Units」を参照してください。

プログラムでの使用

ブロック パラメーター: Unit
型: 文字ベクトル
: 'inherit' | '<Enter unit>'
既定の設定: 'inherit'

サンプル時間の離散間隔を指定します。あるいは、連続または継承などの他の適切なサンプル時間を指定します。

既定では、信号はサンプル時間を継承します。他のサンプル時間を設定するには、サンプル時間のタイプの表に基づいて有効なサンプル時間を入力します。

プログラムでの使用

ブロック パラメーター: SampleTime
型: 文字ベクトル
値: スカラー
既定の設定: '-1'

信号の数値型を指定します。信号の数値型を選択するには [自動] を選択します。それ以外の場合は、実数または複素信号型を選択します。

プログラムでの使用

ブロック パラメーター: SignalType
型: 文字ベクトル
値: 'auto' | 'real' | 'complex'
既定の設定: 'auto'

Simulink がチェックする範囲の下限値。

この数値は有限の実数で double のスカラー値でなければなりません。

Simulink ソフトウェアは、以下を行う際にこの値を使用します。

  • シミュレーション範囲のチェック (信号範囲の指定を参照)

  • 固定小数点データ型の自動スケーリング

  • モデルから生成するコードの最適化。この最適化により、アルゴリズム コードが削除され、SIL やエクスターナル モードなどの一部のシミュレーション モードの結果に影響を与えることがあります。詳細については、指定した最小値と最大値を使用した最適化 (Embedded Coder)を参照してください。

プログラムでの使用

ブロック パラメーター: OutMin
: 文字ベクトル
: '[]' | スカラー
既定の設定: '[]'

Simulink がチェックする範囲の上限値。

この数値は有限の実数で double のスカラー値でなければなりません。

Simulink ソフトウェアは、以下を行う際にこの値を使用します。

  • シミュレーション範囲のチェック (信号範囲の指定を参照)

  • 固定小数点データ型の自動スケーリング

  • モデルから生成するコードの最適化。この最適化により、アルゴリズム コードが削除され、SIL やエクスターナル モードなどの一部のシミュレーション モードの結果に影響を与えることがあります。詳細については、指定した最小値と最大値を使用した最適化 (Embedded Coder)を参照してください。

プログラムでの使用

ブロック パラメーター: OutMax
: 文字ベクトル
: '[]' | スカラー
既定の設定: '[]'

この説明を使用して、バスまたはバス要素に関する情報 (使用場所など) を記述します。この情報は、Simulink 処理に影響を与えません。

プログラムでの使用

ブロック パラメーター: Description
: 文字ベクトル
: '' | '<Enter text>'
既定の設定: ''

キューの属性

キューの属性は、ブロックがモデルの最上位レベルにあり、[データ モード] パラメーターを [メッセージ] に設定している場合にのみ表示されます。

キューの属性を指定するには、バスまたはバス要素の名前の横にあるエンベロープ ボタンをクリックします。

このパラメーターを使用して、既定またはカスタムいずれかのキュー仕様を選択します。

既定のキューのプロパティを使用するには、このパラメーターを選択したままにします。この例では、各メッセージ バス要素に、容量 1 の LIFO 上書きキューが自動的に挿入されます。

カスタム仕様を使用するには、このパラメーターをオフにして、キューのプロパティを設定します。キューの属性は、コンポーネントの外部に配置されているストレージ ブロックがない場合に適用できます。

詳細については、Specify Queue Properties for Message Interfaceを参照してください。

依存関係

このパラメーターを有効にするには、[データ モード] パラメーターを [メッセージ] に設定します。

プログラムでの使用

ブロック パラメーター: MessageQueueUseDefaultAttributes
: 文字ベクトル
: 'on' | 'off'
既定の設定: 'on'

キューで保存できるメッセージ要素の数を指定します。

依存関係

このパラメーターは、[データ モード] パラメーターを [メッセージ] に設定すると表示されます。

プログラムでの使用

ブロック パラメーター: MessageQueueCapacity
: 文字ベクトル
: '1'| スカラー
既定の設定: '1'

以下のいずれかのキュー タイプを選択します。

  • FIFO — 先入れ先出し

  • LIFO — 後入れ先出し

依存関係

このパラメーターは、[データ モード] パラメーターを [メッセージ] に設定すると表示されます。

プログラムでの使用

ブロック パラメーター: MessageQueueType
: 文字ベクトル
: 'FIFO' | 'LIFO'
既定の設定: 'LIFO'

このパラメーターを選択し、2 つのキュー上書きポリシーの間での選択を行います。

  • このパラメーターを選択すると、キューが満杯の場合に受信メッセージ要素が最も古いメッセージを上書きします。

  • このパラメーターをオフにすると、キューが満杯の場合にブロックは新しいメッセージを受け取りません。

依存関係

このパラメーターを有効にするには、[データ モード] パラメーターを [メッセージ] に設定します。

プログラムでの使用

ブロック パラメーター: MessageQueueOverwriting
: 文字ベクトル
: 'on' | 'off'
既定の設定: 'on'

ブロックの特性

データ型

Boolean | bus | double | enumerated | fixed point | half | integer | single | string

直接フィードスルー

いいえ

多次元信号

はい

可変サイズの信号

はい

ゼロクロッシング検出

いいえ

拡張機能

C/C++ コード生成
Simulink® Coder™ を使用して C および C++ コードを生成します。

固定小数点の変換
Fixed-Point Designer™ を使用して固定小数点システムの設計とシミュレーションを行います。

バージョン履歴

R2017a で導入