宏程序编程实例与技巧方法_第1页
宏程序编程实例与技巧方法_第2页
宏程序编程实例与技巧方法_第3页
宏程序编程实例与技巧方法_第4页
宏程序编程实例与技巧方法_第5页
已阅读5页,还剩40页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

用户宏程序编程在数控编程中,宏程序编程灵活、高效、快捷,是加工编程的重要补充。宏程序不仅可以实现象子程序那样,例如,型腔加工宏程序、固定加工循环宏程序、球面加工宏程序、锥面加工宏程序等。FANUC数控宏程序SIEMENS数控参数编程2023/1/131a一、构成1. 包含变量2. 包含算术或逻辑运算(=)的程序段3. 包含控制语句(例如:GOTO,DO,END)的程序段4. 包含宏程序调用指令(G65,G66,G67或其他G代码,M代码调用宏程序)的程序段FANUC数控系统用户宏程序2023/1/132a二、FANUC宏程序的变量

FANUC数控系统变量表示形式为#后跟1~4位数字,变量种类有四种:变量号变量类型功能#0空变量该变量总是空,没有任何值能赋给该变量#1——#33局部变量局部变量只能用在宏程序中存储数据,例如运算结果。当断电时局部变量被初始化为空,调用宏程序时自变量对局部变量赋值。2023/1/133a变量号变量类型功能#100—#199#500—#999公共变量公共变量在不同的宏程序中的意义相同当断电时变量#100#199初始化为空变量

#500#999的数据保存即使断电也不丢失#1000——系统变量系统变量用于读和写CNC运行时各种数据的变化例如刀具的当前位置和补偿值等2023/1/134a三、刀具补偿存储器C用G10指令进行设定H代码的几何补偿值G10L10P

R

;D代码的几何补偿值G10L12P

R

;H代码的磨损补偿值G10L11P

R

;D代码的磨损补偿值G10L13P

R

;P:刀具补偿号R:绝对值指令(G90)方式时的刀具补偿值。增量值指令(G91)方式时的刀具补偿值为该值与指定的刀具补偿号的值相加。2023/1/135a四、FANUC宏程序的转移和循环1.无条件转移:GOTOn

(n为顺序号,1——99999)例:GOTO10为转移到N10程序段。2.条件转移:(IF语句)1)IF[条件表达式]GOTOn

当指定的条件表达式满足时,转移到标有顺序号n的程序段,如果指定的条件表达式不满足时,执行下个程序段。2023/1/136a2)IF[条件表达式]THEN当指定的条件表达式满足时,执行预先决定的宏程序语句。例:IF[#1EQ#2]THEN#3=0;3.WHILE[条件表达式]DOm;

(m=1,2,3)条件满足条件不满足

ENDm…………注:循环允许嵌套,最多3层,但不允许交叉2023/1/137a2023/1/138a2023/1/139a五、运算符运算符含义EQ等于NE不等于GT大于GE大于或等于LT小于LE小于或等于2023/1/1310aFANUC数控车削宏程序1.概念:“宏程序”一般指含有变量的程序。由宏程序体和程序中调用宏程序的指令。即宏指令构成。主要应用于抛物线、椭圆、双去想等各种数控系统没有插补指令的轮廓曲线编程。用户宏程序有两个要点:(1)在宏程序中存在变量;(2)宏程序能依据变量完成某个具体操作。2023/1/1311a(2)特点:1)可以进行变量的算术运算、逻辑运算和函数的混合运算。还可以使用循环语句、分支语句和子程序调用语句。2)宏程序能依据变量,用事先指定的变量代替直接给出的数值,在调用宏程序或宏程序本身执行时,得到计算好的变量值。3)宏程序通用性强,灵活方便,一个宏程序可以描述一种曲线,曲线的各种参数用变量表示。2023/1/1312a(3)基本原理宏程序编程是用户用变量作为数据进行编程,变量在编程中充当“媒介”作用。在后续程序中可以重新再赋值,原来内容被新赋的值所取代,利用系统对变量值进行计算和可以重新赋值的特性,使变量随程序的循环自动增加并计算,实现加工过程的自动循环,使之自动计算出整个曲线无数个密集坐标值,从而用很短的直线或圆弧线逼近理想的轮廓曲线。2023/1/1313a2023/1/1314a3.变量与赋值(1)变量表示法

用一个可赋值的代号“#i”(i=1,2,3……)来代替具体的坐标值或数据,这个代号“#i”

