我用电脑编程我把刀鼻半径圆弧插补用半径编程时那块参数设为0,请问可以吗,如果按0.4圆弧插补用半径编程时走,我干出来的尺寸就长了0.2

圆弧插补用半径编程时插补段程序中若采用半径R 编程时,圆弧插补用半径编程时半径负值时()

A.圆弧插补用半径编程时小于或等于180°

B.圆弧插补用半径编程时大于或等于180°

請帮忙给出正确答案和分析,谢谢!

}

xxxx 学 院 课 程 设 计 说 明 书 设计题目 逐點比较法逆圆弧插补用半径编程时插补的程序设计 系 部 机电工程系 专 业 自动化(数控技术) 班 级 08数控本(1)班 姓 名 学 号 指导老师(签名) 起止时间20 11年 12月 5 日至20 11年 12月 9 日共 1 周 20 11 年 12 月 11 日 目录 一. 课程设计的目的.1 二. 课程设计的任务.1 三. 逐点比较法基本原理....1 四. 算法描述6 五. 具体算法程序10 六. 各象限选例展示17 七. 心得体会 ..19 八. 参考文献..19 正文 数控原理与系统课程设计说明书 一、课程设计的目的 1) 了解连续轨迹控制数控系统嘚组成原理 2 掌握逐点比较法插补的基本原理。 3)握逐点比较法插补的软件实现方法 二.课程设计的任务 逐点比较法插补是最简单的脉沖增量式插补算法之一,其过程清晰速度平稳,但一般只用于一个平面内两个坐标轴的插补运算其基本原理是在刀具按要求轨迹运动加工零件轮廓的过程中,不断比较刀具与被加工零件轮廓之间的相对位置并根据比较结果决定下一步的进给方向,使刀具向减小偏差的方向进给且只有一个方向的进给。也就是说逐点比较法每一步均要比较加工点瞬时坐标与规定零件轮廓之间的距离,依此决定下一步嘚走向如果加工点走到轮廓外面去了,则下一步要朝着轮廓内部走;如果加工点处在轮廓的内部则下一步要向轮廓外面走,以缩小偏差这样周而复始,直至全部结束从而获得一个非常接近于数控加工程序规定轮廓的轨迹。逐点比较法插补过程中的每进给一步都要经過偏差判别、坐标进给、偏差计算和终点判别四个节拍的处理其工作流程图如图所示。 三.逐点比较法基本原理 逐点比较法I象限逆圆插补 茬加工圆弧插补用半径编程时过程中人们很容易联想到使用动点到圆心的距离与该圆弧插补用半径编程时的名义半径进行比较来反映加笁偏差。 假设被加工零件的轮廓为第Ⅰ象限逆走向圆弧插补用半径编程时SE,圆心在O(00),半径为R起点为S(XS,YS)终点为E(Xe,Ye)圆弧插补用半径编程时上任意加工动点为N(Xi,Yi)当比较该加工动点到圆心的距离 与圆弧插补用半径编程时半径R的大小时,可获得刀具与圆弧插补用半径编程时轮廓之间的相对位置关系 当动点N(Xi,Yi)正好落在圆弧插补用半径编程时上时则有下式成立 当动点N(Xi,Yi)落在圆弧插补用半径编程时外侧时则有下式成立 当动点N(Xi,Yi)落在圆弧插补用半径编程时内侧时则有下式成立 由此可见,取逐点比较法圆弧插補用半径编程时插补的偏差函数表达式为 当动点落在圆外时为了减小加工误差,应向圆内进给即向-X轴方向走一步;当动点落在圆内時,应向圆外进给即向+Y轴方向走一步。当动点正好落在圆弧插补用半径编程时上且尚未到达终点时为了使加工继续下去,理论上向Y軸或-X轴方向进给均可以但一般情况下约定向-X轴方向进给。 综上所述现将逐点比较法第Ⅰ象限逆圆插补规则概括如下 当F>0时,即 >0动点落在圆外,则向-X轴方向进给一步; 当F=0时即 0,动点正好落在圆上约定向-X轴方向进给一步; 当F<0时,即 <0动点落在圆内,則向+Y轴方向进给一步 由偏差函数表达式可知,计算偏差F值就必须进行动点坐标、圆弧插补用半径编程时半径的平方运算。显然茬用硬件或汇编语言实现时不太方便。为了简化这些计算按逐点比较法直线插补的思路,也可以推导出逐点比较法圆弧插补用半径编程時插补过程中偏差函数计算的递推公式 假设第i次插补后,动点坐标为N(XiYi),其对应偏差函数为 当Fi≥0向-X轴方向进给一步,则新的动點坐标值为 Xi+1Xi-1 Yi+1Yi 因此,新的偏差函数为 ∴ Fi+1Fi-2Xi+1 同理当Fi<0,则向+Y轴方向进给一步则新的动点坐标值为 Xi+1Xi, Yi+1Yi+1 因此可求得噺的偏差函数为 ∴ Fi+1Fi+2Yi+1 将上式进行比较,可以看出两点不同第一递推形式的偏差计算公式中仅有加/减法以及乘2运算,而乘2可等效成该②进制数左移一位这显然比平方运算来得简单。第二进给后新的偏差函数值与前一点的偏差值以及动点坐标N(Xi,Yi)均有关系由于动點坐标值随着插补过程的进行而不断变化,因此每插补一次,动点坐标就必须修正一次以便为下一步的偏差计算作好准备。至此将苐Ⅰ象限逆圆弧插补用半径编程时插补的规则和计算公式汇总,见表(表2-1) 和直线插补一样圆弧插补用半径编程时插补过程也有终点判別问题。当圆弧插补用半径编程时轮廓仅在一个象限区域内其终点判别仍可借用直线终点判别的三种方法进行,只是计算公式略不同 Σ=|Xe-Xs|+|Ye-Ys| Σ=max{|Xe-Xs|,|Ye-Ys|} Σ1=|Xe-Xs| Σ2=|Ye-Ys| 式中 XS、Ys 被插补圆弧插补用半径编程时轮廓的起点坐标; Xe、Ye 被插补圆弧插补用半径编程时轮廓的终点唑标。 b、插补象限和圆弧插补用半径编程时走向 前面所讨论的逐点比较法直线和圆弧插补用半径编程时插补均是针对第一象限直线和逆圓插补这种特定情况进行的。然而任何数控机床都应具备处理不同象限、不同走向曲线的能力。 四个象限中圆弧插补用半径编程时插补 圓弧插补用半径编程时插补情况比直线插补复杂不仅有象限问题,而且还有圆弧插补用半径编程时走向问题现以第Ⅰ象限顺圆SR1插补为唎,介绍圆弧插补用半径编程时插补的特性 假设圆弧插补用半径编程时SE起点为S(XS,YS)终点为E(Xe,Ye)圆心在坐标原点上。与逆圆插补楿似当某一时刻动点N(Xi,Yi)在圆弧插补用半径编程时的外侧时有F≥0成立,应向 -Y轴方向进给一步以减小误差;若动点N(Xi,Yi)在圆弧插补用半径编程时内侧则应 向 +X轴方向进给一步。由此可推导出第Ⅰ象限顺圆插补偏差函数的递推公式如下 当Fi≥0时向 -Y轴方向进给一步,则新的动点坐标为 Xi+1=Xi Yi+1=Yi-1 新动点的偏差函数为 ∴ Fi+1=Fi-2Yi+1 当Fi<0时,向 +X轴方向进给一步则新的动点坐标为 Xi+1=Xi+1, Yi+1=Yi 新动點的偏差函数为 ∴ Fi+1=Fi+2Xi+1 现将上式比较可以看出它们有两点不同 1)当Fi≥0或Fi<0时,对应的进给方向不同; 2)插补计算公式中动点坐标的修正也不同以至于偏差计算公式也不相同。 进一步还可根据上述方法推导出其他象限不同走向圆弧插补用半径编程时的插补公式现将各种相应偏差计算见表(表2-2) 四个象限圆弧插补用半径编程时插补偏差计算与进给方向 线型 F≥0 F<0 偏差计算 坐标进给 偏差计算 坐标进给 SR1 NR2 SR3 NR4 F-2|Y|+1→F |Y|-1→|Y| -ΔY -ΔY +ΔY +ΔY 从表可以看出,当按第Ⅰ象限逆圆NR1进行插补运算时现若有意将X轴进给反向,则可以走出第Ⅱ象限顺圆SR2来;或者若将Y轴进给反向则可以走出SR4来;或者将X轴和Y轴的进给均反向,则可以走出NR3来;并且这四种线型(NR1、SR2、NR3、SR4)使用的偏差计算公式都相同無须改变。 进一步还可以看出当按第Ⅰ象限逆圆NR1线型插补时,现若将计算公式坐标X与Y对调即把X当作Y,把Y当作X那么就可得到SR1的走向。類似地通过改变进给方向利用SR1的公式就可获得其余三种线型(NR2、SR3、NR4)的走向。下面我们对圆弧插补用半径编程时逐点比较法作一个简偠的介绍。 四.算法描述(逐点比较法在VB中的具体实现) 根据上述基本原理我们可以知道逐点比较法圆弧插补用半径编程时插补需要设置两个终点计 器J∑X=|Xe – Xs|和J∑Y=|Ye - Ys|,分别对X轴和Y轴进行终点监控每当X轴或Y轴产生一个溢出脉冲,相应的终点计数器就作减1修正直到为零,表明该坐标已到终点并停止其坐标的累加运算。只有当两个坐标轴均到达终点时圆弧插补用半径编程时插补才结束。 如下图所示圆弧插补用半径编程时起点S(4,-1)终 点(-1,4)且寄存器位数N=3,当插补开 始时被积函数寄存器初值分别为JVX=Ys=-1和JVY=Xs=4,终点判别寄存器J∑X=|Xe – Xs|=-1和J∑Y=|Ye - Ys|=5.该圆弧插补用半径编程时插补运算过程如下表所示插补轨迹如下图折线所示。 序号 工作节拍 第一拍 偏差判别 第二拍 唑标进给 第三拍 第四拍 终点判别 偏差计算 坐标修改 起点 F00 程序充分采用了循环结构以及选择结构的基本编程方法对于四个象限分别进行了編程,并应对各种可能出现的错误做了相应的处理其中包括 1、 输入错误导致象限选择与实际输入不一致; 2、 输入错误导致输入两点及角喥为元素构成的圆弧插补用半径编程时不以原点为圆心; 3、 其他微小错误; 程序编制思路基本参考文献资料基于Visual Basic编程软件的数控插补计算與设计方法一书,具体采用专攻一个象限以通晓其原理从而推及其他象限的做法,剩下了大量的时间 在编制程序的过程中,不断进行調试并不断纠正错误,其中主要的两种错误如下附两幅图片所示 输入错误导致象限选择与实际输入不一致; 输入错误导致输入两点及角度为元素构成的圆弧插补用半径编程时不以原点为圆心; 这些恰恰都是不符合要求的输入,必须通过提示来提醒用户以正确地输入,達到正确使用本软件的目的 六、各象限选例展示 第一象限 第二象限 第三象限 第四象限 九. 心得体会 一十. 参考文献 【1】汪木兰主编.数控原理与系统.机械工业出版社,2004 【2】李金泽主编.基于Visual Basic编程软件的数控插补计算与设计方法.机械工业出版社2007年

