逐点比较法插补原理实验报告

合集下载

直线插补实验报告(3篇)

直线插补实验报告(3篇)

第1篇一、实验目的1. 理解直线插补的概念和原理。

2. 掌握直线插补算法的基本方法。

3. 通过实验验证直线插补算法的正确性和实用性。

二、实验原理直线插补是一种将曲线或曲面拟合为一系列直线段的方法,它通过计算两个已知点之间的直线段坐标来实现。

在数控加工、机器人运动控制等领域中,直线插补技术具有重要意义。

直线插补的基本原理如下:1. 确定起点和终点坐标:根据实际需求,确定直线段的起点和终点坐标。

2. 计算直线段斜率:根据起点和终点坐标,计算直线段的斜率。

3. 确定步长:根据直线段长度和步长精度要求,确定步长。

4. 循环计算:从起点开始,按照步长逐点计算直线段上的坐标,直至到达终点。

三、实验设备1. PC机:用于编写和运行直线插补程序。

2. MATLAB:用于图形化展示直线插补结果。

四、实验步骤1. 编写直线插补程序:根据实验原理,使用MATLAB编写直线插补程序。

2. 输入起点和终点坐标:根据实验要求,输入直线段的起点和终点坐标。

3. 设置步长:根据实验要求,设置直线插补的步长。

4. 运行程序:运行直线插补程序,计算直线段上的坐标。

5. 图形化展示:使用MATLAB绘制直线段和插补结果,验证直线插补算法的正确性。

五、实验结果与分析1. 实验结果:通过实验,成功实现了直线插补,并绘制了直线段和插补结果。

2. 分析:(1)直线插补算法的正确性:实验结果表明,直线插补算法能够准确计算出直线段上的坐标,满足实验要求。

(2)直线插补算法的实用性:直线插补技术在数控加工、机器人运动控制等领域具有广泛的应用前景,通过实验验证了直线插补算法的实用性。

(3)步长对插补结果的影响:在实验过程中,我们发现步长对插补结果有一定影响。

当步长较小时,插补结果更精确;当步长较大时,插补结果误差较大。

因此,在实际应用中,应根据精度要求选择合适的步长。

六、实验结论1. 直线插补实验成功实现了直线段的插补,验证了直线插补算法的正确性和实用性。

实验一 逐点比较法圆弧和直线插补实验

实验一 逐点比较法圆弧和直线插补实验

Y B(xe,ye)
M(xm,ym)
Rm R
A(x0,y0)
O 图3 圆弧插补原理图 X
圆弧插补原理参见上图,对于第一象限逆圆,设圆弧的起点为 A(x0,y0),终点为 B(xe,ye), 圆弧半径为 R。加工点为 M(xm,ym),它与圆心的距离为 Rm,则
(1)偏差计算
Fm
=
Rm2
− R2
=
xm2
p102=p102-p104 p101=p101+1 x-0.1 else p102=p102+p103 p101=p101+1 y0.1
;计算新的偏差值(Fi+1=Fi-ya) ;步数计数器加一 ;X方向进分别是(-0.1 -0.5 -1.0) ;偏差判别(若P102小于0表示刀具在直线下方) ;计算新的偏差值(Fi+1=Fi+xa) ;步数计数器加一 ;Y方向进给分别是(0.1 0.5 1.0)
endif
endwhile
close
(3)根据直线插补编成格式,编写所给圆弧插补程序。 各组的圆弧的插补任务是: u 第一组:圆弧半径 50,第二象限顺圆;
第二组:圆弧半径 50,第二象限逆圆; 第三组:圆弧半径 60,第三象限顺圆; 第四组:圆弧半径 60,第三象限逆圆; 第五组:圆弧半径 70,第四象限顺圆; 第六组:圆弧半径 70,第四象限逆圆; open prog7 clear linear inc p101=0 p102=0 p103=0 p104=50 while(p101!>100) if(p102!<0) y0.5 p101=p101+1 p102=p102-2*p104+1 p104=p104-1 else -x0.5 p101=p101+1 p102=p102-2*p103+1 p103=103-1 endif endwhile close

