第二节 变量 普通的加工程序直接数字标注G 代码和移动距离,例如G55 和X55.0,用定制宏指令时,可以直接用数字或使用变量。当使用变量号时可通过程序或MDI操作改变变量值,例如: #33=#1+10.5 G01 X#1 F500 变量的表示:当标注一个变量时在符号(#)的后面标注变量号,例如:#1表达式可以用来当变量号,但表达式必须放在括号里,例如:#[#33-2+#4]。 变量的类型: 变量号 变量类型 功能 #0 总是0 此变量永远是0,不能给它赋值。 #1-#33 局部变量 局部变量只在一个宏指令中保存数据,当切断电源时局部变量被清空。调用宏指令时要给局部变量制定自变量。 #100-#149 #500-#531 公共变量 不同的的宏程序可以共享共用的变量。当切断电源时,变量#100-#149 被清空。变量#500-#531 在切断电源是能保持数据。 #1000 以后的 系统变量 系统变量是可以用来读和写各种NC 数据项的,如当前的工件坐标系中的位置和刀具偏置数据。 变量的取值范围:局部变量和公共变量可以取: 0、-1047到-10-29和+10-29到+1047范围内的任意值 如果计算无结果会 P/S 警报器报警。 小数点的使用:在程序中给变量进行赋值时,可以省略小数点。 例如:#1=100;意义就是;变量#1 的实际值是100.000。 变量的使用:在程序中要使用一个变量值,在地址语句后面标注变量号即可,当用表达式标注变量时表达式要放在括号里,例如:G02 I[#1+#18]F#9; 在1/1000mm 的增量系统中被使用的变量值的小数点后面第四位会被四舍五入。例如:#1=500.123678;那么当执行G00X#1 时实际的命令会被翻译成G00X500.124; 当使用了一个没有定义的变量时,该变量会被忽略。例如#1=0;#2 的是空,那么当运行G00X#1Y#2;时其结果是G00X0; 未定义的变量:当没有给变量定义值时,该变量称为“空”变量。变量#0永远是空变量。它不能写,但能读。比如: 当使用了一个没有定义的变量时,该变量会被忽略。除非用<空>代替否则 <空>等于 0。 当#1=<空>时 当#1=0 时 G00X10Y#1 G00X10 G00X10Y#1 G00X10Y0 #2=#1 #2=<空> #2=#1 #2=0 #2=#1*10.5 #2=0 #2=#1*10.5 #2=0 #2=#1+#1 #2=0 #2=#1+#1 #2=0 当用在条件表达式时:只在EQ 和 NE 时<空>才不等同于 0 当#1=<空>时 当#1=0 时 #1EQ#0 确定 #1EQ#0 不确定 #1NE#0 #1NE#0 确定 不确定 #1GE#0 确定 #1GE#0 确定 #1GT#0 不确定 #1GT#0 不确定 变量不能不使用的情况:程序号、顺序号...