VB 软件 模拟 比较法 圆弧插补用半徑编程时 程序设计

  皮匠网所有资源均是用户自行上传分享,仅供网友学习交流未经上传用户书面授权,请勿作他用

}

通过编程并运行这些程序而使能夠实现的功能我们称之为可编程功能一般可编程功能分为两类:一类用来实现刀具轨迹控制即各进给轴的运动,如直线/圆弧插补用半径編程时插补、进给控制、坐标系原点偏置及变换、尺寸单位设定、刀具偏置及补偿等这一类功能被称为准备功能,以字母G以及两位数字 組成也被称为G代码。另一类功能被称为辅助功能用来完成程序的执行控制、主轴控制、刀具控制、辅助设备控制等功能。在这些辅助功能中Tx x用于选刀,Sx x x x用于控制主轴转速其它功能由以字母M与两位数字组成的M代码来实现。

本使用的所有准备功能见表1.1:

从表1.1中我们可以看到G代码被分为了不同的组,这是由于大多数的G代码是模态的所谓模态G代码,是指这些G代码不只在当前的程序段中起作用而且在以後的程序段中一直起作用,直到程序中出现另一个同组的G代码为止同组的模态G代码控制同一个目标但起不同的作用,它们之间是不相容嘚00组的G代码是非模态的,这些G代码只在它们所在的程序段中起作用标有*号的G代码是上电时的初始状态。对于G01和G00、G90和G91上电时的初始状态甴参数决定

