逐点比较插补算法设计.doc_第1页
逐点比较插补算法设计.doc_第2页
逐点比较插补算法设计.doc_第3页
逐点比较插补算法设计.doc_第4页
逐点比较插补算法设计.doc_第5页
已阅读5页,还剩43页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

.学院毕 业 论 文(设 计) 2015 届机械设计制造及其自动化专业 13 班级题 目 逐点比较插补算法设计 姓 名 学号 1 指导教师 职称 教授 二一 五 年 五 月 二十一 日 摘 要逐点比较法是数控加工中常用的插补方法,通过控制刀具每次移动的位置与理想位置的误差函数进而实现零件加工,鉴于VB编程简单、直观,采用VB可以实现逐点比较插补原理的相关程序设计及加工过程虚拟化。插补技术是机床数控系统的核心技术,逐点比较法可以实现直线和圆弧插补算法,其算法的优劣直接影响零件直线和圆弧轮廓的加工精度和加工速度。文章在传统的逐点比较直线插补与圆弧插补算法的基础上,提出以八方向进给取代传统的四方向进给,研究了偏差最小的走步方向的实现方法,同时研究了保证数控机床坐标进给连续的偏差递推计算过程。结果表明,新算法可以提高零件轮廓的逼近精度且减少了插补计算次数,从而提高了零件直线和圆弧轮廓的加工精度和加工速度。关 键 词数控;插补;逐点比较;逼近;偏差函数The algorithm design of point-to-point comparison Author: LI Zhiyuan Tutor: Chen LiangjiAbstractAbstract: The algorithm of point-to-point comparison is a typical plugging method in processing of numerical control,manufacturing parts by controlling error function between the position the cutting tool moves to and the perfect position.VB program is simple and visual,which can visualize the programming and processing of The algorithm of point-to-point comparison. Interpolation technology is the core technology of machine tools CNC system. The algorithm of point-to-point comparison can achieve the algorithms of linear and circular interpolation.The algorithm of point-to-point comparison linear and circular interpolation affects the machining accuracy and rate directly.Base on the conventional algorithm of point-to-point comparison linear and circular interpolation,it was put forward in the article that feed in eight directions takes place of feed in four directions,the achievement method of feed direction was researched that can result in the least deviation,the deviation recursive calculation process was researched that can ensure a continuous CNC coordinate feed.The result showed that the approximation accuracy of parts contour was improved and the number of interpolation calculation was reduced by use of new algorithm,and then the machining accuracy and rate of parts linear and circular contour was improved.Keywords:CNC;interpolation;point-to-point comparison ;error function目 录第一章绪论11.1 设计与研究的重要性11.3 本设计的主要工作2第二章逐点比较法42.1 基准脉冲插补42.2 逐点比较法42.2.1逐点比较法直线插补算法62.1.2逐点比较法圆弧插补13第三章逐点比较法算法的改进243.1 改进的逐点比较直线插补算法253.2 改进的逐点比较圆弧插补算法30第4章VB插补程序代码344.1逐点比较法直线插补的程序设计方案344.1.1程序实现344.1.2工作界面344.1.3源程序代码354.2 逐点比较法圆弧插补VB程序38第五章结论42参考文献44精选范本.第一章绪论在现代制造系统中数控系统占有非常重要地位,数控技术是一门不仅具有理论性而且具有实践性的多学科融合技术。尤其,插补技术是数控技术的一个重要组成部分,数控加工中常采用的插补方法是逐点比较法插补法。逐点比较插补法通过控制刀具每次移动的位置与理想位置误差函数进行比较,从而使实现零件的加工。由于Visual Basic 在实际当中的广泛应用及编程简单、直观,采用Visual Basic 可以实现逐点比较法插补原理的相关程序设计。随着科技水平的不断提高,人类对机械制造技术提出了更高的要求。机械制造技术的基础是数控技术。数控系统编程影响着数控机床的各种性能,不但决定着加工过程而且还决定着加工精度,所以,对数控系统的加工有着非常重大的意义。1.1 设计与研究的重要性 插补技术是机床数控系统的核心技术。插补是机床数控系统按照一定方法控制执行部件运动、进而产生零件轮廓的过程。插补的本质是在所需路径或轮廓上的两个已知点间,依据某一数学函数确定其中中间点的位置坐标值。数控系统依据其坐标值控制执行部件的运动,从而实现数控加工。插补算法的优劣直接影响数控系统的各性能指标,其计算精度也将直接影响零件轮廓的加工精度。因此,插补算法对数控系统的性能非常重要。 1.2 设计的相关技术及现状在现代计算机数控系统中,插补算法大部分都是采用计算机的程序软件来实现。由于直线和圆弧是构成工件轮廓的基本要素,因此一般的数控系统都具有直线和圆弧插补功能。数控系统的插补算法可划分为基准脉冲插补和数据采样插补这两大类,逐点比较插补法是基准脉冲插补计算方法中的一种常采用的方法。脉冲增量法实现起来相对比较简单而且易用硬件实现,从而被广泛应用在开环数控系统中。因此,大多数的CNC系统都具有直线和圆弧插补功能。由于大多数非圆轮廓曲线均可以采用圆弧来逼近,在系统不具备高级曲线输出功能时,若有一个简单精确而且快速的圆弧插补功能则显得非常必要。1.3 本设计的主要工作逐点比较插补法不但能进行过象限处理和终点判别,而且能对译码后的结果进行插补运算。本设计在传统的逐点比较圆弧插补算法的基础上, 提出一种改进算法。这种改进的算法不仅减少数控系统的插补次数而且还提高插补精度,从而提高零件轮廓的加工精度。本设计还采用了VB程序编写插补算法并调试其程序在计算机中实现模拟数控插补方法。第二章 逐点比较法2.1 基准脉冲插补脉冲增量插补为行程标量插补。这类插补算法的特点是每次插补结束仅产生一个行程增量,以一个个脉冲的方式输出。脉冲增量插补算法主要应用在开环数控系统中。 基准脉冲插补在插补计算过程中不断地向各坐标轴发出互相协调的进给脉冲,驱动各坐标轴进给电动机的运动,一个脉冲所产生的移动量称为脉冲当量,通常用表示。脉冲当量值越小,数控机床的加工精度就越高,对数控系统的计算能力的要求也越高。采用脉冲增量插补算法的CNC系统,其坐标轴进给速度受插补程序运行时间的限制。逐点比较法是基于脉冲增量插补方法之一。2.2 逐点比较法逐点比较插补法就是每走一步(即一个脉冲当量)都要将加工点的瞬时坐标与规定的图形轨迹相比较,判断实际加工点在给定轨迹的什么位置, 从而决定下一步的进给方向,这样就能得出一个非常接近规定图形的轨迹。逐点比较法又称区域判别法,又称代数运算法,或醉步式近似法。逐点比较法的基本原理是计算机在控制加工过程中,能逐点地计算和判别加工偏差,以控制坐标进给,按规定图形加工出所需要工件,在数控装置的控制下,按要求的轨迹运动时,每走一步都要和规定的轨迹比较,根据比较的结果决定下一步的移动方向。每走一步都要完成四个工作节拍(如图2-1)。图2-1 逐点比较的工作节拍(1) 偏差判别:判别加工点对规定图形的偏离位置,确定进给方向。(2) 坐标进给:使加工点向规定的图形趋进,缩小偏差。(3) 偏差计算:计算新的加工点与给定的图形之间的偏差,作为下一步判别依据。(4) 终点判别:判断是否到达终点,若到达则停止插补;否则,在回到第一拍,如此不断重复上述循环过程,加工出所需要的轮廓形状。逐点比较法可以实现直线和圆弧插补。其特点是运算直观,插补误差小于一个脉冲当量,而且输出脉冲均匀,输出脉冲的速度变化小,调节方便。2.2.1逐点比较法直线插补算法1. 逐点比较法直线插补原理直线插补时,以直线的起点为坐标原点,给出终点坐标,见图如图2-2所示,则直线方程为 改写为 (2-1)式中 X,Y为该直线上任一点P的坐标。对XY平面第一象限直线段进行插补,直线段起点位于坐标原点O,终点位于,设点为任一动点。 图2-2 逐点比较法直线插补1)偏差判别设为加工动点,则如下若P点在该直线OA上,则: 若P点在该直线OA上方,则: 若P点在该直线OA下方,则: 由此,可取偏差判别函数为 (2-2)则可得到如下结论:当=0时,加工动点P落在给定直线上;当0时,加工动点P落在给定直线上方;当0时,加工动点P落在给定直线下方。2) 坐标进给 坐标进给是向使偏差缩小的方向。根据这个原则,就有:当0时,应该向X的正向进给一步,使点接近直线OA;当0时,应该向Y的正向进给一步,使点接近直线OA;当=0时,既可以向X的正向进给一步,也可以Y的正向进给一步,但通常将F=0和F0做同样的处理,既都向X的正向进给一步。在某一方向进给一步,就是有插补装置发出一个进给脉冲,来控制向某一方向进给一步。3)偏差计算若直接依据(2-2)公式进行偏差计算,则要进行乘法和减法计算,还要对动点A的坐标进行计算。不论是对硬件进行插补,还是对软件进行插补,都比较繁杂,故为便于计算机的计算,在插补运算的新偏差计算中,通常采用递推公式来进行。即设法找出相邻两个加工动点偏差值间的关系,每进给一步后,新加工动点的偏差可用前一加工动点的偏差推算出来。而起点是给定直线上的点,即=0。这样所加工动点的偏差都可以从起点开始一步步推算出来。若给定直线在第一象限,则有:当F0时,加工动点向+X方向进给一步,即加工动点由沿+X方向移动到,而新加工动点的偏差为 又因为的坐标为 所以 则 当F0时,加工动点向+Y方向进给一步,同理得 上述公式就是第一象限直线插补偏差的递推公式。从中可以看出,偏差计算只用到了终点坐标,而不必计算每一个加工动点的坐标值,且只有加法和减法运算,形式简单。4)终点判别判断是否到达终点,未到达终点则返回第一步,继续插补,到终点,则停止本程序段的插补。终点判别的方法一般有两种:第一种方法是每走一步判断及是否成立,如成立,则插补结束否则继续。第二种方法二是把每个程序段中的总步数求出来,即,每走一步n-1,直到n=0为止。注意:终点判别的两种方法中,均用坐标的绝对值进行计算。2.直线插补计算举例加工第一象限直线OE,如图2-3所示,起点为坐标原点,终点坐标为E(4,3)。试用逐点比较法对该段直线进行插补,并画出插补轨迹。解:用第二种判别方法,则 n= 4+3= 7又因为E点的坐标为(4,3),即该直线位于第一象限,故按第一象限进行插补运算。其运算过程见表2-1,走步轨迹见图2-3。序号工作节拍偏差判别坐标进给新偏差计算终点判别1F0=0+XF1=F0-Ye=-3=7-1=62F10+XF3=F2-Ye=-2=5-1=44F30+XF5=F4-Ye=-1=3-1=26F50+XF7=F6-Ye=0=1-1=0表2-1 直线插补运算过程 图2-3 直线插补轨迹过程3.四象限的直线插补 前面所述的均为第一象限直线的插补方法。第一象限直线插补方法经适当处理后可推广到其余象限的直线插补。四个象限直线的偏差符号和插补进给方向如图2-4所示,用L1、L2、L3、L4分别表示第、象限的直线。为适用于四个象限直线插补,插补运算时用X,Y代替X,Y,偏差符号确定可将其转化到第一象限,动点与直线的位置关系按第一象限判别方式进行判别。当动点位于直线上时偏差F=O,动点不在直线上且偏向Y轴一侧时FO,偏向X轴一侧时F0。由图2-4还可以看到,当F0时应沿X轴走步,第一、四象限走X方向,第三、二象限走-X方向;当FO时应沿Y轴走步,第一、二象限走+Y方向,第三、四象限走-Y方向。终点判别也应用终点坐标的绝对值作为计数器初值。综上所知,靠近Y轴区域偏差大于零,靠近X轴区域偏差小于零。F0时,进给都是沿X轴,不管是X向还是X向,X的绝对值增大;F0时,进给都是沿Y轴,不论Y向还是Y向,Y的绝对值增大。图2-4 四象限直线插补流程图四个象限的直线插补偏差计算递推公式见表2-2;也可以使插补计算中的坐标值不带符号,用坐标的绝对值进行计算,此时偏差计算的递推公式见表23。象限坐标进给偏差计算+X+Y-X+Y-X-Y+X-Y表2-2 直线插补公式(坐标值带符号)、象限坐标进给偏差计算+X+Y-X+Y-X-Y+X-Y表2-3 直线括补公式(坐标值为绝对值)2.1.2 逐点比较法圆弧插补1逐点比较法圆弧插补原理在加工圆弧过程中,人们很容易联想到使用动点到圆心的距离与该圆弧的名义半径进行比较来反映加工偏差。逐点比较法圆弧插补中,一般以圆心为原点,给出圆弧起点坐标和终点坐标,以及加工顺圆及圆弧所在象限。1)判别函数及判别条件图2-5 圆弧与动点坐标假设被加工零件的轮廓为如图2-5所示,弧AB为所要加工的第一象限逆圆,圆心在O(0,0),半径为R,圆弧起点为A,圆弧终点为B,圆弧上任意加工动点为M。当比较该加工动点到圆心的距离与圆弧半径R的大小时,可获得刀具与圆弧轮廓之间的相对位置关系。当动点M正好落在圆弧上时,则有下式成立 当动点M落在圆弧外侧时,则有下式成立 当动点M落在圆弧内侧时,则有下式成立 由此可见,取逐点比较法圆弧插补的偏差函数表达式为 2)进给方向判别当动点落在圆外时,为了减小加工误差,应向圆内进给,即向X轴方向走一步;当动点落在圆内时,应向圆外进给,即向Y轴方向走一步。当动点正好落在圆弧上且尚未到达终点时,为了使加工继续下去,理论上向+Y轴或X轴方向进给均可以,但一般情况下约定向X轴方向进给。综上所述,现将逐点比较法第象限逆圆插补规则概括如下:当F0时,即0,动点落在圆外,则向X轴方向进给一步;当F0时,即=0,动点正好落在圆上,约定向X轴方向进给一步;当F0时,即0,动点落在圆内,则向()轴方向进给一步。由偏差函数表达式可知,计算偏差F值,就必须进行动点坐标、圆弧半径的平方运算。显然,在用硬件或汇编语言实现时不太方便。为了简化这些计算,按逐点比较法直线插补的思路,也可以推导出逐点比较法圆弧插补过程中偏差函数计算的递推公式。 假设第i次插补后,动点坐标为M ,其对应偏差函数为 当0,向X轴方向进给一步,则新的动点坐标值为 , 因此,新的偏差函数为 同理,当0,则向轴方向进给一步,则新的动点坐标值为 因此,可求得新的偏差函数为 将上式进行比较,可以看出两点不同:第一,递推形式的偏差计算公式中仅有加/减法以及乘2运算,而乘2可等效成该二进制数左移一位,这显然比平方运算来得简单。第二,进给后新的偏差函数值与前一点的偏差值以及动点坐标M 均有关系。由于动点坐标值随着插补过程的进行而不断变化,因此,每插补一次,动点坐标就必须修正一次,以便为下一步的偏差计算作好准备。 3)终点判别和直线插补一样,圆弧插补过程也有终点判别问题。当圆弧轮廓仅在一个象限区域内,其终点判别仍可借用直线终点判别的两种方法进行,只是计算公式略不同。插补运算开始前计算出两个坐标进给的总步数N,在插补过程中,X或Y每走一步,就从总步数N中减1,当N=0时,表示到达终点。插补前分别计算两个坐标进给的总步数和,其中、,当X坐标进给一步时,计算-1,当Y坐标进给一步时,计算-1,两坐标进给的总步数均减为零时,表示到达终点。2.圆弧插补计算举例现欲加工第一象限逆圆弧AB,如图2-6所示,起点A(0,4),终点B(4,0),试用逐点比较法进行插补,并画出插补轨迹。解:按两方向坐标应走总步数之和作为,则0=(4-0)十(4-0)=8起点在圆弧上,则=0,=4,=0其插补运算过程见表2-4, 走步轨迹见图2-6.序号工作节拍偏差判别坐标进给偏差计算坐标计算终点判别起点F0=0X0=4,Y0=0=81F0=0-X F1=F0-2X0+1=-7X1=3,Y1=0=8-1=72F10+YF2=F1+2Y1+1=-6X2=3,Y2=1=7-1=63F20+YF3=F2+2Y2+1=-3X3=3,Y3=2=6-1=54F30-X F5=F4-2X4+1=-3X5=2,Y5=3=4-1=36F50-X F7=F6-2X6+1=1X7=1,Y7=4=2-1=18F70-X F8=F7-2X7+1=0X8=0,Y8=4=1-1=0表2-4 圆弧插补运算过程表图2-6 圆弧插补轨迹过程3.四象限的圆弧插补 为叙述方便,用SR1、SR2、SR3、SR4分别表示第一、第二、第三、第四象限的顺圆弧;用NR1、NR2、NR3、NR4分别表示第一、第二、第三、第四象限的逆圆弧。 图2-7 四个象限的动点趋向从前面分析可知,第一象限逆圆插补运动,使动点坐标的绝对值减少,使的绝对值增加。X轴进给一步,从而得出 (2-3) y轴进给一步,从而得出 (2-4) 参照图2- 7,第一象限顺圆弧SRI运动趋势是X轴绝对值增加,Y轴绝对值减小。由此可以得出:当时,动点在圆上或圆外,Y轴负向进给,绝对值减小 当时,动点在圆内,X轴正向进给,绝对值增加 与直线插补相似,如果插补计算都用坐标的绝对值进行,将进给方向另做处理,那么,四个象限的圆弧插补计算可统一起来,变得简单多了。从图2- 7可以看出,SR1、NR2、SR3、NR4的插补运动趋势都是使X轴坐标绝对值增加,Y轴坐标绝对值减小,这几种圆弧的插补计算是一致的,以SRI为代表。NR1、SR2、NR3、SR4插补运动趋势都是使X轴坐标绝对值减小,Y轴坐标绝对值增加,这四种圆弧插补计算也是一致的,以NR1为代表。 如图2 - 7所示,与第一象限逆圆NR1相对应的其它三个象限的圆弧有SR2、NR3、SR4。其中,第二象限顺圆SR2与第一象限逆圆NRI是关于Y轴对称的,起点坐标(-,), 图中可知,两个圆弧从各自起点插补出来的轨迹对于Y坐标对称,即Y方向的进给相同,X方向进给相反,机器完全按第一象限逆圆偏差计算公式进行计算,所不同的是将X轴的进给方向变为正向,则走出的就是第二象限顺圆SR2。在这里,圆弧的起点坐标要取其数字的绝对值,即进入机器时,起点坐标为无符号数(,),而-的“一”号则用于确定象限,从而确定进给方向。表2-5列出了8种圆弧插朴的计算公式和进给方向。偏差符号圆弧线型进给方向偏差计算坐标计算SR1、NR2-YSR3、NR4+YSR4、NR1-XSR2、NR3+X偏差符号圆弧线型进给方向偏差计算坐标计算SR1、NR4-XSR3、NR2-XSR2、NR1+YSR4、NR3-Y表2-5 圆弧插补计算公式和进绐方向4. 逐点比较法圆弧插补的过象限处理为了加工二个象限或二个以上象限的圆弧,圆弧插补程序必须具有自动过象限功能。(1)圆弧自动过象限所谓圆弧自动过象限,是指圆弧的起点和终点不在同一象限内,如图2-8 所示。为实现一个程序段的完整功能,需设置圆弧自动过象限功能。要完成过象限功能,首先应判别何时过象限。过象限有一显著特点,就是过象限时刻正好是圆弧与坐标轴相交的时刻,因此在两个坐标值中必有一个为零,判断是否过象限只要检查是否有坐标值为零即可。过象限后,圆弧线型也改变了,以图2-8 为例,由SR2 变为SR1。但过象限时象限的转换是有一定规律的。当圆弧起点在第一象限时,逆时针圆弧过象限后转换顺序是NR1NR2NR3NR4NR1,每过一次象限,象限顺序号加1,当从第四象限向第一象限过象限时,象限顺序号从4 变为1;顺时针圆弧过象限的转换顺序是SR1SR4SR3SR2SR1,即每过一次象限,象限顺序号减1,当从第一象限向第四象限过象限时,象限顺序号从1变为4。(2)坐标变换前面所述的逐点比较法插补是在XY平面中讨论的。对于其他平面的插补可采用坐标变换方法实现。用Y代替X,Z代替Y,即可实现YZ平面内的直线和圆弧插补;用Z代替Y而X坐标不变,就可以实现XZ平面内的直线与圆弧插补。 图2-8 圆弧过象限第三章逐点比较法算法的改进从第二章介绍可以看出,逐点比较法每插补一次,要么在X方向走一步,要么在Y方向走一步,走步方向为+X、-X、+Y、-Y这四个方向之一。因此可称之为四方向逐点比较法。四方向逐点比较法插补结果以垂直的折线逼近给定轨迹,插补误差小于或等于一个脉冲当量。八方向逐点比较法与四方向逐点比较法相比,不仅以+X、-X、+Y、-Y作为走步方向,而且两个坐标可以同时进给,即四个合成方向+X+Y、-X+Y、-X-Y、+X-Y也作为进给方向。如图3-1所示。八方向逐点比较法以。折线逼近给定轨迹,逼近误差小于半个脉冲当量,加工出来的工件质量要比四方向逐点比较法的高。图 3-1 八个进给方向3.1改进的逐点比较直线插补算法 在第二章插补运算方法中采用偏差计算递推公式的出发点就是根据当前点的偏差值推算出下一点的偏差值,当运动到该点时,就能立即作出下一步的走向, 使坐标进给保持连续。同时,偏差递推式只有加减运算, 便于硬件件或软件实现, 且加减的运算时间短。逐点比较直线插补算法简单, 但不能实现两轴联动, 而插补精度不高。 当直线斜率变大时, 误差也变大。特别是当终点坐标等于零时, 整条直线的加工误差均为一个脉冲当量。因此对传统的逐点比较直线插补算法进行改进。如图3- 2所示,八个进给方向将四个象限分为八个区域。在各个区域中的直线的进给方向如图3 -2所示,如在l区的直线进给方向为+X+Y、或+X,在2区的直线进给方向为+X+Y或+Y。可见,对于某一象限的直线来说,进给方向有三种可能,要么两坐标同时进给,要么X坐标进给,要么Y坐标进给。图3- 2 八个方向直线插补为了保证数控机床坐标进给连续,简化其数控系统的偏差计算,同样采用偏差计算递推公式。以X -Y平面第一象限的直线为例,说明改进后的八方向逐点比较直线插补算法。第一象限的走步方向只有+X、+Y 、+X +Y 三种:(1)+X方向进给一个脉冲当量,;(2)+Y方向进给一个脉冲当量,;(3)+X +Y方向各进给一个脉冲当量:为了逼近轮廓与零件轮廓的误差达到最小,使得走步过程中每一动点的偏差值最小, 计算当前点走+X 、+Y 、+X +Y三种方向后下一点的三个偏差值大小, 对三个偏差值的绝对值进行比较,取偏差绝对值最小的走步方向为当前点的走步方向。当有两个偏差值绝对值相等时, 以+X +Y 作为走步方向.在当前点计算出接下来的第2 点偏差值,选择下一点的进给方向, 下一点的偏差值和当前点的给进方向在前一点走向当前点的过程中确定。因为直线的起点偏差为零 , 直线终点已知, 在插补计算初始化的过程中就可以算出第1 点偏差值和确定起点的走步方向。 在起点走向第1 点的过程中计算第2点偏差值和确定第1 点走步方向。 在第1 点向第2点的过程中计算第3 点偏差值和确定第2 点走步方向, 直至走到直线终点。改进后的八方向逐点比较直线插补算法在计算过程中, 每一动点的偏差值都能达到最小,使得逼近轮廓与零件轮廓的误差达到最小,逼近误差小于或等于半个脉冲当量,是传统的逐点比较直线插补算法逼近误差的一半。下面图3-3图3-8是三条直线分别采用传统逐点比较直线插补和改进逐点比较直线插补的比较图。综上所述, 改进后的逐点比较直线插补算法减少了插补次数,提高了零件轮廓的逼近精度, 因此提高了数控机床零件加工的速度和精度。 图3-3直线y =x/ 6 的传统逐点比较插补图3-4直线y =x/ 6 的改进逐点比较插补图3-5直线y =x 的传统逐点比较插补图3-6 直线y =x 的改进逐点比较插补图3-7直线y =6x 的传统逐点比较插补图3-8直线y =6x 的改进逐点比较插补3.2 改进的逐点比较圆弧插补算法用八方向逐点比较法,在八个区域中共有1 6种圆弧。如图3- 9所示。各种圆弧的进给方向都在图上标出,仍按四方向逐点比较法处理方式,用坐标绝对值进行计算,进给方向的正负由数据处理程序模块直接传递进给驱动程序,不由插补程序处理。、图3-9 十六种圆弧及进给方向同改进的逐点比较直线插补算法一样,以XY 平面第一象限的逆时针圆弧为例,说明改进后的八方向逐点比较圆弧插补算法。第一象限逆时针圆弧的走步方向只有X 、Y 、X Y 三种:(1) X 方向进给一个脉冲当量, ;( 2) Y 方向进给一个脉冲当量, ;( 3 ) X Y 方向各进给一个脉冲当量:如同改进的逐点比较直线插补算法一样,为了逼近轮廓与零件轮廓的误差达到最小,就要使得走步过程中每一动点的偏差值最小,计算当前点走X 、Y 、XY 三种方向后下一点的三个偏差值大小。对、三个偏差值的绝对值进行比较, 取偏差绝对值最小的走步方向为当前点的走步方向,直至加工逼近的轨迹。插补流程图如图3-10 所示。图3-10 第一象限逆时针圆弧逐点比较插补流程改进后的八方向逐点比较圆弧插补算法计算逼近误差是传统的逐点比较圆弧插补算法逼近误差的一半。图3-11、图3-12是分别采用传统逐点比较圆弧插补和改进逐点比较圆弧插补的比较, 其中圆弧为半径6 个脉冲当量的第一象限逆时针圆弧。图3-11 第一象限逆时针圆弧逐点比较插补流程图3-12 第一象限逆时针圆弧逐点比较插补流程综上所述,改进后的逐点比较圆弧插补算法不但减少了插补次数,而且提高了零件轮廓的逼近精度, 还提高了数控机床零件加工的速度和精度。 第4章VB插补程序代码 4.1逐点比较法直线插补的程序设计方案为了直观显示数控插补过程,必须动态地描述刀具运动过程中位置变化情况。在现行的程序设计语言中,Visual Basic提供了一种可视界面的设计方法,使用窗体和控件设置应用程序界面,程序设计语言简单,又面向对象机制,因此可采用VB实现。 4.1.1程序实现根据插补的要求,该程序首先要判断加工直线的象限,然后通过偏差判别坐标进给偏差计算判别终点完成直线插补,其工作过程。4.1.2工作界面该程序运行时,首先输入插补直线的起始点X坐标和终点Y坐标,然后确定进行模拟。界面设计如图4-1某一直线插补的运行界面如图4-2。图4-1 界面设计图4-2 程序模拟界面4.1.3源程序代码程序充分采用了循环结构与选择结构的基本编程方法,对于第一象限进行了编程,其它象限与此类似。Dim n, i,x(100), y(100), xe, ye, f(100) As Integer Private Sub Command1_Click()x(0) = Val(Textl. Text)y(0) = Val(Text2. Text)xe =Val(Text3. Text) ye = Val(Text4. Text) If Abs(x0) = Abs(y0) Then p = Abs(y0) Else p = Abs(x0) End If If p Abs(xe) Then p = Abs(xe) End If If p = 0 Then For j = x(i) To x(i) + 1 Step 0.01 Picture1.PSet (j, y(i), vbBlue Next j x(i + 1) = x(i) + 1 y(i + 1) = y(i)f(i + 1) = f(i) - yeElseFor j = y(i) To y(i) + 1 Step 0.01Picture1.PSet (x(i), j), vbBlue Next j y(i + 1) = y(i) + 1 x(i + 1) = x(i) f(i + 1) = f(i) + xe End IfNext iEnd Sub4.2 逐点比较法圆弧插补VB程序同直线插补编程类似,不多赘述。以第一象限的逆圆弧为例,界面设计图4-3,程序模拟界面图4-4,源程序代码分别如下。图4-3 界面设计图4-4 程序模拟界面源程序代码

温馨提示

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

评论

0/150

提交评论