找回密码
 注册会员

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 434|回复: 0

[资料] 曲线加工的G代码程序分析

[复制链接]
发表于 2011-6-11 11:39:15 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转磨削论坛

您需要 登录 才可以下载或查看,没有账号?注册会员

×
在机械、模具制造行业,经常遇到曲线加工。对于简单的曲线——圆弧,G代码提供了G2、C3、I、J、K、R指令,很容易写出数控程序。但对于一些复杂、特殊的曲线——椭圆、抛物线、渐开线等,当然还有更加复杂的高次曲线,常规的手段就无能为力。笔者根据多年的工作实践,通过借助一些工具软件,经特殊处理,写出G代码程序来解决此类问题。常用的方法有三种:①利用G代码的强大功能,写出宏程序。②借助工具软件Mastercam,生成曲线程序。③用C语言(或其他语言)产生程序的主数据文件,然后手动在文件头尾加上功能语句,成为可以运行的程序。这三种方法都有各自的优、缺点和适用范围,可以相互补充。
% B9 L2 d/ a3 n8 y9 ^1.G代码的宏程序
0 x' l1 t# r' R6 R( h它提供了变量,算术运算指令(加、减、乘、除),功能函数(SIN,COS,TAN,…),还有控制指令(IF——GO-TO,WHILE——DO)。巧妙的运用这些指令,可以解决很多比较简单、有规律的曲线,如正弦曲线、抛物线等。例1:正弦曲线(如图1)。* n! [. u5 L: [2 d
2008-09-17-10-42-58254.jpg & v8 o+ O  S% O! n) a
主程序主程序
+ g$ I: N5 J: i; ^3 f# n# ^2 W% P! m8 o
G65P9910AOB360.C100.F100
" O- \( u7 q& V; u2 Q, |. j* m0 o
对局部变量设置( u3 p8 [  @% T3 q
#l=0# D; K# }& d5 X6 k% V, P% s' o% r
#2=360.001 c' H6 L6 X1 m
#3=100.00' S+ z2 {3 U# @
#9=100.00
$ k- s; y) n1 c/ Y) @* y  Z  X, T09910(子程序)
, a  S6 V3 o3 ?( Z( nWHILE[#1IE#2]DO1
0 }0 w) }5 k/ ~% S#10=#3*SIN[#1]
/ G5 X+ F9 u: c  ZG90Gl#lY#10F#96 K" T& d$ O  c* E
#1=#1+10.
5 O" \* t+ g0 l  f, ^- y" oEND1
/ |# @" I. M) @7 g5 Q# N% S当然,此法还可以表达较复杂的曲线。宏程序短小精炼,对于存储空间小的设备很适用。具有很强的适应性,只要改动一两个数据就可以进行粗加工。但其晦涩难懂,逻辑复杂,过程中的错误不易发现,对于特别复杂的曲线无能为力。这种方法对编程人员的要求较高,须非常熟练G代码,包括不常用的指令,要有相当扎实的高等数学知识,还要熟悉数控加工操作。3 q* Q, k0 Z5 l/ i4 n- s3 T2 U! p* [
2008-09-17-10-43-17287.jpg 2 }0 z' S/ A# S0 z; M6 h% n
Mastercam软件的应用$ B5 {( i, o6 V" r
2.利用Mastercam软件, C  }# Z! J! G3 l  Q
此软件广泛应用于数控加工,界面亲和,易学易用,能解决G代码宏程序不能解决的问题。以本文给出的工件为例,如图2所示,其曲线由一些离散的坐标点来定义(用于测量),如附表所示。
, I3 `+ G  U4 R$ ]( a6 V; z- B 2008-09-17-10-43-27440.jpg 5 `" t6 C4 i: I4 U/ a" j
2008-09-17-10-43-35305.jpg / B" l2 j: q5 Y7 |4 Y( B  E
用Mastercam处理,操作流程如下:①先创建点,按坐标值绘制所有已知点。②把所有点按次序联成Spline曲线。③选择加工方式。④生成加工程序。具体步骤如下:
3 h" u. H! ^. V0 G4 W; t9 p第1步,Create—Point—Position,然后直接输入坐标值,先x轴后y轴,中间用逗号隔开。第2步,待所有给定数据输入完毕后,命令Create—Spline—Auto-matic,系统提示选择第一个点、第二个点及最后一个点,一一点击完成后,系统自动生成Spline样条曲线。第3步,命令Toolpaths—Finish—Chain,用鼠标点击曲线的右(末)端,选择End here命令,确认Done后,弹出Tool parameters刀具参数对话框,根据需要选择合适刀具,再切换到Finish parameters对话框,如图3所示,选择切削参数。该过程中要特别注意几个重要参数的确定:①Linearization决定加工精度,其值越小精度越高,则程序也越长,一般0.01就足够了。②Compensa-tion type意为选择刀补类型,常用的是Computer和Con-trol两种。computer是根据刀具实际情况计算出刀具轨迹,生成程序,不用刀补;Control则不考虑刀具规格,生成有刀补的程序。③Compensation direction,选择刀补方向,一般可根据加工方式和操作方法而定。以上参数确定后弹出管理菜单,如图4所示。第4步,点击Post键,打开后处理对话框,如图5所示,确定机床数控操作系统,此处选择的是FANUC系统,文件是MPLFAN。,注意:后处理文件以MPL开头,其后几位表示简写的数控操作系统。若想更改为其他系统,通过change Post键进行选择,且选中Edit命令,然后点击0K键,生成程序。
& ?  |! d+ C$ b 2008-09-17-10-43-43840.jpg $ }" n' Z& P  |! A5 I7 d! G9 J
2008-09-17-10-43-52592.jpg
" W% n  v' Q( F+ n' @ 2008-09-17-10-44-04387.jpg 5 H1 O1 L' s, P) H
该工件的加工经过几次摸索:第一次加工时直接利用给出点的坐标值,将两点间近似为一条直线,用G1指令写出程序。结果加工出来的曲线是19段折线,是离散点过于稀疏造成的。第二次,在AutoCAD2002中把离散点用样条曲线Spline命令串连起来,用垂线分曲线,等分它在X轴上的投影,将点的坐标求出来,增加了点的个数。且人为在原有两点之间插入若干个点,全部写入程序。此法虽然能解决问题,但很繁琐,且程序庞大,易出错。第三次,使用Mastercam,采用样条线把离散的点连起来,直接生成满足精度要求的程序,与方法二相比,生成程序短小精炼,正确率高。该方法高效、简单、便捷,可以解决只给定离散点的曲线形式,对操作者要求较低。
0 r, J0 ?3 Q' ~& b! T 2008-09-17-10-44-12976.jpg
6 s- |+ _6 [$ A8 z, ]- u曲线加工的数据编程3 v2 k3 @; ^- W
3.用C语言(或其他语言)生成程序的数据主体# G1 u4 h6 f; ^. y  R
某产品,其外形是一个很复杂的曲线方程,用宏程序很难(甚至不可能)把它写出来,而Mastercam则无法输入函数方程。此时,借助C语言来生成数据主体。
# p; @3 e( a7 M; V, }0 U. Z! g( q例:车工曲线方程如下:
2 x, t2 O3 p1 L. u) y: s4 s0≤x≤22.1
/ D4 |, A. Q+ P9 u% NY=200.2+140.653√b- p# y* a# ]5 l( e1 f! j1 x
b=0.008754(x/168)+6.1455(x/168)2
$ l# s5 r- s& _8 e2 v7 a7 i( F-4.87544(x/168)3+0.568749(x/168)4" @5 f! ?4 n; x
+0.76587(x/168)5( g: J* m& p( F  {7 R: M
它很难在Mastercam中绘制。用C语言来计算其离散点,过程如下:2 i1 O; i6 s9 v$ K' e$ @
#Include”math.h”
, ~3 p; j5 R& m) ~0 _3 m' a7 u+ L#Include”conio.h”, R. z: R7 l3 d' W
#Include”stdio.h”
0 x5 O8 z: f1 \( K5 Z7 }# |Main (). T1 y$ O, E8 q
5 @- {, @8 v  j1 h/ O
double a,b,d,c,i,e;
  Y0 K0 g5 X" _5 XFILE*fp;
+ ~% |" E* Y# I2 z$ r8 s# g( ~fp=fopen(”d:\s77.txt”,”w+”);
# u, `3 ]% [2 A/ `
% H7 [; i9 _% [) `4 p" y3 F1 Ffor(i=0;i
您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

中国磨床技术论坛
论 坛 声 明 郑重声明:本论坛属技术交流,非盈利性论坛。本论坛言论纯属发表者个人意见,与“中国磨削技术论坛”立场无关。 涉及政治言论一律删除,请所有会员注意.论坛资源由会员从网上收集整理所得,版权属于原作者. 论坛所有资源是进行学习和科研测试之用,请在下载后24小时删除, 本站出于学习和科研的目的进行交流和讨论,如有侵犯原作者的版权, 请来信告知,我们将立即做出整改,并给予相应的答复,谢谢合作!

中国磨削网

QQ|Archiver|手机版|小黑屋|磨削技术网 ( 苏ICP备12056899号-1 )

GMT+8, 2025-4-21 18:03 , Processed in 0.130858 second(s), 26 queries .

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表