如果程序中出现了未列在上表中的G代码,CNC会显示10号报警

同一程序段中可以有几个G代码出现,但当两个或两个以上的同组G代碼出现时最后出现的一个(同组的)G代码有效。

在固定循环模态下任何一个01组的G代码都将使固定循环模态自动取消,成为G80模态

本机床用S代码来对主轴转速进行编程,用T代码来进行选刀编程其它可编程辅助功能由M代码来实现,本机床可供用户使用的M代码列表如下(表1.2):

孓程序结束返回/重复执行

一般地一个程序段中,M代码最多可以有一个

IP_在本说明书中代表任意不超过三个进给轴地址的组合,当然烸个地址后面都会有一个数字作为赋给该地址的值,一般机床有三个或四个进给轴即XY,Z A所以IP_可以代表如 X12. Y119. Z-37. 或 X287.3 Z73.5 A45. 等等内容。

G00这条指令所作的僦是使刀具以快速的速率移动到IP_指定的位置被指令的各轴之间的运动是互不相关的,也就是说刀具移动的轨迹不一定是一条直线G00指令丅,快速倍率为100%时各轴运动的速度:X、Y、Z轴均为15m/min,该速度不受当前F值的控制当各运动轴到达运动终点并发出位置到达信号后,CNC认为該程序段已经结束并转向执行下一程序段。

位置到达信号:当运动轴到达的位置与指令位置之间的距离小于参数指定的到位宽度时CNC认為该轴已到达指令位置,并发出一个相应信号即该轴的位置到达信号

G01指令使当前的插补模态成为直线插补模态,刀具从当前位置移动到 IP指定的位置其轨迹是一条直线,F-指定了刀具沿直线运动的速度单位为mm/min(X、Y、Z轴)。

该指令是我们最常用的指令之一

假设当前刀具所茬点为X-50. Y-75.,则如下程序段

将使刀具走出如下图(图2.2)所示轨迹

大家可以看到,程序段N2并没有指令G01由于G01指令为模态指令,所以N1程序段中所指令的G01在N2程序段中继续有效同样地,指令F100在 N2段也继续有效即刀具沿两段直线的运动速度都是100mm/min。

下面所列的指令可以使刀具沿圆弧插补鼡半径编程时轨迹运动:

指定X--Y平面上的圆弧插补用半径编程时插补

指定X--Z平面上的圆弧插补用半径编程时插补

指定Y--Z平面上的圆弧插补用半径編程时插补


X、Y、Z中的两轴指令

当前工件坐标系中终点位置的坐标值

X、Y、Z中的两轴指令

从起点到终点的距离(有方向的)

I、J、K中的两 轴指令

从起點到圆心的距离(有方向的)










在这里我们所讲的圆弧插补用半径编程时的方向,对于X--Y平面来说是由Z轴的正向往Z轴的负向看X--Y平面所看到的圆弧插补用半径编程时方向,同样对于X--Z平面或Y--Z平面来说,观测的方向则应该是从Y轴或X轴的正向到Y轴或X轴的负向(适用于右手坐标系如下图所示)

圆弧插补用半径编程时的终点由地址X、Y和Z来确定。在G90模态即绝对值模态下,地址X、Y、Z给出了圆弧插补用半径编程时终点在当前唑标系中的坐标值;在G91模态即增量值模态下,地址X、Y、Z给出的则是在各坐标轴方向上当前刀具所在点到终点的距离

在X方向,地址I给定叻当前刀具所在点到圆心的距离在Y和Z方向,当前刀具所在点到圆心的距离分别由地址J和K来给定I、J、K的值的符号由它们的方向来确定。

對一段圆弧插补用半径编程时进行编程除了用给定终点位置和圆心位置的方法外,我们还可以用给定半径和终点位置的方法对一段圆弧插补用半径编程时进行编程用地址R来给定半径值,替代给定圆心位置的地址R的值有正负之分,一个正的R值用来编程一段小于180度的圆弧插补用半径编程时一个负的R值编程的则是一段大于180度的圆弧插补用半径编程时。编程一个整圆只能使用给定圆心的方法

上一章,我们講述了基本插补命令的用法以及一些相关指令同时,也涉及到了一些与进给速度有关的一些知识在本节中,我们将归纳性地讨论这些問题

的进给一般地可以分为两类:快速定位进给及切削进给。

快速定位进给在指令G00、手动快速移动以及固定循环时的快速进给和点位之間的运动时出现快速定位进给的速度是由机床参数给定的,并可由快速倍率开关加上100%、50%、25%及F0的倍率快速倍率开关在100%的位置时,快速定位进给的速度对于X、Y、Z三轴来说都是15000mm/min。快速倍率开关在F0的位置时X、Y、Z三轴快速定位进给速度是2000mm/min。快速定位进给时参与进给嘚各轴之间的运动是互不相关的,分别以自己给定的速度运动一般来说,刀具的轨迹是一条折线

切削进给出现在G01、G02/03以及固定循环中的加工进给的情况下,切削进给的速度由地址F给定在加工程序中,F是一个模态的值即在给定一个新的F值之前,原来编程的F值一直有效CNC系统刚刚通电时,F的值由549号参数给定该参数在机床出厂时被设为100mm/min。切削进给的速度是一个有方向的量它的方向是刀具运动的方向,模(即速度的大小)为F的值参与进给的各轴之间是插补的关系,它们的运动的合成即是切削进给运动

F的最大值由527号参数控制,该参数在機床出厂时被设为4000mm/min如果编程的F值大于此值,实际的进给切削速度也将保持为4000mm/min

切削进给的速度还可以由操作面板上的进给倍率开关来控淛,实际的切削进给速度应该为F的给定值与倍率开关给定倍率的乘积

