Main Content

Multiport Switch

制御信号に基づく出力信号の選択

  • Multiport Switch block

ライブラリ:
Simulink / Signal Routing
HDL Coder / Signal Routing

説明

Multiport Switch ブロックは、出力に渡されるブロックへの入力を決定します。ブロックは、最初の入力の値に基づいてこの決定を行います。最初の入力は制御入力で、残りの入力はデータ入力です。制御入力の値は、どのデータ入力が出力に渡されるかを決定します。

次の表は、ブロックでの制御入力の解釈と、出力に渡されるデータ入力の決定方法をまとめたものです。

制御入力切り捨てデータ端子の順序の設定シミュレーション時のブロックの動作
データ入力を選択するインデックス範囲外条件

整数値

なし

0 ベースの連続

0 ベースのインデックス

制御入力は、0 より小さいかまたはデータ入力数から 1 を減算した数より大きい。

1 ベースの連続

1 ベースのインデックス

制御入力は、1 より小さいかまたはデータ入力数より大きい。

インデックスの指定

指定するインデックス

制御入力は、指定されたデータ端子インデックスに対応しない。

整数値ではありません

ブロックにより、ゼロ方向に丸めることで値が整数になるように切り捨てられます。

0 ベースの連続

0 ベースのインデックス

打ち切られた制御入力は、0 より小さいかまたはデータ入力数から 1 を減算した値より大きい。

1 ベースの連続

1 ベースのインデックス

打ち切られた制御入力は、1 より小さいかまたはデータ入力数より大きい。

インデックスの指定

指定するインデックス

打ち切られた制御入力は、指定されたデータ端子インデックスに対応しない。

ブロックで範囲外の条件を処理する方法については、ブロックでの範囲外の制御入力の処理方法を参照してください。

Index Vector ブロックとして構成された Multiport Switch

Index Vector は、0 ベースの制御入力でデータ入力を 1 つ指定した場合の Multiport Switch ブロックの特殊な構成です。ブロックの出力は、インデックスが制御入力と一致する入力ベクトルの要素です。たとえば入力ベクトルが [18 15 17 10] で制御入力が 3 の場合、インデックスが 3 (0 ベース) の要素は 10 であり、その値が出力されます。

Multiport Switch ブロックを Index Vector ブロックとして動作させるよう構成するには、[データ端子数][1] に設定し [データ端子の順序][0 ベースの連続] に設定します。

ブロックでの範囲外の制御入力の処理方法

intmax(‘int32’)i より小さい整数値をもつ入力では、この入力の値がデータ端子インデックスと一致しない場合、入力は範囲外になります。整数値ではない制御入力では、"打ち切られた" 値がデータ端子インデックスと一致しない場合、入力は範囲外になります。いずれの場合も、ブロックの動作は [default ケースのデータ端子] および [default ケースの診断] の設定によって決定します。

メモ

制御入力が intmax(‘int32’)i より大きい場合、入力値は整数に丸められます。

シミュレーションの動作

次の動作はモデルのシミュレーションにのみ適用されます。

default ケースのデータ端子default ケースの診断
なし警告エラー

最後のデータ端子

最後のデータ端子を使用し、警告またはエラーはレポートしません。

最後のデータ端子を使用し、警告をレポートします。

エラーをレポートし、シミュレーションを停止します。

追加のデータ端子

* ラベルをもつ追加のデータ端子を使用し、警告またはエラーはレポートしません。

* ラベルをもつ追加のデータ端子を使用し、警告をレポートします。

エラーをレポートし、シミュレーションを停止します。

コード生成の動作

次の動作はモデルのコード生成に適用されます。

default ケースのデータ端子default ケースの診断
なし警告エラー

最後のデータ端子

最後のデータ端子を使用します。

最後のデータ端子を使用します。

最後のデータ端子を使用します。

追加のデータ端子

* ラベルをもつ追加のデータ端子を使用します。

* ラベルをもつ追加のデータ端子を使用します。

* ラベルをもつ追加のデータ端子を使用します。