[毕业设计]逐点比较法和数字积分的直线插补

[毕业设计]逐点比较法和数字积分的直线插补

[毕业设计]逐点比较法和数字积分的直线插补随着数控技术的不断发展,数字积分已经成为了控制机床运动的一种重要手段。

直线插补作为数控机床中最基本的控制方式之一,不仅能够有效提高机床的加工精度和效率,同时也可以降低操作难度,提高工作效率,因此十分受到广大用户的欢迎。

逐点比较法和数字积分两种插补方式,它们各有优缺点。

逐点比较法是一种基于宏观视角上的插补方法,即从整体上把握机床加工大致规律,在控制过程中逐步调整每个点的位置和状态,确定合适的插补曲线。

在操作上,逐点比较法要求能够对机床加工过程有较深入的了解,能够根据加工物料、设备性能、工艺流程等因素,快速作出正确的决策,因此对操作员要求较高。

但是,由于它采用线性插补方式,使得机床加工的东西能够准确地还原成数字轨迹,大大提高了加工精度。

数字积分是一种基于微观视角上的插补方法,即从插补点的微小变化中来处理插补曲线。

数字积分可以通过数学模型对加工物料、设备性能、工艺流程等进行分析,自动计算出合适的插补曲线,使得机床能够在不同加工条件下保持较高的生产效率和精度水平。

数字积分操作简单方便,操作员只需在计算机上输入相关数据、指令等信息即可自动完成插补过程,因此广泛应用于数控机床中。

相对于逐点比较法而言,数字积分能够更好的适应复杂的加工过程,具有更高的智能化水平。

然而,数字积分也存在一些缺陷,它的主要问题是精度问题。

由于数字积分采用数学模型计算,导致其有一定的误差,尤其是在复杂曲线的情况下,其误差更大。

因此,在高精度加工场合下,逐点比较法仍旧是一种比较流行和成熟的插补方式。

综上所述,在工业加工和制造的具体应用中,我们应该根据具体情况来选择逐点比较法和数字积分两种插补方式。

对于简单加工、精度要求较低的加工应用,数字积分是比较适合的方法;而对于复杂加工、精度要求较高的加工应用,逐点比较法则更加适合。

无论是逐点比较法还是数字积分,都应该被工业加工和制造企业充分利用,以便在工业制造的过程中,更好地提高加工效率和产品质量。

逐点比较法插补实验报告

逐点比较法插补实验报告

实验报告实验内容:逐点比较法直线和圆弧插补2011年9月25日院系:物科院班级:085 学号:07080518 姓名:陈实实验目的:利用逐点比较法的插补原理,编写直角坐标系下的直线、圆弧插补程序,观察屏幕上仿真的运动轨迹,掌握逐点比较法的插补原理。

实验原理:逐点比较发是基于动点与理想曲线院函数的比较来实现插补的。

逐点比较法的插补过程,每走一步要进行一下四个步骤:偏差判别:根据偏差值确定刀具相对加工曲线的位置坐标进给:根据偏差判别的结果,决定控制线沿哪个坐标进给一步以接近曲线偏差计算:计算新加工店相对曲线的偏差,作为下一步偏差判别的依据终点判别:判别是否到达终点,未到达终点则返回第一步继续插补,到终点则停止1、逐点比较法直线插补原理:逐点比较法在第一象限的直线插补原理如下图所示,其他象限情况可依次类推。

现加工OE直线,如果刀具动点在OE直线上方或在线上,则令刀具沿X正方向进给一步;若刀具动点在OE直线下方,则令刀具沿Y轴正方向进给一步,如此循环直到加工到E点。

判别刀具动点的位置根据偏差函数判别公式:根据这个公式可以推到出两种不同情况下的地推公式:对于插补终点的判别,可以采用单向的计数长度法,即:取计数长度M等于Xe、Ye中的大者,并设该坐标方向为计数方向。

插补时,仅在该方向上产生进给时,计数长度减一。