自动加减速控制作用于各轴运动的起动和停止的过程中,以减小冲擊并使得起动和停止的过程平稳为了同样的目的自动加减速控制也作用于进给速度变换的过程中。对于不同的进给方式NC使用了不同的加减速控制方式:

快速定位进给:使用线性加减速控制,各轴的加减速时间常数由参数控制(522~525号参数)

切削进给:用指数加减速控制,加减速时间常数由530号参数控制

手动进给:使用指数加减速控制,各轴的加减速时间常数也由参数控制参数号为601~604。

一般地为了有一个好嘚切削条件,我们希望刀具在加工工件时要保持线速度的恒定但我们知道自动加减速控制作用于每一段切削进给过程的开始和结束,那麼在两个程序段之间的衔接处如何使刀具保持恒定的线速度呢在切削方式G64模态下,两个切削进给程序段之间的过渡是这样的:在前一个運动接近指令位置并开始减速时后一个运动开始加速,这样就可以在两个插补程序段之间保持恒定的线速度可以看出在G64模态下,切削進给时NC并不检查每个程序段执行时各轴的位置到达信号,并且在两个切削进给程序段的衔接处使刀具走出一个小小的圆角

如果在一个切削进给的程序段中有G09指令给出,则刀具接近指令位置 时会减速NC检测到位置到达信号后才会继续执行下一程序段。这样在两个程序段の间的衔接处刀具将走出一个非常尖锐的角,所以需要加工非常尖锐的角时可以使用这条指令使用G61可以实现同样的功能,G61与G09的区别就是G09昰一条非模态的指令而G61是模态的指令,即G09只能在它所在的程序段中起作用不影响模态的变化,而G61可以在它以后的程序段中一直起作用直到程序中出现G64或G63为止。

作用:在两个程序段之间产生一段时间的暂停

地址P或X给定暂停的时间,以秒为单位范围是0.001~秒。如果没有P或XG04在程序中的作用与G09相同。

本机床的坐标系是右手坐标系主轴箱的上下运动为Z轴运动,主轴箱向上的运动为Z轴正向运动主轴箱向下的運动为Z轴负向运动;滑座的前后运动为Y轴运动,滑座远离立柱的运动为Y轴的正向运动滑座趋向立柱的运动为Y轴的负向运动;工作台的左祐运动为X轴运动,面对机床工作台向左运动为X轴的正向运动,工作台向右运动为X轴的负向运动

可以看到,只有Z轴的运动是刀具本身的運动X、Y轴则是靠工作台带动工件运动来完成加工过程的。为了方便起见在本说明书中对于X、Y轴运动的描述是刀具相对于工件的运动。

楿对位置固定的机床坐标系的建立是靠每次NC上电后的返回参考点的操作来完成的。参考点是机床上的一个固定的点它的位置由各轴的參考点开关和撞块位置以及各轴伺服电机的零点位置来确定。本机床返回参考点后参考点在机床坐标系中的坐标值为X0,Y0Z0。X轴行程为0~-600毫米Y轴行程为0~-400毫米,Z轴行程为0~-510毫米

该指令使指令轴以快速定位进给速度经由IP指定的中间点返回机床参考点,中间点的指定既可以是绝对徝方式的也可以是增量值方式的这取决于当前的模态。一般地该指令用于整个加工程序结束后使工件移出加工区,以便卸下加工完毕嘚零件和装夹待加工的零件

为了安全起见,在执行该命令以前应该取消刀具半径 补偿和长度补偿

执行手动返回参考点以前执行G28指令时,各轴从中间点开始的运动与手动返回参考点的运动一样从中间点开始的运动方向为正向。

G28指令中的坐标值将被NC作为中间点存储另一方面,如果一个轴没有被包含在G28指令中NC存储的该轴的中间点坐标值将使用以前的G28指令中所给定的值。例如:

该中间点的坐标值主要由G29指囹使用

该命令使被指令轴以快速定位进给速度从参考点经由中间点运动到指令位置,中间点的位置由以前的G28或G30(参考4.2.4)指令确定一般哋,该指令用在G28或G30之后被指令轴位于参考点或第二参考点的时候。

在增量值方式模态下指令值为中间点到终点(指令位置)的距离。

該命令使被指令轴以快速定位进给速度运动到IP指令的位置然后检查该点是否为参考点,如果是则发出该轴参考点返回的完成信号(点煷该轴的参考点到达指示灯);如果不是,则发出一个报警并中断程序运行。

在刀具偏置的模态下刀具偏置对G27指令同样有效,所以一般来说执 行G27指令以前应该取消刀具偏置(半径偏置和长度偏置)

在机床闭锁开关置上位时,NC不执行G27指令

该指令的使用和执行都和G28非常楿似,唯一不同的就是G28使指令轴返回机床参考点而G30使指令轴返回第二参考点。G30指令后和G28指令相似,可以使用G29指令使指令轴从第二参考點自动返回

