変数講座1 変数を使用してみる
「習うより慣れろ」ということわざがありますが、プログラミングも慣れることが上達の近道です。とりあえず変数を使用してみましょう。下記プログラムはφ6工具でφ10深さ2の穴あけをヘリカル加工で行うものです。
% O100(FAI 6 KOUGU, FAI 10 ANA) G17 G91G28Z0 G90G00G54X0Y0 Z50. M3S1300 M8 G01X2.F1000 Z1.F2000 Z0.2F100 N10(KAKOU START) G03I-2.Z0F130 I-2.Z-0.2 I-2.Z-0.4 I-2.Z-0.6 I-2.Z-0.8 I-2.Z-1.0 I-2.Z-1.2 I-2.Z-1.4 I-2.Z-1.6 I-2.Z-1.8 I-2.Z-2.0 I-2. G01X0 Z10.F2000 M9 M5 G91G28Z0 G28Y0 M30 %
まずは加工中の送り速度を変数にして見ましょう。赤で書かれているところが変更点です。
% O100(FAI 6 KOUGU, FAI 10 ANA) #100=130(F) G17 G91G28Z0 G90G00G54X0Y0 Z50. M3S1300 M8 G01X2.F1000 Z1.F2000 Z0.2F100 N10(KAKOU START) G03I-2.Z0F#100 I-2.Z-0.2 I-2.Z-0.4 I-2.Z-0.6 I-2.Z-0.8 I-2.Z-1.0 I-2.Z-1.2 I-2.Z-1.4 I-2.Z-1.6 I-2.Z-1.8 I-2.Z-2.0 I-2. G01X0 Z10.F2000 M9 M5 G91G28Z0 G28Y0 M30 %
#100には"130"が代入されますから、"F#100"は"F130"と同じ意味になります。上記のように加工速度の設定(F130)が1か所にしか無い場合には、変数にするメリットは少ないかもしれませんが、下記のようにたくさん入っていたらどうでしょうか?
% O100(FAI 6 KOUGU, FAI 10 ANA) ・ 省略 ・ N10(KAKOU START) G03I-2.Z0F130 I-2.Z-0.2F130 I-2.Z-0.4F130 I-2.Z-0.6F130 I-2.Z-0.8F130 I-2.Z-1.0F130 I-2.Z-1.2F130 I-2.Z-1.4F130 I-2.Z-1.6F130 I-2.Z-1.8F130 I-2.Z-2.0F130 I-2.F130 ・ 省略 ・ %
上記のプログラムはあまり意味のある設定ではありませんが、加工速度の設定が複数の箇所にある場合は多々あります。このような場合でも変数にしてしまえば、変数に代入する数値を変えるだけで、複数の箇所にある加工速度の設定値をすべて変更することができます。
% O100(FAI 6 KOUGU, FAI 10 ANA) #100=130(F) ・ 省略 ・ N10(KAKOU START) G03I-2.Z0F#100 I-2.Z-0.2F#100 I-2.Z-0.4F#100 I-2.Z-0.6F#100 I-2.Z-0.8F#100 I-2.Z-1.0F#100 I-2.Z-1.2F#100 I-2.Z-1.4F#100 I-2.Z-1.6F#100 I-2.Z-1.8F#100 I-2.Z-2.0F#100 I-2.F#100 ・ 省略 ・ %
変数の代入をプログラムの先頭の方にもってきているのは、送り速度を変更しなければならなくなった場合に、変数に数値を代入している箇所を探す手間が省けるからです。上記のような短いプログラムであれば、それほどの手間はかかりませんが、何倍も長さのあるプログラムで複数の変数を変更しなければならないとなると、変数の場所を探すだけでも時間が掛かってしまいます。変更の可能性がある変数は、変数の代入を出来るだけプログラムの先頭に持ってくるようにしましょう。
お知らせ
- 当サイトのPDF版を作成しました。教育資料やリファレンスとして使用して頂ければと思います。
→ NCプログラムの教科書 - 上級編も作成しました。
→ NCプログラム上級編