異なる次元をもつデータ入力の使用

2 つの信号の次元数または次元の長さが異なる場合、信号を Multiport Switch ブロックへのデータ入力として使用できます。ブロック ダイアログ ボックスで、パラメーター [異なるデータの入力サイズを許可する] を選択します。この場合、ブロックの出力は可変サイズの信号です。このパラメーターを選択しないと、ブロックはエラーを生成します。

このパラメーターの詳細については、異なるデータ入力サイズを許可する (可変サイズの出力信号となる)を参照してください。可変サイズ信号の詳細については、可変サイズの信号の基礎を参照してください。

ブロックの動作を決定する規則

[データ端子数] でデータ入力の数を指定してください。

  • [データ端子数] を 1 に設定すると、ブロックはマルチポート スイッチではなく "インデックス セレクター" または "インデックス ベクトル" として動作します。詳細については、Index Vector ブロックとして構成された Multiport Switchを参照してください。

  • [データ端子数] を 1 より大きい整数に設定すると、ブロックはマルチポート スイッチとして動作します。ブロック出力は、制御入力の値に対応するデータ入力になります。1 つ以上のデータ入力がベクトルの場合、ブロック出力はベクトルになります。この場合、ブロックは、スカラー入力をベクトルに拡張します。

  • すべてのデータ入力がスカラーの場合、出力はスカラーになります。

列挙型制御端子のパラメーターを設定するためのガイドライン

Multiport Switch ブロックの制御端子が列挙型の場合、以下のガイドラインに従います。

シナリオ何をすべきか根拠

列挙型に無効、範囲外、または初期化されていない値を表す値が含まれている場合。

  • [データ端子の順序]インデックスの指定 に設定します。

  • 最後のデータ端子にこの値を使用するにように [データ端子インデックス] を設定します。

  • [default ケースのデータ端子][最後のデータ端子] に設定します。

このブロックの構成によって、列挙型で明示的に表される無効な値が処理されます。

列挙型に有効な列挙値しか含まれない場合。ただし、データ入力端子によって無効な列挙型の値が得られます。

  • [default ケースのデータ端子][追加のデータ端子] に設定します。

このブロックの構成によって、列挙型で明示的に表されない無効な値が処理されます。

列挙型に有効な列挙値しか含まれない場合。データ入力端子によって無効な列挙型の値は得られません。

  • [default ケースのデータ端子][最後のデータ端子] に設定します。

  • [default ケースの診断]なし に設定します。

このブロックの構成によって、不要な診断アクションが回避されます。

ブロックに各列挙型の値のデータ入力端子が含まれていない場合。

  • [default ケースのデータ端子][追加のデータ端子] に設定します。

このブロックの構成によって、データ入力端子をもたない列挙値と無効な値が処理されます。

制限

  • Multiport Switch ブロックへのデータ入力が共にバスの場合、両方のバスの要素名は同じでなければなりません。同じ要素名を使用することで、いずれの入力バスが選択されたかにかかわらず、出力バスが同じ要素名をもつようにすることができます。ユーザー モデルがこの要件を満たすようにするには、バス オブジェクトを使用してバスを定義し、[要素名の不一致] 診断に エラー を設定します。詳細については、モデル コンフィギュレーション パラメーター: 接続性の診断を参照してください。

  • バス配列の場合、[データ端子数]2 以上の値に設定しなければなりません。

端子

入力

すべて展開する

制御信号は、固定小数点および列挙型データを含む Simulink® がサポートする任意のデータ型の信号を受け入れます。制御入力が整数値でない場合、ブロックにより、ゼロ方向に丸めることで値が整数になるように切り捨てられます。

列挙型の制御信号の詳細については、列挙型制御端子のパラメーターを設定するためのガイドライン を参照してください。

ブロックで範囲外の条件を処理する方法については、ブロックでの範囲外の制御入力の処理方法を参照してください。

制限

  • 制御信号が数値型の場合は、制御信号は複素数にはできません。

  • 制御信号が列挙型の信号である場合、ブロックは基となる整数値を使用してデータ端子を選択します。

  • 基となる整数が端子データに対応していない場合はエラーになります。