第二参考点也是机床上的固定点,它和机床参考点之间的距离由参数给定第二参考点指令一般在机床中主要用于刀具交换,因为机床的Z轴换刀点为Z轴的第二参考点(参数#737)也就是说,刀具交换之前必须先执行G30指令用户的零件加工程序中,在自动换刀之前必须编写G30否则执行M06指令时会产生报警。第二参考点的返回关于M06请参阅机床说明书部分:辅助功能。被指令轴返回第二参考点完成后該轴的参考点指示灯将闪烁,以指示返回第二参考点的完成机床X和Y轴的第二参考点出厂时的设定值与机床参考点重合,如有特殊需要可鉯设定735、736号参数

737号参数用于设定Z轴换刀点,正常情况下不得改动否则可能损坏ATC(自动刀具交换)装置。

与G28一样为了安全起见,在执荇该命令以前应该取消刀具半径补偿和长度补偿

通常编程人员开始编程时,他并不知道被加工零件在机床上的位置他所编制的零件程序通常是以工件上的某个点作为零件程序的坐标系原点来编写加工程序,当被加工零件被夹压在机床工作台上以后再将NC所使用的坐标系的原点偏移到与编程使用的原点重合的位置进行加工所以坐标系原点偏移功能对于数控机床来说是非常重要的。

在本机床上可以使用下列彡种坐标系:

该指令使刀具以快速进给速度运动到机床坐标系中IP_指定的坐标值位置一般地,该指令在G90模态下执行G53指令是一条非模态的指令,也就是说它只在当前程序段中起作用

机床坐标系零点与机床参考点之间的距离由参数设定,无特殊说明各轴参考点与机床坐标系零点重合。

在机床中我们可以预置六个工件坐标系,通过在CRT-MDI面板上的操作设置每一个工件坐标系原点相对于机床坐标系原点的偏移量,然后使用G54~G59指令来选用它们G54~G59都是模态指令,分别对应1#~6#预置工件坐标系如下例:

终点在机床坐标系中的坐标值

选择1#坐标系,赽速定位


直线插补,F值为100



直线插补,F值为100 (模态值)




从以上举例可以看出G54~G59指令的作用就是将NC所使用的坐标系的原点移动到机床坐标系中唑标值为预置值的点,预置方法请查阅本手册的操作部分

在机床的数控编程中,插补指令和其它与坐标值有关的指令中的IP- 除非有特指外都是指在当前坐标系中(指令被执行时所使用的坐标系)的坐标位置。大多数情况下当前坐标系是G54~G59中之一(G54为上电时的初始模态),直接使用機床坐标系的情况不多

该指令建立一个新的工件坐标系,使得在这个工件坐标系中当前刀具所在点的坐标值为IP-指令的值。G92指令是一条非模态指令但由该指令建立的工件坐标系却是模态的。实际上该指令也是给出了一个偏移量,这个偏移量是间接给出的它是新工件唑标系原点在原来的工件坐标系中的坐标值,从G92的功能可以看出这个偏移量也就是刀具在原工件坐标系中的坐标值与 IP-指令值之差。如果哆次使用G92指令则每次使用G92指令给出的偏移量将会叠加。对于每一个预置的工件坐标系(G54~G59)这个叠加的偏移量都是有效的。举例如下:

终点在机床坐标系中的坐标值

选择1#坐标系快速定位到 坐标系原点。

刀具不运动建立新坐标系,新坐标系中当前点坐标值为 X70, Y100, Z50

快速定位到新坐标系原点

选择4#坐标系,快速定位到 坐标系原点(已被偏移)

快速定位到原坐标系原点。

G52可以建立一个局部坐标系局部坐標系相当于G54~G59坐标系的子坐标系。

该指令中IP_给出了一个相对于当前G54~G59坐标系的偏移量,也就是说IP_给定了局部坐标系原点在当前G54~G59坐标系中的位置坐标,即使该G52指令执行前已经由一个G52指令建立了一个局部坐标系取消局部坐标系的方法也非常简单,使用G52 IP0;即可

这一组指囹用于选择进行圆弧插补用半径编程时插补以及刀具半径补偿所在的平面。

G17………选择XY平面

G18………选择ZX平面

G19………选择YZ平面

关于平面选择嘚相关指令可以参考圆弧插补用半径编程时插补及刀具补偿等指令的相关内容

有两种指令刀具运动的方法 :绝对值指令和增量值指令。茬绝对值指令模态下我们指定的是运动终点在当前坐标系中的坐标值;而在增量值指令模态下,我们指定的则是各轴运动的距离G90和G91这對指令被用来选择使用绝对值模态或增量值模态。

G90………绝对值指令

G91………增量值指令

通过上例我们可以更好地理解绝对值方式和增量徝方式的编程。

在机床中M代码分为两类:一类由NC直接执行,用来控制程序的执行;另一类由PMC来执行控制主轴、ATC装置、冷却系统。M代码表见表1.2

用于程序控制的M代码有M00、M01、M02、M30、M98、M99,其功能分别讲解如下:

M00………程序停止NC执行到M00时,中断程序的执行按循环起动按钮可以繼续执行程序。

M01………条件程序停止NC执行到M01时,若M01有效开关置为上位则M01与M00指令有同样效果,如果M01有效开关置下位则M01指令不起任何作鼡。

M02………程序结束遇到M02指令时,NC认为该程序已经结束停止程序的运行并发出一个复位信号。

M30………程序结束并返回程序头。在程序中M30除了起到与M02 同样的作用外,还使程序返回程序头

M98………调用子程序。

M99………子程序结束返回主程序。

M03………主轴正转使用该指令使主轴以当前指定的主轴转速逆时针(CCW)旋转。

M04………主轴反转 使用该指令使主轴以当前指定的主轴转速顺时针(CW)旋转。

M05………主轴停止

M06………自动刀具交换(参阅机床操作说明书)。

M18………主轴定向解除

M19………主轴定向。

M29………刚性攻丝(参考“6.4  刚性攻丝指令(M29)”)

其他M玳码请参阅机床使用说明书。

机床刀具库使用任意选刀方式即由两位的T代码T××指定刀具号而不必管这把刀在哪一个刀套中,地址T的取值范围可以是1~99之间的任意整数

在M06之前必须有一个T码,如果T指令和M06出现在同一程序段中则T码也要写在M06之前。

刀具表一定要设定正确如果与实际不符,将会严重损坏机床并造成不可预计的后果。

详细说明请参阅机床使用说明书

一般机床主轴转速范围是20~6000r/min(转每分)主軸的转速指令由S代码给出,S代码是模态的即转速值给定后始终有效,直到另一个S代码改变模态值主轴的旋转指令则由M03或M04实现。

指令M29Sx x x x;機床进入刚性攻丝模态在刚性攻丝模态下,Z轴的进给和主轴的转速建立起严格的位置关系这样,使螺纹孔的加工可以非常方便地进行M29指令的具体使用方法可参见“8.1.14  刚性攻丝方式”的说明。

早期的NC加工程序是以纸带为介质存储的,为了保持与以前系统的兼容性我们所用的NC系统也可以使用纸带作为存储的介质,所以一个完整的程序还应包括由纸带输入输出程序所必须的一些信息这样,一个完整的程序应由下列几部分构成:

该部分在纸带上用来标识一个程序的开始符号是“%”。在机床操作面板上直接输入程序时该符号由NC自动产苼。

第一个换行(LF)(ISO代码的情况下)或回车(CR)(EIA代码的情况下)前的内容被称为前导部分该部分与程序执行无关。

该符号标识程序囸文部分的开始ISO代码为LF,EIA代码为CR在机床操作面板上直接输入程序时,该符号由NC自动产生

位于程序起始符和程序结束符之间的部分为程序正文部分,在机床操作面板上直接输入程序时输入和编辑的就是这一部分。程序正文的结构请参考下一节的内容

在任何地方,一對圆括号之间的内容为注释部分NC对这部分内容只显示,在执行时不予理会

用来标识程序正文的结束,所用符号如下:

程序结束返回程序头。

ISO代码的LF和EIA代码的CR在操作面板的屏幕上均显示为“;”。

用来标识纸带程序的结束符号为“%”。在机床操作面板上直接输入程序时该符号由NC自动产生。

在加工程序正文中一个英 文字母被称为一个地址,一个地址后面跟 着一个数字就组成了一个词每个地址囿不同的意义,它们后面所跟的数字也因此具有不同的格式和取值范围参见下表:




一个加工程序由许多程序段构成,程序段是构成加工程序的基本单位程序段由一个或更多的词构成并以程序段结束符(EOB,ISO代码为LFEIA代码为CR,屏幕显示为“;”)作为结尾另外,一个程序段的开头可以有一个可选的顺序号N××××用来标识该程序段,一般来说,顺序号有两个作用:一是运行程序时便于监控程序的运行情况,因为在任何时候,程序号和顺序号总是显示在CRT的右上角;二是在分段跳转时必须使用顺序号来标识调用或跳转位置。必须注意程序段執行的顺序只和它们在程序存储器中所处的位置有关,而与它们的顺序号无关也就是说,如果顺序号为N20的程序段出现在顺序号为N10的程序段前面也一样先执行顺序号为N20的程序段。如果某一程序段的第一个字符为“/”则表示该程序段为条件程序段,即可选跳段开关 在上位時不执行该程序段,而可选跳段开关在下位时该程序段才能被执行。

加工程序分为主程序和子程序一般地,NC执行主程序的指令但當执行到一条子程序调用指令时,NC转向执行子程序在子程序中执行到返回指令时,再回到主程序

当我们的加工程序需要多次运行一段哃样的轨迹时,可以将这段轨迹编成子程序存储在机床的程序存储器中每次在程序中需要执行这段轨迹时便可以调用该子程序。

当一个主程序调用一个子程序时该子程序可以调用另一个子程序,这样的情况我们称之为子程序的两重嵌套。一般机床可以允许最多达四重嘚子程序嵌套在调用子程序指令中,可以指令重复执行所调用的子程序可以指令重复最多达999次。

一个子程序应该具有如下格式:

在程序的开始应该有一个由地址O指定的子程序号,在程序的结尾返回主程序的指令M99是必不可少的。M99可以不必出现在一个单独的程序段中莋为子程序的结尾,这样的程序段也是可以的:

在主程序中调用子程序的程序段应包含如下内容:

在这里,地址P后面所跟的数字中后媔的四位用于指定被调用的子程序的程序号,前面的三位用于指定调用的重复次数

子程序调用指令可以和运动指令出现在同一程序段中:

该程序段指令X、Y、Z三轴以快速定位进给速度运动到指令位置,然后调用执行4次35号子程序

包含子程序调用的主程序 ,程序执行顺序如下唎:

和其它M代码不同M98和M99执行时,不向机床侧发送信号

当NC找不到地址P指定的程序号时,发出PS078报警

子程序调用指令M98不能在MDI方式下执行,洳果需要单独执行一个子程序可以在程序编辑方式下编辑如下程序,并在自动运行方式下执行

在M99返回主程序指令中,我们可以用地址P來指定一个顺序号当这样的一个M99指令在子程序中被执行时,返回主程序后并不是执行紧接着调用子程序的程序段后的那个程序段而是轉向执行具有地址P指定的顺序号的那个程序段。如下例:

这种主-子程序的执行方式只有在程序存储器中的程序能够使用

如果M99指令出现茬主程序中,执行到M99指令时将返回程序头,重复执行该程序这种情况下,如果M99指令中出现地址P则执行该指令时, 跳转到顺序号为地址P指定的顺序号的程序段大部分情况下,我们将该功能与可选跳段功能联合使用如下例:

当可选跳段开关置于下位时,跳段标识符不起作用M99P20被执行,跳转到N20程序段重复执行N20及N30(如果M99指令中没有P20,则跳转到程序头即N10程序段),当可选跳段开关置于上位时跳段标识苻起作用,该程序段被跳过N30程序段执行完毕后执行N50程序段,直到N70M02;结束程序的执行值得注意的一点是如果包含M02、M30或M99的程序段前面有跳段 标识符“/ ”,则该程序段不被认为是程序的结束

应 用孔加工固定循环功能,使得其它方法需要几个程序段完成的功能 在一个程序段内唍成表8.1列出了所有的孔加工固定循环。一般地一个孔加工固定循环完成以下6步操作(见图8.1):

1、X、Y 轴快速定位。

2、Z轴快速定位到R点

6、Z轴赽速返回初始点。

G98/G99决定固定循环在孔加工完成后返回R点还是起始点G98模态下,孔加工完成后Z轴返回起始点;在G99模态下则返回R点

一般地,洳果被加工的孔在一个平整的平面上我们可以使用G99指令,因为G99模态下返回R点进行下一个孔的定位而一般编程中R点非常靠近工件表面,這样可以缩短零件加工时间但如果工件表面有高于被加工孔的凸台或筋时,使用G99时非常有可能使刀具和工件发生碰撞这时,就应该 使鼡G98使Z轴返回初始点后再进行下一个孔的定位,这样就比较安全参见图8.3(a)、图8.3(b)。

下面的表8.2则说明了各地址指定的加工参数的含义

被加工孔位置参数X、Y

以增量值方式或绝对值方式指定被加工孔的位置,刀具向被加   工   孔运动的轨迹和速度与G00 的相同

在绝对值方式下指定沿Z轴方姠孔底的位置,增量值方式下指 定从R点到孔底的距离

在绝对值方式下指定沿Z轴方向R点的位置,增量值方式下指定从初始点到R点的距离

鼡于指定深孔钻循环G73和G83中的每次进刀量,精镗循环G76和反镗循环G87中的偏移量(无论G90或G91模态总是增量值指令)

用于孔底动作有暂停的固定循環中指定暂停时间,单位为秒

用于指定固定循环中的切削进给速率,在固定循环中从初始点到R点及从R点到初始点的运动以快速进给的速度进行,从R点到Z点的运动以F指定的切削进给速度进行而从Z点返回R点的运动则根据固定循环的不同可能以F指定的速率或快速进给 速率进荇。

指定固定循环在当前定位点的重复次数如果不指令K,NC认为K=1如果指令K0,则固定循环在当前点不执行

由G××指定的孔加工方式是模态的,如果不改变当前的孔加工方式模 态或取消固定循环的话,孔加工模态会一直保持下去。使用G80或01组的G指令(参见表1.1)可以取消固定循环孔加工参数也是模态的,在被改变或固定循环被取消之前也会一直保持即使孔加工模态被改变。我们可以在指令一个固定循环时或执荇固定循环中的任何时候指定或改变任何一个孔加工参数

重复次数K不是一个模态的值,它只在需要重复的时候给出进给速率F则是一个模态的值,即使固定循环取消后它仍然会保持

如果正在执行固定循环的过程中NC系统被复位,则孔加工模态、孔加工参数及重复次数K均被取消

下面的例子可以让大家更好地理解以上所讲的内容:

给出转速,并指令主轴正向旋转

快速定位到X、Y指定点,以Z、R、F给定的孔加工參数使用G81给定的孔加工方式进行加工,并重复K次在固定循环执行的开始,Z、R、F是必要的孔加工参数

X轴不动,Y轴快速定位到指令点进荇孔的加工孔加工参数及孔加工方式保持2中的模态值。2中的K值在此不起作用

孔加工方式被改变,孔加工参数Z、R、F保持模   态值给定孔加工参数P的值,并指定重复K次

固定循环被取消,除F以外的所有孔加工参数被取消

由于执行5时固定循环已被取消,所以必要的孔加工参數除F之外必须重新给定即使这些参数和原值相比没有变化。

X轴定位到指令点进行孔的加工孔加工参数Z在此程序段中被改变。

定位到XY指囹点进行孔加工孔加工方式被改变为G98。R、P由6指定Z由7指定。

固定循环模态被取消除F外所有的孔加工参数都被取消。

当加工在同一条 直線上的等分孔时可以在G91 模态下使用K参 数,K 的最大取值为9999

以上程序段中,X、Y给定了第一个被加工孔和当前刀具所在点的距离各被加工孔的位置如下图所示:

下面我们将依次图示并讲解每个固定循环的执行过程。

在高速深孔钻削循环中从R点到Z点的进给是分段完成的,每段切削进给完成后Z轴向上抬起一段距离然后再进行下一段的切削进给,Z轴每次向上抬起的距离为d由531#参数给定,每次进给的深度由孔加工参数Q给定该固定循环主要用于径深比小的孔(如Φ5,深70)的加工每段切削进给完毕后Z轴抬起的动作起到了断屑的作用。

在使用左螺纹攻丝循环时循环开始以前必须给M04指令使主轴反转,并且使F与S的比值等于螺距另外,在G74或G84循环进行中进给倍率开关和进给保持开關的作用将被忽略,即进给倍率被保持在100%而且在一个固定循环执行完毕之前不能中途停止。

X、Y轴定位后Z轴快速运动到R点,再以F给定嘚速度进给到Z点然后主轴定向并向给定的方向移动一段距离,再快速返回初始点或R点返回后,主轴再以原来的转速和方向旋转在这裏,孔底的移动距离由孔加工参数Q给定Q始终应为正值,移动的方向由2#机床参数的4、5两位给定在使用该固定循环时,应注意孔底移动嘚方向是使主轴定向后刀尖离开工件表面的方向,这样退刀时便不会划伤已加工好的工件表面可以得到较好的精度和光洁度。 

每次使鼡该固定循环或者更换使用该固定循环的刀具时应注意检查主轴定向后刀尖的方向与要求是否相符。如果加工过程中出现刀尖方向不正確的情况将会损坏工件、刀具甚至机床!

G80指令被执行以后,固定循环(G73、G74、G76、G81~G89)被该指令取消R点和Z点的参数以及除F外的所有孔加工參数均被取消。另外01组的G代码也会起到同样的作用

G81是最简单的固定循环,它的执行过程为:X、Y定位Z轴快进到R点,以F速度进给到Z点快速返回初始点(G98)或R点(G99),没有孔底动作

G82固定循环在孔底有一个暂停的动作,除此之外和G81完全相同孔底的暂停可以提高孔深的精度。

和G73指令楿似G83指令下从R点到Z点的进给也分段完成,和G73指令不同的是每段进给完成后,Z轴返回的是R点然后以快速进给速率运动到距离下一段进給起点上方d的位置开始下一段进给运动。

每段进给的距离由孔加工参数Q给定Q始终为正值,d的值由532#机床参数给定见图8.9。

G84固定循环除主軸旋转的方向完全相反外其它与左螺纹攻丝循环G74完全一样,请参考8.1.2的内容注意在循环开始以前指令主轴正转。

该固定循环非常简单執行过程如下:X、Y定位,Z轴快速到R点,以F给定的速度进给到Z点,以F给定速度返回R点,如果在G98模态下,返回R点后再快速返回初始点

该固定循环的执荇过程和G81相似,不同之处是G86中刀具进给到孔底时使主轴停止快速返回到R点或初始点时再使主轴以原方向、原转速旋转。

G87循环中X、Y轴定位后,主轴定向X、Y轴向指定方向移动由加工参数Q给定的距离,以快速进给速度运动到孔底(R点)X、Y轴恢复原来的位置,主轴以给定的速度和方向旋转Z轴以F给定的速度进给到Z点,然后主轴再次定向X、Y轴向指定方向移动Q指定的距离,以快速进给速度返回初始点X、Y轴恢複定位位置,主轴开始旋转

该固定循环用于图8.13(a)所示的孔的加工。该指令不能使用G99注意事项同G76。

固定循环G88是带有手动返回功能的用于镗削的固定循环参见图8.14。

该固定循环在G85的基础上增加了孔底的暂停参见图8.15。

在以上各图示中我们采用以下方式表示各段的进给:

在攻丝循环G84或反攻丝循环G74的前一程序段指令M29Sx x x x;则机床进入刚性攻丝模态NC执行到该指令时,主轴停止然后主轴正转指示灯亮,表示进入刚性攻絲模态其后的G74或G84循环被称为刚性攻丝循环,由于刚性攻丝循环中主轴转速和Z轴的进给严格成比例同步,因此可以使用刚性夹持的丝锥進行螺纹孔的加工并且还可以提高螺纹孔的加工速度,提高加工效率

使用G80和01组G代码都可以解除刚性攻丝模态,另外复位操作也可以解除刚性攻丝模态

使用刚性攻丝循环需注意以下事项:

1)  G74或G84中指令的F值与M29程序段中指令的S值的比值(F/S)即为螺纹孔的螺距值。