就称为变量。变量用变量符号“#”(变量的标志)和后续数值(变量的标号)来表示,如#5,#21等,其后续数值不允许带小数点。变量可以在宏程序体中使用,宏程序体中可以含有复杂的表达式,并完成很复杂的计算。而普通加工程序直接用G或数值编写,如“G00X50Z50”,而用户在编写宏程序时,数值可以直接指定或用变量指定,如“G00X[#1+#1]F#3”2023/1/1315a2023/1/1316a2023/1/1317a2023/1/1318a宏程序零件编制实例1.抛物线宏程序的应用如图所示。已知前端椭圆的方程为抛物线,。设X轴步距为,原始毛坯为Φ30×70,T01为粗车刀,T02为精车刀,各部分尺寸见图1,试编写加工程序。计算抛物线线底的直径:将Z=20代入,的直径为Φ22mm。2023/1/1319a方法一:调用子程序O0010G00X100Z100;T0101S800M03;G40X30;G00G42Z2;#60=30;设定毛坯最大切削量;WHILE#60GE0.75;判定毛坯余量是否大于M98P0009;调用子程序#60=#60-2.4;每次切削量单边为1.2mm;ENDW;G00G40X100Z100;M05;T0202;换2号精车刀;G40X30;G00G42Z2;G01Z0F0.1;#60=0;设定毛坯切削量为0M98P0009;调用子程序ENDW;G00G40X100Z100;M30;2023/1/1320aO0009#1=0;#2=0;WHILE#2LE20;判定z轴是否到终点#2=[#1]*[#1]/24.2;z轴变量G01X[#1+#60]Z[-[#2]]F0.2;抛物线插补;;设定x轴的步距为;ENDW;G01W-5;U3;W-10;U5;G00Z0;M99;2023/1/1321a方法二:复合循环法O0110G00X100Z100;T0101M03S800;G00G40X30Z2;G73U15W0R7.0;G71P10Q20X0.6Z0.2F0.2;N10G00G42X0;G01Z0F0.1S1000;#1=0;#2=0;WHILE#2LE20;判定z轴是否到终点;#2=[#1]*[#1]/24.2;Z轴变量G01X[#1]Z[-[#2]]抛物线插补#1=#1+0.06;设定x轴的步距为;ENDWG01Z-25;X25;X25;N20Z-35;T0202;G70P10Q20;M30;2023/1/1322a以Ф参数(角度)为初始变量如图3,毛坯为Ф30mm×70mm的棒料,45号钢。编程原点设在右端面与中心轴线的交点上,椭圆原点在编程坐标系(0,-20)处。

分析:三爪卡盘夹住左端,伸出55mm,手动车右端面,选择1号30º外圆车刀加工外轮廓。切削用量的选择:粗加工主轴转速为600r/min,进给量为,精加工主轴转速为800r/min,进给量为。在椭圆坐标系中,其标准方程为:

;参数方程为:X=14sinФ,Z=20cosФ。从零件图上可以看出,椭圆轮廓的起点角度为0º,终点角度为144º(180º-36º=144º),所以适合采用以Ф参数(角度)为初始变量,应用参数方程来表达椭圆上点的坐标。编制程序如下。O1234;T0101M03S600;GOOX34Z2.0;G73U14W0R7;G73P10Q20U1W0.05F0.25;N10G00X0.;G42G01Z0.F0.1;#1=0;(角度初始值)WHILE[#1LE144]DO1;#2=14*SIN[#1];#3=20*COS[#1];G01X[2*#2]Z[#3-20]F0.1;#1=#1+0.5;END1;G01Z-40;X28;W-10;N20G40X33;M03S800;G70P10Q20;G00X150Z150;M5;M30;2023/1/1323a2023/1/1324a2023/1/1325a四、以Z坐标为初始变量如图4,毛坯为Ф30mm×50mm的棒料,45号钢。编程原点设在右端面与中心轴线的交点上,椭圆原点在编程坐标系(0,-15)处。2023/1/1326a四、以Z坐标为初始变量如图4,毛坯为Ф30mm×50mm的棒料,45号钢。编程原点设在右端面与中心轴线的交点上,椭圆原点在编程坐标系(0,-15)处。编制程序如下:

O1235;G40T0101M03S600;GOOX34Z2.0;

G73U14W0R7;G73P10Q20U1W0.05F0.25;N10G00X0.;

G42G01Z0.F0.1;#1=15;(Z初始值)WHILE[#1GE0]DO1;#2=10*SQRT[15*15-#1*#1]/15;G01X[2*#2]Z[#1-15]F0.1;

#1=#1-0.1;END1;

G01W-5;X28;

Z-30;

N20G40X33;M03S800;G70P10Q20;

G00X150Z150;M30;2023/1/1327aO12112023/1/1328a如图5,毛坯为Ф30mm×80mm的棒料,45号钢。编程原点设在右端面与中心轴线的交点上,椭圆原点在编程坐标系,-22)处,椭圆轮廓位于零件中间。2023/1/1329a编制程序如下:

