第2章插补原理

Download Report

Transcript 第2章插补原理

数控机床的工作原理
湖北工业大学机械工程学院
杨光友教授
中职机电技术应用专业
4.1 概述
4.1.1 插补的概念
 在数控机床中,刀具不能严格地按照要求加
工的曲线运动,只能用折线轨迹逼近所要加
工的曲线。

插补(interpolation)定义:机床数控系统
依照一定方法确定刀具运动轨迹的过程。也
可以说,已知曲线上的某些数据,按照某种
算法计算已知点之间的中间点的方法,也称
为“数据点的密化”。
插补的实质
数控装置向各坐标提供相互协调的进给脉冲,伺服
系统根据进给脉冲驱动机床各坐标轴运动。
 数控装置的关键问题:根据控制指令和数据进行脉
冲数目分配的运算(即插补计算),产生机床各坐
标的进给脉冲。
 插补计算就是数控装置根据输入的基本数据,通过
计算,把工件轮廓的形状描述出来,边计算边根据
计算结果向各坐标发出进给脉冲,对应每个脉冲,
机床在响应的坐标方向上移动一个脉冲当量的距离,
从而将工件加工出所需要轮廓的形状。
 插补的实质:在一个线段的起点和终点之间进行数
据点的密化。

插补器的分类

硬件插补器

由专门设计的数字逻辑电路组成。

插补速度快,升级不易,柔性较差。

软件插补器


通过软件(编程)实现插补功能。
插补速度比硬件插补器慢,但成本低、
柔性强,结构简单,可靠性好。
4.1.2 插补方法的分类
1.基准脉冲插补(行程标量插补或脉冲增量插补)

特点:每次插补结束,数控装置向每个运动
坐标输出基准脉冲序列,每个脉冲代表了最
小位移,脉冲序列的频率代表了坐标运动速
度,而脉冲的数量表示移动量。

仅适用于一些中等精度或中等速度要求的计
算机数控系统
主要的脉冲增量插补方法
数字脉冲乘法器插补法
 逐点比较法
 数字积分法
 矢量判别法
 比较积分法
 最小偏差法
 目标点跟踪法
 单步追踪法
 直接函数法
 加密判别和双判别插补法

2. 数字采样插补(数据增量插补)
特点:插补运算分两步完成。
 (1)粗插补
在给定起点和终点的曲线之间插入若干个点,
即用若干条微小直线段逼近给定曲线,每一微小直
线段的长度都相等,且与给定速度有关。
(2)精插补
在粗插补算出的每一微小直线段的基础上再作“
数据点的密化”工作,相当于对直线的脉冲增量插补
。
 适用于闭环、半闭环以直流和交流伺服电机为驱动
装置的位置采样控制系统

主要的数字增量插补方法
直线函数法
 扩展数字积分法
 二阶递归扩展数字积分插补法
 双数字积分插补法
 角度逼近圆弧插补法
 “改进吐斯丁”(Improved Tustin MethodITM)法

4.2 基准脉冲插补
4.2.1 逐点比较插补法
基本思路:每走一步都要将加工点的瞬间
时坐标与规定的图形轨迹相比较,判断其
偏差,然后决定下一步的走向。如果加工
点走到图形外面,下一步就要向图形里面
走;如果加工点走到图形里面,下一步就
要向图形外面走,以缩小偏差,这样就能
得到一个非常接近规定图形的轨迹,最大
偏差不超过一个脉冲当量。
 四个步骤:偏差判别->坐标进给->新偏差
判别->终点比较

