宏程序编程实例与技巧方法.ppt

上传人:xt****7 文档编号:17252655 上传时间:2020-11-16 格式:PPT 页数:41 大小:1.44MB
收藏 版权申诉 举报 下载
宏程序编程实例与技巧方法.ppt_第1页
第1页 / 共41页
宏程序编程实例与技巧方法.ppt_第2页
第2页 / 共41页
宏程序编程实例与技巧方法.ppt_第3页
第3页 / 共41页
资源描述:

《宏程序编程实例与技巧方法.ppt》由会员分享,可在线阅读,更多相关《宏程序编程实例与技巧方法.ppt(41页珍藏版)》请在装配图网上搜索。

1、单 元 宏 用 户 宏 程 序 编 程 上午 12时 43分 数控 加 工 编 程 及 操 作 1 用户宏程序编程 青岛市技师学院 赵京海 单 元 宏 用 户 宏 程 序 编 程 上午 12时 43分 数控 加 工 编 程 及 操 作 2 用户宏程序编程 在数控编程中,宏程序编程灵活、高效、快捷,是 加工编程的重要补充。宏程序不仅可以实现象子程序那 样,例如,型腔加工宏程序、固定加工循环宏程序、球 面加工宏程序、锥面加工宏程序等。 华中数控宏程序 FANUC数控宏程序 SIEMENS数控参数编程 单 元 宏 用 户 宏 程 序 编 程 上午 12时 43分 数控 加 工 编 程 及 操 作 3

2、 华中数控用户宏程序 HNC-21/22T 、 HNC-21M为用户配备了强有力的类似于高 级语言的宏程序功能,用户可以使用变量进行算术运算、逻 辑运算和函数的混合运算,此外宏程序还提供了循环语句、 分支语句和子程序调用语句,利于编制各种复杂的零件加工 程序,减少乃至免除手工编程时进行繁琐的数值计算,以及 精简程序量。 一、基础知识 1. 宏变量及常量 (1) 宏变量 HNC-21/22T华中世纪星数控系统变量表示形式为 # 后跟 1 4位数字,变量种类 有三种: 局部变量 : #0 #49是在宏程序中局部使用的变量,用于存放宏程序中的数据 ,断电时丢失为空。 单 元 宏 用 户 宏 程 序

3、编 程 上午 12时 43分 数控 加 工 编 程 及 操 作 4 一、基础知识 全局变量 :用户可以自由使用 #50 #199, 它对于由主程序调用的各子程序及 各宏程序来说是可以公用的 , 可以人工赋值 。 HNC-21/22T子程序嵌套调用的深度 最多可以有 8层 , 每一层子程序都有自己独立的局部变量 ( 变量个数为 50) 。 系统变量 :系统变量为 #1000 #1199,它能获取包含在机床处理器或 NC内存中 的只读或读 /写信息,包括与机床处理器有关的交换参数、机床状态获取参数、 加工参数等系统信息。 (2) 常量 PI: 圆周率 ; TRUE: 条件成立 (真 ); FALS

4、E: 条件不成立 (假 ) 1、 宏变量及常量 单 元 宏 用 户 宏 程 序 编 程 上午 12时 43分 数控 加 工 编 程 及 操 作 5 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

5、 * COS55 * PI/180 ; #3*6 GT 14 单 元 宏 用 户 宏 程 序 编 程 上午 12时 43分 数控 加 工 编 程 及 操 作 6 3、赋值语句 格式:宏变量 =常数或表达式 把常数或表达式的值送给一个宏变量称为赋值 。 例如: #2 = 175/SQRT2 * COS55 * PI/180; #3 = 124.0 单 元 宏 用 户 宏 程 序 编 程 上午 12时 43分 数控 加 工 编 程 及 操 作 7 4、 条件判别语句 IF, ELSE, ENDIF 格式 (i): 格式 (ii) : IF 条件表达式 IF 条件表达式 ELSE ENDIF END

6、IF 单 元 宏 用 户 宏 程 序 编 程 上午 12时 43分 数控 加 工 编 程 及 操 作 8 5、 循环语句 WHILE, ENDW 格式: WHILE 条件表达式 ENDW 单 元 宏 用 户 宏 程 序 编 程 上午 12时 43分 数控 加 工 编 程 及 操 作 9 6、 宏程序 /子程序调用的参数传递规则 G 代码在调用宏 (子程序或固定循环 , 下同 )时 , 系统会将当前程序段各 字段 (AZ共 26个字段 , 如果没有定 义则为零 )的内容拷贝到宏执行时的 局部变量 #0 #25, 同时拷贝调用宏 时当前通道九个轴 ( 轴 0轴 8) 的绝 对位置 (机床绝对坐标

