宏程序编程实例与技巧方法概要

上传人:今*** 文档编号:111439745 上传时间:2019-11-02 格式:PPT 页数:49 大小:1.11MB
返回 下载 相关 举报
宏程序编程实例与技巧方法概要_第1页
第1页 / 共49页
宏程序编程实例与技巧方法概要_第2页
第2页 / 共49页
宏程序编程实例与技巧方法概要_第3页
第3页 / 共49页
宏程序编程实例与技巧方法概要_第4页
第4页 / 共49页
宏程序编程实例与技巧方法概要_第5页
第5页 / 共49页
点击查看更多>>
资源描述

《宏程序编程实例与技巧方法概要》由会员分享,可在线阅读,更多相关《宏程序编程实例与技巧方法概要(49页珍藏版)》请在金锄头文库上搜索。

1、下午12时23分,1,用户宏程序编程,在数控编程中,宏程序编程灵活、高效、快捷,是加工编程的重要补充。宏程序不仅可以实现象子程序那样,例如,型腔加工宏程序、固定加工循环宏程序、球面加工宏程序、锥面加工宏程序等。,华中数控宏程序 FANUC数控宏程序 SIEMENS数控参数编程,下午12时23分,2,华中数控用户宏程序,HNC-21/22T 、HNC-21M为用户配备了强有力的类似于高级语言的宏程序功能,用户可以使用变量进行算术运算、逻辑运算和函数的混合运算,此外宏程序还提供了循环语句、分支语句和子程序调用语句,利于编制各种复杂的零件加工程序,减少乃至免除手工编程时进行繁琐的数值计算,以及精简程

2、序量。,一、基础知识,1. 宏变量及常量,(1) 宏变量 HNC-21/22T华中世纪星数控系统变量表示形式为# 后跟14位数字,变量种类有三种: 局部变量:#0#49是在宏程序中局部使用的变量,用于存放宏程序中的数据,断电时丢失为空。,下午12时23分,3,一、基础知识,全局变量:用户可以自由使用#50#199,它对于由主程序调用的各子程序及各宏程序来说是可以公用的,可以人工赋值。HNC-21/22T子程序嵌套调用的深度最多可以有8层,每一层子程序都有自己独立的局部变量(变量个数为50)。 系统变量:系统变量为#1000#1199,它能获取包含在机床处理器或NC内存中的只读或读/写信息,包括

3、与机床处理器有关的交换参数、机床状态获取参数、加工参数等系统信息。 (2) 常量 PI:圆周率;TRUE:条件成立(真);FALSE:条件不成立(假),1、 宏变量及常量,下午12时23分,4,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/SQRT2 * COS55 * PI/180

4、;#3*6 GT 14,下午12时23分,5,3、赋值语句,格式:宏变量=常数或表达式 把常数或表达式的值送给一个宏变量称为赋值。 例如: #2 = 175/SQRT2 * COS55 * PI/180; #3 = 124.0,下午12时23分,6,4、 条件判别语句IF, ELSE,ENDIF,格式(i): 格式(ii) : IF 条件表达式 IF 条件表达式 ELSE ENDIF ENDIF,下午12时23分,7,5、 循环语句WHILE,ENDW,格式:WHILE 条件表达式 ENDW,下午12时23分,8,6、 宏程序/子程序调用的参数传递规则,G 代码在调用宏(子程序或固定循环,下同

5、)时,系统会将当前程序段各字段(AZ共26个字段,如果没有定义则为零)的内容拷贝到宏执行时的局部变量#0 #25,同时拷贝调用宏时当前通道九个轴(轴0轴8)的绝对位置(机床绝对坐标)到宏执行时的局部变量#30 #38。 宏程序的调用格式为: M98 P(宏程序名)或G65 P(宏程序名)。, #25 Z,下午12时23分,9,%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度时,执行循环体内容 #

6、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,7、用户宏程序编程思路,下午12时23分,10,%1000;长半轴、短半轴分别为40、30的椭圆 G92 X0 Y0 Z30 M03 S800 G00 X45 Y-15 M08;快速定位至A点 Z3 G01 Z-5 F100 #2=0;给角度赋0初值 WH

7、ILE #2 LE 360;当角度360度时,执行循环体内容 #11=40*COS#2*PI/180;用椭圆的标准参数方程求动点M的X坐标值 #12=30*SIN#2*PI/180;用椭圆的标准参数方程求动点M的Y坐标值 G42 G64 G01 X#11 Y#12 D01;用直线插补指令加工至M点,即用 直线段逼近椭圆 #2=#2+1;角度的递增步长取1度 ENDW G40 G01 X45 Y15;切出椭圆至C点 Z3 M09 G00 Z30 X0 Y0 M05 M30,二、 数控铣床用户宏程序编程,下午12时23分,11,下午12时23分,12,下午12时23分,13,宏程序编程实例,ZH7