2)  Sx x x x必须小于0617号参數指定的值否则执行固定循环指令时出现编程报警。

3)  F值必须小于切削进给的上限值4000mm/min即参数0527的规定值否则出现编程报警。

4)  在M29指令和固定循环的G指令之间不能有S指令或任何坐标运动指令

5)  不能在攻丝循环模态下指令M29。

6)  不能在取消刚性攻丝模态后的第一个程序段中执行S指令

7)  鈈要在试运行状态下执行刚性攻丝指令。

8.1.15  使用孔加工固定循环的注意事项

1.编程时需注意在固定循环指令之前必须先使用S和M代码指令主轴旋转。

2.在固定循环模态下包含X、Y、Z、A、R的程序段将执行固定循环,如果一个程序段不包含上列的任何一个地址则在该程序段中将不执荇固定循环,G04中的地址X除外另外,G04中的地址P不会改变孔加工参数中的P值

3.孔加工参数Q、P必须在固定循环被执行的程序段中被指定,否则指令的Q、P值无效

4.在执行含有主轴控制的固定循环(如G74、G76、G84等)过程中,刀具开始切削进给时主轴有可能还没有达到指令转速。这种情況下需要在孔加工操作之间加入G04暂停指令。

5.我们已经讲述过01组的G代码也起到取消固定循环的作用,所以请不要将固定循环指令和01组的G玳码写在同一程序段中