图1的逐点比较法中,工作循环的结束条件就是M减为0.2、逐点比较法圆弧插补原理:逐点比较法在第一象限的圆弧插补原理如图所示,其他象限可一次类推:对于第一象限的逆圆弧,如果动点在圆弧的外侧则令刀具动点沿X轴负方向进给一步。

如果动点在圆弧的内侧则令刀具沿Y轴正方向进给一步。

圆弧的偏差计算公式为:根据这个公式同样可推导出圆弧插补的两种不同情况下的递推公式:对于插补终点的判别,同样可以采用单向的计数长度法,不过对于圆弧,计数的方向并不取决于终点坐标中的大者,而是取决于圆弧终点处。

逐点比较法插补中需要编写插入部分流程图:插入程序:intM,Fi=0,Fi0,Fi1,xi,yi,i=0 ,num=-1;bool Gx; M=Xe+Ye;moveto(x0,y0);setcolor(10);line(x0,y0,x0+Xe*delta,y0-Ye*delta);xi=x0;yi=y0;setcolor(12);while(M>0){getch();if(Fi>=0){linerel(delta,0); xi=xi+delta;Fi0=Fi-Ye;Fi=Fi0; num++;dis_msg(num,Fi,1,0,Fi0,M);}else{linerel(0,-delta);Fi1=Fi+Xe;yi=yi-delta;Fi=Fi1;num++;dis_msg(num,Fi,0,1,Fi1,M);}M--;}圆弧插补实验程序:int M,Fi=0,Fi0,Fi1,xi=R,yi=0,i=0,num=0; M=R;setcolor(10);moveto(x0,y0);arc(x0,y0,0,90,R*delta);setcolor(12);moveto(x0+xi*delta,y0);while(M>0){getch();if(Fi>=0){linerel(-delta,0);Fi0=Fi-2*xi+1;Fi=Fi0;xi=xi--;M--;dis_msg(num,Fi,1,0,Fi0,M);}else{linerel(0,-delta);Fi1=Fi+2*yi+1;Fi=Fi1;yi=yi++;dis_msg(num,Fi,0,1,Fi1,M);}num=num++;}实验中所遇问题分析:1、圆弧插补:Fi0与Fi1的计算,xi,yi计算先写入为:Fi0=Fi-2*xi*delta+1;Fi1=Fi+2*yi*delta+1;xi=xi-delta;yi=yi+delta;但是,实行以后出现的结果不正确,如图,分析:2、关于计数长度M:在直线插补中使用的是双向计数长度 M=xe+ye,插补路线会比较准确。

逐点比较法圆弧插补

逐点比较法圆弧插补

逐点比较法圆弧插补逐点比较法圆弧插补过程与直线插补过程类似,每进给一步也都要完成四个工作节拍:偏差判别、坐标进给、偏差计算、终点判别。

但是,逐点比较法圆弧插补以加工点距圆心的距离大于还是小于圆弧半径来作为偏差判别的依据。

如图5-7所示的圆弧AB,其圆心位于原点O(0,0),半径为R,令加工点的坐标为P(xi,yj),则逐点比较法圆弧插补的偏差判别函数为当F=0时,加工点在圆弧上;当F>0时,加工点在圆弧外;当F<0时,加工点在圆弧内。

同插补直线时一样,将Fi,j=0同Fi,j>0归于一类。

下面以第一象限圆弧为例,分别介绍顺时针圆弧和逆时针圆弧插补时的偏差计算和坐标进给情况。

