ドキュメンテーション

最新のリリースでは、このページがまだ翻訳されていません。 このページの最新版は英語でご覧になれます。

Outport

サブシステムの出力端子または外部出力を作成

  • ライブラリ:
  • Simulink / Commonly Used Blocks

    Simulink / Ports & Subsystems

    Simulink / Sinks

    HDL Coder / Commonly Used Blocks

    HDL Coder / Ports & Subsystems

    HDL Coder / Sinks

説明

Outport ブロックは信号をシステムからシステム外部の宛先にリンクします。あるサブシステムからモデルの別の部分に流れる信号を接続できます。モデルの階層構造の最上位レベルで外部出力を供給することもできます。

Simulink® は、以下のルールに従って Outport ブロック端子番号を割り当てます。

  • ルートレベル システム内またはサブシステム内の Outport ブロックに自動的に 1 から順番に番号を付けます。

  • Outport ブロックを追加する場合、使用可能な次の番号が割り当てられます。

  • Outport ブロックを削除する場合、Outport ブロックが順番どおり並び、どの番号も省略されることなく自動的に他の端子にも連番が付けられます。

サブシステム内の Outport ブロック

サブシステムの Outport ブロックは、サブシステムからの出力を表します。Subsystem ブロックの出力端子に接続されている信号は、そのサブシステムの対応する Outport ブロックから出力されます。出力端子に対応する Outport ブロックは、[端子番号] パラメーターが Subsystem ブロックの出力端子の相対位置に一致するブロックです。たとえば、[端子番号] パラメーターが 1 に等しい Outport ブロックは、その信号を Subsystem ブロックの一番上の出力端子に接続されているブロックに送信します。

Outport ブロックの端子番号に関して再度番号付けを行う場合、ブロックは別の出力端子に接続されるようになります。ブロックはサブシステム外部の同じブロックに引き続き信号を送信します。

ヒント

サブシステムに接続する多くのバス要素で構成されるバス信号を含むモデルについては、In Bus Element ブロックと Out Bus Element ブロックを使用することを検討してください。これらのバス要素端子ブロックにより、次が可能です。

  • ブロック線図における信号線の複雑さと煩雑さを低減する。

  • インターフェイスの段階的な変更を容易にする。

  • 使用ポイントに近いバス要素へのアクセスを許可して、Bus Selector および Goto ブロック構成の使用を回避する。

Out Bus Element ブロックはブロック タイプ Outport です。ただし、継承されたワークフローをサポートするバス要素端子ブロックで許可される仕様はありません。Out Bus Element ブロックの [ブロック パラメーター] ダイアログ ボックスを使用してデータ型または次元などのバス要素属性を指定することはできません。

モデルの階層構造内の最上位 Outport ブロック

モデルの階層構造の最上位レベルにある Outport ブロックには 2 つの用途があります。このブロックは、ベース MATLAB® ワークスペースに外部出力を供給し、解析関数 linmodtrim によってシステムから出力を取得する手段を提供します。

ワークスペースに外部出力を供給するには、[コンフィギュレーション パラメーター][データのインポート/エクスポート] ペイン (MATLAB ワークスペースへのデータのエクスポートを参照) または sim コマンドを使用します。たとえば、システムに 1 つを超える Outport ブロックが存在し、保存形式が配列の場合、以下のコマンドが

[t,x,y] = sim(...);

y を行列として書き込みます。各列には異なる Outport ブロックのデータが含まれます。列の順序は、Outport ブロックの端子番号の順序と一致します。

2 番目の (状態) 引数の後ろに 1 つを超える変数名を指定した場合、各 Outport ブロックからのデータは異なる変数に書き込まれます。たとえば、システムが 2 つの Outport ブロック (Outport ブロック 1 からのデータを speed に保存するブロックと Outport ブロック 2 からのデータを dist に保存するブロック) をもっている場合、このコマンドを指定します。

[t,x,speed,dist] = sim(...);

