已知线段长度s,起点速度v0,利用加速度梯形算法(滤波方式)计算能达到的最大终点速度和最小终点速度。其中,系统最大速度为vm,系统最大加速度为am,系统最大加加速度为Jm,插补周期为T。
计算能达到的最大终点速度vm′
(1)假设实际运动的最大加速度为am′,则
n=am′Tvm′−v0,L=JmTam′.
其中,n为直线加速度加速的整周期数,L为速度滤波器的长度。
实际运动的距离s:s=21(v0+vm′)(n+L)T=21(v0+vm′)(am′vm′−v0+Jmam′)。
若使运动时间最短,令am′vm′−v0=Jmam′,am′=Jm(vm′−v0)
于是有
s=21(v0+vm′)⋅2⋅am′vm′−v0=am′(vm′+v0)(vm′−v0),(vm′+v0)(vm′−v0)=am′s=Jm(vm′−v0)⋅s,(vm′+v0)⋅vm′−v0=Jm⋅s,(vm′+v0)2(vm′−v0)=Jms2,vm′3+v0vm′2−v02vm′−v03−Jms2=0.
(2)求解一元三次方程:vm′3+v0vm′2−v02vm′−v03−Jms2=0
得到实际的最大终点速度vm′(vm′>v0)。
(3)检验am′=svm′2−v02是否满足系统最大加速度的要求。
若am′不大于系统最大加速度,则min(vm′, vm)即为能达到的最大终点速度。
(4)若am′大于系统最大加速度,则取am为实际运动的最大加速度,重新计算能达到的最大终点速度。
L=JmTam,n=amTvm′−v0,s=21(v0+vm′)(L+n)T=21(v0+vm′)(Jmam+amvm′−v0),Jmvm′2+am2vm′+am2v0−Jmv02−2amJms=0.
由此求得最大终点速度vm′,并且要求vm′>v0。若不满足要求,则令vm′=v0。
计算能达到的最小终点速度vm′
(1)首先判断能否减速到零,如果能减速到零,则vm′=0。
(2)如果不能减速到零,则假设实际运动的最大加速度为am′,于是有
n=am′Tv0−vm′,L=JmTam′.
其中,n为直线加速度减速的整周期数,L为速度滤波器的长度。
实际运动的距离s:s=21(v0+vm′)(n+L)T=21(v0+vm′)(am′v0−vm′+Jmam′)。
若使运动时间最短,令am′v0−vm′=Jmam′,am′=Jm(v0−vm′)
于是有
s=21(v0+vm′)⋅2⋅am′v0−vm′=am′(v0+vm′)(v0−vm′),(v0+vm′)(v0−vm′)=am′s=Jm(v0−vm′)⋅s,(v0+vm′)⋅v0−vm′=Jm⋅s,(v0+vm′)2(v0−vm′)=Jms2,vm′3+v0vm′2−v02vm′−v03+Jms2=0.
(3)求解一元三次方程:vm′3+v0vm′2−v02vm′−v03+Jms2=0
得到实际的最小终点速度vm′(vm′>0并且vm′<v0)。
(4)检验am′=sv02−vm′2是否满足系统最大加速度的要求。
若am′不大于系统最大加速度,则vm′即为能达到的最小终点速度。
(5)若am′大于系统最大加速度,则取am为实际运动的最大加速度,重新计算能达到的最小终点速度。
L=JmTam,n=amTv0−vm′,s=21(v0+vm′)(L+n)T=21(v0+vm′)(Jmam+amv0−vm′),Jmvm′2−am2vm′−am2v0−Jmv02+2amJms=0.
由此求得最小终点速度vm′,并且要求vm′>0并且vm′<v0。若不满足要求,则令vm′=v0。
插补
已知起始速度vs,终止速度ve,系统最大速度为vm,系统最大加速度为am,系统最大加加速度为Jm。
粗插补计算能加速到的最大速度vm′(vm′⩽vm),正向最大加速度am′,反向最大加速度am′′。
am′=Jm(vm′−vs),am′′=Jm(vm′−ve),am′=min(am′, am),am′′=min(am′′, am).
正向运动距离:s′=21(vs+vm′)(L′+n′)T,其中L′=JmTam′,n′=am′Tvm′−vs。
反向运动距离:s′′=21(ve+vm′)(L′′+n′′)T,其中L′′=JmTam′′,n′′=am′′Tvm′−ve。