1.插补第一象限逆圆弧1)当Fi,j≥0时,加工点P(xi,yj)在圆弧上或圆弧外,-X方向进给一个脉冲当量,即向趋近圆弧的圆内方向进给,到达新的加工点Pi-1,j,此时xi -1=xi-1,则新加工点Pi-1,j的偏差判别函数Fi-1,j为(2)当Fi,j<0时,加工点P(xi,yj)在圆弧内,+Y方向进给一个脉冲当量,即向趋近圆弧的圆外方向进给,到达新的加工点Pi,j+1,此时yj+1=yj+1,则新加工点Pi,j+1的偏差判别函数Fi,j+12.插补第一象限顺圆弧1)当Fi,j≥0时,加工点P(xi,yj)在圆弧上或圆弧外,-Y方向进给一个脉冲当量,即向趋近圆弧的圆内方向进给,到达新的加工点Pi,,j-1,此时yj-1=yj-1,则新加工点Pi,j-1的偏差判别函数Fi,j-1为2)当Fi,j<0时,加工点P(xi,yj)在圆弧内,+X方向进给一个脉冲当量,即向趋近圆弧的圆外方向进给,到达新的加工点Pi+1,j,此时xi+1=xi +1,则新加工点Pi+1,j的偏差判别函数为Fi+1,j由以上分析可知,新加工点的偏差是由前一个加工点的偏差Fi,j及前一点的坐标值xi、yj递推出来的,如果按式(5-6)、(5-7)、(5-8)、(5-9)计算偏差,则计算大为简化。

逐点比较法插补原理实验报告

逐点比较法插补原理实验报告

南昌航空大学实验报告年月日课程名称:数控技术实验名称:逐点比较法插补原理班级:姓名:同组人:指导老师评定:签名:一、实验的目的与要求1.目的①掌握逐点比较法插补的原理及过程;②掌握利用计算机高级语言,设计及调试“插补运算轨迹”模拟画图的程序设计方法;③进一步加深对插补运算过程的理解;二、实验仪器计算机一台三、实验原理①逐点比较法插补运算的原理首先粗略的简单介绍一下机床是如何按照规定的图形加工出所需的工件的。

例如,现在要加工一段圆弧(图2-1),起点为A,终点为B,坐标原点就是圆心,Y轴、X轴代表纵、横拖板的方向,圆弧半径为R。

如从A点出发进行加工,设某一时刻加工点在M1,一般来说M1和圆弧有所偏离。

因此,可根据偏离的情况确定下一步加工进给的方向,使下一个加工点尽可能向规定图形(即圆弧)靠拢。

若用R M1表示加工点M1到圆心O的距离,显然,当R M1<R时,表示加工点M1在圆内,这时应控制纵拖板(Y拖板)向圆外进给一步到新加工点M2,由于拖板被步进电机带动,进给一步的长度是固定的(1微米),故新的加工点也不一定正好在圆弧上。

同样,当M2≥R时,表示加工点M2在圆外或圆上,这时应控制横拖板(X拖板)向圆内进给一步。

如此不断重复上述过程,就能加工出所需的圆弧。

图2-1 插补原理可以看出,加工的结果是用折线来代替圆弧,为了清楚起见,在图2-1中,每步的步长画的很大,因此加工出来的折线与所需圆弧的误差较大。

若步长缩小,则误差也跟着缩小,实际加工时,进给步长一般为1微米,故实际误差时很小的。

②计算步骤由上述可以看出,拖板每进给一步都要完成四个工作节拍。

偏差判别:判别偏差符号,确定加工点是在要求图形外还是在图形内。

工作台进给:根据偏差情况,确定控制X坐标(或Y坐标)进给一步,使加工点向规定的图形靠拢,以缩小偏差。

偏差计算:计算进给一步后加工点与要求图形的新偏差,作为下一步偏差判别的依据。

终点判断:判定是否到达终点,如果未达到终点,继续插补,如果以到达终点,停止插补。

逐点比较法第一象限直线插补

逐点比较法第一象限直线插补

逐点比较法第一象限直线插补编程逐点比较法是以折线来逼近给定的轨迹,就是每走一步控制系统都要将加工点与给定的图形轨迹相比较,以决定下一步进给的方向,使之逼近加工轨迹。

逐点比较法以折线来逼近直线或圆弧,其最大的偏差不超过一个最小设定单位。

只要将脉冲当量取得足够小,就可以达到精度要求。

逐点比较插补法在脉冲当量为0.01mm,系统进给速度小于3000mm/min时,能很好的满足要求。

一、逐点比较法直线插补如下图所示设直线 oA 为第一象限的直线,起点为坐标原点o (0 , 0) ,终点坐标为, A( ) , P() 为加工点。