1. 逐点比较插补法直线插补
如图所示直线OA和点P(Xi,Yi),A点( Xe,Ye)。
P点在直线上方,则有:
Yi X e  X i Ye  0
P点在直线上,则有:
Yi X e  X i Ye  0
P点在直线下方,则有:
Yi X e  X i Ye  0
(1)偏差判别方程式:Fi,i  Yi X e  X i Ye
(2)坐标进给和计算
y
Fi,i>=0时,向+x方向走一步。
Xi  Xi 1
Fi 1,i  Fi ,i  Ye
Fi,i<0时,向+y方向走一步。
Yi 1  Yi  1
Fi,i 1  Fi,i  X e
F>=0
F<0
O
x
(3)终点判断
• 每走一步判断最大坐标的终点坐标值(绝对值)与该
坐标累计步数坐标值之差是否为零,若为零,插补结束。
• 总步数为:N=Xa+Ya。
逐点比较法直线插补流程
例4-1 插补直线OA,A(5,3)
序号 偏差判别 进给方向
0
偏差计算
终点判别
F0,0=0,Xe=5,Ye=3
n=0,N=8
1
F0,0=0
+X
F1,0=F0,0-Ye=-3
n=1
2
F1,0=-3<0
+Y
F1,1=F1,0+Xe=2
n=1+1=2<N
3
F1,1=2>0
+X
F2,1=F1,1-Ye=-1
n=2+1=3<N
4
F2,1=-1<0
+Y
F2,2=F2,1+Xe=4
n=3+1=4<N
5
F2,2=4>0
+X
F3,2=F2,2-Ye=1
n=4+1=5<N
6
F3,2=1>0
+X
F4,2=F3,2-Ye=-2
n=5+1=6<N
7
F4,2=-2<0
+Y
F4,3=F4,0+Xe=3
n=6+1=7<N
8
F4,3=3>0
+X
F5,3=F4,3-Ye=0
n=7+1=8=N
直线OA插补轨迹
例. 插补直线OA,A(4,5)
序号 偏差判别 进给方向
0
偏差计算
终点判别
F0,0=0,Xe=4,Ye=5
n=0,N=9
1
F0,0=0
+X
F1,0=F0,0-Ye=-5
n=1
2
F1,0=-5<0
+Y
F1,1=F1,0+Xe=-1
n=1+1=2<N
3
F1,1=-1<0
+Y
F1,2=F1,1 +Xe=3
n=2+1=3<N
4
F1,2=3>0
+X
F2,2=F1,2 -Ye=-2
n=3+1=4<N
5
F2,2=-2<0
+Y
F2,3=F2,2 +Xe=2
n=4+1=5<N
6
F2,3=2>0
+X
F3,3=F2,3-Ye=-3
n=5+1=6<N
7
F3,3=-3<0
+Y
F3,4=F3,3+Xe=1
n=6+1=7<N
8
F3,4=1>0
+X
F4,4=F3,4-Ye=-4
n=7+1=8<N
9
F4,4=-4<0
+Y
F4,5=F4,4+Xe=0
n=8+1=9=N
插补轨迹
y
A(4,5)
O
x
直线插补不同象限插补方向

无论在哪个象限,逐点比较直线插补法均采用直
线坐标的绝对值计算。
2. 逐点比较法圆弧插补
如右图所示逆圆弧AE,C、D、B点分别在圆弧的外、
内部和圆弧上。
y
C点在圆弧的外部,则有
(X c2
 Yc2 )  (X 02
 Y02 )
E(X0,Y0)
0
B(Xb,Yb)
D点在圆弧的内部,则有
2
(X d
2
2
 Yd )  (X 0
2
 Y0 )  0
D(Xd,Yd)
B点在圆弧上,则有
2
(X b
2
2
 Yb )  (X0
2
 Y0 )