データ型: single | double | half | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | Boolean | fixed point | enumerated | image

1 番目のデータ入力。スカラー、ベクトル、行列、または N 次元配列として指定します。すべての入力データ信号に、Simulink がサポートする任意のデータ型を使用できます。

  • すべてのデータ入力がスカラーの場合、出力はスカラーです。

  • 1 つ以上のデータ入力がベクトルの場合、ブロック出力はベクトルになります。この場合、ブロックは、スカラー入力をベクトルに拡張します。

  • 2 つの信号が異なる次元数または異なる次元の長さをもつ場合、[異なるデータの入力サイズを許可する] チェック ボックスをオンにします。詳細については、異なる次元をもつデータ入力の使用を参照してください。

  • データ信号のいずれかが列挙型である場合、その他のデータ信号も同じ列挙型でなければなりません。

データ型: single | double | half | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | Boolean | fixed point | enumerated | string | image

2 番目のデータ入力。スカラー、ベクトル、行列、または N 次元配列として指定します。すべての入力データ信号に、Simulink がサポートする任意のデータ型を使用できます。

  • すべてのデータ入力がスカラーの場合、出力はスカラーです。

  • 1 つ以上のデータ入力がベクトルの場合、ブロック出力はベクトルになります。この場合、ブロックは、スカラー入力をベクトルに拡張します。

  • 2 つの信号が異なる次元数または異なる次元の長さをもつ場合、[異なるデータの入力サイズを許可する] チェック ボックスをオンにします。詳細については、異なる次元をもつデータ入力の使用を参照してください。

  • データ信号のいずれかが列挙型である場合、その他のデータ信号も同じ列挙型でなければなりません。

依存関係

この端子を有効にするには、[データ端子数] を 1 より大きい整数に設定します。

データ型: single | double | half | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | Boolean | fixed point | enumerated | string | image

N 番目のデータ入力。スカラー、ベクトル、行列、または N 次元配列として指定します。すべての入力データ信号に、Simulink がサポートする任意のデータ型を使用できます。

  • すべてのデータ入力がスカラーの場合、出力はスカラーです。

  • 1 つ以上のデータ入力がベクトルの場合、ブロック出力はベクトルになります。この場合、ブロックは、スカラー入力をベクトルに拡張します。

  • 2 つの信号が異なる次元数または異なる次元の長さをもつ場合、[異なるデータの入力サイズを許可する] チェック ボックスをオンにします。詳細については、異なる次元をもつデータ入力の使用を参照してください。

  • データ信号のいずれかが列挙型である場合、その他のデータ信号も同じ列挙型でなければなりません。

依存関係

N 番目の入力端子を有効にするには、[データ端子数]N 以上の整数値を設定します。

データ型: single | double | half | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | Boolean | fixed point | enumerated | string | image

範囲外の制御信号入力に対する入力データ端子。スカラー、ベクトル、行列、または n 次元配列として指定します。すべての入力データ信号に、Simulink がサポートする任意のデータ型を使用できます。データ信号のいずれかが列挙型である場合、その他のデータ信号も同じ列挙型でなければなりません。2 つの信号が異なる次元数または異なる次元の長さをもつ場合、[異なるデータの入力サイズを許可する] チェック ボックスをオンにします。詳細については、異なる次元をもつデータ入力の使用を参照してください。

依存関係

範囲外の制御信号入力に追加のデータ端子を作成するには、[default ケースのデータ端子][追加のデータ端子] に設定します。[default ケースのデータ端子][最後のデータ端子] に設定すると、制御信号値がどのデータ端子インデックスにも一致しない場合、ブロックは最後のデータ端子を出力に使用します。

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

出力

すべて展開する

ブロックは、制御信号値に従って選択したいずれかのデータ入力を出力します。出力の次元は対応するデータ入力と同じになります。出力のデータ型は、最も多くのメモリ領域を必要とする入力端子のデータ型になります。[異なるデータの入力サイズを許可する] チェック ボックスをオンにすると、ブロックの出力は可変サイズ信号になります。

