资源描述
单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,单击此处编辑母版标题样式,单击此处编辑母版文本样式,二级,三级,四级,五级,*,用户宏程序编程,在数控编程中,宏程序编程灵活、高效、快捷,是加工编程的重要补充。宏程序不仅可以实现象子程序那样,对编制相同加工操作的程序非常有用,还可以完成子程序无法实现的特殊功能,例如,型腔加工宏程序、固定加工循环宏程序、球面加工宏程序、锥面加工宏程序等。,华中数控用户宏程序,HNC-21/22T、HNC-21M为用户配备了强有力的类似于高级语言的宏程序功能,用户可以使用变量进行算术运算、逻辑运算和函数的混合运算,此外宏程序还提供了循环语句、分支语句和子程序调用语句,利于编制各种复杂的零件加工程序,减少乃至免除手工编程时进行繁琐的数值计算,以及精简程序量。,一、基础知识,1.,宏变量及常量,(1)宏变量,HNC-21/22T华中世纪星数控系统变量表示形式为#后跟14位数字,变量种类有三种:,局部变量,:#0#49是在宏程序中局部使用的变量,用于存放宏程序中的数据,断电时丢失为空。,1.,宏变量及常量,全局变量,:,用户可以自由使用#50#199,它对于由主程序调用的各子程序及各宏程序来说是可以公用的,可以人工赋值。HNC-21/22T子程序嵌套调用的深度最多可以有8层,每一层子程序都有自己独立的局部变量(变量个数为50)。,系统变量,:系统变量为#1000#1199,它能获取包含在机床处理器或NC内存中的只读或读/写信息,包括与机床处理器有关的交换参数、机床状态获取参数、加工参数等系统信息,(2),常量,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、赋值语句,格式:宏变量=常数或表达式,把常数或表达式的值送给一个宏变量称为赋值。,例如:#2=175/SQRT2*COS55*PI/180;,#3=124.0,4、条件判别语句IF,ELSE,ENDIF,格式(i):格式(ii):,IF 条件表达式,IF 条件表达式,ELSE,ENDIF,ENDIF,5、循环语句WHILE,ENDW,格式:,WHILE 条件表达式,ENDW,6、宏程序/子程序调用的参数传递规则,G 代码在调用宏(子程序或固定循环,,下同)时,系统会将当前程序段各字,段(AZ共26个字段,如果没有定义,则为零)的内容拷贝到宏执行时的局,部变量#0#25,同时拷贝调用宏时,当前通道九个轴(轴0轴8)的绝对,位置(机床绝对坐标)到宏执行时的局,部变量#30#38。,宏程序的调用格式为:,M98 P(宏程序名),或G65 P(宏程序名)。,7、用户宏程序编程思路,%1000;长半轴、短半轴分别为40、30的椭圆,G54 G90 G00 Z30,M03 S800,G00 X45 Y-15;快速定位至下刀点,Z3,G01 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度,ENDW,X45 Y15;切出椭圆,G00 Z30 M05,X0 Y0,M30,数控车床用户宏程序编程,用宏程序编制如图所示抛物线的精加工程序。,%3015,#10=0;X坐标(直径值),#11=0;Z坐标,T0101,M03 S600,G00 X0 Z34,WHILE,#10 LE,32,G90 G64 G01 X#10 Z#11 F100,#10=#10+0.32,#9=#10/2;求出X坐标的半径值,便于求解#11,#11=32-#9*#9/8,ENDW,G00 X80 Z100,M05,M30,用宏指令编制椭圆部分的精加工程序,%3016;精加工椭圆程序,T0101,M03 S800,G00 X39 Z22,#1=60;A点的角度,#2=0;X坐标,#3=0;Z坐标,WHILE#1 LE 120;120是通过计算得来的B点角度,#2=2*23*SIN#1*PI/180;直径编程,#3=40*COS#1*PI/180,G64 G01 X#2 Z#3 F100,#1=#1+1;步长取1度,ENDW,G00 X100,Z100 M05,M30,用户宏程序训练,数控车削加工中公式曲线宏程序编程模板的应用,一、公式曲线宏程序编程模板的原理和使用步骤,1、如何选定自变量,1)公式曲线中的X和Z坐标任意一个都可以被定义为自变量,2)一般选择变化范围大的一个作为自变量,如图1,3)根据表达式方便情况来确定X或Z作为自变量,如图3,4)为了表达方便,在这里将和X坐标相关的变量设为#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坐标为X1=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表示为:,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)时,宏变量#1的正负号,1)根据编程使用的工件坐标系,确定编程轮廓为零件的下侧轮廓还是上侧轮廓:当编程使用的是X向下为正的工件坐标系(即前置式刀架),则编程轮廓为零件的下侧轮廓,当编程使用的是X向上为正的工件坐标系(即后置式刀架),则编程轮廓为零件的上侧轮廓。,2)以编程轮廓中的公式曲线自身坐标系原点为原点,绘制对应工件坐标系的X和Z坐标轴,以其Z坐标为分界线,将轮廓分为正负两种轮廓,编程轮廓在X正方向的称为正轮廓,编程轮廓在X负方向的称为负轮廓;,3)如果编程中使用的公式曲线是正轮廓,则在计算工件坐标系下的X坐标值(#11)时宏变量#1的前面应冠以正号,反之为负。,6、如何套用宏编程模板,1)设Z坐标为自变量#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轴偏移量),G01 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为公式曲线自身坐标原点相对于编程原点的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(绝对值编程;主轴以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#22(直线插补,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
展开阅读全文