0
C(Xc,Yc)
A(Xe,Ye)
O
x
(1)偏差判别方程式:F  (X 2  Y 2 )  (X 02  Y02 )
(2)坐标进给和计算
Fi,i>=0时,向-x方向走一步。
X i 1  X i  1, Yi 1  Yi
Fi 1,i  Fi,i  2X i  1
Fi,i <0时,向+y方向走一步。
Yi 1  Yi  1, X i 1  X i
Fi,i 1  Fi,i  2Yi  1
注意:圆弧与直线不同,直线用于计算的自始至终是
终点坐标,而圆弧则是一个动点坐标。
(3)终点判断: n  Xe  X0  Ye  Y0
逐点比较法圆弧插补流程
例4-2 插补第一象限逆圆AB
序号
偏差判别
进给
0
偏差计算
终点判别
F10,0=0
N=12
1
F10,0=0
-X
F9,0= F10,0-2×10+1=-19
N=12-1=11
2
F9,0=-19<0
+Y
F9,1= F9,0+2×0+1=-18
N=12-2=10
3
F9,1=-18<0
+Y
F9,2= F9,1+2×1+1=-15
N=12-3=9
4
F9,2=-15<0
+Y
F9,3= F9,2+2×2+1=-10
N=12-4=8
5
F9,3=-10<0
+Y
F9,4= F9,3+2×3+1=-3
N=12-5=7
6
F9,4=-3<0
+Y
F9,5= F9,4+2×4+1=6
N=12-6=6
7
F9,5=6>0
-X
F8,5= F9,5-2×9+1=-11
N=12-7=5
8
F8,5=-11<0
+Y
F8,6= F8,5+2×5+1=0
N=12-8=4
9
F8,6=0
-X
F7,6= F8,6-2×8+1=-15
N=12-9=3
10
F7,6=-15<0
+Y
F7,7= F7,6+2×6+1=-2
N=12-10=2
11
F7,7=-2<0
+Y
F7,8= F7,7+2×7+1=13
N=12-11=1
12
F7,8=13>0
-X
F6,8= F7,8-2×7+1=0
N=12-12=0
插补轨迹
圆弧插补的象限处理
4.2.2 数字积分法
数字积分法也称为数字微分分析法,是在数
字积分器的基础上建立起来的一种插补方法。
 基本原理:数字积分法是利用数字积分的方
法,计算刀具沿各坐标轴的位移,使得刀具
沿着所加工的曲线运动。
 优点:运算速度快,脉冲分配均匀,容易实
现多坐标联动。
 缺点:速度调节不便,插补精度需要采用移
动措施才能满足要求。

1. 数字积分原理
如右图所示,由曲线y=f
(t)与x轴所围成的面积
S为:
t
S   f (t )dt
0
取Δt足够小时,则有:
n
S
y
i 1t
i 1
如令Δt为最小的基本单位“1”时,则有:
n
S
y
i 1
i 1

设置一个累加器,并且假设累加器的容
量为一个单位面积。

用该累加器来实现累加运算,那么在累
加过程中超过一个单位面积时就必然产
生溢出,即产生一个溢出脉冲。

累加过程中所产生的溢出脉冲总数就是
所求的近似值,或者说所要求的积分近
似值。
2. DDA直线插补
x  Vx  t
y  V y  t
V
OA

vx
xe

vy
ye
k
x  v x t  kxe t
y  v y t  kye t
各坐标轴的位移量
n
n
t

 x  0 kxe dt  k  xe t  k  xe

i 1
i 1

n
n
t
 y  ky dt  k y t  k y


e
e
0 e

i 1
i 1
结论:动点从原点O走
向终点A的过程,可以
看作是各坐标轴每经过
一个单位时间间隔∆t,
分别以增量kxe,kye同
时累加的过程。
DDA直线插补器结构
DDA直线插补器工作过程

平面直线插补器由两个数字积分器组成
,每个积分器由累加器和被积函数寄存
器组成。

终点坐标值存放在被积函数寄存器中。

工作过程:每发出一个插补迭代脉冲,
使kxe和kye向各自的累加器里累加一次,
累加的结果有无溢出脉冲取决于累加器
的容量和kxe、kye的大小。
系数k的选择和累加次数m的确定
假设m次累加后(m也为累加器的容量),x、y分别到
m
m
达终点,则有 
 x  k  xe t  k  xe  km xe  xe

i 1
i 1
 mk 1

m
m
 y  k y t  k y  km y  y


e
e
e
e

i 1
i 1