7、)到宏执行时的 局部变量 #30 #38。 宏程序的调用格式为: M98 P( 宏程序名 ) 或 G65 P( 宏程序名 ) 。 #25 Z 单 元 宏 用 户 宏 程 序 编 程 上午 12时 43分 数控 加 工 编 程 及 操 作 10 %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

8、的 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时 43分 数控 加 工 编 程 及 操 作 11 %1000;长半轴、短半轴分别为 40、 30的椭圆 G92 X0 Y0 Z30 M03 S800 G00 X45 Y-15 M08; 快速定位至 A点 Z3 G01 Z-5

9、 F100 #2=0; 给角度 赋 0初值 WHILE #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 二、 数控铣床用户宏程序编程 单 元 宏 用 户

10、 宏 程 序 编 程 上午 12时 43分 数控 加 工 编 程 及 操 作 12 用户宏程序编程 单 元 宏 用 户 宏 程 序 编 程 上午 12时 43分 数控 加 工 编 程 及 操 作 13 单 元 宏 用 户 宏 程 序 编 程 上午 12时 43分 数控 加 工 编 程 及 操 作 14 宏程序编程实例 ZH7640立式加工中心由北京第 三机床厂产生 ,采用华中铣床、加 工中心数控系统。加工范围 600mm 400mm 500mm。 刀库可容 纳 20把刀。可用于镗、铣、钻、铰、 攻丝等各种加工。实例为在预先处 理好的 100mm 100mm 80mm合金铝 锭毛坯上加工如图所示

11、的零件,其 中正五边形外接圆直径为 80mm。 单 元 宏 用 户 宏 程 序 编 程 上午 12时 43分 数控 加 工 编 程 及 操 作 15 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 GOTO 10 G40 X70 Y70 Z40 M05 M30 O5000; HNC-21M %1000 G54 G90 G00 Z40 X70 Y20 M0

12、8 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时 43分 数控 加 工 编 程 及 操 作 16 三、 数控车床用户宏程序编程 %3015 #10=0 ; X坐标(直径值) #11=0 ; Z坐标 T0101 M03 S600 G00 X0 Z34 WHILE #10 LE 32 G90 G64 G01 X#10

13、 Z#11 F100 #10= #10+0.32 #9= #10/2 ; 求出 X坐标的半径值,便于求解 #11 #11= 32-#9*#9/8 ENDW G00 X80 Z100 M05 M30 用宏程序编制如图所示抛物线的精加工程序。 单 元 宏 用 户 宏 程 序 编 程 上午 12时 43分 数控 加 工 编 程 及 操 作 17 用宏指令编制椭圆部分的精加工程序。 %3016;精加工椭圆程序 T0101 M03 S800 G00 X39 Z22 #1=60; A点的角度 #2=0; X坐标 #3=0; Z坐标 WHILE #1 LE 120; 120是通过计算得来的 B点角度 #2=

14、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 单 元 宏 用 户 宏 程 序 编 程 上午 12时 43分 数控 加 工 编 程 及 操 作 18 用户宏程序训练 单 元 宏 用 户 宏 程 序 编 程 上午 12时 43分 数控 加 工 编 程 及 操 作 19 单 元 宏 用 户 宏 程 序 编 程 上午 12时 43分 数控 加 工 编 程 及 操 作 20 用户宏程序编程 单 元 宏 用 户 宏 程 序 编 程 上午 1

15、2时 43分 数控 加 工 编 程 及 操 作 21 一、构成 1. 包含变量 2. 包含算术或逻辑运算( =)的程序段 3. 包含控制语句(例如: GOTO, DO, END)的程序段 4.包含宏程序调用指令( G65, G66, G67或其他 G代码, M代码调用宏程序)的程序段 FANUC数控系统用户宏程序 单 元 宏 用 户 宏 程 序 编 程 上午 12时 43分 数控 加 工 编 程 及 操 作 22 二、 FANUC宏程序的 变量 FANUC数控系统变量表示形式为 # 后跟 1 4位 数字,变量种类有四种: 变量号 变量类型 功能 #0 空变量该变 量总是空, 没有任何值能赋给该