データ型: single | double | half | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | fixed point | enumerated | string | image

パラメーター

すべて展開する

メイン

データ入力端子の順序のタイプを指定します。

  • 0 ベースの連続 — 連続データ端子の順序付けに、ブロックは 0 ベースのインデックスを使用します。これは Index Vector ブロックの既定値です。

  • 1 ベースの連続 — 連続データ端子の順序付けに、ブロックは 1 ベースのインデックスを使用します。これは Multiport Switch ブロックの既定値です。

  • インデックスの指定 — ブロックは、データ端子の順序付けに非連続インデックスを使用します。

ヒント

  • 制御端子が列挙型の場合、インデックスの指定 を選択します。

  • [0 ベースの連続] または [1 ベースの連続] を選択する場合は、制御端子が列挙型でないことを確認してください。この構成は廃止されているため、エラーが発生します。使用しているモデルでアップグレード アドバイザーを実行して、この構成の各 Multiport Switch ブロックを、データ端子インデックスを明示的に指定するブロックと置き換えることができます。モデルのアップグレードを参照してください。

  • ブロックにシミュレーションまたはコード生成のための未使用のデータ端子が含まれる状況を回避します。制御端子が固定小数点または組み込みデータ型の場合は、すべてのデータ端子インデックスがそのデータ型で表現されることを確認します。それ以外の場合は、次のようにブロックが動作します。

    ブロックに未使用のデータ端子が含まれ、データ端子の順序が以下の場合ブロックは以下を生成
    [0 ベースの連続] または [1 ベースの連続] 警告
    インデックスの指定 エラー

依存関係

[0 ベースの連続] または [1 ベースの連続] を選択すると、[データ端子数] パラメーターが有効になります。

インデックスの指定 を選択すると、[データ端子インデックス] パラメーターが有効になります。

プログラムでの使用

ブロック パラメーター: DataPortOrder
型: 文字ベクトル
値: 'Zero-based contiguous' | 'One-based contiguous' | 'Specify indices'
既定の設定: 'One-based contiguous' (Multiport Switch) 'Zero-based contiguous' (Index Vector)

このブロックへのデータ入力端子の数を指定します。入力端子の合計数は、指定した数に制御信号入力端子の分の 1 を加算した数になります。[default ケースのデータ端子][追加のデータ端子] に設定した場合は、さらに 1 を加算した数になります。

依存関係

このパラメーターを有効にするには、[データ端子の順序][0 ベースの連続] または [1 ベースの連続] に設定します。

プログラムでの使用

ブロック パラメーター: Inputs
型: 文字ベクトル
値: 1 と 65536 の間の整数
既定の設定: '3' (Multiport Switch) '1' (Index Vector)

データ端子のインデックスの配列を指定します。ブロックのアイコンは、指定したデータ端子インデックスと一致するために変わります。

ヒント

  • 列挙型のすべての値に対応するインデックスの配列を指定するには、「enumeration('name of the type')」と入力します。

    たとえば、enumeration('MyColors') が列挙型の名前である場合、MyColors は有効なエントリです。

  • 列挙型の特定の値を入力するには、type_name.enumerated_name 形式を使用します。基となる整数値は入力しないでください。

    たとえば、enumeration({MyColors.Red, MyColors.Green, MyColors.Blue}) は有効なエントリです。

  • 1 つを超える値がデータ端子に割り当てられることを表示するには、かっこを使用します。

    たとえば、次の両方のエントリは有効です。

    • enumeration({MyColors.Red, MyColors.Green, [MyColors.Blue, MyColors.Yellow]})

    • enumeration({[3,5],0,18})

  • 制御端子が固定小数点または組み込みデータ型なら、[データ端子インデックス] はその型で表現できます。それ以外の場合は、未使用のデータ端子を警告するためにコンパイル時にエラーが表示されます。

  • 制御端子が列挙データ型の場合、[データ端子インデックス] の値はその型の列挙された値となる必要があります。

  • [データ端子インデックス] が列挙型の値を含む場合、制御端子はそのデータ型となる必要があります。