为保证坐标轴上每次分配的进给脉冲不超过一个,则有
Δx<1和Δy<1,即kxe<1和kye<1。而xe和ye受寄存器容
量的限制,令寄存器的位数为n,寄存器的最大值为2n1,则有xe=2n-1,ye=2n-1。于是有
1
k n
2 1
为保证累加次数m为整数,取 k 
1
n ,所以累加次数
2
m=2n。所以数字积分法直线插补的终点判别为m=2n。
寄存KXe与Xe的一致性
由于KXe= Xe/2n,运算的方法为:保持数字Xe不变
,只需把数Xe往右移动n位即可得到KXe。
 被积函数寄存器Jvx内装的Kxe,可改为只装Xe即可
。
 KYe= Ye/2n,运算的方法为:保持数字Ye不变,只
需把数Ye往右移动n位即可得到KYe。
 被积函数寄存器JVY内装的KYe 可改为只装Ye即可。

终点判别
 终点计数器JE
 开始: JE
=0
 每进行一次加法运算, JE
 当JE=2
n
时运算停止。
+1
例4-3 DDA直线插补(二进制计算
)
累加
次数
(Δt
)
JVx(xe
)
JRx
0
101
1
X积分器
Y积分器
Δx
Δy
终点
计数
器JE
备注
JVy(ye)
JRy
000
011
000
000
初始状态
101
101
011
011
001
第一次迭代
2
101
010
011
110
010
Δx溢出
3
101
111
011
001
011
Δy溢出
4
101
100
1
011
100
100
Δx溢出
5
101
001
1
011
111
101
Δx溢出
6
101
110
011
010
110
Δy溢出
7
101
011
1
011
101
111
Δx溢出
8
101
000
1
011
000
000
Δx、 Δy溢出
1
1
1
1
DDA直线插补轨迹
3. DDA圆弧插补
如右图所示,P点为逆圆弧AB上
的一个动点,由图可知
Vy
Vx
V


 k (常数)
R
y
x
x  Vx  t  k  y  t

y  V y  t  k  x  t
注意:对于第一象限逆圆弧,x坐标轴的进给方向是
-x方向,因此,要加上负号(-)。
其余过程与直线插补相同。
DDA圆弧插补器结构
与直线插补的区别:


坐标值x、y存入被积
函数寄存器JVx、JVy的
对应关系与直线不同
,正好相反,JVx存放
着y,JVy存放着x。
直线插补时,寄存器
中始终存放着终点的
坐标值,为常数,而
圆弧插补则不同,寄
存器中存放着动点坐
标,是个变量。在插
补过程中,必须根据
动点位置的变化来改
变JVx、JVy中的内容。
第一象限逆圆弧DDA的插补过程