G00X34Z2.0;

#1=10*SQRT[20*20-14*14]/20;#2=2*[17.5-#1];G00X[#2];

G01Z-8F0.1;

#3=14;(Z初始值)

WHILE[#3GE-14]DO1;

#4=10*SQRT[20*20-#3*#3]/20

G01X[2*[17.15-#4]]Z[#3-22]F0.1;

#3=#3-0.1;END1;

G01W-8;上例引入了4个变量,变量#1和#2的引入是为了表达曲线起点的坐标值,变量#3和#4表达的是椭圆曲线上点的Z、X值。2023/1/1330aO0003;G00X100Z100LT0101S500M03;G00X75Z2;G73U22.5W0R10;G73P10Q20U0.3W0F0.2;N10GOOX30;G01X-15;#21=20;#22=10;#23=0;WHILE[-10LE#23]DO1#24=20*SQRT[#22*#22-#23#23]/10;G01X[2*35-2*#24]Z[#23-15]#23=#23-0.05;END1;N20G01Z-50;G00X100Z100;M30;2023/1/1331a用户宏程序训练2023/1/1332a有以角度为初始变量的椭圆宏程序编程;有以Z(X)坐标为初始变量的椭圆宏程序编程;有的椭圆曲线轮廓位于零件的最右(左)端;有的曲线位于零件中间部位。但不管是什么情况,椭圆宏程序编程都要有以下几个的要点。①根据零件图中椭圆轮廓的形状和位置,选取合适的初始变量,角度或Z(X)坐标。②正确表达椭圆曲线上点的坐标。根据零件图上的尺寸标注,选择标准方程或参数方程表达椭圆上点的坐标。③找出(有时需计算出)椭圆原点在编程坐标系中的坐标,正确表达椭圆上的点在编程坐标系中的坐标。2023/1/1333a六、FANUC宏程序的调用1.非模态调用G65:格式:G65PpLl<自变量指定>其中p:要调用的程序号

L:调用次数(默认为1)自变量:数据传递到宏程序例:G65P8000L2A10.B2.;调用2次程序号8000,经自变量A传递到宏程序#1=10;自变量B传递到宏程序#2=2。2023/1/1334a自变量指定Ⅰ根据使用的字母,CNC系统自动地决定自变量指定的类型。地址不需要按字母顺序指定。但应符合字地址的格式。但是,I,J和K需要按字母顺序指定。2023/1/1335a自变量指定Ⅱ根据使用的字母,系统自动决定自变量指定的类型。自变量指定Ⅱ用于传递诸如三维坐标值的变量。I,J,K的下标用于确定自变量指定的顺序,在实际编程中不写。2023/1/1336a如果自变量指定Ⅰ和自变量指定Ⅱ混合指定的话,后指定的自变量类型有效。2023/1/1337a六、FANUC宏程序的调用2.模态调用(G66):G66PpLl<自变量指定>;程序点G67;(取消模态)例:G66P8000L2A10.B2.;G00G90Z-10.X-5.G67一旦发出G66则指定模态调用,即指定沿移动轴移动的程序段后调用宏程序。移动到Z-10,调用2次程序号8000,移动到X-5,再调用2次程序号8000。2023/1/1338a%1000;长半轴40、短半轴30的椭圆G54G90G00Z30M03S800G00X45Y-15;Z3G01Z-5F100#0=0;给角度赋0初值WHILE#0LE360;#1=40*COS[#0*PI/180];#2=30*SIN[#0*PI/180];G01X[#1]Y[#2];#0=#0+1;ENDWX45Y15;G00Z30X0Y0M05M30七、FANUC与华中系统用户宏程序编程对照G54G90G00Z30M03S800G00X45Y-15;Z3G01Z-5F100#10=0;给角度赋0初值WHILE#10LE360DO1;#11=40*COS[#10];#12=30*SIN[#10];G01X#11Y#12;#10=#10+1;END1X45Y15;G00Z30X0Y0M05M302023/1/1339aSIEMENS数控系统参数编程与FANUC类似,但功能要弱一些。变量以“R”开始,如:R0、R1、R99。不包含系统变量,系统变量以“$”开头。一、格式:Rn(n的缺省取值范围为0-99)例如:R1R2…R99二、运算符:2023/1/1340a2023/1/1341a三、SIEMENS参数编程程序跳转1.无条件跳转GOTOBLABEL(向后跳转,向程序头跳转)GOTOFLABEL(向前跳转,向程序尾跳转)2.条件跳转IF表达式GOTOBLABEL(向后跳转,向程序头跳转)IF表达式GOTOFLABEL(向

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论