
数控车床宏程序是非常灵活且因情况而异的,所以数控车床宏程序编程掌握以下参数即可:
普通加工程序直接用数值指定G代码和移动距离;例如,GO1和X100.0。使用用户宏程序时,数值可以直接指定或用变量指定。当用变量时,变量值可用程序或用MDI面板上的 *** 作改变。
例如:#1=#2+100;G01X#1F300。
量的表示:计算机允许使用变量名,用户宏程序不行。变量用变量符号(#)和后面的变量号指定。例如:#1,表达式可以用于指定变量号。
此时,表达式必须封闭在括号中。例如:#[#1+#2-12]。
变量根据变量号可以分成四种类型:#0空变量,该变量总是空,没有值能赋给该变量。#1-#33局部变量,局部变量只能用在宏程序中存储数据,例如,运算结果。当断电时,局部变量被初始化为空。调用宏程序时,自变量对局部变量赋值。
#100-#199、#500-#999公共变量,公共变量在不同的宏程序中的意义相同。当断电时,变量#100-#199初始化为空。变量#500-#999的数据保存,即使断电也不丢失。#1000---系统变量。系统变量用于读和写CNC运行时各种数据的变化,例如,刀具的当前位置,补偿值。
局部变量和公共变量可以有0值或下面范围中的值:-1047到-10-29或-10-2到-1047,如果计算结果超出有效范围,则发出P/S报警NO.111。
当在程序中定义变量值时,小数点可以省略。例:当定义#1=123;变量#1的实际值是123.000。
为在程序中使用变量值,指定后跟变量号的地址。当用表达式指定变量时,要把表达式放在括号中。例如:G01X[#1+#2]F#3;
被引用变量的值根据地址的最小设定单位自动地舍入。例如:当G00X#/;以1/1000mm的单位执行时,CNC把123456赋值给变量#1,实际指令值为G00X12346.改变引用变量的值的符号,要把负号(-)放在#的前面。
例如:G00X-#1当引用未定义的变量时,变量及地址都被忽略。例如:当变量#1的值是0,并且变量#2的值是空时,G00X#1Y#2的执行结果为G00X0。
扩展资料:
数控宏程序编程是用变量的方式进行数控编程的方法,数控宏程序分为A类和B类宏程序,其中A类宏程序比较老,编写起来也比较费时费力,B类宏程序类似于C语言的编程,编写起来也很方便。
不论是A类还B类宏程序,它们运行的效果都是一样的。
编写一些大批相似零件的时候,可以用宏程序编写,这样只需要改动几个数据就可以了,没有必要进行大量重复编程。
参考资料:百度百科-数控宏程序
用G65 P程序号, 或者自定义一个M代码,比如M106,然后每次换刀时候,直接用M106,就可以,具体怎么自定义M代码,你去查询编程说明书,或者《FANUC宏程序编程》这类的书籍!简单的说宏程序就是在公式中带入变量的运算。举个简单的数车的例子,走个椭圆:
椭圆方程是x^2/a+y^2/b=1
那么y=[(1-x^2/a)b]^(1/2)
在数控系统中的Z为方程中的x方向,X为y方向。
设定Z负方向走刀变量为#1,X方向走刀为#2
编程序为:
G99
#1=0;
#2=0;
WHILE [#1 GE -a]DO1;
#1=#1-.3;
#2=SQRT[[1-#1*#1/a]b]
G01 X[#2] Z[#1} F.6
END1
%
这样就车出了一个椭球形。
虽然不是很复杂但几句话是不可能说清楚的,还是找本书学习学习吧。
最后奉劝句,没积分很少有人帮你的。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)