ルートレベルの Outport へのバスの接続

モデルのルートレベルの Outport は、バスのすべての要素が同じデータ型をもつ場合に限り、バーチャル バスを受け取ることができます。Outport ブロックは、バスを自動的にバスと同じ要素数をもつベクトルにまとめ、ベクトルを出力します。

混在する型を含むバス信号をモデルのルートレベルの Outport が受け取るようにする場合、Outport ブロックの [データ型]Bus: <object name> に設定します。バス信号がバーチャルである場合、バスの変換で説明しているように、非バーチャルに変換されます。

ルートレベルの Outport ブロックと Simulink.Signal オブジェクトの関連付け

ルートレベルの Outport ブロックを Simulink.Signal オブジェクトに関連付けるには、モデル データ エディターを使用します。信号の場合を参照してください。

端子

入力

すべて展開する

出力端子から外部のサブシステムまたはモデルに流れる入力信号。

ルート レベルの出力端子でない場合、Outport ブロックは固定小数点データ型と列挙データ型を受け入れることができます。ブロックの出力の実数/複素数とデータ型は、その入力と同じです。

データ型: single | double | int8 | int16 | int32 | uint8 | uint16 | uint32 | Boolean | fixed point | enumerated | bus

パラメーター

すべて展開する

メイン

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

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

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

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

プログラムでの使用

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

生成されたコード内の対応する信号データの名前を指定します。このパラメーターを使用して、ストレージ クラスをルートレベルの Outport ブロックに適用する際の信号データの名前を指定します。

プログラムでの使用

ブロック パラメーター: SignalName
型: 文字ベクトル
値: 文字ベクトル
既定の設定: ' '

この端子のアイコン上に表示される情報を指定します。

プログラムでの使用

ブロック パラメーター: IconDisplay
型: 文字ベクトル
値: 'Signal name' | 'Port number' | 'Port number and signal name'
既定の設定: 'Port number'

ソースが接続されていないときに表示される定数出力値を指定します。

依存関係

駆動されていない Outport ブロックが Variant Subsystem ブロックにある場合に有効になります。

プログラムでの使用

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

ソースが接続されていないときに表示される定数出力値を指定します。

依存関係

駆動していない Output ブロックの Variant Subsystem ブロックで有効になります。

プログラムでの使用

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

[定数値] パラメーターが N 要素の行または列ベクトルの場合、長さ N のベクトルを出力するにはこのチェック ボックスをオンにします。

依存関係

[ソース非接続時に出力を指定] パラメーターを選択した場合、駆動していない Output ブロックの Variant Subsystem ブロックで有効になります。

プログラムでの使用

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

Simulink が出力端子で信号バッファーを使用することを指定するには、このチェック ボックスをオフにします。このバッファーは、Outport ブロック信号の一貫した初期化を必ず行います。

このチェック ボックスをオンにした場合、Simulink は信号バッファーを削除しようとします。

  • 信号バッファーが必要ではない場合、Simulink はバッファーを削除します。

  • データの一貫性および適切な実行を行うために信号バッファーが必要である場合、Simulink はバッファーを削除できなかったことを示すエラーを表示します。

Assignment ブロックを介して部分的な書き込みを許可します。

条件付きの書き込みと部分的な書き込みの例については、出力端子がバーチャルであることを確認を参照してください。

依存関係

このパラメーターは、次のブロックに適用されます。

  • Conditional subsystem

  • Assignment

  • Merge

  • ルート Outport ブロックをもつモデル

プログラムでの使用

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

ブロックの初期出力値のソースを選択します。初期出力値が [初期出力] パラメーターの値であることを指定するには、[ダイアログ] を選択します。初期出力値が入力信号から継承されることを指定するには、[入力信号] を選択します。条件付きサブシステムの初期出力値を参照してください。

ヒント

  • クラシック初期化モードを使用している場合、[入力信号] を選択するとエラーが発生します。初期出力値を入力信号から継承するには、このパラメーターを [ダイアログ] に設定して [初期出力] の値に [] (空行列) を指定します。詳細については、条件付きサブシステムの初期出力値を参照してください。