依存関係

このパラメーターを有効にするには、[データ端子の順序][インデックスの指定] に設定します。

プログラムでの使用

ブロック パラメーター: DataPortIndices
型: 文字ベクトル
値: インデックスの配列
既定の設定: '{1,2,3}'

範囲外入力の最後のデータ端子を使用するか、追加の端子を使用するかを指定します。端子名の横のアスタリスク (*) は、制御端子値がどのデータ端子インデックスとも一致しない場合にブロックが使用する端子を示します。

  • 最後のデータ端子 — ブロックは、制御端子の値がどのデータ端子インデックスとも一致しない場合、出力に最後のデータ端子を使用します。

  • 追加のデータ端子 — ブロックは、制御端子の値がどのデータ端子インデックスとも一致しない場合、出力に追加のデータ端子を使用します。

ヒント

このパラメーターを [追加のデータ端子] に設定し、[データ端子数]3 の場合、ブロックの入力端子の数は 5 になります。この場合、最初の入力は制御端子で、次の 3 つの入力がデータ端子で、5 番目の入力が範囲外入力の既定端子になります。

プログラムでの使用

ブロック パラメーター: DataPortForDefault
型: 文字ベクトル
値: 'Last data port' | 'Additional data port'
既定の設定: 'Last data port'

制御端子の値がどのデータ端子インデックスとも一致しない場合に実行する診断アクションを指定します。

  • なし — 応答しません。

  • 警告 — 警告が表示され、シミュレーションは続行されます。

  • エラー — シミュレーションを終了し、エラーを表示します。この場合、[default ケースのデータ端子] はコード生成にのみ使用され、シミュレーションには使用されません。

詳細については、ブロックでの範囲外の制御入力の処理方法を参照してください。

プログラムでの使用

ブロック パラメーター: DiagnosticForDefault
型: 文字ベクトル
値: 'None' | 'Warning' | 'Error'
既定の設定: 'Error'

サンプルの時間間隔を指定します。サンプル時間を継承するには、このパラメーターを -1 に設定します。詳細については、サンプル時間の指定を参照してください。

依存関係

このパラメーターは、-1 以外の値に設定した場合にのみ表示されます。詳細は、サンプル時間が推奨されないブロックを参照してください。

プログラムでの使用

ブロック パラメーター: SampleTime
型: string スカラーまたは文字ベクトル
既定の設定: "-1"

信号属性

このチェック ボックスをオンにした場合、すべてのデータ入力端子が同じデータ型でなければなりません。このチェック ボックスをオフにすると、ブロックのデータ端子入力は異なるデータ型をもつことができます。

プログラムでの使用

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

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

Simulink は、最小値を使って以下を行います。

メモ

[出力の最小値] により、実際の出力信号が飽和する (またはクリップされる) ことはありません。代わりに、Saturation ブロックを使用してください。

プログラムでの使用

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

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

Simulink は、最大値を使って以下を行います。

メモ

[出力の最大値] により、実際の出力信号が飽和する (またはクリップされる) ことはありません。代わりに、Saturation ブロックを使用してください。

プログラムでの使用

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

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

継承オプションを選択すると、ブロックは次のように動作します。

  • 継承: 内部ルールによる継承 — Simulink は、組み込みターゲット ハードウェアのプロパティを考慮しつつ、数値の精度、パフォーマンス、および生成コードのサイズのバランスが取れるように、データ型を選択します。組み込みターゲット ハードウェアの設定を変更すると、内部ルールにより選択されるデータ型が変更される可能性があります。コードの効率と数値の精度が、ソフトウェアにより同時に最適化されるとは限りません。内部ルールが、数値精度またはパフォーマンスに対する要求を満たさない場合は、以下のいずれかを行ってください。

    • 出力データ型を明示的に指定する。

    • fixdt(1,32,16) のように既定のデータ型を明示的に指定し、固定小数点ツールを使用してモデルにデータ型を推奨する。詳細については、fxptdlg (Fixed-Point Designer) を参照してください。

    • 独自の継承ルールを指定するには、[継承: 逆伝播による継承] を使用し、Data Type Propagation ブロックを使用します。このブロックの使い方の例については、Signal Attributes ライブラリの Data Type Propagation Examples ブロックを参照してください。

  • 継承: 逆伝播による継承 — 駆動ブロックのデータ型を使用します。

  • 継承: 最初のデータ入力と同じ — 1 番目のデータ入力端子のデータ型を使用します。

