实训报告(数据采样插补)
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
数字化实训报告
一数据采样差补简介
所谓数据采样插补法,或称为时间分割法。它尤其适合于闭环和半闭环以直流或交流电机为执行机构的位置采样控制系统。这种方法是把加工一段直线或圆弧的整段时间细分为许多相等的时间间隔,称为单位时间间隔(或插补周期)。每经过一个单位时间间隔就进行一次插补计算,算出在这一时间间隔内各坐标轴的进给量,边计算,边加工,直至加工终点。
与基准脉冲插补法不同,采用数据采样法插补时,在加工某一直线段或圆弧段的加工指令中必须给出加工进给速度F,先通过速度计算,将进给速度分割成单位时间间隔的插补进给量L(或称为轮廓步长),又称为一次插补进给量。
这类算法的核心问题是如何计算各坐标轴的增长数∆x和∆y(而不是单个脉冲),有了前一插补周期末的动点位置值和本次插补周期内的坐标增长段,就很容易计算出本插补周期末的动点命令位置坐标值。对于直线插补来讲,插补所形成的轮廓步长子线段(即增长段)与给定的直线重合,不会造成轨迹误差。而在圆弧插补中,因要用切线或弦线来逼近圆弧,因而不可避免地会带来轮廓误差。其中切线近似具有较大的轮廓误差而不大采用,常用的是弦线逼近法。
有时,数据采样插补是分两步完成的,即粗插补和精插补。第一步为粗插补,它是在给定起点和终点的曲线之间插入若干个点,即用若干条微小直线段来逼近给定曲线,粗插补在每个插补计算周期中计算一次。第二步为精插补,它是在粗插补计算出的每一条微小直线段上再做“数据点的密化”工作,这一步相当于对直线的脉冲增量插补。
二直线插补
直线插补的情况如右图所示。要求刀具在XY 平面中作所示的直线运动。在这一程序段中,每一小段的长度为L=KFT(K进给倍率,F进给速度,T插补周期)。只要求出∆x和∆y即可。
tanα=X E Y E
cosα=
1
√1+(tanα)2
∆X=L∗cosα
∆Y=∆X∗tanα三顺圆圆弧插补
3.1公式推导
圆弧插补的情况如下。顺圆弧AB为待加
工曲线,可以依据几何知识推导出关系式:
∆Y ∆X =X I+0.5∗L∗COSαY I−0.5∗L∗SINα
无法求解出∆x和∆y,取α=45°.如此会引起的误差就是下一点可能不在圆弧上面,所以修正关系式为:
∆X′=L*COS45
X I2+Y I2=(X I+∆X)2+(Y I−∆Y)2A
B
3.2流程图
3.3程序
CLOSE
&1
#1->2500X
#2->2500Y
OPEN PROG 28
CLEAR
INC;增量模式
P0=1;每个周期的步长
P1=100;半径
P2=0;x0
P3=100;y0
P4=100;x1
P5=0;y1
P11=0.7071;sin45,cos45
P6=SQRT((P4-P2)*(P4-P2)+(P5-P3)*(P5-P3));始末点距离
P7=INT(2*(ASIN(P6/2/P1))*P1/P0)+1;步数
WHILE(P7>0);由步数控制循环
P8=ATAN((P2+0.5*P0*P12)/(P3-0.5*P12*P0));计算新的角度P9=P0*COS(P8);dx
P10=-(P2+0.5*P9)*P9/(P3-0.5*P9);dy
P2=P2+P9;新的x0
P3=P3+P10;新的y0
X(P9);电机动作
Y(P10)
P7=P7-1;步数减一
ENDWHILE
CLOSE
四逆圆圆弧插补
4.1公式推导
圆弧插补的情况如下。逆圆弧为待加工曲线,可以依据几何知识推导出关系式:
∆Y ∆X =
X I+0.5∗L∗COSαY I−0.5∗L∗SINα
无法求解出∆x和∆y,取α=45°.如此会引起的误差就是下一点可能不在圆弧上面,所以修正关系式为:
∆X′=L*COS45
X I2+Y I2=(X I−∆X′)2+(Y I+∆Y′)2
可以看出和顺圆插补的公式很相似 ,经过整理之后得到
∆Y′=(Xi−0.5∗∆X′)∗∆X′Yi−0.5∗∆X′
O
D C
4.2流程图
4.3程序
CLOSE
&1
#1->2500X
#2->2500Y
OPEN PROG 28
CLEAR
INC;增量模式
P0=1;每个周期的步长
P1=100;半径
P2=100;x0
P3=0;y0
P4=0;x1
P5=100;y1
P11=0.7071;sin45,cos45
P6=SQRT((P4-P2)*(P4-P2)+(P5-P3)*(P5-P3));始末点距离
P7=INT(2*(ASIN(P6/2/P1))*P1/P0)+1;步数
WHILE(P7>0);由步数控制循环
P8=ATAN((P2+0.5*P0*P12)/(P3-0.5*P12*P0));计算新的角度P9=P0*COS(P8);dx
P10=-(P2-0.5*P9)*P9/(P3+0.5*P9);dy
P2=P2+P9;新的x0
P3=P3+P10;新的y0
X(P9);电机动作
Y(P10)
P7=P7-1;步数减一
ENDWHILE
CLOSE