模具论坛

 找回密码
 注册

扫一扫,微信登录

QQ登录

只需一步,快速开始

搜索
热搜: 冲压 注塑 求助
    回车查看更多
    论坛可能已存在您要发布的主题帖 关闭
      查看: 2133|回复: 4

      cnc加工中心中几组常用指令的区别及编程技巧

      [复制链接]
      发表于 2006-2-5 16:58:00 | 显示全部楼层 |阅读模式
      <TABLE>

      <TR>
      <TD>
      <P  align=center><B><FONT color=#368978>cnc加工中心中几组常用指令的区别及编程技巧</FONT><FONT color=#cc6600><BR></FONT></B></P></TD></TR>
      <TR>
      <TD>
      <HR color=#cc6600 SIZE=1>
      </TD></TR>
      <TR>
      <TD>
      <P >    随着科技的发展和社会的进步,人们对产品的性能和质量要求越来越高,从而使数控机床应用已得到一定程度的普及,而高性能高效率的加工中心也逐渐成为社会所需。通过几年的加工中心实际应用和教学实践及摸索,笔者将自己的体会和经验总结出来,希望对广大读者有所启迪。 <BR>1. 暂停指令 <BR>     G04X(U)_/P_ 是指刀具暂停时间(进给停止,主轴不停止),地址P或X后的数值是暂停时间。X后面的数值要带小数点,否则以此数值的千分之一计算,以秒(s)为单位,P后面数值 不能带小数点(即整数表示),以毫秒(ms)为单位。 <BR>例如,G04 X2.0;或G04 X2000;   暂停2秒 <BR>   G04 P2000; <BR>    但在某些孔系加工指令中(如G82、G88及G89),为了保证孔底的精糙度,当刀具加工至孔底时需有暂停时间,此时只能用地址P表示,若用地址X表示,则控制系统认为X是X轴坐标值进行执行。 <BR>例如,G82X100.0Y100.0Z-20.0R5.0F200P2000;钻孔(100.0,100.0)至孔底暂停2秒 <BR>G82X100.0Y100.0Z-20.0R5.0F200X2.0;    钻孔(2.0,100.0)至孔底不会暂停。 <BR>2. M00、M01、M02和M30的区别与联系 <BR>    M00为程序无条件暂停指令。程序执行到此进给停止,主轴停转。重新启动程序,必须先回? <BR>    絁OG状态下,按下CW(主轴正转)启动主轴,接着返回AUTO状态下,按下START键才能启动程序。 <BR>    M01为程序选择性暂停指令。程序执行前必须打开控制面板上OP STOP键才能执行,执行后的效果与M00相同,要重新启动程序同上。 <BR>    M00和M01常常用于加工中途工件尺寸的检验或排屑。 <BR>    M02为主程序结束指令。执行到此指令,进给停止,主轴停止,冷却液关闭。但程序光标停在程序末尾。 <BR>    M30为主程序结束指令。功能同M02,不同之处是,光标返回程序头位置,不管M30后是否还有其他程序段。 <BR>3. 地址D、H的意义相同 <BR>    刀具补偿参数D、H具有相同的功能,可以任意互换,它们都表示数控系统中补偿寄存器的地址名称,但具体补偿值是多少,关键是由它们后面的补偿号地址来决定。不过在加工中心中,为了防止出错,一般人为规定H为刀具长度补偿地址,补偿号从1~20号,D为刀具半径补偿地址,补偿号从21号开始(20把刀的刀库)。 <BR>例如,G00G43H1Z100.0; <BR>   G01G41D21X20.0Y35.0F200; <BR>4. 镜像指令 <BR>    镜像加工指令M21、M22、M23。当只对X轴或Y轴进行镜像时,切削时的走刀顺序(顺铣与逆铣),刀补方向,圆弧插补转向都会与实际程序相反,如图1所示。当同时对X轴和Y轴进行镜像时,走刀顺序,刀补方向,圆弧插补转向均不变。 <BR>    注意:使用镜像指令后必须用M23进行取消,以免影响后面的程序。在G90模式下,使用镜像或取消指令,都要回到工件坐标系原点才能使用。否则,数控系统无法计算后面的运动轨迹,会出现乱走刀现象。这时必须实行手动原点复归操作予以解决。主轴转向不随着镜像指令变化。 <BR>图1 镜像时刀补、顺逆变化 <BR>5. 圆弧插补指令 <BR>    G02为顺时针插补,G03为逆时针插补,在XY平面中,格式如下:G02/G03X_Y_I_K_F_或G02/G <BR>03 X_Y_R_F_,其中X、Y为圆弧终点坐标,I、J为圆弧起点到圆心在X、Y轴上的增量值,R为圆弧半径,F为进给量。 <BR>    在圆弧切削时注意,q≤180°,R为正值;q&gt;180°,R为负值;I、K的指定也可用R指定,当两者同时被指定时,R指令优先,I、K无效;R不能做整圆切削,整圆切削只能用I、J、K编程,因为经过同一点,半径相同的圆有无数个,如图2所示。 <BR>图2 经过同一点的圆 <BR>    当有I、K为零时,就可以省略;无论G90还是G91方式,I、J、K都按相对坐标编程;圆弧插补时,不能用刀补指令G41/G42。 <BR>6. G92与G54~G59之间的优缺点 <BR>    G54~G59是在加工前设定好的坐标系,而G92是在程序中设定的坐标系,用了G54~G59就没有必要再使用G92,否则G54~G59会被替换,应当避免,如表1所示。 <BR>表1 G92与工作坐标系的区别 <BR>    注意:(1)一旦使用了G92设定坐标系,再使用G54~G59不起任何作用,除非断电重新启动系统,或接着用G92设定所需新的工件坐标系。(2)使用G92的程序结束后,若机床没有回? <BR>    紾92设定的原点,就再次启动此程序,机床当前所在位置就成为新的工件坐标原点,易发生事故。所以,希望广大读者慎用。 <BR>7. 编制换刀子程序。 <BR>    在加工中心上,换刀是不可避免的。但机床出厂时都有一个固定的换刀点,不在换刀位置,便不能够换刀,而且换刀前,刀补和循环都必须取消掉,主轴停止,冷却液关闭。条件繁多,如果每次手动换刀前,都要保证这些条件,不但易出错而且效率低,因此我们可以编制一个换刀程序保存谙低衬诖婺冢?诨坏妒保?贛DI状态下用M98调用就可以一次性完成换刀动作。 <BR>以PMC-10V20加工中心为例,程序如下: <BR>  O2002;      (程序名) <BR>  G80G40G49  ; (取消固定循环、刀补) <BR>  M05;      (主轴停止) <BR>  M09;      (冷却液关闭) <BR>  G91G30Z0;   (Z轴回到第二原点,即换刀点) <BR>  M06;      (换刀) <BR>  M99;      (子程序结束) <BR>    在需要换刀的时候,只需在MDI状态下,键入“T5M98P2002”,即可换上所需刀具T5,从而避免了许多不必要的失误。广大读者可根据自己机床的特点,编制相应的换刀子程序。 <BR>8.其他 <BR>    程序段顺序号,用地址N表示。一般数控装置本身存储器空间有限(64K),为了节省存储空间,程序段顺序号都省略不要。N只表示程序段标号,可以方便查找编辑程序,对加工过程不起任何作用,顺序号可以递增也可递减,也不要求数值有连续性。但在使用某些循环指令,跳转指令,调用子程序及镜像指令时不可以省略。 <BR>9.同一条程序段中,相同指令(相同地址符)或同一组指令,后出现的起作用。 <BR>例如,换刀程序,T2M06T3; 换上的是T3而不是T2; <BR>G01G00X50.0Y30.0F200;执行的是G00(虽有F值,但也不执行G01)。 <BR>不是同一组的指令代码,在同一程序段中互换先后顺序执行效果相同。 <BR>G90G54G00X0Y0Z100.0; <BR>G00G90G54X0Y0Z100.0; <BR>    以上各项均在PMC-10V20(FANUC SYSTEM)加工中心上运行通过。在实际应用中,只有深刻理解各种指令的用法和编程规律。</P></TD></TR></TABLE>
       楼主| 发表于 2006-2-5 17:00:00 | 显示全部楼层
      <TABLE>

      <TR>
      <TD>
      <P  align=center><B><FONT color=#368978>加工中心的坐标设置与子程序调用</FONT><FONT color=#cc6600><BR></FONT></B></P></TD></TR>
      <TR>
      <TD>
      <HR color=#cc6600 SIZE=1>
      </TD></TR>
      <TR>
      <TD>
      <P >    本文通过实例,剖析了加工中心机床坐标设置与子程序的应用问题,说明了自动编程与手工编程相结合,利用G92位置设置功能与子程序调用相配合,简化编程,优化程序的方法。在实际工作中,取到事半功倍的作用。<BR>  随着数控技术的快速发展及CAD/CAM技术的广泛应用,数控加工越来越多地依赖于软件的自动编程,手工编程逐渐处于次要的地位。但在实际加工中如果将自动编程与手工编程相结合,利用G92位置设置功能与子程序调用相配合,则可以更加简化编程,优化程序,有利于程序的修改和重复调用。<BR>  下面以美国SABRE-1000 Acramatic 850SX系统立式加工中心机床为例,就坐标设置(位置设置)与子程序调用问题进行探讨。<BR>  机床坐标系为机床上固有的坐标系,是由机床生产厂家设定的。工件坐标系是编程人员在编制加工程序时,根据零件图纸上的某一固定点为原点确定的坐标系。两坐标系之间的统一通过准备功能代码G92的位置设置功能实现。<BR>  G92位置设置功能允许操作人员或编程人员为当前坐标轴赋予新的坐标值而工作台并不移动。 G92偏移机床坐标系,使NC程序中的工件坐标系的坐标值与之相匹配。 <BR>  工件原点(NC程序的零点)是由操作人员在安装工件的过程中进行定位的。编程人员在编制程序时可以不考虑工件在机床上安装的物理位置和安装精度,而利用数控系统的原点偏置功能,通过工件原点偏置来补偿工件的装夹误差。在加工前将该偏置值输入到数控装置,加工时该偏置值便能自动加到工件坐标系上,使数控系统按机床坐标系确定的工件的坐标值进行加工。但是,如果将G92直接编入程序中,而不采用将偏置值输入到数控装置的方法,则会更加方便。<BR>  如图1所示,模具有6个相同的型芯,如果仅采用自动编程而不进行人工编辑,就需要对每一个型芯都完全绘制和进行编程,工作量较大,程序量更大,也不便于检查程序。<BR>  如图2所示,如果将手动编程与自动编程相结合,利用CAD/CAM软件自动编程,只需要绘制一个型芯,生成加工一个型芯的程序。再根据各型芯之间的位置关系,通过G92设置和子程序调用,即可得到简洁、清晰的程序。而且,如果在加工的过程中刀具已经磨损,更换刀具后,也可以很方便地修改程序,继续下一个型芯的加工。<BR>  :G71G90         “:”为程序开始标识符<BR>  T16M6           装第16号刀位上的刀具<BR>  G00X519.8Y254.4Z77.929 机床坐标系中工件中心位置(也是型芯1的工件原点)<BR>  (CLS,L10)         调用加工一个型芯的子程序<BR>  G00X664.8Y254.4Z77.929 到达机床坐标系中型芯2的工件原点位置<BR>  (CLS,L10)         调用同一个子程序<BR>  G00X809.8Y254.4Z77.929到达机床坐标系中型芯3的工件原点位置<BR>  (CLS,L10)<BR>  G00X809.8Y484.4Z77.929到达机床坐标系中型芯4的工件原点位置<BR>  (CLS,L10)<BR>  G00X664.8Y484.4Z77.929到达机床坐标系中型芯5的工件原点位置<BR>  (CLS,L10)<BR>  G00X519.8Y484.4Z77.929到达机床坐标系中型芯6的工件原点位置<BR>  (CLS,L10)<BR>  (DFS,L10)      定义加工一个型芯的子程序<BR>  G92X0Y0Z0 将子程序前面的,当前坐标轴赋予新的坐标值(0,0,0)<BR>  G01X-145.Y-115.M03S350M08F2000 <BR>  Z-38F100      <BR>  ......   加工一个型芯的程序<BR>  Y-115.<BR>  G00Z100  将主轴快速地提升到工件坐标系中Z为100的位置<BR>  X0Y0    回到工件坐标系X-Y平面零点<BR>  G99    取消G92位置设置,让工件坐标系回复到机床坐标系中<BR>  (ENS)         子程序结束<BR>  M30          程序结束<BR>  实际工作中,工件坐标系的Z方向以工件表面(甚至低于工件表面)作为零点。如果让刀具真正到达工件原点,势必与工件相碰。为了提高安全性,如图3所示,在让刀具准确到达工件原点时,刀具并不真实与工件接触,应将工件原点在机床坐标系中的Z值抬高一定距离(如距离a),相应地,在G92设置Z高度值时,Z值也加上相同距离a。<BR>  G00X__Y__Z__+a<BR>  G92X0Y0Z0+a<BR>  例如,对下面的G92设置程序:<BR>  G00X519.8Y254.4Z77.929<BR>  G92X0Y0Z0<BR>  如:将刀具抬高100mm,可改成:<BR>  G00X519.8Y254.4Z77.929+100<BR>  G92X0Y0Z0+100<BR>  刀具端面距离工件表面高100mm,而工件原点实际上仍在工件表面未变。这样,在进行程序加工过程中就安全、灵活多了。<BR>  <BR>  如果装夹好工件后需要调试程序,我们必须抬高刀具远离工件表面运行,这时只需要将G92中的Z值减去a(a为Z向所需抬高的高度值),就使刀具端面距离工件表面(工件原点)高了a距离。<BR>  在加工过程中需要临时增加深度,这时就只需要将G92中的Z值加上a(a为Z向所需下降的深度值),就使刀具端面距离工件表面(工件原点)低了a距离。<BR>  如此,就可以在不更改程序其它部分的情况下,只通过更改G92中Z坐标的设置就可以快速、安全地达到目的。<BR>  G00X__Y__Z__<BR>  G92X0Y0Z0+a (或G92X0Y0Z0-a)<BR>  例如:<BR>  对下面的程序要求Z方向下降5mm:<BR>  G00X519.8Y254.4Z77.929+100<BR>  G92X0Y0Z0+100<BR>  可改成:<BR>  G00X519.8Y254.4Z77.929+100<BR>  G92X0Y0Z0+100+5<BR>  如果将机床坐标系中工件原点所在的Z值加上a,而G92程序段中的Z值不变,也可使刀具端面距离工件表面(工件原点)提高a距离。或者,将机床坐标系中工件原点所在的Z值减去a,而G92程序段中的Z值不变,就使刀具端面距离工件表面(工件原点)降低a距离。效果与更改G92中Z坐标的设置相同。<BR>  G00X__Y__Z__-a (或G00X__Y__Z__+a)<BR>  G92X0Y0Z0<BR>  例如,对下面的程序要求Z方向下降5mm:<BR>  G00X519.8Y254.4Z77.929<BR>  G92X0Y0Z0<BR>  可改成:<BR>  G00X519.8Y254.4Z77.929+100-5<BR>  G92X0Y0Z0+100<BR>  利用以上原理,在利用加工中心机床刃磨工件时,由于砂轮损耗大,需要执行一次刃磨程序,就修磨一次砂轮(Z值必须下降),如果分别编程,加工时就需要反复更换程序,十分不便。下面的实例程序,可以方便地实现通过G92的设置,调用砂轮修磨程序,在加工过程中方便地修改程序,进行砂轮修磨和工件刃磨,以提高加工效率。 <BR>  :G71<BR>  T12M6<BR>  G00X541.52Y254.8Z170+100S3000M03M08  到达机床坐标系中工件原点位置<BR>  X60.0Y302.3  砂轮原点在机床坐标系中(X—Y平面内)的位置<BR>  Z167.0+100F50 砂轮Z方向零点在机床坐标系中的位置,更改该值可以修磨砂轮<BR>  (CLS,L10)   调用砂轮修磨子程序<BR>  G92X0Y0Z0+100 当前坐标轴赋予新的坐标值(0,0,100)<BR>  G01X43.677Y4F2000S5000<BR>  Z79.4F1000<BR>  Z73.5F100  工件坐标系中的Z值,与砂轮修磨时下降的高度对应修改<BR>  ......   磨削工件程序<BR>  G00Z150   将主轴快速地提升到工件坐标系中Z为150的位置<BR>  X0Y0<BR>  G99        取消位置设置,让工件坐标系回复到机床坐标系中<BR>  (DFS,L10)     定义修磨砂轮子程序<BR>  G92X0Y0Z0+100   将子程序前面的,轴的当前位置设置为(0,0,100)<BR>  G01X10Z-10F100<BR>  X0Z0<BR>  G99      取消位置设置,让砂轮的工件坐标系回复到机床坐标系中<BR>  G00Z270    将主轴快速地提升到机床坐标系中Z为270的位置<BR>  X541.52Y254.8 机床坐标系中工件中心位置<BR>  (ENS)     砂轮修磨子程序结束<BR>  M30<BR>  在 G92的位置设置时应注意:当G92包含在程序中时,如果不再需要G92位置设置,一定要使用位置设置取消指令(如G99,不同的机床有不同的指令),否则就可能导致工件、刀具、机床被损坏甚至产生人身伤害事故。</P></TD></TR></TABLE>
      发表于 2006-2-5 20:02:00 | 显示全部楼层
      <P>楼主费了不少工夫</P>
      <P>顶一下吧</P>
      发表于 2006-2-6 12:05:00 | 显示全部楼层
      <P>强烈感谢</P>
      发表于 2006-2-6 23:07:00 | 显示全部楼层
      3q
      您需要登录后才可以回帖 登录 | 注册

      本版积分规则

      关闭

      招聘信息 上一条 /5 下一条

      关闭

      求职信息 上一条 /5 下一条

      关闭

      技术求助 上一条 /5 下一条

      QQ|小黑屋|手机版|模具论坛 ( 浙ICP备15037217号 )

      GMT+8, 2025-7-18 17:48

      Powered by Discuz! X3.4

      © 2001-2013 Comsenz Inc.

      快速回复
      返回顶部
      返回列表
       
      客服电话:0577-61318188
      模具论坛交流群:
      模具论坛交流群
      工作时间:
      08:30-17:30