数控宏程序编程_第1页
数控宏程序编程_第2页
数控宏程序编程_第3页
数控宏程序编程_第4页
数控宏程序编程_第5页
已阅读5页,还剩35页未读 继续免费阅读

下载本文档

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

文档简介

用户宏程序编程在数控编程中,宏程序编程灵活、高效、快捷,是加工编程的重要补充。宏程序不仅可以实现象子程序那样,对编制相同加工操作的程序非常有用,还可以完成子程序无法实现的特殊功能,例如,型腔加工宏程序、固定加工循环宏程序、球面加工宏程序、锥面加工宏程序等。华中数控宏程序FANUC数控宏程序SIEMENS数控参数编程2021/5/91数控加工技术华中数控用户宏程序HNC-21/22T、HNC-21M为用户配备了强有力的类似于高级语言的宏程序功能,用户可以使用变量进行算术运算、逻辑运算和函数的混合运算,此外宏程序还提供了循环语句、分支语句和子程序调用语句,利于编制各种复杂的零件加工程序,减少乃至免除手工编程时进行繁琐的数值计算,以及精简程序量。一、基础知识1.宏变量及常量(1)宏变量HNC-21/22T华中世纪星数控系统变量表示形式为#后跟1~4位数字,变量种类有三种:①局部变量:#0~#49是在宏程序中局部使用的变量,用于存放宏程序中的数据,断电时丢失为空。2021/5/92数控加工技术一、基础知识②全局变量:用户可以自由使用#50~#199,它对于由主程序调用的各子程序及各宏程序来说是可以公用的,可以人工赋值。HNC-21/22T子程序嵌套调用的深度最多可以有8层,每一层子程序都有自己独立的局部变量(变量个数为50)。③系统变量:系统变量为#1000~#1199,它能获取包含在机床处理器或NC内存中的只读或读/写信息,包括与机床处理器有关的交换参数、机床状态获取参数、加工参数等系统信息。(2)常量PI:圆周率π;TRUE:条件成立(真);FALSE:条件不成立(假)

1、宏变量及常量2021/5/93数控加工技术2、运算符与表达式(1)算术运算符:+,-,*,/(2)条件运算符:EQ(=),NE(≠),GT(>),GE(≥),LT(<=),LE(≤)(3)逻辑运算符:AND,OR,NOT(4)函数:SIN,COS,TAN,ATAN,ATAN2,ABS,INT,SIGN,SQRT,EXP(5)表达式:用运算符连接起来的常数,宏变量构成表达式。例如:175/SQRT[2]*COS[55*PI/180];#3*6GT14

2021/5/94数控加工技术3、赋值语句格式:宏变量=常数或表达式把常数或表达式的值送给一个宏变量称为赋值。例如:#2=175/SQRT[2]*COS[55*PI/180;

#3=124.0

2021/5/95数控加工技术4、条件判别语句IF,ELSE,ENDIF格式(i):

格式(ii):

IF条件表达式

IF条件表达式

……ELSEENDIF…ENDIF2021/5/96数控加工技术5、循环语句WHILE,ENDW格式:WHILE条件表达式…ENDW2021/5/97数控加工技术6、宏程序/子程序调用的参数传递规则G代码在调用宏(子程序或固定循环,下同)时,系统会将当前程序段各字段(A~Z共26个字段,如果没有定义则为零)的内容拷贝到宏执行时的局部变量#0~#25,同时拷贝调用宏时当前通道九个轴(轴0~轴8)的绝对位置(机床绝对坐标)到宏执行时的局部变量#30~#38。宏程序的调用格式为:M98P(宏程序名)<变量赋值>或G65P(宏程序名)<变量赋值>。……#25Z

2021/5/98数控加工技术%1000;长半轴、短半轴分别为40、30的椭圆G54G90G00Z30M03S800G00X45Y-15;快速定位至下刀点Z3G01Z-5F100#0=0;给角度赋0初值WHILE#0LE360;当角度≤360度时,执行循环体内容#1=40*COS[#0*PI/180];用椭圆的标准参数方程求动点M的X坐标值#2=30*SIN[#0*PI/180];用椭圆的标准参数方程求动点M的Y坐标值G01X[#1]Y[#2];用直线插补指令加工至M点,即用直线段逼近椭圆#0=#0+1;角度的递增步长取1度

ENDWX45Y15;切出椭圆G00Z30M05X0Y0M307、用户宏程序编程思路2021/5/99数控加工技术%1000;长半轴、短半轴分别为40、30的椭圆G92X0Y0Z30M03S800G00X45Y-15M08;快速定位至A点Z3G01Z-5F100#2=0;给角度赋0初值WHILE#2LE360;当角度≤360度时,执行循环体内容#11=40*COS[#2*PI/180];用椭圆的标准参数方程求动点M的X坐标值#12=30*SIN[#2*PI/180];用椭圆的标准参数方程求动点M的Y坐标值G42G64G01X[#11]Y[#12]D01;用直线插补指令加工至M点,即用直线段逼近椭圆#2=#2+1;角度的递增步长取1度

ENDWG40G01X45Y15;切出椭圆至C点Z3M09G00Z30X0Y0M05M30二、数控铣床用户宏程序编程2021/5/910数控加工技术2021/5/911数控加工技术2021/5/912数控加工技术宏程序编程实例