运算开始时,x轴和y轴被积函数寄存器中分别存放着Y
、X的起点坐标值。
x轴被积函数寄存器中的数与其累加器的数累加得到的
溢出脉冲发到-x方向。y轴被积函数寄存器中的数与累
加器中的数累加得到的溢出脉冲发到+y方向。
每发出一个进给脉冲后,必须将被积函数寄存器中的坐
标值加以修正。即当x方向发出进给脉冲后,使y轴被积
函数寄存器中的内容减1(x方向的坐标值减少1,但x坐
标值存放在y轴被积函数寄存器中);当y方向发出一个
进给脉冲后,使x轴被积函数寄存器中的内容加1(y方
向的坐标值增加1,但y坐标值存放在x轴被积函数寄存
器中)。
终点判断:以圆弧的终点与起点的x、y坐标值之差的绝
对值作为x、y方向各自发出的脉冲总数值,以此作为终
点判断。
DDA圆弧插补举例
已知第一象限逆圆弧AB,起点为A(5,0),终点为B
(0,5),采用三位二进制寄存器和累加器,使用DDA
法进行插补加工。
y
B
O
A
x
运算次
数
0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
X积分器
Y积分器
JRy
(Σxi)
Y终
0
5
2
Δy
0
0
1
5
5
7
4
0
1
4
3
5
5
1
1
2
0
1
5
4
6
3
0
1
2
1
6
2
0
1
4
3
7
4
0
1
3
2
5
1
1
1
5
5
6
3
0
1
1
0
5
5
4
4
4
3
3
3
2
2
1
1
1
0
7
3
3
3
3
3
3
3
3
3
0
1
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
JVx(yi)
0
0
0
1
1
1
2
2
3
3
3
4
4
4
5
5
5
JRx
(Σyi)
Δx
X终
0
0
0
0
0
0
5
5
5
5
5
5
1
2
0
0
5
5
4
0
7
2
JVy(xi)
5
5
4
DDA不同象限插补处理
数字积分法不同象限直线和圆弧插补时,均以第一象限的
直线和逆圆弧为标准,以不同象限的坐标值的绝对值进行
计算,其进给方向和坐标修正如下表所示。
NR
1
NR
2
NR
3
NR
4
SR
1
SR
2
SR
3
SR
4
JVX
+1
-1
+1
-1
-1
+1
-1
+1
JVY
-1
+1
-1
+1
+1
-1
+1
-1
内 容
动
点
修
正
进
给
方
向
L
1
L
2
L
3
L
4
ΔX
+
-
-
+
-
-
+
+
+
+
-
-
ΔY
+
+
-
-
+
-
-
+
-
+
+
-
4.3 数据采样插补
基本原理:是一种时间分割法,根据进给速度,将加工
轮廓曲线分割为一定时间内(一个插补周期)的进给量
(一条微小直线),即用一系列微小直线段逼近轮廓轨
迹。在每个插补周期,调用插补程序一次,为下一插补
周期计算出各坐标轴应该行进的增长段,并计算插补点
的坐标值。
 实现步骤:粗插补(用若干微小直线段逼近曲线)和精
插补(脉冲增量插补)。
 解决两个问题:选择插补周期;计算一个周期内各坐标
轴的进给量。
 插补周期的选择
(1)插补周期与插补运算时间的关系。
(2)插补周期与位置反馈采样周期的关系。
(3)插补周期与精度、速度的关系。

数据采样插补直线与圆弧插补原理
直线插补:用插补所形成的步长子线段逼近给定直线
,与给定直线重合。
 圆弧插补:用弦线(直接函数法)或割线(扩展
DDA算法)逼近圆弧。

1. 直线插补算法原理





每个插补周期的进给步长为
ΔL=FT
直线OPe的长度为
2
2 0.5
L=(Xe +Ye )
x和y轴的位移增量为
ΔX= ΔLXe/L
ΔY= ΔLYe/L
假设k=ΔL/L
插补第i点的动点坐标为
Xi=Xi-1+ΔX= Xi-1+kXe
Yi=Yi-1+ΔY= Yi-1+kYe
2. 圆弧插补算法
基本思想:在满足精度的前提下,用弦进给代替弧
进给,即用直线逼近圆弧。
 圆弧上相邻两点坐标之间的关系如下。


DH  HM DH  AE X i  0.5L cos 
tan   tan( i  ) 


2
OC  CD OC  EM Yi  0.5L sin 
X i  0.5L cos
Y
 tan  
X
Yi  0.5L sin
L  FT
X i 1  X i  X
Yi 1  Yi  Y
4.4 加工过程的速度控制







机床加工过程中,不同尺寸、不同材质的零件,切削
速度不同。
CNC系统进给速度控制包括自动调节和手动调节两种
方式。
自动调节方式:按照零件加工程序中速度功能指令中
的F值进行速度控制。
手动调节方式:加工过程中由操作者根据需要随时使
用倍率旋钮对进行速度进行手动调节。
开环系统中,坐标轴运动速度是通过向步进电机输出
脉冲的频率来实现,其速度控制方法是根据程编F值来
确定其频率。
半闭环和闭环系统中,采用数据采样方法进行插补加
工,其速度计算是根据程编F值将轮廓曲线分割为采样
周期的轮廓步长。
因此,进给速度控制方法与系统采用的插补方法有关
4.4.1 基准脉冲插补法的进给速度控制
1. 程序计时法
首先分析、计算每次插补运算所占用时间,然后
再用各种速度要求的进给脉冲间隔时间减去每次
插补运算时间,从而得到CPU再每次插补运算后
应等待的时间,用CPU的空运转循环对这段等待
的时间进行计时,即采用软件延时子程序。
 也可通过置速度标志来实现程序计数。
 程序计时法多用于点位直线控制系统。
 不同的空运转时间对应着不同的进给速度,空运