依存関係

このパラメーターは、Outport が条件付きサブシステム内に存在する場合に有効になります。

[ダイアログ] を選択すると、以下のパラメーターが有効になります。

  • ディセーブル時の出力

  • 初期出力

プログラムでの使用

ブロック パラメーター: SourceOfInitialOutputValue
型: 文字ベクトル
値: 'Dialog' | 'Input signal'
既定の設定: 'Dialog'

サブシステムがディセーブルになったときのブロック出力に何が起こるのかを指定します。サブシステムがディセーブルになる場合に出力が保持されることを示すには、[保持] を選択します。サブシステムがディセーブルになる場合に出力が [初期出力] で指定された値にリセットされることを示すには、[リセット] を選択します。

依存関係

このパラメーターを有効にするには、Outport が有効化と無効化の有効なセマンティクスのある条件付きサブシステム内に存在する場合に、[初期出力の値のソース][ダイアログ] を選択します。たとえば、このパラメーターは Outport が Triggered Subsystem 内に配置されている場合無効になりますが、Outport が Enabled Subsystem 内に配置されている場合は有効になります。

Outport が Function-Call Subsystem 内に配置されている場合、このパラメーターは Stateflow チャートで Function-Call Subsystem がステートにバインドされている場合にのみ意味があります。詳細については、Function-Call Subsystem のステートへのバインド (Stateflow)を参照してください。

条件付きサブシステムの出力を Merge ブロックに接続するときは、このパラメーターを 保持 に設定します。[リセット] に設定するとエラーが返されます。

プログラムでの使用

ブロック パラメーター: OutputWhenDisabled
型: 文字ベクトル
値: 'held' | 'reset'
既定の設定: 'held'

条件付き実行サブシステムの場合は、そのサブシステムを実行する前とそのサブシステムが実行不能になっている間にブロック出力を指定します。初期出力値を入力信号から継承するには [] (空行列) を指定します。詳細については、条件付きサブシステムの初期出力値を参照してください。

初期条件構造体の指定方法の詳細は、バス信号の初期条件の指定を参照してください。

ヒント

条件付きサブシステムが Merge ブロックを駆動する場合は、Outport ブロックの初期条件 (IC) を指定する必要はありません。詳細については、指定不足の初期化の検出を参照してください。

依存関係

このパラメーターを有効にするには、このブロックが条件付き実行サブシステム内に存在する場合に [初期出力の値のソース][ダイアログ] に設定します。

制限

  • このブロックでは、inf または NaN の初期出力が許可されません。

  • 入力がバーチャル バスのとき、[初期出力] の値 [] は double(0) として扱われます。

  • 入力に非バーチャル バスが含まれている場合、[初期出力] では非ゼロのスカラー値がサポートされません。

プログラムでの使用

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

Signal Attributes

[データ型アシスタントを表示] ボタン をクリックして、データ型の属性の設定に役立つ [データ型アシスタント] を表示します。詳細については、データ型アシスタントを利用したデータ型の指定を参照してください。

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

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

メモ

このブロックのデータ型としてバス オブジェクトを指定した場合、ブロックのバス データの最小値を設定しないでください。Simulink によりこの設定は無視されます。代わりに、データ型として指定したバス オブジェクトのバス要素の最小値を設定してください。バス要素の最小値プロパティの詳細については、Simulink.BusElement を参照してください。

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

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

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

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

プログラムでの使用

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

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

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

メモ

このブロックのデータ型としてバス オブジェクトを指定した場合、ブロックのバス データの最大値を設定しないでください。Simulink によりこの設定は無視されます。代わりに、データ型として指定したバス オブジェクトのバス要素の最大値を設定します。バス要素の最大値プロパティの詳細については、Simulink.BusElement を参照してください。

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

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

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

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

プログラムでの使用

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