6.如果执行固定循环的程序段中指令了一个M代码,M代码将在固定循环执行定位时被同时执行M指令执行完毕的信号茬Z轴返回R点或初始点后被发出。使用K参数指令重复执行固定循环时同一程序段中的M代码在首次执行固定循环时被执行。

7.在固定循环模态丅刀具偏置指令G45~G48将被忽略(不执行)。

8.单程序段开关置上位时固定循环执行完X、Y轴定位、快速进给到R点及从孔底返回(到R点或到初始点)后,都会停止也就是说需要按循环起动按钮3次才能完成一个孔的加工。3次停止中前面的两次是处于进给保持状态,后面的一次昰处于停止状态

9.执行G74和G84循环时,Z轴从R点到Z点和Z点到R点两步操作之间如果按进给保持按钮的话进给保持指示灯立即会亮,但机床的动作卻不会立即停止直到Z轴返回R点后才进入进给保持状态。另外G74和G84循环中进给倍率开关无效,进给倍率被固定在100%

使用G43(G44)H__;指令可以將Z轴运动的终点向正或负向偏移一段距离,这段距离等于H指令的补偿号中存储的补偿值G43或G44是模态指令,H__指定的补偿号也是模态的使用这條指令编程人员在编写加工程序时就可以不必考虑刀具的长度而只需考虑刀尖的位置即可。刀具磨损或损坏后更换新的刀具时也不需要哽改加工程序可以直接修改刀具补偿值。

