当前位置:
文档之家› 在FANUC0MD系统上用宏程序开发螺旋线插补_陈芳
在FANUC0MD系统上用宏程序开发螺旋线插补_陈芳
extend the function of CNC machine tools.
Key wor ds: NC machining; macro program; spiral interpolation
177
CHEN Fang
(School of Mechanical and Electronic Engineering, Shenzhen Polytechnic, Shenzhen Guangzhou 518055, China)
Abstr act: The method of developing spiral interpolation macro program on FANUC 0MD CNC system is discussed. At first the
程序号 ○9010 ○9011 ○9012 ○9013 ○9014 ○9015 ○9016 ○9017 ○9018 ○9019
参数号 6050 6051 6052 6053 6054 6055 6056 6057 6058 6059
速度。
设螺旋线起点
坐 标 为 ( x1, y1, z1) , 终 点 坐 标 为 ( x2, y2, z2) , 图 1 所 示 为 XY 平
加工程序中, 调用宏程序指令格 式 为 : G10 X_Y_Z_I_J_F_, 则 设 宏程序号为 O9010 之后, 将参数 No.6050 设为 10 即可。
4 误差分析
根据以上螺旋线插补算法的分析, 用空间直线拟合
则宏程序代码参考如下: O90106 IF [#4003 EQ 90] GOTO 16 若 为 G91 则 计 算 终 点 绝 对坐标值( X2,Y2,Z2) #24= #24+#50016 系统变量 #5001 为程序段终点 X 坐标
其中, 参数号和程序号之 间的对应关系如表 2 所示。
2 螺旋线插补算法分析
设 宏 程 序 调 用 格 式 : G×× X_Y_Z_I_J_F_, 其 中 X_Y_Z_ 表 示 螺 旋 线 终 点 坐 标 值 , I_J_ 表 示 在 X、Y 轴 上 圆 心 相 对 与 螺旋线起点的坐标增量, F_ 表 示螺旋线插补合成
公共变量
公共变量在不同的宏程序中的意义相同。 当断电时, 变量 #100- #199 初始化为 0; 变量 #500- #999 的数据保存 , 即 使 断 电 也不丢失。
#1000-
系统变量 系 统 变 量 用 于 读 和 写 CNC 运 行 时 各 种 数据的变化。
收稿日期: 2006- 09- 30 作者简介: 陈芳 ( 1977- ) , 女 , 助 教 。研 究 方 向 : 数 控 技 术 应用, 数控设备维修。主要从事教学, 科研工作。
#108=[#26- #5003]H#107 /[#106-
θ1 为自变量, 设角度每步增加△θ, Z 轴每次增加△z, 则据:
θ2- θ1 = △θ, 有: △z= ( z2- z1)·△θ
z2- z1 △z
θ2- θ1
"xi=x0+R·cosθi $
则第 i 步的坐标值( xi, yi, zi) 为: #yi=y0+R·sinθi $ %zi=zi- 1+△z
序号变为 O9010~O9019 中 的 任 表 2 参数号和程序号对应表 一 个 ; ②将 与 程 序 号 对 应 的 参 Tab.2 parameter number
数设 置 为 G 代 码 的 数 值 ; ③将 and the corresponding
调用指令的形式换为 G××。
program mumber
摘 要: 讨论了 FANUC 0MD 数控系统用宏程序开发螺旋线插补功能的方法。介绍了宏程序的功能, 然
后分析了螺旋线插补的算法。根据此算法给出了宏程序流程图和代码, 最后分析了此算法的拟合
误差。利用该方法可以提高和扩展数控机床的功能。
关键词: 数控加工; 宏程序; 螺旋线插补
中图分类号: TG659
终止角 角度增量
y20 θ2 △θ
#105 #106 #107
#26
Z 坐标增量 △z #108
#100 #101
#4 #5 #102
动点角度 动点坐标 进给速度
θi #109 xi #110 yi #111 zi #112 F #9
F#96 直线插补到点( xi, yi, zi) #109= #109+#1076 更新 θi #112= #112+#1086 更新 zi END16 G#40036 还原 G90 /G91 方式 M996 子程序返回 以上为宏程序代码, 若设在
首先进行变量定义如表 3, 其宏程序流程图如图 2 所示。
表 3 变量定义表
Tab.3 de finition of variable
xi
起点
y1
z1
x2
终点
y2
z2
圆心点
x0
y0
圆心相对于圆 I
弧起点增量
J
圆的半径
R
#5001
起始角
θ1
终点相对于圆
#5002 心的坐标增量
x20
#103 #104
#5003 #24 #25
文献标识码: A
文章编号: 1002- 6673 ( 2006) 06- 176- 02
0 引言
FANUC 0MD 的数控系统中只有平面圆弧插补功能, 即在 XY 平面或 ZX 平面或 YZ 平面内加工圆弧的同时, 不允许第三个轴运动 [1]。而在实际应用中, 加工螺旋槽 时, 常常需要在 XY 平面加工圆弧的同 时 , Z 轴 同 时 进 刀, 这就需要用到螺旋线插补功能, 因此, 原有 FANUC 0MD 数控系统不能满足这种要求。本文探讨使用宏程序 在 FANUC 0MD 系统上开发螺旋线插补功能。
空间螺旋曲线的误差主要在 XY 方向上, 如图 1 所示, 用 直线拟合圆弧的拟合误差为 [4]: δ=R- R·cos △θ。由此可
2 知 , 误 差 主 要 由△θ控 制 , 调 节△θ的 大 小 可 以 控 制 其 拟 合误差。
#25= #25+#50026系统变量 #5002 为程序段终点 Y 坐标 #26= #26+#50036系统变量 #5003 为程序段终点 Z 坐标 N1 #100= #5001+#46 计算圆心坐标(X0,Y0) #101= #5002+#56 #102= SQRT[#4H#4+#5H#5]6 计算圆的半径 R
function of macro program is introduced, then the spiral interpolation arithmetic is analyzed. Based on the arithmetic, the macro
program flow chat and part codes are presented. Finally the fitting error of this arithmetic is analyzed. This method can enhance and
拟合误差。利用宏程序不仅能够进行参数化加工来提高 效 率, 而 且 还 可 以 完 善 和 扩 展 数 控 机 床 的 功 能[5], 可 解 决
#105= #25- #1016
一些常规编程方法无法解决的问题。
#106= ATAN[#105] /[#104]6 计算终止角 θ2 #109= #1036初始化角度 θi #112= #50036 初始化 Zi #107=1; 定义角度增量△θ为 1°
3 宏程序编制
#103]6计算 Z 坐标增量△z WHILE [#109 LE] DO 16 当未
插补到终点时执行循环 #110= #100+#102HCOS [#109]6
计算 xi #111 = #101 +#102HSIN [#109]6
计算 yi G90 G01 X#101 Y#110 Z#112
1 宏程序功能简介
用户宏的最大特征有以下几个方面 [2]: ①可以在用
户宏主体中使用变量; ②可以进行变量之间的运算; ③
可以用用户宏指令对变量进行赋值。使用用户宏时的主
要方便之处, 在于可以用变量代替具体数值, 因而在加
工同一类的工件时, 只需将实际的值赋予变量即可, 而
不 需 要 对 每 一 个 零 件 都 编 程 序 。FANUC 系 统 的 变 量 根
为:
θ1=ATAN
[- [-
J] I]
。圆弧终点相对于圆心在 X,
Y 轴的
!x20=x2- x0
坐标增量( x20,y20) 为:
, 则圆弧终点对应的终止角 y20=y2- y0
θ2 为
:
θ2=ATAN
[Y20] [X20]
。
176
·数 控 机 床 世 界·
螺旋线采取用小段空间直线拟合, 在 XY 平面取角度
据变量号可以分为四种类型, 见表 1。 用 G××调用宏程序的方法 [3]: ①将所使用宏主体程
表 1 变量表
Tab.1 table of variable
变量号
变量类型 功能
#0
空变量 该变量总为空, 没有值能赋给该变量
#1- #33
局部变量 用户宏中局部使用的变量
பைடு நூலகம்
#100- #199 #500- #999
5 总结
本文在 FANUC 0MD 数控系统上利用宏程序开发了 螺旋线插补指令功能, 分析了螺旋线插补的算法, 给出了 宏程序调用的方法。根据该算法可以调节变量值来控制
#103= ATAN[- #5] /[- #4]6 计算起始角 θ1 #104= #24- #1006 计算终点相对于圆心的坐标增量
面的示意图。螺旋