ZH7640立式加工中心由北京第三机床厂产生,采用华中铣床、加工中心数控系统。加工范围600mm×400mm×500mm。刀库可容纳20把刀。可用于镗、铣、钻、铰、攻丝等各种加工。实例为在预先处理好的100mm×100mm×80mm合金铝锭毛坯上加工如图所示的零件,其中正五边形外接圆直径为80mm。

2021/5/913数控加工技术O5000;FANUCG54G90G00Z40X70Y20M08M03S600G43Z3H01G01Z-5F100#0=18N10#1=80*COS#0#2=80*SIN#0G41X#1Y#2D01#0=#0+72IF[#0LT360]GOTO10G40X70Y70Z40M05M30O5000;HNC-21M%1000G54G90G00Z40X70Y20M08M03S600G43Z3H01G01Z-5F100#0=18IF[#0LT360]#1=80*COS#0#2=80*SIN#0G41X#1Y#2D01#0=#0+72ENDIFG40X70Y70Z40M05M30宏程序编程实例2021/5/914数控加工技术三、数控车床用户宏程序编程%3015#10=0;X坐标(直径值)#11=0;Z坐标T0101M03S600G00X0Z34WHILE#10LE32G90G64G01X[#10]Z[#11]F100#10=#10+0.32#9=#10/2;求出X坐标的半径值,便于求解#11#11=32-[#9*#9/8]ENDWG00X80Z100M05M30用宏程序编制如图所示抛物线的精加工程序。2021/5/915数控加工技术用宏指令编制椭圆部分的精加工程序。

%3016;精加工椭圆程序T0101M03S800G00X39Z22#1=60;A点的角度#2=0;X坐标#3=0;Z坐标WHILE#1LE120;120是通过计算得来的B点角度#2=2*23*SIN[#1*PI/180];直径编程#3=40*COS[#1*PI/180]G64G01X[#2]Z[#3]F100#1=#1+1;步长取1度ENDWG00X100Z100M05M302021/5/916数控加工技术用户宏程序训练2021/5/917数控加工技术2021/5/918数控加工技术2021/5/919数控加工技术一、构成1. 包含变量2. 包含算术或逻辑运算(=)的程序段3. 包含控制语句(例如:GOTO,DO,END)的程序段4. 包含宏程序调用指令(G65,G66,G67或其他G代码,M代码调用宏程序)的程序段FANUC数控系统用户宏程序2021/5/920数控加工技术二、FANUC宏程序的变量

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

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

R

;D代码的几何补偿值G10L12P

R

;H代码的磨损补偿值G10L11P

R

;D代码的磨损补偿值G10L13P

R

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

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

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

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

ENDm…………注:循环允许嵌套,最多3层,但不允许交叉2021/5/925数控加工技术2021/5/926数控加工技术2021/5/927数控加工技术五、运算符运算符含义EQ等于NE不等于GT大于GE大于或等于LT小于LE小于或等于2021/5/928数控加工技术六、FANUC宏程序的调用1.非模态调用G65:格式:G65PpLl<自变量指定>其中p:要调用的程序号

L:调用次数(默认为1)自变量:数据传递到宏程序例:G65P8000L2A10.B2.;调用2次程序号8000,经自变量A传递到宏程序#1=10;自变量B传递到宏程序#2=2。2021/5/929数控加工技术自变量指定Ⅰ根据使用的字母,CNC系统自动地决定自变量指定的类型。地址不需要按字母顺序指定。但应符合字地址的格式。但是,I,J和K需要按字母顺序指定。2021/5/930数控加工技术自变量指定Ⅱ根据使用的字母,系统自动决定自变量指定的类型。自变量指定Ⅱ用于传递诸如三维坐标值的变量。I,J,K的下标用于确定自变量指定的顺序,在实际编程中不写。2021/5/931数控加工技术如果自变量指定Ⅰ和自变量指定Ⅱ混合指定的话,后指定的自变量类型有效。2021/5/932数控加工技术六、FANUC宏程序的调用2.模态调用(G66):G66PpLl<自变量指定>;程序点G67;(取消模态)例:G66P8000L2A10.B2.;G00G90Z-10.X-5.G67一旦发出G66则指定模态调用,即指定沿移动轴移动的程序段后调用宏程序。移动到Z-10,调用2次程序号8000,移动到X-5,再调用2次程序号8000。2021/5/933数控加工技术%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;G00Z30X0Y0M05M302021/5/934数控加工技术SIEMENS数控系统参数编程与FANUC类似,但功能要弱一些。变量以“R”开始,如:R0、R1、R99。不包含系统变量,系统变量以“$”开头。一、格式:Rn(n的缺省取值范围为0-99)例如:R1R2…R99二、运算符:2021/5/935数控加工技术2021/5/936数控加工技术三、SIEMENS参数编程程序跳转1.无条件跳转GOTOBLABEL(向后跳转,向程序头跳转)GOTOFLABEL(向前跳转,向程序尾跳转)2.条件跳转IF表达式GOTOBLABEL(向后跳转,向程序头跳转)IF表达式GOTOFLABEL(向前跳转,向程序尾跳转)LABEL为程序段标示符2021/5/937数控加工技术IF

温馨提示

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

评论

0/150

提交评论