Out Bus Element
外部端子の出力を指定する

ライブラリ:
Simulink /
Ports & Subsystems
Simulink /
Sinks
HDL Coder /
Ports & Subsystems
HDL Coder /
Sinks
Out Bus Element ブロックの代替構成:
Bus Element Out
説明
Out Bus Element ブロックは、外部端子の出力としてバス、信号、またはメッセージを提供します。
複数のバス、信号、またはメッセージを 1 つの出力バスにグループ化するには、同じ端子に対応する複数の Out Bus Element ブロックを使用します。Out Bus Element ブロックは、Bus Creator ブロックと Outport ブロックの機能を組み合わせたものです。同じ端子に対応するすべての Out Bus Element ブロックは、ダイアログ ボックスを共有します。
多くのバス要素で構成されるバスを含むインターフェイスに対し、Out Bus Element ブロックは次を行います。
ブロック線図における信号線の複雑さと煩雑さを低減する。
インターフェイスに対する段階的な変更を容易にする。
使用ポイントに近いバス要素へのアクセスを許可して、Bus Creator および From ブロック構成の使用を回避する。
Out Bus Element ブロックを使用するようにインターフェイスを変換するには、バス要素端子を使用したサブシステム インターフェイスとモデル インターフェイスの簡略化を参照してください。
Out Bus Element ブロックではメッセージと信号の要素を入力として混在させることはサポートされません。
出力データをワークスペースまたはファイルに保存すると、ルートレベルの Out Bus Element ブロックのグループによって定義されるバス データはルートレベルの Outport ブロック データと共にログに記録されます。
例
モデル コンポーネントでは、各出力バス要素端子は 1 つ以上の Out Bus Element ブロックで表されます。
CreateOutputBusElementPort
という名前のモデルを開きます。
バス要素端子を追加する方法は、モデル コンポーネントとその親のいずれで作業しているのかによって異なります。
現在開いているサブシステムまたはモデルに出力バス要素端子を追加するには、Out Bus Element ブロックを追加します。たとえば、キャンバスをダブルクリックし、ブロック名の入力を開始します。その後、Out Bus Element ブロックを選択します。
現在のコンポーネント内の Subsystem ブロックまたは Model ブロックに出力バス要素端子を追加するには、ブロックの端をクリックして [出力バス端子の作成] を選択します。たとえば、出力バス要素端子を Subsystem ブロックに追加します。
サブシステムを開くには、Subsystem ブロックをダブルクリックします。
サブシステムには、Subsystem ブロック上に作成した出力端子に対応する既定の Out Bus Element ブロックが含まれています。ブロック ラベルでは、端子名 (OutBus
) とバス要素 (signal1
) の 2 つの対話型のテキスト フィールドに既定値が使用されます。
モデル コンポーネント内から別の出力バス要素端子を作成するには、"Ctrl" キーを押したまま既存の Out Bus Element ブロックを新しい場所にドラッグします。ポインターを放したら [新規端子] をクリックします。
一意の端子名をもつ Out Bus Element ブロックが表示されます。
この例では、新しい端子の名前は OutBus1
です。
端子名を編集するには、ブロック ラベルの端子名をクリックします。次に、新しい名前を入力します。
あるいは、[端子名] ブロック パラメーターを設定します。
複数のブロックが同じ端子に関連付けられている場合、その端子の名前を変更すると、その端子を共有するすべてのブロックが新しい端子の名前を反映するように更新されます。
端子に対して Out Bus Element ブロックが 1 つしかない場合は、バス内で入れ子にすることなくブロック入力を出力端子に渡すことができます。
SignalOutputBusPort
という名前のモデル例を開いてコンパイルします。モデルをコンパイルするには、Simulink® ツールストリップの [モデル化] タブで、[モデルの更新] または [実行] をクリックします。モデルをコンパイルするとライン スタイルが更新されます。このライン スタイルは、バスを視覚的に識別するのに使用できます。
Subsystem ブロックには、バスを Scope ブロックに渡す出力端子があります。
出力端子に対応している Out Bus Element ブロックを表示するには、サブシステムを開きます。
サブシステムで、Sine Wave ブロックは Out Bus Element ブロックに接続されます。ブロック ラベル OutBus.signal1
に基づいて、端子の出力は signal1
という名前の要素を含むバスです。ブロック ラベル内のドットはバス階層を示します。
バス内で入れ子にすることなく、信号を出力端子に渡すには、ブロック ラベルから 2 番目のテキスト フィールドを削除します。たとえば、signal1
をクリックしてテキスト フィールドを編集します。
次に、signal1
を削除します。変更をコミットするために、キャンバス上の他の場所をクリックします。
ブロックに関連付けられた端子の名前を変更するには、ブロック ラベルの最初のテキスト フィールドを編集します。たとえば、OutBus
をクリックしてテキスト フィールドを編集します。
次に、OutBus
を削除し、「SineWave
」と入力します。要素名を入力できる場所を示すプレースホルダー テキストは無視します。
あるいは、[端子名] ブロック パラメーターを端子の目的の名前に設定します。
親モデルまで移動し、再コンパイルします。
Subsystem ブロックの出力端子がバスではなく信号を Scope ブロックに渡すようになりました。
1 つの出力端子に対して複数の信号を提供するには、出力に含める信号ごとに Out Bus Element ブロックを使用します。
BusOutputPort
という名前のモデルを開きます。
Out Bus Element ブロックは、OutBus
という名前の端子の signal1
という名前の要素に書き込みます。
要素の名前を変更するには、ブロック ラベルの 2 番目のテキスト フィールドを編集します。たとえば、signal1
をダブルクリックして「constant
*5
」と入力します。
プロパティ インスペクターを開きます。その後、Out Bus Element ブロックを選択します。あるいは、ブロックをダブルクリックしてダイアログ ボックスを開きます。
ブロックで選択されている信号が強調表示されます。
ブロックを使用して端子に要素を追加するには、以下を実行します。
新しい要素を含める要素を選択します。この例では
OutBus
を選択します。をクリックし、[ブロックありの要素の追加] を選択します。
OutBus.signal2
というラベルが付いた Out Bus Element ブロックがブロック線図に表示されます。
プロパティ インスペクターまたはダイアログ ボックスで、名前 signal2
をダブルクリックして「sine+chirp
」と入力します。
対応するブロック ラベルが更新されます。
新しい Out Bus Element ブロックを Sum ブロックの未接続の端子に接続します。
同じ出力端子に関連付けられたすべての要素名は一意でなければなりません。出力要素へのオーバーラップする書き込みはサポートされません。
既定の Out Bus Element ブロックは、出力要素をバス内で入れ子にします。出力端子に多数の要素がある場合は、出力バス内の入れ子にされたバスで要素を整理します。
3 つの Out Bus Element ブロックを含む OutputBusPortHierarchy
という名前のモデルを開きます。
Out Bus Element ブロック ラベル内の各ドットは新しいレベルの階層を示します。出力バス内の別のバスの下に要素を入れ子にするには、対応するブロック ラベルの 2 番目のテキスト フィールドを編集し、階層内の入れ子にされた各バスの後にドットを追加します。
たとえば、ラベル constant
*5
をクリックします。次に、これを NestedBus.constant
*5
に変更します。
このラベルにより、constant
*5
を含む NestedBus
という名前の中間バスが作成されます。
要素を新しいバスに追加するには、同様に他のブロック ラベルを編集します。あるいは、Out Bus Element ブロックをダブルクリックするか、プロパティ インスペクターを開いて Out Bus Element ブロックを選択します。
出力バス内で要素を移動するには、移動する要素を選択して新しい場所にドラッグします。たとえば、sine+chirp
という名前の信号を入れ子にされたバスにドラッグします。
ブロック ラベルで新しい階層が示されます。
プロパティ インスペクターまたはダイアログ ボックスで、バス階層内の既存の要素の下に要素を追加できます。新しい要素を含める要素を選択します。次に、 をクリックし、[ブロックありの要素の追加] または [ブロックなしの要素の追加] を選択します。
新しい要素を含める要素を Out Bus Element ブロックが表している場合、競合を避けるために、使用できるオプションは [ブロックなしの要素の追加] だけです。
R2024a 以降
バス要素端子のバスの要素を指定するには、次の方法があります。
ブロック線図にブロックを追加して要素をインターフェイスに追加するかブロックを追加せずに要素をインターフェイスに追加する。
Simulink.Bus
オブジェクトでバス階層を定義する。
この例では、Simulink.Bus
オブジェクトを使用せずに出力バス要素端子のバスを定義する方法を示します。
空のモデルまたはサブシステムに、Out Bus Element ブロックを追加します。
プロパティ インスペクターを開きます。その後、Out Bus Element ブロックを選択します。あるいは、ブロックをダブルクリックしてダイアログ ボックスを開きます。
ブロックを使用せずに端子に要素を追加するには、新しい要素を含める要素を選択します。たとえば、OutBus
を選択します。次に、 をクリックし、[ブロックなしの要素の追加] を選択します。
前に選択した要素の下に新しい要素が入れ子になります。ブロック線図は変わりません。
Out Bus Element ブロックで直接表現された要素でないことを示すために、要素名がグレーのイタリックで表記されます。
ブロックを追加せずに要素を追加することで、1 つの Out Bus Element ブロックだけを使用し、Simulink.Bus
オブジェクトなしで、出力バス階層全体を定義できます。
オプション:
ブロックあり、またはなしでさらに要素を追加します。
要素の名前をダブルクリックして新しい名前を入力することで、要素の名前を変更します。
要素を新しい場所にドラッグして要素を並べ替えます。
要素のプロパティを指定します。
出力端子の要素を定義すると、再利用のためにファイルを作成する際に役立ちます。インターフェイス定義は、コンポーネントが提供する出力バスの階層とプロパティを検証します。
ブロックなしで要素を追加してから、それらの要素を Out Bus Element ブロックで表すことにしたとします。出力要素のブロックを追加するには、要素名をクリックします。次に、 をクリックします。たとえば、
Chirp
という名前の要素のブロックを追加します。
ブロック線図に、OutBus.NestedBus.Chirp
というラベルの付いた Out Bus Element ブロックが表示されます。
既存の Out Bus Element ブロックが表す要素のブロックを追加することはできません。たとえば、NestedBus
のブロックを追加することはできません。OutBus.NestedBus.Chirp
というラベルの付いた Out Bus Element ブロックは、NestedBus
が Chirp
の親バスであるため、既に NestedBus
を表しています。
コンパクトなラベルとブロックの色を使用して、In Bus Element ブロックと Out Bus Element ブロックの外観をカスタマイズします。
BusElementPortBlocks
という名前のモデルを開きます。
このモデルには次が含まれます。
InBus
とpulse
という名前の 2 つの一意のバス要素端子を表す In Bus Element ブロックOutBus
という名前のバス要素端子を表す Out Bus Element ブロック
ブロック ラベルのサイズを小さくするには、リーフ要素名のみを表示します。In Bus Element ブロックまたは Out Bus Element ブロックを選択し、省略記号をポイントして、操作バーで [コンパクトな表記法] をクリックします。
ブロック線図内のすべての In Bus Element ブロックと Out Bus Element ブロックに、リーフ要素名のみを使用する短縮ブロック ラベルが表示されます。
完全なブロック ラベルを表示するには、操作バーで [展開された表記法] をクリックします。この例では、コンパクトなブロック ラベルのままにします。
ブロックの色は、ブロック ラベルがコンパクトな場合に一意の端子を区別するのに役立ちます。
プロパティ インスペクターを開きます。その後、InBus
という名前の端子に対応する In Bus Element ブロックを選択します。たとえば、constant
というラベルが付いたブロックを選択します。あるいは、ブロックをダブルクリックしてダイアログ ボックスを開きます。
プロパティ インスペクターまたはダイアログ ボックスで、InBus
を選択します。次に、 をクリックし、標準の色を選択するかカスタムの色を指定します。この例では、シアンを選択します。
端子に関連するブロックで選択した色が使用されます。
nonconstant
という名前の入れ子にされたバスまたはその要素を選択しているブロックを特定するには、nonconstant
を選択します。次に、 をクリックし、標準の色を選択するかカスタムの色を指定します。この例では、マゼンタを選択します。
入れ子にされたバスに関連するブロックで選択した色が使用されます。
拡張例
Simulink Bus Capabilities
Work with buses in components, simplify component interfaces, and streamline common bus workflows.
Programmatically Create Bus Element Ports
Add blocks for bus element ports and specify element attributes using MATLAB® functions.
Use Model-Based Design to Build a Battery Management System
Build a battery management system using a workflow that highlights the best practices and tools for collaborative design.
端子
入力
親サブシステムまたはモデルの対応する外部入力端子に渡すバス、信号またはメッセージを接続します。
複数の Out Bus Element ブロックが同一の外部端子に関連付けられている場合、このブロックへの入力は出力端子のバスの 1 要素になります。要素名はブロック ラベルの 2 番目のテキスト フィールドで指定されます。
1 つの Out Bus Element ブロックが外部端子に関連付けられている場合、このブロックへの入力は出力端子に直接受け渡されるか、出力端子においてバス内で入れ子にされます。バス内で入れ子にすることなく、ブロックの入力を出力端子に受け渡すには、ブロック ラベルの 2 番目のテキスト フィールドからテキストを削除します。
データ型: single
| double
| half
| int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
| uint64
| string
| Boolean
| fixed point
| enumerated
| bus
複素数のサポート: あり
パラメーター
Out Bus Element ブロックに関連付けられた要素を編集するには、Simulink® エディターでブロック ラベルを編集します。
端子、信号、および実行の属性を編集するには、プロパティ インスペクターを使用します。Simulink ツールストリップから、[シミュレーション] タブの [準備] ギャラリーで [プロパティ インスペクター] を選択します。
ブロック ラベル
システム内の別のブロックまたは端子でまだ使用されていない端子名を指定します。名前は親 Subsystem ブロックまたは Model ブロックに表示されます。
端子名を Simulink エディターで変更するには、ブロック ラベルの最初のテキスト フィールドを編集します。
各ブロックが端子の一意の要素に対する出力を提供する限り、同じ端子に対して複数のブロックから出力を提供できます。
プログラムでの使用
ブロック パラメーターの値をプログラムで設定するには、関数 set_param
を使用します。
パラメーター: | PortName |
値: | "OutBus" (既定値) | port name in quotes |
データ型: | char | string |
例: set_param("mymodel/Subsystem1/PortBlock",PortName="myBus")
出力端子でバスを作成するには、ブロック ラベルの 2 番目のテキスト フィールドで要素を指定します。
要素を指定する方法は、バス階層における要素の位置によって異なります。
出力バスの最上位にある要素の場合、要素の名前を指定します。たとえば、
constant
のようになります。入れ子にされたバスにある要素の場合、入れ子のバス、中間の入れ子のバス、およびリーフ信号の名前をドットで区切って指定します。たとえば、
sinusoidal.sine
のようになります。この要素のパスに最上位のバスは含まれません。
出力要素はそれぞれ一意でなければならず、端子の他の要素とオーバーラップしていてはなりません。たとえば、入れ子にされたバスの場合、その入れ子のバスに対応する 1 つの Out Bus Element ブロックを使用するか、入れ子のバスの要素に対応する複数の Out Bus Element ブロックを使用します。
バスを作成せずに信号、メッセージ、またはバスを出力するには、ブロック ラベルの 2 番目のテキスト フィールドからテキストを削除します。
プログラムでの使用
ブロック パラメーターの値をプログラムで設定するには、関数 set_param
を使用します。
パラメーター: | Element |
値: | "signal1" (既定値) | element path in quotes |
例: set_param("mymodel/Subsystem1/PortBlock",Element="constant")
例: set_param("mymodel/Subsystem1/PortBlock",Element="sinusoidal.sine")
[端子] タブ
タブを表示するかどうかを切り替えるには、 をクリックします。
R2025a より前: 出力名などの属性を指定するには、最上位のバス、信号またはメッセージの名前で一時停止します。次に、 をクリックします。あるいは、使用可能な場合は属性の概要をクリックします。
端子名の詳細については、[端子名] を参照してください。
ブロックに対応する端子が親 Subsystem または Model ブロックに現れる順序を指定します。
別の端子を作成するブロックを追加する場合、端子番号は次に利用可能な番号になります。
ある端子に関連付けられているすべてのブロックを削除すると、その端子が削除されます。どの番号も省略されることなく連番になるように、その他の端子の番号を付け直します。
端子の数を超える端子番号を指定すると、その番号の端子と、その番号まで連番になる他の端子が作成されます。
プログラムでの使用
ブロック パラメーターの値をプログラムで設定するには、関数 set_param
を使用します。
パラメーター: | Port |
値: | "1" (既定値) | real integer in quotes |
データ型: | char | string |
例: set_param("mymodel/Subsystem1/PortBlock",Port="5")
R2023a 以降
親サブシステムまたはモデル内の出力バス、信号またはメッセージの名前を指定します。名前は線上のラベルとして表示されます。
モデル内の個々の線またはすべての線に対して伝播されたラベルを表示するには、伝播信号ラベルの表示を参照してください。
依存関係
このパラメーターは次の場合に有効になります。
ブロックがモデルの最上位レベルでなければなりません。
要素が最上位バス、信号、またはメッセージでなければなりません。
[データ型] を
Simulink.Bus
オブジェクトに設定した場合、このパラメーターは""
(空) に設定されます。
プログラムでの使用
要素の属性値をプログラムで設定するには、set_param
関数を使用します。モデルの名前かサブシステム ブロックのパス、スラッシュ、および端子の名前かバス要素のパスとして要素を指定します。バス要素端子の場合、最上位のバスからターゲットの要素までの階層をバス要素のパスとして指定します。階層の各名前はドットで区切ります。
パラメーター: | OutputName |
値: | "" (既定値) | output name in quotes |
データ型: | char | string |
例: set_param("mymodel/OutBus",OutputName="model-output")
R2024b 以降
条件付き実行サブシステムについて、そのサブシステムの実行前とディセーブル時のブロック出力を指定します。初期出力値を入力信号から継承するには、次に示す既定の設定を両方とも適用します。
[初期出力] を
[]
に設定。[ディセーブル時の出力] を
[保持]
に設定。
出力値を入力信号から継承するように試行されます。入力信号が初期出力値に対する有効なソースでない場合、初期出力値 []
は double(0)
として扱われます。詳細については、条件付きサブシステムの初期出力値を参照してください。
初期条件構造体の指定方法の詳細は、Specify Initial Conditions for Bus Elementsを参照してください。
ヒント
条件付きサブシステムが Merge ブロックを駆動する場合は、Out Bus Element ブロックの初期条件を指定する必要はありません。詳細については、Underspecified initialization detectionを参照してください。
依存関係
このパラメーターは次の場合に有効になります。
ブロックが条件付き実行サブシステムまたはモデルの最上位になければなりません。
要素が最上位バス、信号、またはメッセージでなければなりません。
制限
このブロックでは、
inf
またはNaN
の初期出力はサポートされません。入力がバーチャル バスの場合、[初期出力] の値
[]
はdouble(0)
として扱われます。入力に非バーチャル バスが含まれている場合、[初期出力] では非ゼロのスカラー値がサポートされません。
プログラムでの使用
ブロック パラメーターの値をプログラムで設定するには、関数 set_param
を使用します。
パラメーター: | InitialOutput |
値: | '[]' (既定値) | scalar in quotes | structure in quotes |
データ型: | char | string |
例: set_param("mdl/condss/Output",InitialOutput="3")
R2024b 以降
親条件付き実行サブシステムがディセーブルになったときのブロック出力に対する処理を指定します。
保持
— サブシステムがディセーブルになったときに出力が保持されます。リセット
— サブシステムがディセーブルになったときに出力が [初期出力] で指定された値にリセットされます。
ヒント
親サブシステムの出力が Merge ブロックに接続されている場合は、このパラメーターを
[リセット]
に設定しないでください。Function-Call Subsystem 内の Out Bus Element ブロックの場合、このパラメーターは、Function-Call Subsystem ブロックが Stateflow® チャート内のステートに接続されている場合にのみ意味をもちます。詳細については、Function-Call Subsystem のステートへのバインド (Stateflow)を参照してください。
依存関係
このパラメーターは次の場合に有効になります。
ブロックが有効化と無効化の有効なセマンティクスのある条件付きサブシステムの最上位になければなりません。たとえば、Enabled Subsystem 内の Out Bus Element ブロックではこのパラメーターがサポートされますが、Triggered Subsystem 内の Out Bus Element ブロックではこのパラメーターはサポートされません。
要素が最上位バス、信号、またはメッセージでなければなりません。
プログラムでの使用
ブロック パラメーターの値をプログラムで設定するには、関数 set_param
を使用します。
パラメーター: | OutputWhenDisabled |
値: | "held" (既定値) | "reset" |
例: set_param("mdl/condss/Output",InitialOutput="3",OutputWhenDisabled="reset")
[信号] タブ
タブを表示するかどうかを切り替えるには、 をクリックします。
属性を指定すると、対応するバス、信号、またはメッセージの名前の横に小かっこ付きで表示されます。指定されている属性全体を表示するには、属性の概要をクリックします。
R2025a より前: データ型などの属性を指定するには、バス、信号またはメッセージの名前で一時停止します。次に、 をクリックします。あるいは、使用可能な場合は属性の概要をクリックします。
バス、信号、またはメッセージのデータ型は継承されるか、直接指定されるか、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.ValueType
オブジェクトの対応するプロパティが使用されます。たとえば、要素の [単位] を ft/s
に設定したとします。要素の [データ型] で ValueType
オブジェクトが指定されており、その要素の単位として m/s
が使用されている場合、要素は ft/s
ではなく m/s
を使用します。
Simulink.Bus
オブジェクトをデータ型として指定する場合、要素の一部のパラメーターは既定値にリセットされます。たとえば、[最小値]、[最大値]、および [単位] のパラメーターはリセットされます。代わりに、Simulink.Bus
オブジェクトの Simulink.BusElement
オブジェクトの対応するプロパティが使用されます。
ヒント
Simulink.Bus
オブジェクトまたはSimulink.Bus
オブジェクト データ型をもつSimulink.ValueType
オブジェクトを使用してバスを指定すると、プロパティ インスペクターとブロック ダイアログ ボックスには、対応するSimulink.BusElement
オブジェクトで定義された要素が表示されます。型エディターを使用して
Simulink.Bus
オブジェクトを作成するには、をクリックします。
依存関係
バス要素端子のバスのデータ型として Simulink.Bus
オブジェクトを指定するには、バスまたはバスの要素を Out Bus Element ブロックで表す必要があります。
プログラムでの使用
要素の属性値をプログラムで設定するには、set_param
関数を使用します。モデルの名前かサブシステム ブロックのパス、スラッシュ、および端子の名前かバス要素のパスとして要素を指定します。バス要素端子の場合、最上位のバスからターゲットの要素までの階層をバス要素のパスとして指定します。階層の各名前はドットで区切ります。
パラメーター: | 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 in quotes |
例: set_param("mymodel/myBus.signal1",OutDataTypeStr="int32")
出力要素のデータ モードを指定します。
継承
— 出力要素はデータ モードを継承します。信号
— 出力要素は信号、または信号を含むバスでなければなりません。メッセージ
— 出力要素はメッセージ、またはメッセージを含むバスでなければなりません。
依存関係
このパラメーターを有効にするには、ブロックがモデルの最上位レベルでなければなりません。
プログラムでの使用
要素の属性値をプログラムで設定するには、set_param
関数を使用します。モデルの名前かサブシステム ブロックのパス、スラッシュ、および端子の名前かバス要素のパスとして要素を指定します。バス要素端子の場合、最上位のバスからターゲットの要素までの階層をバス要素のパスとして指定します。階層の各名前はドットで区切ります。
パラメーター: | DataMode |
値: | "inherit" (既定値) | "signal" | "message" |
例: set_param("mymodel/OutBus",DataMode="signal")
バスの仮想性を継承するか、バスをバーチャルまたは非バーチャルとして定義するかを指定します。詳細については、合成インターフェイスのガイドラインを参照してください。
このパラメーターは、ブロックがバスの仮想性を継承または定義するかを決定します。ブロックがバスの仮想性を定義し、入力バスの仮想性が一致しない場合、モデルをコンパイルするとエラーが発生します。
依存関係
このパラメーターを有効にするには、[データ型] が Simulink.Bus
オブジェクトに関連付けられなければなりません。たとえば、[データ型] を Simulink.Bus
オブジェクトや Simulink.Bus
オブジェクトがデータ型として指定された Simulink.ValueType
オブジェクトに設定します。
プログラムでの使用
要素の属性値をプログラムで設定するには、set_param
関数を使用します。モデルの名前かサブシステム ブロックのパス、スラッシュ、および端子の名前かバス要素のパスとして要素を指定します。バス要素端子の場合、最上位のバスからターゲットの要素までの階層をバス要素のパスとして指定します。階層の各名前はドットで区切ります。
パラメーター: | BusVirtuality |
値: | "inherit" (既定値) | "virtual" | "nonvirtual" |
例: set_param("mymodel/myBus.nestedBus",BusVirtuality="nonvirtual")
信号の次元を指定します。
-1
— 信号はどのような次元ももつことができます。N
— 信号はサイズN
のベクトルでなければなりません。[R C]
— この信号は、R
行C
列の行列でなければなりません。
依存関係
[データ型] で
Simulink.Bus
オブジェクトが指定されている場合、このパラメーターは1
に設定されます。Simulink.Bus
オブジェクトのSimulink.BusElement
オブジェクトで指定されている次元が使用されます。[データ型] で
Simulink.ValueType
オブジェクトが指定されている場合、このパラメーターの値は無視されます。代わりに、Simulink.ValueType
オブジェクトで指定されている次元が使用されます。
プログラムでの使用
要素の属性値をプログラムで設定するには、set_param
関数を使用します。モデルの名前かサブシステム ブロックのパス、スラッシュ、および端子の名前かバス要素のパスとして要素を指定します。バス要素端子の場合、最上位のバスからターゲットの要素までの階層をバス要素のパスとして指定します。階層の各名前はドットで区切ります。
パラメーター: | PortDimensions |
値: | "-1" (既定値) | integer in quotes | 1 -by-2 vector of integers in quotes |
データ型: | char | string |
例: set_param("mymodel/myBus.signal1",PortDimensions="[1 3]")
許可される信号の型を指定します。
継承
— 可変サイズの信号と固定サイズの信号が許可されます。可変
— 可変サイズの信号のみが許可されます。固定
— 固定サイズの信号のみが許可されます。可変サイズの信号は許可されません。
この信号が可変サイズの場合、[次元] パラメーターは信号の最大次元を指定します。
依存関係
[データ型] で
Simulink.Bus
オブジェクトが指定されている場合、このパラメーターは[継承]
に設定されます。Simulink.Bus
オブジェクトのSimulink.BusElement
オブジェクトで指定されている次元モードが使用されます。[データ型] で
Simulink.ValueType
オブジェクトが指定されている場合、このパラメーターの値は無視されます。代わりに、Simulink.ValueType
オブジェクトで指定されている次元モードが使用されます。
プログラムでの使用
要素の属性値をプログラムで設定するには、set_param
関数を使用します。モデルの名前かサブシステム ブロックのパス、スラッシュ、および端子の名前かバス要素のパスとして要素を指定します。バス要素端子の場合、最上位のバスからターゲットの要素までの階層をバス要素のパスとして指定します。階層の各名前はドットで区切ります。
パラメーター: | VarSizeSig |
値: | "Inherit" (既定値) | "No" | "Yes" |
例: set_param("mymodel/Subsystem1/myBus.signal1",VarSizeSig="No")
信号の物理単位を指定します。サポートされている単位のリストについては、MATLAB コマンド ウィンドウで「showunitslist
」と入力します。
依存関係
[データ型] で
Simulink.Bus
オブジェクトが指定されている場合、このパラメーターは[継承]
に設定されます。Simulink.Bus
オブジェクトのSimulink.BusElement
オブジェクトで指定されている単位が使用されます。[データ型] で
Simulink.ValueType
オブジェクトが指定されている場合、このパラメーターの値は無視されます。代わりに、Simulink.ValueType
オブジェクトで指定されている単位が使用されます。
プログラムでの使用
要素の属性値をプログラムで設定するには、set_param
関数を使用します。モデルの名前かサブシステム ブロックのパス、スラッシュ、および端子の名前かバス要素のパスとして要素を指定します。バス要素端子の場合、最上位のバスからターゲットの要素までの階層をバス要素のパスとして指定します。階層の各名前はドットで区切ります。
パラメーター: | Unit |
値: | "inherit" (既定値) | unit supported by Simulink software in quotes |
データ型: | char | string |
例: set_param("mymodel/myBus.signal1",Unit="m/s")
信号の数値型を指定します。信号の数値型を選択するには [自動]
を選択します。それ以外の場合は、実数または複素信号型を選択します。
依存関係
[データ型] で
Simulink.Bus
オブジェクトが指定されている場合、このパラメーターは[自動]
に設定されます。Simulink.Bus
オブジェクトのSimulink.BusElement
オブジェクトで指定されている実数/複素数が使用されます。[データ型] で
Simulink.ValueType
オブジェクトが指定されている場合、このパラメーターの値は無視されます。代わりに、Simulink.ValueType
オブジェクトで指定されている実数/複素数が使用されます。
プログラムでの使用
要素の属性値をプログラムで設定するには、set_param
関数を使用します。モデルの名前かサブシステム ブロックのパス、スラッシュ、および端子の名前かバス要素のパスとして要素を指定します。バス要素端子の場合、最上位のバスからターゲットの要素までの階層をバス要素のパスとして指定します。階層の各名前はドットで区切ります。
パラメーター: | SignalType |
値: | "auto" (既定値) | "real" | "complex" |
例: set_param("mymodel/myBus.signal1",SignalType="real")
ソフトウェアでチェックする範囲の下限値。
この数値は有限の実数で double のスカラー値でなければなりません。
ソフトウェアは、以下を行う際にこの値を使用します。
シミュレーション範囲のチェック。詳細については、信号範囲の指定を参照してください。
固定小数点データ型の自動スケーリング
モデルから生成するコードの最適化。この最適化により、アルゴリズム コードが削除され、SIL やエクスターナル モードなどの一部のシミュレーション モードの結果に影響を与えることがあります。詳細については、Optimize using the specified minimum and maximum values (Embedded Coder)を参照してください。
依存関係
[データ型] で
Simulink.Bus
オブジェクトが指定されている場合、このパラメーターは[]
に設定されます。Simulink.Bus
オブジェクトのSimulink.BusElement
オブジェクトで指定されている最小値が使用されます。[データ型] で
Simulink.ValueType
オブジェクトが指定されている場合、このパラメーターの値は無視されます。代わりに、Simulink.ValueType
オブジェクトで指定されている最小値が使用されます。
プログラムでの使用
要素の属性値をプログラムで設定するには、set_param
関数を使用します。モデルの名前かサブシステム ブロックのパス、スラッシュ、および端子の名前かバス要素のパスとして要素を指定します。バス要素端子の場合、最上位のバスからターゲットの要素までの階層をバス要素のパスとして指定します。階層の各名前はドットで区切ります。
パラメーター: | OutMin |
値: | "[]" (既定値) | scalar in quotes |
データ型: | char | string |
例: set_param("mymodel/Subsystem1/myBus.signal1",OutMin="0")
ソフトウェアでチェックする範囲の上限値。
この数値は有限の実数で double のスカラー値でなければなりません。
ソフトウェアは、以下を行う際にこの値を使用します。
シミュレーション範囲のチェック。詳細については、信号範囲の指定を参照してください。
固定小数点データ型の自動スケーリング
モデルから生成するコードの最適化。この最適化により、アルゴリズム コードが削除され、SIL やエクスターナル モードなどの一部のシミュレーション モードの結果に影響を与えることがあります。詳細については、Optimize using the specified minimum and maximum values (Embedded Coder)を参照してください。
依存関係
[データ型] で
Simulink.Bus
オブジェクトが指定されている場合、このパラメーターは[]
に設定されます。Simulink.Bus
オブジェクトのSimulink.BusElement
オブジェクトで指定されている最大値が使用されます。[データ型] で
Simulink.ValueType
オブジェクトが指定されている場合、このパラメーターの値は無視されます。代わりに、Simulink.ValueType
オブジェクトで指定されている最大値が使用されます。
プログラムでの使用
要素の属性値をプログラムで設定するには、set_param
関数を使用します。モデルの名前かサブシステム ブロックのパス、スラッシュ、および端子の名前かバス要素のパスとして要素を指定します。バス要素端子の場合、最上位のバスからターゲットの要素までの階層をバス要素のパスとして指定します。階層の各名前はドットで区切ります。
パラメーター: | OutMax |
値: | "[]" (既定値) | scalar in quotes |
データ型: | char | string |
例: set_param("mymodel/Subsystem1/myBus.signal1",OutMax="2")
この説明を使用して、バス、信号、またはメッセージに関する情報 (使用場所など) を記述します。この情報は、処理に影響を与えません。
依存関係
[データ型] で
Simulink.Bus
オブジェクトが指定されている場合、このパラメーターは""
(空) に設定されます。Simulink.Bus
オブジェクトで指定されている説明が使用されます。[データ型] で
Simulink.ValueType
オブジェクトが指定されている場合、このパラメーターの値は無視されます。代わりに、Simulink.ValueType
オブジェクトで指定されている説明が使用されます。
プログラムでの使用
要素の属性値をプログラムで設定するには、set_param
関数を使用します。モデルの名前かサブシステム ブロックのパス、スラッシュ、および端子の名前かバス要素のパスとして要素を指定します。バス要素端子の場合、最上位のバスからターゲットの要素までの階層をバス要素のパスとして指定します。階層の各名前はドットで区切ります。
パラメーター: | Description |
値: | "" (既定値) | description in quotes |
データ型: | char | string |
例: set_param("mymodel/Subsystem1/myBus.signal1",Description="This signal is used by...")
[実行] タブ
タブを表示するかどうかを切り替えるには、 をクリックします。
属性を指定すると、対応するバス、信号、またはメッセージの名前の横に小かっこ付きで表示されます。指定されている属性を表示するには、 をクリックします。
R2025a より前: 実行の属性を指定するには、バス、信号、またはメッセージの名前をポイントします。次に、 をクリックします。
サンプル時間のヒット間の離散間隔を指定するか、連続 (0
) や継承 (-1
) など、別のタイプのサンプル時間を指定します。その他のオプションについては、サンプル時間のタイプを参照してください。
既定では、信号はサンプル時間を継承します。
プログラムでの使用
要素の属性値をプログラムで設定するには、set_param
関数を使用します。モデルの名前かサブシステム ブロックのパス、スラッシュ、および端子の名前かバス要素のパスとして要素を指定します。バス要素端子の場合、最上位のバスからターゲットの要素までの階層をバス要素のパスとして指定します。階層の各名前はドットで区切ります。
パラメーター: | SampleTime |
値: | "-1" (既定値) | scalar in quotes |
データ型: | char | string |
例: set_param("mymodel/Subsystem1/myBus.signal1",SampleTime="0.01")
ブロックの特性
データ型 |
|
直達 |
|
多次元信号 |
|
可変サイズの信号 |
|
ゼロクロッシング検出 |
|
代替構成
Bus Element Out ブロックは Out Bus Element ブロックと名前のみ異なります。
ライブラリ:
Simulink /
Signal Routing
HDL Coder /
Signal Routing
ヒント
端子が受け取るバスに多数のバス要素がある場合は、[フィルター] ボックスに検索用語を入力して、表示されるバス要素にフィルターを適用します。検索用語は引用符で囲まないでください。フィルターは部分的な文字列検索を行い、正規表現をサポートします。正規表現では、入力要素がパターンと一致するかどうかに基づいてフィルターが適用されます。たとえば、名前が小文字の
t
で終わるすべての要素を表示するには、[フィルター] ボックスに「t$
」と入力します。詳細については、正規表現を参照してください。Out Bus Element ブロックの背景色を変更するには、
をクリックし、標準の色を選択するかカスタムの色を指定します。あるいは、
BackgroundColor
ブロック プロパティを使用します。詳細については、プログラムによるブロックのパラメーターとプロパティの指定を参照してください。
拡張機能
C/C++ コード生成
Simulink® Coder™ を使用して C および C++ コードを生成します。
このブロックは、HDL コードを生成するサブシステムでブロックを使用する際のサブシステム バス インターフェイスを簡略化するために使用できますが、ハードウェア実装には含まれません。
HDL コード生成でのバスの使用の詳細についてはバス (HDL Coder)およびバスを使用したモデルの可読性の向上および HDL コードの生成 (HDL Coder)を参照してください。
このブロックは、Simulink.ValueType
オブジェクトのコード生成をサポートしています。値のタイプの詳細については、Specify Common Set of Signal Properties as Value Typeを参照してください。
このブロックは、HDL コード生成で次のデータ型をサポートします。
入力端子 | 次元 | 固定小数点 | 浮動小数点 | 組み込み整数 | boolean | 複素信号 |
---|---|---|---|---|---|---|
Port_1 | スカラー ベクトル 行列 | あり | half single double | あり | あり | あり |
固定小数点の変換
Fixed-Point Designer™ を使用して固定小数点システムの設計とシミュレーションを行います。
バージョン履歴
R2017a で導入端子、信号、および実行の属性をより簡単に指定できるようになりました。
端子、信号、および実行の属性の表示を切り替えるには、
をクリックします。端子、信号、および実行の属性はタブに表示されるようになりました。以前のリリースでバス、信号、またはメッセージの名前をポイントすると表示されるボタンは、
ボタンに置き換えられました。
実行の属性を指定すると、対応するバス、信号、またはメッセージの名前の横に小かっこ付きで表示されるようになりました。指定されている属性を表示するには、
をクリックします。
端子名を編集するには、最上位のバス、信号、またはメッセージの名前をダブルクリックします。あるいは、[端子] タブで [端子名] を指定します。
ブロックの色を変更するには、
をクリックし、標準の色を選択するかカスタムの色を指定します。
型エディターを使用して
Simulink.Bus
オブジェクトを作成するには、[信号] タブでをクリックします。
[次元モード] の英語 UI が [Dims mode] から [Dimensions mode] になりました。
条件付き実行サブシステムおよびモデルにおいて、Out Bus Element ブロックで最上位要素の初期条件がサポートされるようになりました。非バス信号の場合は、[初期出力] を、その信号と同じ次元および実数/複素数をもつ値に設定します。バスの場合は、[初期出力] を、そのバスの要素と同じ名前および階層をもつフィールドで構成される MATLAB 構造体に設定します。サブシステムがディセーブルになったときのブロック出力に対する処理を指定するには、[ディセーブル時の出力] ブロック パラメーターを使用します。
サブシステムまたはモデルに出力バス要素端子がある場合、以下のために Simulink.Bus
オブジェクトを指定したり、Out Bus Element ブロックを追加したりする必要はありません。
要素を出力端子に追加する。
出力端子で要素の属性を指定する。
端子に要素を追加するには、新しい要素を含める要素を選択します。次に、 をクリックし、次のオプションのいずれかを選択します。
ブロックありの要素の追加 — 要素を端子に追加し、その要素を表す Out Bus Element ブロックを追加します。
ブロックなしの要素の追加 — 要素を端子に追加しますが、その要素を表す Out Bus Element ブロックは追加しません。
ブロック線図にブロックを追加せずに、要素を出力バスにプログラムで追加するには、関数 Simulink.Bus.addElementToPort
を使用します。
Ctrl キーを押しながら Out Bus Element ブロックを新しい場所にドラッグするときのオプションがより明確になりました。
新規端子 — 端子を作成します。
新規要素 — ドラッグされたブロックが端子全体ではなく端子の要素を表している場合は、要素を端子に追加します。
以前のリリースでは、オプションは 2 つでした。
新規端子の作成 — 端子を作成します。
既存端子の使用 — ドラッグされたブロックが端子全体ではなく端子の要素を表している場合は、要素を端子に追加します。それ以外の場合は、端子を作成します。
次の操作で一貫して端子が作成されるようになりました。
キャンバスをダブルクリックします。その後、
Out Bus Element
の入力を開始し、メニューからブロックを選択します。Out Bus Element ブロックをコピーして貼り付けます。
以前のリリースでは、これらの操作により、端子の作成または端子への要素の追加のいずれかが行われていました。
モデルの最上位レベルにある Out Bus Element ブロックの場合、[出力名] ブロック パラメーターを使用して、親サブシステムまたはモデルに表示される最上位バス、信号またはメッセージの名前を指定します。
プロパティ インスペクターで In Bus Element ブロックと Out Bus Element ブロックがサポートされます。
In Bus Element ブロックと Out Bus Element ブロックの警告およびエラー メッセージがブロック線図内の対応するブロックにリンクされるようになったため、警告またはエラーの原因を迅速に見つけることができます。以前のリリースでは、警告およびエラー メッセージは非表示のブロックを参照し、リンクは提供されません。
MATLAB Command
You clicked a link that corresponds to this MATLAB command:
Run the command by entering it in the MATLAB Command Window. Web browsers do not support MATLAB commands.
Web サイトの選択
Web サイトを選択すると、翻訳されたコンテンツにアクセスし、地域のイベントやサービスを確認できます。現在の位置情報に基づき、次のサイトの選択を推奨します:
また、以下のリストから Web サイトを選択することもできます。
最適なサイトパフォーマンスの取得方法
中国のサイト (中国語または英語) を選択することで、最適なサイトパフォーマンスが得られます。その他の国の MathWorks のサイトは、お客様の地域からのアクセスが最適化されていません。
南北アメリカ
- América Latina (Español)
- Canada (English)
- United States (English)
ヨーロッパ
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)