プログラムループ
FOR ループ
用途
FOR ループを使用すると、単純なプログラムセクションの反復をプログラミングできます。
関連項目
- サブプログラムおよびプログラムセクションの反復
機能説明
プログラムループは、ヘッダーとフッター、およびその間に定義されたすべての NC ブロックで構成されます。NC 機能 FOR と END FOR を使用して、ヘッダーとフッターを定義します。
ヘッダーとフッターの間に挿入された NC ブロックが表示されます。
NC プログラムは次のように処理されます:
- カウント変数、目標値、および該当する場合はステップサイズを含むヘッダーが読み取られます。
- 開始値でカウント変数が書き込まれます。
カウント変数の値が目標値以下であるため、ループの内容が処理されます。
- フッターが読み取られ、ヘッダーに戻ります。
- ステップサイズ分だけカウント変数の値が変更されます。
カウント変数の値が目標値以下であるため、ループの内容が処理されます。
- フッターが読み取られ、ヘッダーに戻ります。
- ステップサイズ分だけカウント変数の値が変更されます。
カウント変数の値が目標値より大きいため、ループの内容がスキップされ、フッターに直接ジャンプします。
- プログラムループが終了し、NC プログラムが続行されます。
入力
ユーザーマニュアルに含まれている NC プログラムは、あくまで解決のヒントです。機械で NC プログラムまたは個々の NC ブロックを使用する前には、必ずそれらを調整してください。
以下に応じて調整を行います。
- 工具
- 切断値
- 送り速度
- 安全な高さまたは安全な位置
- 機械特有の位置 (例:M91)
- プログラム呼出しのパス
一部の NC プログラムは機械キネマティクスに依存しています。このような NC プログラムは、最初のテストランの前にその機械キネマティクスに合わせてプログラムを調整してください。
さらに、実際のプログラムランの前にシミュレーションで NC プログラムをテストしてください。
プログラムをテストすることで、ソフトウェアオプションや有効な機械キネマティクス、現在の機械構成で、その NC プログラムが使用可能かどうかを確認できます。
11 FOR Q50 = 4 TO 10 STEP 2 | :FOR ループのヘッダー |
* - ... | :Q50 に 10 を超える値が含まれるまで内容が何回も処理されます |
21 END FOR | :FOR ループのフッター |
この機能には、次のように移動します:
NC機能を挿入 すべての機能 FN プログラムセクション繰り返し FORヘッダーとフッター
NC 機能には以下の構文要素が含まれます。
構文要素 | 意味 |
---|---|
FOR | FOR ループの構文オープナー |
Q50 | カウント変数 プログラムループが繰り返されるたびに、この変数の値がチェックされます。値が目標値より小さい場合、この値がステップサイズ分だけ変更されます。 |
= 4 | 開始値 プログラムループの開始時にこの値がカウント変数に 1 回割り当てられます。 目標値より小さい整数のみ可能です 数字または数値パラメータ |
TO 10 | 目標値 カウント変数の値が目標値より大きくなるまでプログラムループが繰り返されます。 整数のみ可能です 数字または数値パラメータ |
STEP 2 | ステップサイズ 整数のみ可能です ステップサイズを定義しない場合、値 1 が使用されます。 数字または数値パラメータ オプションの構文要素 |
「NC機能を挿入」ウィンドウで、ヘッダーとフッターの組み合わせや両方の行を個々に挿入できます。
注意事項
- ヘッダーを数値パラメータでプログラミングする場合は、プログラムループの前に変数を定義する必要があります。
- プログラムループ内でカウント変数に新しい値を割り当てないでください。割り当てると、連続ループが発生する可能性があります。
- プログラムループ内で FN 9 などでジャンプコマンドをプログラミングすると、エラーメッセージが表示されます。
WHILE ループ
用途
WHILE ループを使用すると、さまざまな条件でプログラムセクションの反復をプログラミングできます。条件には数値や英数字の値を含めることができます。
関連項目
- サブプログラムおよびプログラムセクションの反復
機能説明
プログラムループは、ヘッダーとフッター、およびその間に定義されたすべての NC ブロックで構成されます。 NC 機能 WHILE と END WHILE を使用して、ヘッダーとフッターを定義します。
ヘッダーとフッターの間に挿入された NC ブロックが表示されます。
NC プログラムは次のように処理されます:
- 変数 Q10 に値 2 が割り当てられ、この条件でヘッダーが読み取られます。
- 条件が満たされているかどうか確認されます。
条件が満たされているため、ループの内容が処理されます。
プログラムループ内で、変数 Q10 の値が計算されます。
- フッターが読み取られ、ヘッダーに戻ります。
- 条件が満たされているかどうか確認されます。
条件が満たされているため、ループの内容が処理されます。
プログラムループ内で、変数 Q10 の値が計算されます。
- フッターが読み取られ、ヘッダーに戻ります。
- 条件が満たされているかどうか確認されます。
条件が満たされなくなったため、ループの内容がスキップされ、フッターに直接ジャンプします。
- プログラムループが終了し、NC プログラムが続行されます。
以下の条件を数値でプログラミングできます:
条件 | 意味 | ||
---|---|---|---|
a | == | b | a は b に等しい |
a | != | b | a は b と等しくない |
a | < | b | a は b より小さい |
a | > | b | a は b より大きい |
a | <= | b | a は b より小さいか等しい |
a | >= | b | a は b より大きいか等しい |
以下の条件を英数字の値でプログラミングできます:
条件 | 意味 | ||
---|---|---|---|
a | == | b | a は b に等しい |
a | != | b | a は b と等しくない |
a | IN | b | a は b に含まれる IN の左側の内容が右側の内容に同じ順序で含まれているかどうかがチェックされます。大文字と小文字も考慮されます。 |
入力
ユーザーマニュアルに含まれている NC プログラムは、あくまで解決のヒントです。機械で NC プログラムまたは個々の NC ブロックを使用する前には、必ずそれらを調整してください。
以下に応じて調整を行います。
- 工具
- 切断値
- 送り速度
- 安全な高さまたは安全な位置
- 機械特有の位置 (例:M91)
- プログラム呼出しのパス
一部の NC プログラムは機械キネマティクスに依存しています。このような NC プログラムは、最初のテストランの前にその機械キネマティクスに合わせてプログラムを調整してください。
さらに、実際のプログラムランの前にシミュレーションで NC プログラムをテストしてください。
プログラムをテストすることで、ソフトウェアオプションや有効な機械キネマティクス、現在の機械構成で、その NC プログラムが使用可能かどうかを確認できます。
11 Q50 = +5 | :Q50 を値 5 で定義します |
12 Q60 = +10 | :Q60 を値 10 で定義します |
13 WHILE Q50 <= Q60 | :WHILE ループのヘッダー |
14 Q50 = Q50 + +1 | :Q50 を値 1 だけ増します |
* - ... | :Q50 の値が Q60 より大きくなるまで内容が何度も処理されます |
21 END WHILE | :WHILE ループのフッター |
この機能には、次のように移動します:
NC機能を挿入 すべての機能 FN プログラムセクション繰り返し WHILEヘッダーとフッター
NC 機能には以下の構文要素が含まれます。
構文要素 | 意味 |
---|---|
WHILE | WHILE ループの構文オープナー |
Q50 <= Q60 | 条件 数字、テキスト、または変数 |
「NC機能を挿入」ウィンドウで、ヘッダーとフッターの組み合わせや両方の行を個々に挿入できます。
注意事項
- ヘッダーを数値パラメータでプログラミングする場合は、プログラムループの前に変数を定義する必要があります。
- FOR ループの機能を WHILE ループで実現することもできます。これを行うには、プログラムループ内で値を増加または減少させる計算ステップを定義します。
- プログラムループ内で FN 9 などでジャンプコマンドをプログラミングすると、エラーメッセージが表示されます。
- 小数点以下 10 桁以降の値は同一として解釈されることに注意してください。これにより、例えば小数点以下 10 桁以降が異なる計算結果は同じ値として解釈されます。