8、640立式加工中心由北京第三机床厂产生,采用华中铣床、加工中心数控系统。加工范围600mm400mm500mm。刀库可容纳20把刀。可用于镗、铣、钻、铰、攻丝等各种加工。实例为在预先处理好的100mm100mm80mm合金铝锭毛坯上加工如图所示的零件,其中正五边形外接圆直径为80mm。,下午12时23分,14,O5000;FANUC G54 G90 G00 Z40 X70 Y20 M08 M03 S600 G43 Z3 H01 G01 Z-5 F100 #0=18 N10 #1=80*COS#0 #2=80*SIN#0 G41 X#1 Y#2 D01 #0=#0+72 IF #0 LT 360

9、 GOTO 10 G40 X70 Y70 Z40 M05 M30,O5000;HNC-21M %1000 G54 G90 G00 Z40 X70 Y20 M08 M03 S600 G43 Z3 H01 G01 Z-5 F100 #0=18 IF #0 LT 360 #1=80*COS#0 #2=80*SIN#0 G41 X#1 Y#2 D01 #0=#0+72 ENDIF G40 X70 Y70 Z40 M05 M30,宏程序编程实例,下午12时23分,15,三、 数控车床用户宏程序编程,%3015 #10=0 ;X坐标(直径值) #11=0 ;Z坐标 T0101 M03 S600 G00 X

10、0 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,用宏程序编制如图所示抛物线的精加工程序。,下午12时23分,16,用宏指令编制椭圆部分的精加工程序。,%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#

11、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,下午12时23分,17,用户宏程序训练,下午12时23分,18,下午12时23分,19,下午12时23分,20,一、构成 1. 包含变量 2. 包含算术或逻辑运算(=)的程序段 3. 包含控制语句(例如:GOTO,DO,END)的程序段 4. 包含宏程序调用指令(G65,G66,G67或其他G代码,M代码调用宏程序)的程序段,FANUC数控系统用户宏程序,下午12时23分,21,二、FANUC宏程序的变量,

12、FANUC数控系统变量表示形式为# 后跟14位数字,变量种类有四种:,下午12时23分,22,下午12时23分,23,三、刀具补偿存储器C用G10指令进行设定,P:刀具补偿号 R:绝对值指令(G90)方式时的刀具补偿值。增量值指令(G91)方式时的刀具补偿值为该值与指定的刀具补偿号的值相加。,下午12时23分,24,四、算术和逻辑运算,下列的运算可以在变量中执行。运算符右边的表达式可包含常量和或由函数或运算符组成的变量。表达式中的变量#j和#k可以用常数赋值。左边的变量也可以用表达式赋值。 1、(定义)赋值: #i=#j; 2、加法: #i=#j+#k 3、减法: #i=#j-#k 4、乘法:

13、 #i=#j*#k 5、除法: #i=#j/#k,下午12时23分,25,6、正弦: #i=SIN#j ; 7、反正弦: #i=ASIN#j; 8、余弦: #i=COS#j; 角度以度指定 9、反余弦: #i=ACOS#j; 9030表示为 10、正切: #i=TAN#j; 90.5度 11、反正切: #i=ATAN#j/#K; 12、平方根: #i=SQRT#j; 13、绝对值: #i=ABS#j; 14、舍入: #i=ROUND#j; 15、上取整: #i= FUP#j ; 16、下取整: #i= FIX#j ; 17、自然对数: #i=LN#j; y=lnx 18、指数函数: #i=EX

14、P#j; y=ex,下午12时23分,26,19、或: #i=#j OR #k ; 20、异或: #i=#j XOR #k ; 按位执行 21、与: #i=#j AND #k ; 22、从BCD转为BIN #i=BIN#j ; 23、从BIN转为BCD #i=BCD#j ; 注: ARCSIN #i=ASIN#j 取值范围 当No.6004.0=0时 :27090 No.6004.0=1时 :-9090 ARCCOS #I=ACOS#j 取值范围 1800,下午12时23分,27,下午12时23分,28, ARCTAN #i=ATAN#j/#K; 取值范围 当No.6004.0=0时 :036

15、0 No.6004.0=1时 :-180180,3/2,/2,2,0,/2,-/2,-,0,第一象限,第二象限,第四象限,第一象限,第二象限,第三象限,第三象限,第四象限,下午12时23分,29,ROUND函数 在逻辑运算指令IF、WHILE中,ROUND函数在第一个小数位四舍五入。 例如 #2=1.2345; #1=ROUND#2; 变量1的值是1.0 在NC语句地址中,ROUND函数根据地值得最小设定单位指定四舍五入。 例如 #1=1.2345; #2=2.3456; G00 G91 X-#1; G01 X-#2 F300; G00 X#1+#2; 1.2345+2.3456=3.5801=3.580不返回到初始位置 或 G00 X-ROUND#1+ROUND#2 1.235+2.346=3.581 刀具返回到初始位置,下午12时23分,30,上取整和下取

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号