Main Content

このページの内容は最新ではありません。最新版の英語を参照するには、ここをクリックします。

Demux

バーチャル ベクトル信号の要素を抽出して出力

  • Demux block

ライブラリ:
Simulink / Commonly Used Blocks
Simulink / Signal Routing
HDL Coder / Commonly Used Blocks
HDL Coder / Signal Routing

説明

Demux ブロックは入力ベクトル信号の成分を抽出し、個別の信号を出力します。出力信号端子は上から下へ並べられます。

すべて展開する

Demux ブロックを使用して、1 つの入力信号を必要な出力数に均等に配分できます。長さ 6 の入力ベクトルに対して、[出力数] パラメーターを 3 に設定した場合、Demux ブロックはサイズが 2 の信号を 3 つ生成します。

Demux ブロックを使用してベクトル入力からベクトルの要素を抽出して出力するとき、ベクトル表現に -1 を使用することで、ブロックが対応する端子のサイズを動的に調整するよう指定できます。ベクトル表現が正の値と -1 の値の両方からなるとき、ブロックは正の値の端子に必要な数の要素を割り当てます。ブロックは、残りの要素を -1 の値の端子にできるだけ均等に分配します。

この例では、Demux ブロックの [出力数] パラメーターを [-1, 3, -1] に設定します。このとき、ブロックは 3 つの信号を出力し、その中の 2 番目の信号の要素の数は常に 3 つになります。最初の信号と 3 番目の信号のサイズは入力信号のサイズによって決まります。入力ベクトルの要素数が 7 つの場合、Demux ブロックは、1 番目の端子に 2 つの要素、2 番目の端子に 3 つの要素、3 番目の端子に 2 つの要素を出力します。

端子

入力

すべて展開する

Demux ブロックがスカラー信号または小さいベクトルを選択するベクトル入力信号。

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

出力

すべて展開する

入力ベクトルから抽出された出力信号。出力信号端子は上から下へ並べられます。ブロックの向きに関する端子の順番の詳細については、回転または反転したブロックの端子の位置の特定を参照してください。

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

パラメーター

すべて展開する

出力数を指定し、オプションで各出力端子の次元を指定します。

この値は、出力数を示すスカラー、または各要素がブロックの出力端子幅を示すベクトルになります。ブロックは、入力信号のサイズと [出力数] パラメーター値から出力のサイズを決めます。

[出力の数] パラメーターでスカラーを指定し、すべての出力端子が接続されている場合に、Demux ブロックの出力側近くに新しい信号線を描画すると、ソフトウェアで端子が追加されて、[出力の数] パラメーターが更新されます。

n の入力ベクトルの場合、ブロックの出力は次の表のようになります。

パラメーター値ブロック出力例およびコメント

p = n

p 個のスカラー値

入力が 3 要素ベクトルの場合、3 つの出力を指定すると、ブロックは 3 つのスカラー信号を出力します。

p > n

エラー

この値はサポートされません。

p < n

n mod p = 0

それぞれが n/p 要素をもつ p 個のベクトル信号

入力が 6 要素ベクトルの場合、3 つの出力を指定すると、ブロックは 3 つの 2 要素ベクトルを出力します。

p < n

n mod p = m

それぞれが (n/p)+1 要素をもつ m 個のベクトル信号と n/p 要素をもつ p-m 個の信号

入力が 5 要素ベクトルの場合、3 つの出力を指定すると、ブロックは 2 つの 2 要素ベクトルと 1 つのスカラー信号を出力します。

[p1 p2 ... pm]

p1+p2+...+pm=n

pi > 0

p1p2、... pm をもつ m 個のベクトル信号

入力が 5 要素ベクトルの場合、出力として [3, 2] を指定すると、ブロックは入力要素の 3 つを一方の端子に、他の 2 つの要素をもう一方の端子に出力します。

値が -1m 要素を 1 つ以上もつ配列。この値はソフトウェアで要素のサイズを推定することを指定します。

たとえば、合計幅が 14 の 4 要素配列があり、パラメーターが [p1 p2 -1 p4] になるように指定するとします。

3 番目の要素 (-1 要素) の値は 14 - (p1 + p2 + p4) です。

m 個のベクトル信号

pi がゼロより大きい場合、対応する出力の幅は pi です。pi が -1 の場合、対応する出力の幅は動的に計算されます。

[p1 p2 ... pm]

p1+p2+...+pm!=n

pi = > 0

エラー

この値はサポートされません。

入力要素の数より少ない出力数を指定する場合、ブロックは要素をできるだけ均等に出力へ分散させます。

プログラムでの使用

ブロック パラメーターの値をプログラムで設定するには、関数 set_param を使用します。

パラメーター: Outputs
値: '2' (既定値) | scalar in quotes | vector in quotes
データ型: char | string

例: set_param(gcb,'Outputs','4')

既定では、ブロック アイコンはブロックの前景色で塗りつぶされたバーになります。ブロックのタイプ名をボックス内に含めたアイコンを表示するには、[なし] を選択します。

プログラムでの使用

ブロック パラメーターの値をプログラムで設定するには、関数 set_param を使用します。

パラメーター: DisplayOption
値: 'bar' (既定値) | 'none'

例: set_param(gcb,'DisplayOption','none')

ブロックの特性

データ型

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

直達

はい

多次元信号

いいえ

可変サイズの信号

いいえ

ゼロクロッシング検出

いいえ

拡張機能

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

バージョン履歴

R2006a より前に導入