プログラムでの使用

ブロック パラメーター: OutDataTypeStr
: 文字ベクトル
: 'Inherit: Inherit via internal rule | 'Inherit: Inherit via back propagation' | 'Inherit: Same as first input' | 'double' | 'single' | 'half' | 'int8' | 'uint8' | 'int16' | 'uint16' | 'int32' | 'uint32' | 'int64' | 'uint64' | 'fixdt(1,16)' | 'fixdt(1,16,0)' | 'fixdt(1,16,2^0,0)' | 'string' | Simulink.ImageType(480,640,3) | '<data type expression>'
既定の設定: 'Inherit: Inherit via internal rule'

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

プログラムでの使用

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

次のいずれかの丸めモードを選択します。

正方向

正の無限大方向に正負の値を丸めます。MATLAB® 関数 ceil と等価です。

最も近い偶数方向

最も近い表現可能な値に数値を丸めます。同順位が発生した場合は、最も近い偶数の整数に丸めます。Fixed-Point Designer™ 関数 convergent と等価です。

負方向

負の無限大方向に正負の値を丸めます。MATLAB 関数 floor と等価です。

最も近い正の整数方向

最も近い表現可能な値に数値を丸めます。同順位が発生した場合は、正の無限大方向に丸めます。Fixed-Point Designer 関数 nearest と等価です。

最も近い整数方向

最も近い表現可能な値に数値を丸めます。同順位が発生した場合は、正の数値を正の無限大方向、負の数値を負の無限大方向に丸めます。Fixed-Point Designer 関数 round と等価です。

最も簡潔

下限値への丸めとゼロへの丸めのいずれかを自動的に選択し、できるだけ効率の高い丸めコードを生成します。

ゼロ方向

ゼロ方向に数値を丸めます。MATLAB 関数 fix と等価です。

プログラムでの使用

ブロック パラメーター: RndMeth
: 文字ベクトル
: 'Ceiling' | 'Convergent' | 'Floor' | 'Nearest' | 'Round' | 'Simplest' | 'Zero'
既定の設定: 'Floor'

参考

詳細については、丸め (Fixed-Point Designer)を参照してください。

オーバーフローで飽和するかラップするかを指定します。

  • off — オーバーフローは、データ型によって表現される適切な値にラップされます。

    たとえば、数 130 は符号付き 8 ビット整数 1 つに収まりきらないので、-126 にラップされます。

  • on — オーバーフローは、データ型が表現できる最小値または最大値のいずれかに飽和します。

    たとえば、符号付き 8 ビット整数に関連付けられたオーバーフローは、-128 または 127 に飽和することができます。

ヒント

  • モデルでオーバーフローが発生する可能性があり、生成コードに飽和保護を明示的に組み込む必要があるときには、このチェック ボックスをオンにすることを検討してください。

  • 生成コードの効率を最適化する場合には、このチェック ボックスをオフにすることを検討してください。

    このチェック ボックスをオフにすると、ブロックが範囲外の信号を処理する方法を指定しすぎないようにする点でも役立ちます。詳細については、信号範囲のエラーのトラブルシューティングを参照してください。

  • このチェック ボックスをオンにすると、飽和は出力や結果だけでなく、このブロックの内部演算すべてに適用されます。

  • 通常、オーバーフローが可能ではない場合は、コード生成プロセスで検出されます。この場合、コード ジェネレーターでは飽和コードは生成されません。