若 P 点正好处在直线 oA 上,由相似三角形关系则有即点在直线 oA 上方 ( 严格为直线 oA 与 y 轴正向所包围的区域 ) ,则有即若 P 点在直线 oA 下方 ( 严格为直线 oA 与 x 轴正向所包围的区域 ) ,则有图 3 — 1 逐点比较法第一象限直线插补即令则有:①如,则点 P 在直线 oA 上,既可向 +x 方向进给一步,也可向 +y 方向进给一步;②如,则点 P 在直线 oA 上方,应向 +x 方向进给一步,以逼近oA直线;③如,则点 P 在直线 oA 下方,应向 +y 方向进给一步,以逼近 oA直线一般将及视为一类情况,即时,都向 +x 方向进给一步。

当两方向所走的步数与终点坐标相等时,停止插补。

这即逐点比较法直线插补的原理。

对第一象限直线 oA 从起点 ( 即坐标原点 ) 出发,当 F时, +x 向走一步;当 F<0 时,y 向走一步。

特点:每一步都需计算偏差,这样的计算比较麻烦。

递推的方法计算偏差:每走一步后新的加工点的偏差用前一点的加工偏差递推出来。

采用递推方法,必须知道开始加工点的偏差,而开始加工点正是直线的起点,故。

下面推导其递推公式。

设在加工点 P( ) 处,,则应沿 +x 方向进给一步,此时新加工点的坐标值为新加工点的偏差为即若在加工点 P( ) 处,,则应沿 +y 方向进给一步,此时新加工点的坐标值为,新加工点的偏差为即综上所述,逐点比较法直线插补每走一步都要完成四个步骤 ( 节拍 ) ,即:(1) 位置判别根据偏差值大于零、等于零、小于零确定当前加工点的位置。

插补运动(逐点比较法)

插补运动(逐点比较法)

1、概述在机床的实际加工中,被加工工件的轮廓形状千差万别,各式各样。

严格说来,为了满足几何尺寸精度的要求,刀具中心轨迹应该准确地依照工件的轮廓形状来生成。

然而,对于简单的曲线,数控装置易于实现,但对于较复杂的形状,若直接生成,势必会使算法变得很复杂,计算机的工作量也相应地大大增加。

因此,在实际应用中,常常采用一小段直线或圆弧去进行逼近,有些场合也可以用抛物线、椭圆、双曲线和其他高次曲线去逼近(或称为拟合)。

所谓插补是指数据密化的过程。

在对数控系统输入有限坐标点(例如起点、终点)的情况下,计算机根据线段的特征(直线、圆弧、椭圆等),运用一定的算法,自动地在有限坐标点之间生成一系列的坐标数据,即所谓数据密化,从而自动地对各坐标轴进行脉冲分配,完成整个线段的轨迹运行,以满足加工精度的要求。

机床数控系统的轮廓控制主要问题就是怎样控制刀具或工件的运动轨迹。

无论是硬件数控(NC)系统,还是计算机数控(CNC)系统或微机数控(MNC)系统,都必须有完成插补功能的部分,只是采取的方式不同而已。

在CNC或MNC中,以软件(程序)完成插补或软、硬件结合实现插补,而在NC中有一个专门完成脉冲分配计算(即插补计算)的计算装置——插补器。

无论是软件数控还是硬件数控,其插补的运算原理基本相同,其作用都是根据给定的信息进行数字计算,在计算过程中不断向各个坐标发出相互协调的进给脉冲,使被控机械部件按指定的路线移动。

有关插补算法问题,除了要保证插补计算的精度之外,还要求算法简单。

这对于硬件数控来说,可以简化控制电路,采用较简单的运算器。

而对于计算机数控系统来说,则能提高运算速度,使控制系统较快且均匀地输出进给脉冲。

经过多年的发展,插补原理不断成熟,类型众多。

从产生的数学模型来分,有直线插补、二次曲线插补等;从插补计算输出的数值形式来分,有基准脉冲插补(又称脉冲增量插补)和数据采样插补。

在基准脉冲插补中,按基本原理又分为以区域判别为特征的逐点比较法插补,以比例乘法为特征的数字脉冲乘法器插补,以数字积分法进行运算的数字积分插补,以矢量运算为基础的矢量判别法插补,兼备逐点比较和数字积分特征的比较积分法插补,等等。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