转等待时间越短,发出进给脉冲频率越高,速度
越快。

2. 时钟中断法
时钟中断法只要求一种时钟频率,用软
件控制每个时钟周期内的插补次数,以
达到进给速度控制的目的。
 为了换算出每个时钟周期应插补的次数
(即发出的进给脉冲数),选定一个特
殊的进给速度F对应的频率。该频率对给
定的进给速度,每个时钟周期插补一次
。

4.4.2 数据采样插补法的进给速度控制
为了保证机床在启动或停止时不产生冲击、失步
、超程或振荡,必须对进给电机进行加减速控制
。分为前加减速控制和后加减速控制。
 前加减速控制:对合成速度F进行控制,优点是不
影响实际插补输出的位置精度。缺点是需要预测
减速点(需要根据实际刀具位置与程序段终点之
间的距离来确定)。
 后加减速控制:对各运动轴分别进行加减速控制
,不需要预测减速点,在插补输出为零时开始减
速,并通过一定的时间延迟逐渐靠近程序段终点
。缺点是对各运动轴进行控制,实际的各轴的合
成位置可能不准确。

1. 前加减速控制

稳定速度:系统处于稳定进给状态时,没有插
补一次(一个插补周期)的进给量。稳定速度
的计算如下
TKF
Vg 
601000
稳定速度计算完毕后,还需要进行速度限制检
查,看是否超过参数设定的最大速度。
 瞬时速度:系统在每个插补周期的进给量。当
系统处于稳定进给状态时,瞬时速度Vi=Vg;
当系统处于加速或减速状态时,Vi<Vg(或
Vi>Vg)。

(1)线性加减速处理

设进给速度为F(mm/min),加速到F所需时间为t
(ms),则加速度a(µm/ms2)为
2 F
a  1.67 10

t
加速时,当计算出的稳定速度 Vg' 大于原来的稳定速
度 Vg 时,需要加速,加速一次,瞬间速率为
Vi 1  Vi  aT
减速时,先进行终点判别,计算离终点的瞬时距离
Si,并根据减速标志判断是否到达减速区域S,若到
达则减速。减速区域S为 S  Vg2 / 2a
 若Si≤S,开始减速,每减速一次,瞬时速度为

Vi 1  Vi  aT
线性加速和减速处理流程图
(2)终点判别处理

直线插补时,A的瞬间坐标值为
x i  x i 1  x
y i  y i 1  y

瞬间点A离终点P的距离Si为
1
Si  x  x i 
cos
 圆弧插补圆弧圆心角小于π时
1
Si  y  yi 
cos

圆弧圆心角大于π时,Si的计算先要判别的变
化趋势(过分界点前,逐渐变大;过分界点
后,逐渐变小),若Si变大,不进行终点判
别处理,直到越过分界点为止。若Si变小,
再进行终点判别处理。
2. 后加减速控制
(1)指数加减速控制算法
指数加减速控制算法:将启动或停止时的速度
突变变成随时间按照指数规律上升或下降。
 加速时:


V( t )  Vc (1  e
匀速时:
V( t )  Vc
 减速时:
V(t )  Vc e

t
T

t
T)
(2)直线加减速控制算法
直线加减速控制算法:使得机床在启动或停止
时,速度沿着一定斜率的直线上升或下降。
 加速过程:
Vi  Vi 1  KL
 加速过渡过程:
Vi  Vc
 匀速过程:
Vi  Vi 1


减速过渡过程:
Vi  Vc

减速过程:
Vi  Vi 1  KL