《数控车床华中系统用户宏程序编程.ppt》由会员分享,可在线阅读,更多相关《数控车床华中系统用户宏程序编程.ppt(29页珍藏版)》请在三一办公上搜索。
1、用户宏程序编程,在数控编程中,宏程序编程灵活、高效、快捷,是加工编程的重要补充。宏程序不仅可以实现象子程序那样,对编制相同加工操作的程序非常有用,还可以完成子程序无法实现的特殊功能,例如,型腔加工宏程序、固定加工循环宏程序、球面加工宏程序、锥面加工宏程序等。,华中数控用户宏程序,HNC-21/22T、HNC-21M为用户配备了强有力的类似于高级语言的宏程序功能,用户可以使用变量进行算术运算、逻辑运算和函数的混合运算,此外宏程序还提供了循环语句、分支语句和子程序调用语句,利于编制各种复杂的零件加工程序,减少乃至免除手工编程时进行繁琐的数值计算,以及精简程序量。,一、基础知识1.宏变量及常量,(1
2、)宏变量HNC-21/22T华中世纪星数控系统变量表示形式为#后跟14位数字,变量种类有三种:局部变量:#0#49是在宏程序中局部使用的变量,用于存放宏程序中的数据,断电时丢失为空。,1.宏变量及常量,全局变量:用户可以自由使用#50#199,它对于由主程序调用的各子程序及各宏程序来说是可以公用的,可以人工赋值。HNC-21/22T子程序嵌套调用的深度最多可以有8层,每一层子程序都有自己独立的局部变量(变量个数为50)。系统变量:系统变量为#1000#1199,它能获取包含在机床处理器或NC内存中的只读或读/写信息,包括与机床处理器有关的交换参数、机床状态获取参数、加工参数等系统信息(2)常量
3、PI:圆周率;TRUE:条件成立(真);FALSE:条件不成立(假),2、运算符与表达式,(1)算术运算符:+,-,*,/(2)条件运算符:EQ(=),NE(),GT(),GE(),LT(),LE()(3)逻辑运算符:AND,OR,NOT(4)函数:SIN(正弦),COS(余弦),TAN(正切),ATAN(反正切),ABS(绝对值)INT(取整),SIGN(符号),SQRT(开方),EXP(指数)(5)表达式:用运算符连接起来的常数,宏变量构成表达式。例如:175/SQRT2*COS55*PI/180;#3*6 GT 14,3、赋值语句,格式:宏变量=常数或表达式把常数或表达式的值送给一个宏变
4、量称为赋值。例如:#2=175/SQRT2*COS55*PI/180;#3=124.0,4、条件判别语句IF,ELSE,ENDIF,格式(i):格式(ii):IF 条件表达式 IF 条件表达式 ELSE ENDIFENDIF,5、循环语句WHILE,ENDW,格式:WHILE 条件表达式 ENDW,6、宏程序/子程序调用的参数传递规则,G 代码在调用宏(子程序或固定循环,下同)时,系统会将当前程序段各字段(AZ共26个字段,如果没有定义则为零)的内容拷贝到宏执行时的局部变量#0#25,同时拷贝调用宏时当前通道九个轴(轴0轴8)的绝对位置(机床绝对坐标)到宏执行时的局部变量#30#38。宏程序的
5、调用格式为:M98 P(宏程序名)或G65 P(宏程序名)。,7、用户宏程序编程思路,%1000;长半轴、短半轴分别为40、30的椭圆G54 G90 G00 Z30M03 S800G00 X45 Y-15;快速定位至下刀点Z3G01 Z-5 F100#0=0;给角度赋0初值WHILE#0 LE 360;当角度360度时,执行循环体内容#1=40*COS#0*PI/180;用椭圆的标准参数方程求动点M的X坐标值#2=30*SIN#0*PI/180;用椭圆的标准参数方程求动点M的Y坐标值G01 X#1 Y#2;用直线插补指令加工至M点,即用直线段逼近椭圆#0=#0+1;角度的递增步长取1度 END
6、WX45 Y15;切出椭圆G00 Z30 M05X0 Y0M30,数控车床用户宏程序编程,用宏程序编制如图所示抛物线的精加工程序。%3015#10=0;X坐标(直径值)#11=0;Z坐标T0101M03 S600G00 X0 Z34WHILE#10 LE 32G90 G64 G01 X#10 Z#11 F100#10=#10+0.32#9=#10/2;求出X坐标的半径值,便于求解#11#11=32-#9*#9/8ENDWG00 X80 Z100 M05M30,用宏指令编制椭圆部分的精加工程序,%3016;精加工椭圆程序T0101M03 S800G00 X39 Z22#1=60;A点的角度#2=
7、0;X坐标#3=0;Z坐标WHILE#1 LE 120;120是通过计算得来的B点角度#2=2*23*SIN#1*PI/180;直径编程#3=40*COS#1*PI/180G64 G01 X#2 Z#3 F100#1=#1+1;步长取1度ENDWG00 X100Z100 M05M30,用户宏程序训练,数控车削加工中公式曲线宏程序编程模板的应用,一、公式曲线宏程序编程模板的原理和使用步骤1、如何选定自变量1)公式曲线中的X和Z坐标任意一个都可以被定义为自变量 2)一般选择变化范围大的一个作为自变量,如图1 3)根据表达式方便情况来确定X或Z作为自变量,如图34)为了表达方便,在这里将和X坐标相关
8、的变量设为#1、#11、#12等,将和Z坐标相关的变量设为#2、#21、#22等。实际中变量的定义完全可根据个人习惯进行定义,2、如何确定自变量的起止点的坐标值,如图1所示,选定椭圆线段的Z坐标为自变量#2,起点S的Z坐标为Z1=8,终点T的Z坐标为Z2=-8。则自变量#2的初始值为8,终止值为-8。,2、如何确定自变量的起止点的坐标值,如图2所示,选定抛物线段的Z坐标为自变量#2,起点S的Z坐标为Z1=15.626,终点T的Z坐标为Z2=1.6。则#2的初始值为15.626,终止值为1.6。,2、如何确定自变量的起止点的坐标值,如图3所示,选定三次曲线的X坐标为自变量#1,起点S的X坐标为X
9、1=28.171-12=16.171,终点T的X标为X2=7.368。则#1的初始值为16.171,终止值为7.368。,3、如何进行函数变换,确定因变量相对于自变量的宏表达式,如图1,Z坐标为自变量#2,则X坐标为因变量#1,那么X用Z表示为:分别用宏变量#1、#2代替上式中的X、Z,即得因变量#1相对于自变量#2的宏表达式:如图2,Z坐标为自变量#2,则X坐标为因变量#1,那么X用Z表示为:分别用宏变量#1、#2代替上式中的X、Z,即得因变量#1相对于自变量#2的宏表达式:,3、如何进行函数变换,确定因变量相对于自变量的宏表达式,如图3,X坐标为自变量#1,因Z坐标为因变量#2,那么Z用X
10、表示为:Z=0.005*X*X*X分别用宏变量#1、#2代替上式中的X、Z,即得因变量#2相对于自变量#1的宏表达式:#2=0.005*#1*#1*#1,4、如何确定公式曲线自身坐标系原点对编程原点的偏移量(含正负号),该偏移量是相对于工件坐标系而言的。如图1所示,椭圆线段自身原点相对于编程原点 的X轴偏移量X=15,Z轴偏移量Z=-30如图2所示,抛物线段自身原点相对于编程原点 的X轴偏移量X=20,Z轴偏移量Z=-25.626如图3所示,三次曲线段自身原点相对于编程原点的X轴偏移量X=28.171,Z轴偏移量Z=-39.144,5、如何判别在计算工件坐标系下的X坐标值(#11)时,宏变量#
11、1的正负号,1)根据编程使用的工件坐标系,确定编程轮廓为零件的下侧轮廓还是上侧轮廓:当编程使用的是X向下为正的工件坐标系(即前置式刀架),则编程轮廓为零件的下侧轮廓,当编程使用的是X向上为正的工件坐标系(即后置式刀架),则编程轮廓为零件的上侧轮廓。2)以编程轮廓中的公式曲线自身坐标系原点为原点,绘制对应工件坐标系的X和Z坐标轴,以其Z坐标为分界线,将轮廓分为正负两种轮廓,编程轮廓在X正方向的称为正轮廓,编程轮廓在X负方向的称为负轮廓;3)如果编程中使用的公式曲线是正轮廓,则在计算工件坐标系下的X坐标值(#11)时宏变量#1的前面应冠以正号,反之为负。,6、如何套用宏编程模板,1)设Z坐标为自变
12、量#2,X坐标为因变量#1,自变量步长为W,则公式曲线段的精加工程序宏指令编程模板如下:#2=Z1(给自变量#2赋值Z1:Z1是公式曲线自身坐标系下起始点的坐标值)WHILE#2 GE Z2(自变量#2的终止值Z2:Z2是公式曲线自身坐标系下终止点的坐标值)#1=f(#2)(函数变换:确定因变量#1(X)相对于自变量#2(Z)的宏表达式)#11=#1+X(计算工件坐标系下的X坐标值#11:编程中使用的是正轮廓,#1前冠以正,反之冠以负;X为公式曲线自身坐标原点相对于编程原点的X轴偏移量。)#22=#2+Z(计算工件坐标系下的Z坐标值#22:Z为公式曲线自身坐标原点相对于编程原点的Z轴偏移量)G
13、01 X2*#11 Z#22(直线插补,X为直径编程)#2=#2-W(自变量以步长W变化)ENDW(循环结束),6、如何套用宏编程模板,2)设X坐标为自变量#1,Z坐标为因变量#2,自变量步长为U,则公式曲线段的精加工程序宏指令编程模板如下:#1=X1(给自变量#1赋值X1:X1是公式曲线自身坐标系下起始点的坐标值)WHILE#1 GE X2(自变量#1的终止值X2:X2是公式曲线自身坐标系下终止点的坐标值)#2=f(#1)(函数变换:确定因变量#2(Z)相对于自变量#1(X)的宏表达式)#11=#1+X(计算工件坐标系下的X坐标值#11:编程使用的是正轮廓,#1前冠以正,反之冠以负。X为公式
14、曲线自身坐标原点相对于编程原点的X轴偏移量。)#22=#2+Z(计算工件坐标系下的Z坐标值#22:Z为公式曲线自身坐标原点相对于编程原点的Z轴偏移量)G01 X2*#11 Z#22(直线插补,X为直径编程)#1=#1-U(自变量以步长U变化)ENDW(循环结束),二、公式曲线宏程序编程模板的具体应用实例,运用以上公式曲线宏程序模板,结合粗加工循环指令,就可以快速准确实现零件公式曲线轮廓的编程和加工。具体应用示例如下:例1:如图1所示零件的外轮廓粗精加参考程序如下(设毛坯为直径25毫米的棒料):%0001(程序头)T0101(调用01号外圆刀及01号刀具偏置补偿)G90 M03 S700(绝对值
15、编程;主轴以700转/分正转)G00 X33 Z2(快速定位到粗加工循环起点)G71 U1 R0.5 P10 Q20 X0.6 F100(外径粗车循环)N10 G01 X10 F60 S1000(精加工起始程序段)Z-10 X24 Z-22(公式曲线起点)#2=8(设Z为自变量#2,给自变量#2赋值8:Z1=8)WHILE#2 GE-8(自变量#2的终止值-8:Z2=-8)(因变量#1:用#1、#2代替X、Z)#11=-#1+15(工件坐标系下的X坐标值#11:编程使用的是负轮廓,#1前冠以负;X=15)#22=#2-30(工件坐标系下的Z坐标值#22:Z=-30)G01 X2*#11 Z#2
16、2(直线插补,X为直径编程)#2=#2-0.5(自变量以步长0.5变化)ENDW(循环结束)N20 G01 Z-50(精加工终止程序段)G00 X100 Z80(快速定位到退刀点)M30(程序结束),例2:如图2所示零件的外轮廓粗精加参考程序如下(设毛坯为直径33毫米的棒料):%0002(程序头)T0101(调用01号外圆刀及01号刀具偏置补偿)G90 M03 S700(绝对值编程;主轴以700转/分正转)G00 X33 Z2(快速定位到粗加工循环起点)G71 U1 R0.5 P10 Q20 X0.6 F100(外径粗车循环)N10 G01 X10 F60 S1000(精加工起始程序段)Z-1
17、0X15(公式曲线起点)#2=15.626(设Z为自变量#2,给自变量#2赋值15.626:Z1=15.626)WHILE#2 GE 1.6(自变量#2的终止值1.6:Z2=1.6)(因变量#1:,用#1、#2代替X、Z)#11=-#1+20(工件坐标系下的X坐标值#11:编程使用的是负轮廓,#1前冠以负;X=20)#22=#2-25.626(工件坐标系下的Z坐标值#22:Z=-25.626)G01 X2*#11 Z#22(直线插补,X为直径编程)#2=#2-0.5(自变量以步长0.5变化)ENDW(循环结束)N20 G01 Z-35(精加工终止程序段)G00 X100 Z80(快速定位到退刀
18、点)M30(程序结束),例3:如图3所示零件的外轮廓粗精加参考程序如下(设毛坯为直径57毫米的棒料):%0003(程序头)T0101(调用01号外圆刀及01号刀具偏置补偿)G90 M03 S700(绝对值编程;主轴以700转/分正转)G00 X57 Z2(快速定位到粗加工循环起点)G71 U1 R0.5 P10 Q20 X0.6 F100(外径粗车循环)N10 G01 X20 F60 S1000(精加工起始程序段)Z-13X24Z-18(公式曲线起点)#1=16.171(设X为自变量#1,给自变量#1赋值16.171:X1=16.171)WHILE#1 GE 7.368(自变量#1的终止值7.368:X2=7.368)#2=0.005*#1*#1*#1(因变量#2:,用#1、#2代替X、Z)#11=-#1+28.171(工件坐标系下的X坐标值#11:编程使用的是负轮廓,#1前冠以负;X=28.171)#22=#2-39.144(工件坐标系下的Z坐标值#22:Z=-39.144)G01 X2*#11 Z#22(直线插补,X为直径编程)#1=#1-0.5(自变量以步长0.5变化)ENDW(循环结束)G01 X50 R2Z-42.144 R2X56N20 Z-55(精加工终止程序段)G00 X100 Z80(快速定位到退刀点)M30(程序结束),返回,图1,图2,返回,图3,