南昌航空大学实验报告年月日课程名称:数控技术实验名称:逐点比较法插补原理班级:姓名:同组人:指导老师评定:签名:一、实验的目的与要求1.目的①掌握逐点比较法插补的原理及过程;②掌握利用计算机高级语言,设计及调试“插补运算轨迹”模拟画图的程序设计方法;③进一步加深对插补运算过程的理解;二、实验仪器计算机一台三、实验原理①逐点比较法插补运算的原理首先粗略的简单介绍一下机床是如何按照规定的图形加工出所需的工件的。

例如,现在要加工一段圆弧(图2-1),起点为A,终点为B,坐标原点就是圆心,Y轴、X轴代表纵、横拖板的方向,圆弧半径为R。

如从A点出发进行加工,设某一时刻加工点在M1,一般来说M1和圆弧有所偏离。

因此,可根据偏离的情况确定下一步加工进给的方向,使下一个加工点尽可能向规定图形(即圆弧)靠拢。

若用R M1表示加工点M1到圆心O的距离,显然,当R M1<R时,表示加工点M1在圆内,这时应控制纵拖板(Y拖板)向圆外进给一步到新加工点M2,由于拖板被步进电机带动,进给一步的长度是固定的(1微米),故新的加工点也不一定正好在圆弧上。

同样,当M2≥R时,表示加工点M2在圆外或圆上,这时应控制横拖板(X拖板)向圆内进给一步。

如此不断重复上述过程,就能加工出所需的圆弧。

图2-1 插补原理可以看出,加工的结果是用折线来代替圆弧,为了清楚起见,在图2-1中,每步的步长画的很大,因此加工出来的折线与所需圆弧的误差较大。

若步长缩小,则误差也跟着缩小,实际加工时,进给步长一般为1微米,故实际误差时很小的。

②计算步骤由上述可以看出,拖板每进给一步都要完成四个工作节拍。

偏差判别:判别偏差符号,确定加工点是在要求图形外还是在图形内。

工作台进给:根据偏差情况,确定控制X坐标(或Y坐标)进给一步,使加工点向规定的图形靠拢,以缩小偏差。

偏差计算:计算进给一步后加工点与要求图形的新偏差,作为下一步偏差判别的依据。

终点判断:判定是否到达终点,如果未达到终点,继续插补,如果以到达终点,停止插补。

计算步骤的框图如下所示:图2-2 逐点比较法插补计算步骤③插补运算公式插补运算公式表四、实验内容及步骤应用VB设计逐点比较法的插补运算程序,在计算机屏幕上画出轨迹图。

1 程序界面采用图形显示方式,动态的显示出直线和圆弧的插补过程。