外部入力の出力データ型を指定します。型は継承されるか、直接指定されるか、Simulink.NumericType などのデータ型オブジェクトとして表現されます。バス オブジェクトを式として指定しないでください。

固定小数点ツールや固定小数点アドバイザーによる変更を避けるために、このブロックの出力データ型の設定をロックします。詳細については、[出力データ型の設定をロックする] の使用 (Fixed-Point Designer)を参照してください。

プログラムでの使用

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

親モデル内で非バーチャルになる出力端子のバスを指定します。親モデルに現れるバスが非バーチャルであるようにする場合、このパラメーターを選択します。[親モデル内の非バーチャル バスとして出力] の設定にかかわらず、端子への入力であるバスは、バーチャルまたは非バーチャルになることができます。

親モデルに現れるバスがバーチャルであるようにする場合、このパラメーターの選択を解除します。

ヒント

  • 非バーチャル バスでは、すべての信号が、関連するバス オブジェクトの要素が継承されたサンプル時間を指定する場合でも、同じサンプル時間をもたなければなりません。この要件を満たさない非バーチャル バスになるバス演算は、エラーになります。詳細については、参照モデルへのマルチレート バス入力を参照してください。

  • バーチャル バスで、マルチレート信号を使用するには、ルートレベルの Outport ブロックで、[サンプル時間] パラメーターを [継承] (-1) に設定します。

  • モデル参照階層の最上位モデルでは、コードの生成によって、このブロックによるバス信号出力を表す C 構造体が作成されます。

  • 参照モデルでは、このオプションを選択して C 構造体を作成します。それ以外の場合は、コード生成によって、バスの各リーフ要素の引数が作成されます。

依存関係

このパラメーターを有効にするには、[データ型][Bus: <object name>] を選択します。

プログラムでの使用

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

ブロックに対する入力信号の物理単位を指定します。単位を指定するには、テキスト ボックスに入力します。入力中、パラメーターには一致する可能性のある単位が表示されます。サポートされる単位のリストについては、「Allowed Units」を参照してください。

単位系を制約するには、パラメーターの右側にあるリンクをクリックします。

  • Unit System Configuration ブロックがコンポーネントに存在する場合は、そのダイアログ ボックスが表示されます。そのダイアログ ボックスを使用して、コンポーネントに対して許可される単位系と許可されない単位系を指定します。

  • Unit System Configuration ブロックがコンポーネントに存在しない場合は、モデルの [コンフィギュレーション パラメーター] ダイアログ ボックスが表示されます。そのダイアログ ボックスを使用して、モデルに対して許可される単位系と許可されない単位系を指定します。

プログラムでの使用

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

この Outport ブロックに接続するために信号に必要な次元を指定します。

-1

任意の次元の信号をこの端子に接続できます。

N

この端子に接続される信号は、サイズ N のベクトルです。

[R C]

この端子に接続される信号は、RC 列の行列です。

プログラムでの使用

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

この端子から許可される信号のタイプを指定します。可変サイズの信号と固定サイズの信号を許可するには、[継承] を選択します。可変サイズの信号のみを許可するには、[はい] を選択します。可変サイズの信号を許可しないようにするには、[いいえ] を選択します。

依存関係

この端子の信号が可変サイズの信号である場合、[端子の次元] パラメーターにより信号の最大次元が指定されます。

コマンド ライン情報

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

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

既定の設定では、ブロックはモデル内の前後関係に基づいてサンプル時間を継承します。他のサンプル時間を設定するには、サンプル時間のタイプの表に基づいて有効なサンプル時間を入力します。

プログラムでの使用

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

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

プログラムでの使用

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

ブロックの特性

データ型

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

直接フィードスルー

いいえ

多次元信号

はい

可変サイズの信号

はい

ゼロクロッシング検出

いいえ

拡張機能

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

PLC コード生成
Simulink® PLC Coder™ を使用して構造化テキスト コードを生成します。

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

R2006a より前に導入