16、变量 #1 #33 局部变量 局部变量只能用在宏程序中存储 数据,例如运算结果。当断电时 局部变量被初始化为空,调用宏 程序时自变量对局部变量赋值。 单 元 宏 用 户 宏 程 序 编 程 上午 12时 43分 数控 加 工 编 程 及 操 作 23 用户宏程序编程 变量号 变量类型 功能 #100 #199 #500 #999 公共变量 公共变量在不同的宏程序中的 意义相同当断电时变量 #100 #199初始化为空变量 #500 #999 的数据保存即使断 电也不丢失 #1000 系统变量 系统变量用于读和写 CNC 运行 时各种数据的变化例如刀具的当 前位置和补偿值等 单 元 宏 用 户

17、宏 程 序 编 程 上午 12时 43分 数控 加 工 编 程 及 操 作 24 三、刀具补偿存储器 C用 G10 指令进行设定 H代码的几何补偿值 G10L10P R ; D代码的几何补偿值 G10L12P R ; H代码的磨损补偿值 G10L11P R ; D代码的磨损补偿值 G10L13P R ; P:刀具补偿号 R:绝对值指令( G90)方式时的刀具补偿值。增量值 指令( G91)方式时的刀具补偿值为该值与指定的刀 具补偿号的值相加。 单 元 宏 用 户 宏 程 序 编 程 上午 12时 43分 数控 加 工 编 程 及 操 作 25 四、 FANUC宏程序的转移和循环 1. 无条件转

18、移: GOTOn ( n为顺序号, 199999) 例: GOTO10为转移到 N10程序段。 2. 条件转移:( IF语句) 1) IF 条件表达式 GOTOn 当指定的条件表达式满足时,转移到标有顺序号 n的程序 段,如果指定的条件表达式不满足时,执行下个程序段。 单 元 宏 用 户 宏 程 序 编 程 上午 12时 43分 数控 加 工 编 程 及 操 作 26 用户宏程序编程 2) IF 条件表达式 THEN 当指定的条件表达式满足时,执行预先决定的宏程序语句。 例: IF #1EQ #2 THEN #3=0; 3. WHILE 条件表达式 DO m; ( m=1, 2, 3) 条件满

19、足 条件 不满 足 ENDm 注:循环允许嵌套,最多 3层,但不允许交叉 单 元 宏 用 户 宏 程 序 编 程 上午 12时 43分 数控 加 工 编 程 及 操 作 27 单 元 宏 用 户 宏 程 序 编 程 上午 12时 43分 数控 加 工 编 程 及 操 作 28 单 元 宏 用 户 宏 程 序 编 程 上午 12时 43分 数控 加 工 编 程 及 操 作 29 五、运算符 运算符 含义 EQ 等于 NE 不等于 GT 大于 GE 大于或等于 LT 小于 LE 小于或等于 单 元 宏 用 户 宏 程 序 编 程 上午 12时 43分 数控 加 工 编 程 及 操 作 30 六、

20、FANUC宏程序的调用 1. 非模态调用 G65: 格式: G65 Pp Ll 其中 p:要调用的程序号 L:调用次数(默认为 1) 自变量:数据传递到宏程序 例: G65 P8000 L2 A10. B2.; 调用 2次程序号 8000,经自变量 A传递到宏程序 #1=10;自变量 B传递到宏程序 #2=2。 单 元 宏 用 户 宏 程 序 编 程 上午 12时 43分 数控 加 工 编 程 及 操 作 31 自变量指定 根据使用的字母, CNC系统自动地决定自变量指定的类 型。 地址不需要按字母顺序指定。但应符合字地址的格式。 但是, I, J 和 K 需要按字母顺序指定。 单 元 宏 用

21、 户 宏 程 序 编 程 上午 12时 43分 数控 加 工 编 程 及 操 作 32 自变量指定 根据使用的字母,系统自动决定自变量指定的类型。 自变量指定 用于传递诸如三维坐标值的变量。 I, J, K 的下标用于确定自变量指定的顺序,在实际编程 中不写。 单 元 宏 用 户 宏 程 序 编 程 上午 12时 43分 数控 加 工 编 程 及 操 作 33 如果自变量指定 和自变量指定 混合指定的话,后指定 的自变量类型有效。 单 元 宏 用 户 宏 程 序 编 程 上午 12时 43分 数控 加 工 编 程 及 操 作 34 六、 FANUC宏程序的调用 2. 模态调用( G66): G

