このページの翻訳は最新ではありません。ここをクリックして、英語の最新版を参照してください。
While Iterator
While Iterator Subsystem の制御ブロック
説明
While Iterator ブロックは、Subsystem ブロック内に配置されると、入力条件の値が true すなわち 1
である限り、現在のタイム ステップ中、サブシステムの内容を繰り返し実行します。このブロックは、プログラミング言語の while
ループに相当するブロック線図を実装するために使用します。
While Iterator Subsystem ブロックは、While Iterator ブロックとともに事前構成されています。Subsystem ブロックに While Iterator ブロックを配置することで Atomic サブシステムになります。
端子
入力
cond — 論理条件信号
スカラー
論理条件の評価結果をもつ信号。タイム ステップ中にサブシステムが外部でトリガーされることはないため、true (1
) または false (0
) としての条件の評価はサブシステム内で行われなければなりません。
信号のデータ型および値は次のようになります。
logical (boolean) — true (
1
) または false (0
)。数値 — true (正または負の任意の数値) または false (
0
)。
データ型: single
| double
| int8
| int16
| int32
| uint8
| uint16
| uint32
| Boolean
| fixed point
IC — 初期論理条件
スカラー
初期論理条件をもつ信号。各タイム ステップの最初に次のことが行われます。
IC
が false (0
) の場合、サブシステムはタイム ステップ中に実行されません。IC
が true (値が0
に等しくない) の場合、サブシステムは実行を開始し、cond
信号が true である限り実行を繰り返します。
データ型: single
| double
| int8
| int16
| int32
| uint8
| uint16
| uint32
| Boolean
| fixed point
出力引数
Iteration number — 反復回数をもつ信号
スカラー
各タイム ステップ中の While Iterator Subsystem ブロックの実行回数をもつ信号。
データ型: double
| int8
| int16
| int32
パラメーター
最大反復回数 — 最大反復回数を指定
-1
(既定値) | 整数
タイム ステップ中に許容される最大反復回数を指定します。
-1
cond
信号が true である (値が0
に等しくない) 間の反復回数。-1
を指定し、cond
信号が false (0
) にならない場合、シミュレーションは無限ループで実行されます。この場合、シミュレーションを停止する唯一の方法は MATLAB® を終了することです。- 整数
タイム ステップ中の最大反復回数。
プログラムでの使用
ブロック パラメーター: MaxIters |
型: 文字ベクトル |
値: '5' | '-1' | '<integer>' |
既定の設定: '5' |
While ループ タイプ — ブロックのタイプを選択
while
(既定値) | do-while
ブロックのタイプを選択します。
while
While Iterator ブロックには 2 つの入力、つまり
cond
(論理条件) 入力とIC
(初期論理条件) 入力があります。IC
信号のソースは While Iterator Subsystem ブロックの外部になければなりません。各タイム ステップの最初に次のことが行われます。
IC
入力が true の場合 (値が0
に等しくない)、サブシステム内のブロックはcond
入力が true の間は実行を繰り返します。このプロセスは、cond
入力が true であり、反復回数が [最大反復回数] 以下である限り、タイム ステップ中に続行されます。IC
入力が false の場合、While Iterator ブロックはサブシステムの内容を実行しません。
do-while
While Iterator ブロックには 1 つの入力、つまり
cond
(while 条件) 入力があります。各タイム ステップでは、
cond
入力が true である (値が0
に等しくない) 間、サブシステムのブロックは実行を繰り返します。このプロセスは、cond
入力が true であり、反復回数が [最大反復回数] 以下である限り続行されます。
プログラムでの使用
ブロック パラメーター: WhileBlockType |
型: 文字ベクトル |
値: 'while' | 'do-while' |
既定の設定: 'while' |
開始時の状態 — タイム ステップ間のブロックの状態を選択
保持
(既定値) | リセット
タイム ステップ間でのブロックの状態の処理方法を選択します。
保持
タイム ステップ間でブロックの状態を保持します。ブロックの状態値はタイム ステップ間にわたって持続します。
リセット
各タイム ステップの最初および最初の反復ループが実行される前にブロックの状態を初期値にリセットします。
プログラムでの使用
ブロック パラメーター: ResetStates |
型: 文字ベクトル |
値: 'held' | 'reset' |
既定の設定: 'held' |
反復回数の端子を表示 — 出力端子の表示の制御
clear | 選択
ブロックの実行回数をもつ信号の出力端子の表示を制御します。この端子からの信号の値は
で始まり、その後実行される反復のたびに 1
1
ずつインクリメントされます。
オフ
出力端子を削除します。
オン
反復回数をもつ信号の出力端子を表示します。
依存関係
このパラメーターを選択すると、[出力データ型] パラメーターが有効になります。
プログラムでの使用
ブロック パラメーター: ShowIterationPort |
型: 文字ベクトル |
値: 'off' | 'on' |
既定の設定: 'off' |
出力データ型 — 現在の反復回数の出力データ型を選択
int32
(既定値) | uint32
| int16
| uint16
| int8
| uint8
| double
反復回数信号の出力データ型を選択します。この信号の値は、タイム ステップ中の反復回数と、タイム ステップ終了時の合計反復回数です。
int32
符号付き 32 ビット整数。
uint32
符号なし 32 ビット整数。
int16
符号付き 16 ビット整数。
uint16
符号なし 16 ビット整数。
int8
符号付き 8 ビット整数。
uint8
符号なし 8 ビット整数。
double
倍精度浮動小数点。
依存関係
このパラメーターを有効にするには、[反復回数の端子を表示] チェック ボックスをオンにします。
プログラムでの使用
ブロック パラメーター: OutputDataType |
型: 文字ベクトル |
値: 'int32' | 'unt32' | 'int16' | 'uint16' | 'int8' | 'uint8' | 'double' |
既定の設定: 'int32' |
バージョン履歴
R2006a より前に導入
MATLAB コマンド
次の MATLAB コマンドに対応するリンクがクリックされました。
コマンドを MATLAB コマンド ウィンドウに入力して実行してください。Web ブラウザーは MATLAB コマンドをサポートしていません。
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list:
How to Get Best Site Performance
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Americas
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- 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)