繰り返しと条件分岐の使い分け
繰り返し(WHILE)を使うべきか、条件分岐(IF)を使うべきか、人によっては迷うこともあると思います。
基本的に「WHILE」でできることは「IF」で実現できます。しかし、プログラムの読みやすさを考えた場合「WHILE」の方が適しています。
WHILEは「DO」と「END」が対になっているので、繰り返される場所が一目でわかります。NCプログラムの場合は問題となることはあまりありませんが、繰り返される場所が決まっているので処理速度も速いのです。
一方「IF」は、GOTO文を使用して特定のシーケンス番号へ飛ばすことができるので、自由度が高い分まとまりのないプログラムになることもあります。あっちへ飛んだりこっちへ飛んだりするプログラムは、コンピュータプログラムの世界では「スパゲッティプログラム」と呼ばれ敬遠されます。可読性の悪いプログラムはメンテナンス性も悪いのです。
このような理由から「WHILE」でできることは「WHILE」で、できないことは「IF」でという使い分けが最も適していると思います。
「IF」を使う時も、GOTOの飛び先であるシーケンス番号は上から番号順に使うなど、基本的な取り決めをしておくことも大切です。
コラム一覧
- 最低限必要なコード
- ミスを減らすためにすること
- マクロプログラムを作るときの考え方
- 繰り返しと条件分岐の使い分け
- NCプログラムとは。そのメリットとデメリット
- NC設備も良いけど、何気に活躍する手動工作機械
- 標準で使える変数
- NCプログラムの改善とは何か
- NCプログラムと生産システム
- 分業のジレンマ
- 座標とはなにか【初めてのNCプログラミング】
- 機械座標とワーク座標【初めてのNCプログラミング】
- 平面指定(G17〜19)を変更すると何が変わるのか【初めてのNCプログラミング】
- NCプログラムの基本は軸移動【初めてのNCプログラミング】
- アブソリュート指令(G90)とインクレメンタル指令(G91)
- 工具長補正は連続加工に必須の機能
- ATC(オート・ツール・チェンジャー)の使い方
- 主軸回転数と切削条件の求め方
- ワークのセッティングと測定機器
- タッチセンサを使った自動測定
お知らせ
- 当サイトのPDF版を作成しました。教育資料やリファレンスとして使用して頂ければと思います。
→ NCプログラムの教科書 - 上級編も作成しました。
→ NCプログラム上級編