プログラムでの使用

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

異なるサイズの入力信号を許可するには、このチェック ボックスをオンにします。

  • On — 異なるサイズの入力信号が許可され、入力信号サイズが出力信号に伝播されます。このモードでは、ブロックは可変サイズの出力信号を生成します。

  • Off — すべての非スカラー データ入力信号が同じサイズである必要があります。

プログラムでの使用

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

指定するデータのカテゴリを選択します。

  • 継承 — データ型の規則の継承。Inherit を選択すると、右側から 2 番目のメニュー/テキスト ボックスが有効になり、そこで継承モードを選択できます。

  • 組み込み — 組み込みデータ型を指定します。Built in を選択すると、右側から 2 番目のメニュー/テキスト ボックスが有効になり、そこで組み込みデータ型を選択できます。

  • 固定小数点 — 固定小数点データ型。[固定小数点] を選択すると、固定小数点データ型を指定するために使用できる追加のパラメーターが有効になります。

  • — 評価結果がデータ型となる式。[] を選択すると、右側から 2 番目のメニュー/テキスト ボックスが有効になります。そこに式を入力することができます。

詳細については、データ型アシスタントを利用したデータ型の指定を参照してください。

依存関係

このパラメーターを有効にするには、[データ型アシスタントを表示] ボタンをクリックします。

この信号のデータ型オーバーライド モードを選択します。

  • [継承] を選択すると、Simulink はコンテキストからデータ型オーバーライド設定を継承します。コンテキストとはブロックのことで、信号を使用している Simulink の Simulink.Signal オブジェクトまたは Stateflow® チャートです。

  • [オフ] を選択すると、Simulink はコンテキストのデータ型オーバーライド設定を無視し、信号に対して指定された固定小数点データ型を使用します。

詳細については、Simulink ドキュメンテーションのデータ型アシスタントを利用したデータ型の指定を参照してください。

依存関係

このパラメーターを有効にするには、[モード][組み込み] または [固定小数点] に設定します。

ヒント

個々のデータ型に対してデータ型オーバーライドをオフにする機能により、データ型オーバーライドを適用する際に、モデル内のデータ型をさらに効果的に制御できます。たとえば、このオプションを使用すると、データ型オーバーライド設定にかかわらず、データ型が下流ブロックの要件を満たすことを確認できます。

固定小数点データが符号付きであるか符号なしであるかを指定します。符号付きデータでは正の値と負の値を表現できますが、符号なしデータでは正の値のみを表現できます。

  • [符号付き]。符号付き固定小数点データを指定します。

  • [符号なし]。符号なし固定小数点データを指定します。

詳細については、データ型アシスタントを利用したデータ型の指定を参照してください。

依存関係

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

オーバーフローを避け、量子化誤差を最小限に抑えるための固定小数点データのスケーリング方法を指定します。詳細については、固定小数点データ型の指定を参照してください。

依存関係

このパラメーターを有効にするには、[モード][固定小数点] に設定します。

量子化された整数をもつ語のビット サイズを指定します。詳細については、固定小数点データ型の指定を参照してください。

依存関係

このパラメーターを有効にするには、[モード][固定小数点] に設定します。

固定小数点データ型の小数部の長さを正または負の整数として指定します。詳細については、固定小数点データ型の指定を参照してください。

依存関係

このパラメーターを有効にするには、[スケーリング][2 進小数点] に設定します。

固定小数点データ型の勾配を指定します。詳細については、固定小数点データ型の指定を参照してください。

依存関係

このパラメーターを有効にするには、[スケーリング][勾配とバイアス] に設定します。

固定小数点データ型のバイアスを任意の実数として指定します。詳細については、固定小数点データ型の指定を参照してください。

依存関係

このパラメーターを有効にするには、[スケーリング][勾配とバイアス] に設定します。

ブロックの特性

データ型

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

直達

はい

多次元信号

はい

可変サイズの信号

はい

ゼロクロッシング検出

いいえ

拡張機能

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

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

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

バージョン履歴

R2006a より前に導入