22、66 Pp Ll ; 程序点 G67;(取消模态) 例: G66 P8000 L2 A10. B2.; G00 G90 Z-10. X-5. G67 一旦发出 G66 则指定模态调用,即指定沿移动轴移动的程 序段后调用宏程序。移动到 Z-10,调用 2次程序号 8000,移 动到 X-5,再调用 2次程序号 8000 。 单 元 宏 用 户 宏 程 序 编 程 上午 12时 43分 数控 加 工 编 程 及 操 作 35 %1000;长半轴 40、短半轴 30的椭圆 G54 G90 G00 Z30 M03 S800 G00 X45 Y-15 ; Z3 G01 Z-5 F100 #0=0; 给角

23、度 赋 0初值 WHILE #0 LE 360; #1=40*COS#0*PI/180; #2=30*SIN#0*PI/180; G01 X#1 Y#2 ; #0=#0+1; ENDW X45 Y15; G00 Z30 X0 Y0 M05 M30 七、 FANUC与华中系统用户宏程序编 程对照 G54 G90 G00 Z30 M03 S800 G00 X45 Y-15 ; Z3 G01 Z-5 F100 #10=0; 给角度 赋 0初值 WHILE #10 LE 360 DO 1; #11=40*COS#10; #12=30*SIN#10; G01 X#11 Y#12 ; #10=#10+1;

24、 END 1 X45 Y15; G00 Z30 X0 Y0 M05 M30 单 元 宏 用 户 宏 程 序 编 程 上午 12时 43分 数控 加 工 编 程 及 操 作 36 SIEMENS数控系统参数编程 与 FANUC类似,但功能要弱一些。变量以“ R” 开始,如: R0、 R1、 R99。不包含系统变量,系 统变量以 “ $”开头。 一、格式: Rn ( n的缺省取值范围为 0-99) 例如 :R1 R2 R99 二、运算符: 单 元 宏 用 户 宏 程 序 编 程 上午 12时 43分 数控 加 工 编 程 及 操 作 37 用户宏程序编程 单 元 宏 用 户 宏 程 序 编 程 上

25、午 12时 43分 数控 加 工 编 程 及 操 作 38 三、 SIEMENS参数编程程序跳转 1. 无条件跳转 GOTOB LABEL (向后跳转,向程序头跳转) GOTOF LABEL (向前跳转,向程序尾跳转) 2. 条件跳转 IF 表达式 GOTOB LABEL(向后跳转,向程序头跳转) IF 表达式 GOTOF LABEL(向前跳转,向程序尾跳转) LABEL 为程序段标示符 单 元 宏 用 户 宏 程 序 编 程 上午 12时 43分 数控 加 工 编 程 及 操 作 39 用户宏程序编程 IF R1R2 GOTOF MARKE1 如果 R1大于 R2,那么跳 跃到 MARKE1

26、 R7=(R8+R9)*743 GOTOB MARKE1 作为条件的复合表达式 IF R10 GOTOF MARK1 允许确定一个变量 ( INT, REAL, BOOL或 CHAR)。如果变量值 为 0( =FALSE),条件 就不能满足;对于所有 其他值,条件为 TRUE IF R1=0 GOTOF MARKE1 IF R1=1 GOTOF MARKE2 同一程序段中的几个条 件 单 元 宏 用 户 宏 程 序 编 程 上午 12时 43分 数控 加 工 编 程 及 操 作 40 四、编程示例 单 元 宏 用 户 宏 程 序 编 程 上午 12时 43分 数控 加 工 编 程 及 操 作

27、41 G54 G90 G00 Z30 M03 S800 G00 X45 Y-15 ; Z3 G01 Z-5 F100 R10=0; 给角度 赋 0初值 AA: R11=40*COS(R10); R12=30*SIN(R10); G01 X=R11 Y=R12 ; R10=R10+1; IF R10= 360 GOTOB AA X45 Y15; G00 Z30 X0 Y0 M05 M30 五、 SIEMENS与 FANUC用户宏程序编 程对照 长半轴 40、短半轴 30的椭圆 G54 G90 G00 Z30 M03 S800 G00 X45 Y-15 ; Z3 G01 Z-5 F100 #10=0; 给角度 赋 0初值 WHILE #10 LE 360 DO 1; #11=40*COS#10; #12=30*SIN#10; G01 X#11 Y#12 ; #10=#10+1; END 1 X45 Y15; G00 Z30 X0 Y0 M05 M30

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

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!