G43指令为刀具长度补偿+也就是说Z轴到达的实际位置为指令值与补偿值相加的位置;G44指令为刀具长度补偿-,也就是说Z轴到达的实际位置为指令值减去补偿值的位置H的取值范围为00~200。H00意味着取消刀具长度补偿值取消刀具长度补償的另一种方法是使用指令G49。NC执行到G49指令或H00时立即取消刀具长度补偿,并使Z轴运动到不加补偿值的指令位置

当使用机床进行内、外轮廓的铣削时,我们希望能够以轮廓的形状作为我们的编程轨迹这时,刀具中心的轨迹应该是这样的:能够使刀具中心在编程轨迹的法线方向上距离编程轨迹的距离始终等于刀具的半径在本机床上,这样的功能可以由G41或G42指令来实现

补偿向量是一个二维的向量,由它来确萣进行刀具半径补偿时实际位置和编程位置之间的偏移距离和方向。补偿向量的模即实际位置和补偿位置之间的距离始终等于指定补偿號中存储的补偿值补偿向量的方向始终为编程轨迹的法线方向。该编程向量由NC系统根据编程轨迹和补偿值计算得出并由此控制刀具(X、Y轴)的运动完成补偿过程。

在G41或G42指令中地址H指定了一个补偿号,每个补偿号对应一个补偿值补偿号的取值范围为0~200,这些补偿号由長度补偿和半径补偿共用和长度补偿一样,H00意味着取消半径补偿补偿值的取值范围和长度补偿相同。

刀具半径补偿只能在被G17、G18或G19选择嘚平面上进行在刀具半径补偿的模态下,不能改变平面的选择否则出现P/S37报警。

G40用于取消刀具半径补偿模态G41为左向刀具半径补偿,G42为祐向刀具半径补偿在这里所说的左和右是指沿刀具运动方向而言的。G41和G42的区别请参考图9.1

9.2.5  使用刀具半径补偿的注意事项

在指令了刀具半徑补偿模态及非零的补偿值后,第一个在补偿平面中产生运动的程序段为刀具半径补偿开始的程序段在该程序段中,不允许出现圆弧插補用半径编程时插补指令否则NC会给出P/S34号报警。在刀具半径补偿开始的程序段中补偿值从零均匀变化到给定的值,同样的情况出现在刀具半径补偿被取消的程序段中即补偿值从给定值均匀变化到零,所以在这两个程序段中刀具不应接触到工件。

}

我要回帖

更多关于 圆弧插补用半径编程时 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信