数控车宏程序培训教程

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

宏程序培训教程

Fanuc系统

铣削类

周为鑫

09年9月

宏程序的定义:

宏程序简言之就是:宏编程,它是一种零件的编程方法,该方法是在标准CNC编程方式的基础上附加控制特征,以使功能更强大、更具有灵活性。

宏程序的应用

1、凡是复杂有规律的零件比较适合使用宏程序,例如复杂的二次曲线。

2、相似零件组、偏执控制、定制固定循环、专用G代码和M代码、非标准刀具的运动、报警信息产生、检测和测量、各种捷径和应用。

宏程序与标准CNC编程的区别标准编程宏程序编程

使用定值编程使用变量代替定

定值之间不可以运

算变量之间可以运

程序是按照顺序执

行程序可以任意跳

什么是变量?

变量是不断变化的数据的存储单元,它可以储存某些

给定的数值,当给变量赋值时就相当于把数值存入

变量中,方便以后使用。

储存到变量的中数称之为定义值或定义变量。

给变量储存数值的过程称之为赋值。

标准CNC编程都是跟一个确定的数值,在程序中直观、简单、易懂,宏程序编程不直接用定值,而是用一

个变量符号代替数值,当需要这个数值时就直接把

这个变量写在程序里面,起到一个等价交换的作用。例如:#1=100

G01 X#1 F90. #1就是起到等价连接作用

变量的基础知识

变量的表示:变量符号+变量号

Fanuc、哈斯、三菱、马扎克日系类都是用: #西门子802s、802Dsl、840D、810D都是用:R PA系统使用:P

海德汉系统使用:Q

# i(i=0、1、2、3、4、5……)

#0 #1 #2 #3 #4……

拓展:表达式也可以用于指定变量号,此时表达

式必须封闭在括号内

例如# [ #1+ #2 –12 ]

括号的要求:西门子用小括号()

Fanuc 用中括号[ ]

变量的类型:根据变量号可以分成4种类型

变量号变量类型功能作用

#0空变量总是为空,没有值能赋予它#1~#33局部变量只能在程序中储存,一旦断电时

清空,再次调用时,赋值有效

#100~#199 #500~#999公共变量

在不同的程序中意义相同,断电

时100-199清空,500-999数据保

存,即使断电也不丢失

#1000 ~系统变量系统变量用于读和写CNC各种数

据,例如刀具、刀补、坐标

变量的应用

1、在程序中定义变量值时,整数情况时小数点可

以省略。#1=123 实际是#1=123.000

2、在程序中指定变量号即可直接引用其变量值。

#1=123 G01 X#1 F20 实际就是X123

3、当用表达式指定变量时,要把表达式放在括号

中。G01 X [ [ #1+#2 ] * 2 ] F100. 表达式计算产生的结果由系统根据地址最小设定单位自动四舍五入。

4、改变应用变量的值的符号时,要把(-)负号

写在#的前面#1=10 G01 X-#1 F100.

5、引用未被赋值的变量时,变量及地址字都被或

以下情况要引起注意:

1冒号字符:冒号字符不允许出现2分号字符;分号字符不允许出现30是中性值+0或-0是无法识别的4数值前面的0可以忽略#1=003 与#1=3是一样的5程序号不能使用变量O#1 不允许出现

6段号不能使用变量N#1 不允许出现

7单个变量的括号可以

省略

#[7] 就写成#7

8一个变量不能直接

替代另外一个变量

##7 或#[#7]是错误的

9如果预先已经定义了#7和#9,那么下面的嵌套式正确的,#101=FIX[[#9*100]/[3.14*7]]

变量的运算

功能变量符号#举例

定义、转换、赋值#1=#2#1=2 #2=#1加法#1+#2#1=#2+#3

减法#1-#2#1=#2-#3

乘法#1*#2#1=#2*#3

除法#1/#2#1=#2/#3四则混合运算[[#1+#2]/[#3-#4]]*#6+#8/#9

功能变量符号#举例

正弦#1=SIN[#2]#1=30 #2=SIN[#1]反正弦#1=ASIN[#2]#1=0.5 #2=ASIN[#1]余弦#1=COS[#2]#1=60 #2=COS[#1]反余弦#1=ACOS[#2]#1=0.5 #2=ACOS[#1]正切#1=TAN[#2]#1=45 #2=TAN[#1]余切#1=1/TAN[#2]#1=45 #2=1/TAN[#1]

功能变量符号#举例

平方根SQRT

#2=3 #3=4

#1=SQRT[#2*#2+#3*#3]

平方*#1=#2*#2

绝对值ABS简写AB#1=-10 #2=ABS[#1]

舍入ROUND

简写RO

#1=6.5133 #2=ROUND[#1]

上取整FIX 简写FI#1=1.234 #2=FIX[#1] 1下取整FUP#1=1.234 #2=FUP[#1] 2

变量的表达式

运算符含义具体示例

EQ等于IF[#1EQ#2]GOTO10 NE不等于IF[#1NE#2]GOTO10 GT 大于IF[#1GT#2]GOTO10 GE大于等于IF[#1GE#2]GOTO10 LT小于IF[#1LT#2]GOTO10 LE小于等于IF[#1LE#2]GOTO10

相关文档
最新文档