12数控编程-第十二单元-数控车宏程序编程
合集下载
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
椭圆标准方程X*X/a*a+Y*Y/b*b=1,其中a为长半轴,b为短半轴,若将 X和Y用参数变量代替可改写为#1*#1/a*a+#2*#2/b*b=1。椭圆可沿长半轴#1 方向划分成无数小段直线,然后求出其相应端点坐标,再求出相对的数控车 床中的坐标,再按直线进行编程加工。如下图所示: 椭圆的标准方程:
不等于not equal to (≠) 大于Greater than (>)
GE
LT LE
大于等于greater than or equal to(≥)
小于less than (<) 小于等于less than or equal to (≤)
(3)循环语句 在WHILE 后指定一条件表达式,当条件满足时,执行 WHILE到END之间的程序,(然后返回到WHILE 重新判断条件,) 不满足则执行END后的下一程序段。 格式: WHILE [条件表达式]; 处理; ENDW;
角度用十进制度表示。
逻辑运算用二进制数按位操 作 用于转换发送到PMC的信号或 从PMC 接收的信号
十——二进制转换 #I=BIN[#J] 二——十进制转换 #I=BCD[#J]
6.宏程序指令 (1)无条件转移 格式:GOTO n; n——(转移到的程序段)顺序号 例:GOTO1; GOTO#10; (2)条件分支IF语句 在IF后指定一条件,当条件满足时,转移到顺序号为n的 程序段,不满足则执行下一程序段。 格式: IF [表达式] GOTOn; 处理; Nn …;
#1~#33
局部变量
#100~#149(#199) #500~#531(#999)
全局变量
#1000~#9999
系统变量
注:全局变量#150~#199,#532~#999是选用变量,应根据实际系统使用。
4.宏变量的引用 在程序中引用(使用)宏变量时,其格式为:在指令字地址后 面跟宏变量号。当用表达式表示变量时,表达式应包含在一对方 括号内。 如:G01 X[#1+#2] F#3; 5.算术和逻辑运算(见表) 函 赋值 数 格 #i=#j 式 备 注
N90 WHILE #2 GE 0; 宏程序循环语句,#2大于等于0 N100 #3=20*SQRT[1-#2*#2/1600]; X轴坐标运算 N110 G01 X[2*#3] Z #2 直线插补拟合椭圆轨迹 N120 #2=#2-0.1; 步长为0.1 N130 ENDW 循环语句结束 N140 G01 Z-10; 其他轮廓开始 N150 X50; N160 Z-25; N170 G02 X50 Z-50 R18.1; N180 G01 Z-65; N190 G40 X54; N200 G00 X100 Z100; N210 T0100; 取消刀补 N220 T0202 S200; 调用2号刀,建立刀补 N230 G00 X55 Z10; N240 Z-64; N250 G01 X0.1 F0.1; 切断 N260 G00 X100; N270 Z100; N280 T0200; N290 M05 M30;
3.宏变量的类型 根据变量号,宏变量可分成四种类型,如下表所示。
变量号 #0 变量类型 空变量 功 能
该变量通常为空(null),该变量不能赋值 局部变量只能在宏程序内部使用,用于保存数据,如运算结 果等。当电源关闭时,局部变量被清空,而当宏程序被调用 时,(调用)参数被赋值给局部变量。 全局变量可在不同宏程序之间共享,当电源关闭时, #100~#149被清空,而#500~#531的值仍保留。在某一运算中, #150~#199,#532~#999的变量可被使用,但存储器磁带长度 不得小于8.5m。 系统变量可读、可写,用于保存NC的各种数据项,如:当前 位置、刀具补偿值等。
第十二单元 数控宏程序编程
一、 非圆公式曲线的加工方法 1.非圆公式曲面的加工特点 2.规则曲面的编程方法 规则曲面的编程方法通常有自动编程法、宏程序法等。 ①自动编程法 ②宏程序法 宏程序的编程加工,一般是采用厂方所提供的宏程序(或用 户自行开发的宏程序)通过对变量进行赋值及处理后完成程序的加 上任务。
3.用户宏程序概念
一组以子程序的形式存储并带有变量的程序称为用户宏程序,简称宏程序。
用户宏程序是FANUC数控系统及类似产品中的特殊编程功能,其实质与子 程序相似,是一组实现某功能的指令,以子程序的形式预先存储在系统存储 器中,通过宏程序调用指令执行这一功能。在主程序中,只要编入相应的调 用指令就能实现这些功能。
例:椭圆的加工 任务描述:加工如图所示零件。毛坯尺寸 52mm棒料,材料 为45#钢。
工艺过程 ①粗车外轮廓,留精加工余量0.6mm。 T01。 ②精车外轮廓,达到图纸要求。 ③切断,达到图纸要求。T02,宽4mm 程序编制 O0001 N10 G50 X100 Z100 T0101; N20 M03 S300; N30 G00 X60 Z10; N40 G42 X54 Z5; N50 G71 P60 Q190 U0.6 W0.6 D3 F200; N60 G01 X0 Z0; 精加工轮廓 N80 #2=40; 定义变量#2为Z坐标,运算初始值
在编程时,用户宏程序由于允许使用变量、算 术和逻辑运算及条件转移,使编制的相同加工操 作的程序更简洁。
A类
用户宏程序 需用G65作为专用代码, 编程烦琐,应用较少 功能强大,编程直观, 应用广泛
B类
4.非圆公式曲线的加工方法
注意: 在编程 加工时, 须把各点 的坐标转 换到工件 坐标系下
等间距法直线段逼近椭圆
例:用宏程序编制如图所示抛物线Z=X2/8在区间[0,16]内的程序
O1111 N10 G50 X0 Z0; N20 M03 S600; N30 #1=0; X坐标 N40 #2=0; Z坐标 N50 WHILE #1 LE 16; N60 G01 X[#1] Z[#2] F200 N70 #1=#1+0.08; N80 #2=#1*#1/8; N90 ENDW ; N100 G00 X0 M05 ; N110 Z0; N120 X0; N130 M05; N140 M30;
求和 求差 乘积 求商
#i=#j+#k #i=#j-#k #i=#j*#k #i=#j/#k
正弦 余弦 正切 反正切 平方根t 绝对值 四舍五入 向下取整 向上取整 或OR 异或XOR 与AND
#i=SIN[#j] #i=COS[#j] #i=TAN[#j] #i=ATAN[#J]/[#k] #i=SQRT[#j] #i=ABS[#J] #I=ROUND[#J] #I=FIX[#J] #I=FUP[#J] #I=#J OR #K #I=#J XOR #K #I=#J
①条件表达式 条件表达式由两变量或一变量一常数中间夹比较运算符组成, 条件表达式必需包含在一对方括号内。条件表达式可直接用变量代 替。 ②比较运算符 比较运算符由两个字母组成,用于比较两个值,来判断它们 是相等,或一个值比另一个小或大。注意不能用不等号(见表)。 运算符 含义
EQ
NE GT
相等equal to (=)
X Z 2 1 2 b a
椭圆的参数方程:
2
2
X b * SIN [ ] Z a * COS[ ]
二、B类宏程序编程 1. 变量的表示 一个变量由符号“#”和变量序号组成,如:#i (i=1,2, 3,…),此外,变量还可以用表达式进行表示,但其表达式必须 全部写入方括号“[ ]”中。 【例】 #100,#500,#5,#[#1+#2+10]; 2. 变量的引用 将跟随在地址符后的数值用变量来代替的过程称为引用变 量。同样,引用变量也可以采用表达式。 【例】 G01 X#100 Y-#101 F[#101+#103]; 当#100=100.0、#101=50.0、#103=80.0时,上例即表示为 G0l Xl00.0 Y-50.0 F130;