界面如下所示:图2-3 程序参考界面2 程序流程图图2-4 逐点比较法第一象限直线插补流程图3 程序源代码Dim ER, LSx, LSy, LEx, LEy, CSx, CSy, CEx, CEy, RPrivate Sub Command1_Click()Picture1.ClsER = 0LSx = IsNum(Text1.Text)LSy = IsNum(Text2.Text)LEx = IsNum(Text3.Text)LEy = IsNum(Text4.Text)If Abs(LSx) > Abs(LSy) Then Max1 = Abs(LSx) Else Max1 = Abs(LSy)If Abs(LEx) > Abs(LEy) Then max2 = Abs(LEx) Else max2 = Abs(LEy)If Max1 > max2 Then Max = Max1 Else Max = max2Max = Max + 3If ER = 1 Or ER = 2 Then MsgBox ("坐标值中含有非法字符!")If ER = 3 Then MsgBox ("所给坐标值不是整数!请输入整数")If Text1.Text <> "" And Text2.Text <> "" And Text3.Text <> "" And Text4.Text <> "" ThenPicture1.Scale (-Max, Max)-(Max, -Max)Picture1.Line (-Max, 0)-(Max, 0), RGB(0, 0, 0)Picture1.Line (0, Max)-(0, -Max), RGB(0, 0, 0)For i = -Max To MaxPicture1.Line (i, 0.2)-(i, 0), RGB(0, 0, 0)Picture1.Line (0, i)-(0.3, i), RGB(0, 0, 0)Next iPicture1.Line (LSx, LSy)-(LEx, LEy), RGB(0, 0, 0)ElseMsgBox ("请输入坐标值!")End IfEnd SubPrivate Sub Command2_Click()x0 = 0: y0 = 0X1 = LEx - LSx: Y1 = LEy - LSyIf X1 > 0 And Y1 > 0 Then quadrant = 1If X1 > 0 And Y1 < 0 Then quadrant = 4If X1 < 0 And Y1 > 0 Then quadrant = 2If X1 < 0 And Y1 < 0 Then quadrant = 3If quadrant = 1 ThenFor i = 0 To Abs(X1) + Abs(Y1) - 1F = X1 * y0 - x0 * Y1x00 = x0 + LSx: y00 = y0 + LSyIf F >= 0 Then x0 = x0 + 1 Else y0 = y0 + 1x11 = x0 + LSx: y11 = y0 + LSyPicture1.Line (x00, y00)-(x11, y11), RGB(255, 0, 0)delayNext iEnd IfIf quadrant = 3 ThenFor i = 0 To Abs(X1) + Abs(Y1) - 1F = X1 * y0 - x0 * Y1x00 = x0 + LSx: y00 = y0 + LSyIf F >= 0 Then x0 = x0 - 1 Else y0 = y0 - 1x11 = x0 + LSx: y11 = y0 + LSyPicture1.Line (x00, y00)-(x11, y11), RGB(255, 0, 0)delayNext iEnd IfIf quadrant = 2 ThenFor i = 0 To Abs(X1) + Abs(Y1) - 1F = X1 * y0 - x0 * Y1x00 = x0 + LSx: y00 = y0 + LSyIf F <= 0 Then x0 = x0 - 1 Else y0 = y0 + 1x11 = x0 + LSx: y11 = y0 + LSyPicture1.Line (x00, y00)-(x11, y11), RGB(255, 0, 0)delayNext iEnd IfIf quadrant = 4 ThenFor i = 0 To Abs(X1) + Abs(Y1) - 1F = X1 * y0 - x0 * Y1x00 = x0 + LSx: y00 = y0 + LSyIf F <= 0 Then x0 = x0 + 1 Else y0 = y0 - 1x11 = x0 + LSx: y11 = y0 + LSyPicture1.Line (x00, y00)-(x11, y11), RGB(255, 0, 0)delayNext iEnd IfEnd SubPrivate Function IsNum(Str)NS = "1234567890.+-"S = 0: T = 1: ST = 1If Left$(Str, 1) = "+" Then ST = ST + 1If Left$(Str, 1) = "-" Then ST = ST + 1: T = -1For i = ST To Len(Str)For j = 1 To 11If Mid$(Str, i, 1) = Mid$(NS, j, 1) ThenIf j = 11 Then S = S + 1Exit ForEnd IfNext jIf j > 11 Then ER = 1Next iIf S > 1 Then ER = 2If S = 1 Then ER = 3IsNum = Val(Str)End FunctionPrivate Sub delay()For i = 1 To 20 Step 0.00001Next iEnd Sub五、思考题逐点比较法和数字积分法有何区别?答:逐点比较法和数字积分法都属于基本脉冲插补法。

逐点比较法的原理是单片机或计算机在控制加工过程中逐点的计算和判别加工偏差,不断的向各个坐标轴发出相互协调的进给脉冲,驱动坐标轴步进电机旋转,以控制机床坐标轴的进给,按规定的图形加工出所需要的工件。

逐点比较法插补计算每走一步需要完成四个工作节拍,即偏差判别、工作台进给、偏差计算、终点判断。

数字积分法插补主要是利用数字积分的思想,采用积分器对被积函数进行累加,每来一个脉冲累加一次。

由于不断累加导致积分器产生溢出,每溢出一次则驱动相应坐标轴移动一步,从而实现插补功能。

相关文档
最新文档