已知线段长度L,起点速度v0,利用加速度梯形算法计算能达到的最大终点速度和最小终点速度。其中,最大加速度为am。
计算能达到的最大终点速度vm
设加加速时最大加加速度为Jm,减加速时最大加加速度为Jm′=αJm。
加速到最大加速度时运动的距离S
首先,计算按照最大加加速度,加速到最大加速度am时运动的距离S,其加速度变化示意图如下

计算运动的加速度
a=⎩⎨⎧Jmt,am−αJmt,0⩽t⩽t1,0⩽t⩽αt1.
其中,t1=Jmam。
计算运动的速度
v=⎩⎪⎨⎪⎧v0+21Jmt2,v1+amt−21αJmt2,0⩽t⩽t1,0⩽t⩽αt1.
其中,v1=v0+21Jmt12=v0+21amt1。
计算运动的距离
s=⎩⎪⎨⎪⎧v0t+61Jmt3,s1+v1t+21amt2−61αJmt3,0⩽t⩽t1,0⩽t⩽αt1.
其中,s1=v0t1+61Jmt13=v0t1+61amt12。
加速到最大加速度时运动的距离S为
S=s1+v1αt1+21amα2t12−61Jmα2t13=v0t1+61amt12+(v0+21amt1)αt1+31amα2t12=v0t1(1+α)+61amt12(1+3α+2α2).
线段的长度L>S
若L>S,则整个加速过程包含加加速运动、匀加速运动和减加速运动,其加速度变化示意图如下

计算运动的加速度
a=⎩⎪⎪⎨⎪⎪⎧Jmt,am,am−αJmt,0⩽t⩽t1,0⩽t⩽t2,0⩽t⩽αt1.
其中,t1=Jmam。
计算运动的速度
v=⎩⎪⎪⎪⎨⎪⎪⎪⎧v0+21Jmt2,v1+amt,v2+amt−21αJmt2,0⩽t⩽t1,0⩽t⩽t2,0⩽t⩽αt1.
其中
⎩⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎧v1v2vm=v0+21Jmt12=v0+21amt1,=v1+amt2=v0+21amt1+amt2,=v2+amαt1−21Jmαt12=v0+21amt1+amt2+21amαt1=v0+21amt1(1+α)+amt2.
计算运动的距离
s=⎩⎪⎪⎪⎪⎨⎪⎪⎪⎪⎧v0t+61Jmt3,s1+v1t+21amt2,s2+v2t+21amt2−61αJmt3,0⩽t⩽t1,0⩽t⩽t2,0⩽t⩽αt1.
其中
⎩⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎧s1s2sm=v0t1+61Jmt13=v0t1+61amt12,=s1+v1t2+21amt22=v0t1+61amt12+(v0+21amt1)t2+21amt22=v0(t1+t2)+61amt12+21amt1t2+21amt22,=s2+v2αt1+21amα2t12−61Jmα2t13=v0(t1+t2)+61amt12+21amt1t2+21amt22+(v0+21amt1+amt2)αt1+31amα2t12=v0(t1+t2+αt1)+61amt12(1+3α+2α2)+21amt1t2(1+2α)+21amt22=L.
于是,可以得到两个一元方程
⎩⎪⎨⎪⎧21amt22+[21amt1(1+2α)+v0]t2+v0t1(1+α)+61amt12(1+3α+2α2)−L=0,vm=v0+21amt1(1+α)+amt2.
求解第一个一元二次方程得到t2,然后代入第二个方程即可得到最大终点速度vm。
线段的长度L⩽S
若L⩽S,则整个加速过程只包含加加速运动和减加速运动,其加速度变化示意图如下

计算运动的加速度
a=⎩⎨⎧Jmt,Jmt1−αJmt,0⩽t⩽t1,0⩽t⩽αt1.
计算运动的速度
v=⎩⎪⎨⎪⎧v0+21Jmt2,v1+Jmt1t−21αJmt2,0⩽t⩽t1,0⩽t⩽αt1.
其中
⎩⎪⎪⎪⎪⎨⎪⎪⎪⎪⎧v1vm=v0+21Jmt12,=v1+Jmt1αt1−21Jmαt12=v0+21Jmt12+21Jmαt12=v0+21Jmt12(1+α).
计算运动的距离
s=⎩⎪⎨⎪⎧v0t+61Jmt3,s1+v1t+21Jmt1t2−61αJmt3,0⩽t⩽t1,0⩽t⩽αt1.
其中
⎩⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎧s1sm=v0t1+61Jmt13,=s1+v1αt1+21Jmt1α2t12−61Jmα2t13=v0t1+61Jmt13+(v0+21Jmt12)αt1+31Jmα2t13=v0t1(1+α)+61Jmt13(1+3α+2α2)=L.
于是,可以得到两个一元方程
⎩⎪⎨⎪⎧61Jm(1+3α+2α2)t13+v0(1+α)t1−L=0,vm=v0+21Jmt12(1+α).
求解第一个一元三次方程得到t1,然后代入第二个方程即可得到最大终点速度vm。
计算能达到的最小终点速度vm
设减减速时最大加加速度为Jm,加减速时最大加加速度为Jm′=βJm。
对于减速运动,由于速度值不小于零,因此先判断是否能够减速到零。
判断能否减速到零
按照给定的条件,从零反向加速,计算能达到的最大终点速度vmax。如果vmax⩾v0,则能达到的最小终点速度vm=0。以下均假设vmax<v0,即vm>0成立。
减速到最大加速度时运动的速度V和距离S
计算按照最大加加速度,减速到最大加速度am时运动的速度V和距离S,其加速度变化示意图如下

计算运动的加速度
a=⎩⎨⎧−βJmt,−am+Jmt,0⩽t⩽βt1,0⩽t⩽t1.
其中,t1=Jmam。
计算运动的速度
v=⎩⎪⎨⎪⎧v0−21βJmt2,v1−amt+21Jmt2,0⩽t⩽βt1,0⩽t⩽t1.
其中
⎩⎪⎪⎪⎪⎨⎪⎪⎪⎪⎧v1vm=v0−21Jmβt12=v0−21amβt1,=v1−amt1+21Jmt12=v0−21amβt1−21amt1=v0−21amt1(1+β).
计算运动的距离
s=⎩⎪⎨⎪⎧v0t−61βJmt3,s1+v1t−21amt2+61Jmt3,0⩽t⩽βt1,0⩽t⩽t1.
其中
⎩⎪⎪⎪⎪⎨⎪⎪⎪⎪⎧s1sm=v0βt1−61Jmβ2t13=v0βt1−61amβ2t12,=s1+v1t1−21amt12+61Jmt13=v0βt1−61amβ2t12+(v0−21amβt1)t1−31amt12=v0t1(1+β)−61amt12(β2+3β+2).
减速到最大加速度时运动的速度V和S为
⎩⎪⎨⎪⎧V=vm=v0−21amt1(1+β),S=sm=v0t1(1+β)−61amt12(β2+3β+2).
V⩽0或者线段的长度L⩽S
若V⩽0或者L⩽S,则整个减速过程只包含加减速运动和减减速运动,其加速度变化示意图如下

计算运动的加速度
a=⎩⎨⎧−βJmt,−Jmt1+Jmt,0⩽t⩽βt1,0⩽t⩽t1.
计算运动的速度
v=⎩⎪⎨⎪⎧v0−21βJmt2,v1−Jmt1t+21Jmt2,0⩽t⩽βt1,0⩽t⩽t1.
其中
⎩⎪⎪⎪⎪⎨⎪⎪⎪⎪⎧v1vm=v0−21Jmβt12,=v1−Jmt1t1+21Jmt12=v0−21Jmβt12−21Jmt12=v0−21Jmt12(1+β).
计算运动的距离
s=⎩⎪⎨⎪⎧v0t−61βJmt3,s1+v1t−21Jmt1t2+61Jmt3,0⩽t⩽βt1,0⩽t⩽t1.
其中
⎩⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎧s1sm=v0βt1−61Jmβ2t13,=s1+v1t1−21Jmt1t12+61Jmt13=v0βt1−61Jmβ2t13+(v0−21Jmβt12)t1−31Jmt13=v0t1(1+β)−61Jmt13(β2+3β+2)=L.
于是,可以得到两个一元方程
⎩⎪⎨⎪⎧61Jm(β2+3β+2)t13−v0(1+β)t1+L=0,vm=v0−21Jmt12(1+β).
求解第一个一元三次方程得到t1,然后代入第二个方程即可得到最小终点速度vm。
线段长度L>S
若L>S,则整个减速过程包含加减速运动、匀减速运动和减减速运动,其加速度变化示意图如下

计算运动的加速度
a=⎩⎪⎪⎨⎪⎪⎧−βJmt,−am,−am+Jmt,0⩽t⩽βt10⩽t⩽t2,0⩽t⩽t1.
其中,t1=Jmam。
计算运动的速度
v=⎩⎪⎪⎪⎨⎪⎪⎪⎧v0−21βJmt2,v1−amt,v2−amt+21Jmt2,0⩽t⩽βt10⩽t⩽t2,0⩽t⩽t1.
其中
⎩⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎧v1v2vm=v0−21Jmβt12=v0−21amβt1,=v1−amt2=v0−21amβt1−amt2,=v2−amt1+21Jmt12=v0−21amβt1−amt2−21amt1=v0−21amt1(1+β)−amt2.
计算运动的距离
s=⎩⎪⎪⎪⎪⎨⎪⎪⎪⎪⎧v0t−61βJmt3,s1+v1t−21amt2,s2+v2t−21amt2+61Jmt3,0⩽t⩽βt10⩽t⩽t2,0⩽t⩽t1.
其中
⎩⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎧s1s2sm=v0βt1−61Jmβ2t13=v0βt1−61amβ2t12,=s1+v1t2−21amt22=v0βt1−61amβ2t12+(v0−21amβt1)t2−21amt22=v0(βt1+t2)−61amβ2t12−21amβt1t2−21amt22,=s2+v2t1−21amt12+61Jmt13=v0(βt1+t2)−61amβ2t12−21amβt1t2−21amt22+(v0−21amβt1−amt2)t1−31amt12=v0(βt1+t2+t1)−61amt12(β2+3β+2)−21amt1t2(β+2)−21amt22=L.
于是,可以得到两个一元方程
⎩⎪⎨⎪⎧21amt22+[21amt1(β+2)−v0]t2+61amt12(β2+3β+2)−v0t1(1+β)+L=0,vm=v0−21amt1(1+β)−amt2.
求解第一个一元二次方程得到t2,然后代入第二个方程即可得到最小终点速度vm。
在最短时间内运动的距离ΔS
已知起点速度v0,最大速度vm(⩾v0),最大加速度为am,加加速时最大加加速度为Jm,减加速时最大加加速度为Jm′=αJm,按照加速度梯形算法计算在最短时间内运动的距离ΔS。
加速到最大加速度时速度的变化量ΔV
首先,计算按照最大加加速度,加速到最大加速度am时速度的变化量ΔV,其加速度变化示意图如下

t1=Jmam,ΔV=21am(t1+αt1)=21amt1(1+α).
速度变化量(vm−v0)>ΔV
若(vm−v0)>ΔV,则加速阶段包含匀加速过程,其加速度变化示意图如下

t1=Jmam,vm−v0=21amt1(1+α)+amt2⟹t2=amvm−v0−21t1(1+α),ΔS=v0(t1+t2+αt1)+61amt12(1+3α+2α2)+21amt1t2(1+2α)+21amt22.
速度变化量(vm−v0)⩽ΔV
若(vm−v0)⩽ΔV,则加速阶段不包含匀加速过程,其加速度变化示意图如下

vm−v0=21Jmt12(1+α)⟹t1=Jm(1+α)2(vm−v0),ΔS=v0t1(1+α)+61Jmt13(1+3α+2α2).
加速度梯形算法的完整运动过程
假设已知各运动阶段的时间,如下示意图

完整的运动过程包含7个阶段,依次为加加速阶段、匀加速阶段、减加速阶段、匀速阶段、加减速阶段、匀减速阶段、减减速阶段,设起始速度为v0,加加速阶段最大加加速度为Jm,减减速阶段最大加加速度为Jn,则
运动各阶段加速度为
⎩⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎧0⩽t⩽t1,0⩽t⩽t2,0⩽t⩽αt1,0⩽t⩽t3,0⩽t⩽βt4,0⩽t⩽t5,0⩽t⩽t4,a=Jmt,a=Jmt1,a=Jmt1−αJmt,a=0,a=−βJnt,a=−Jnt4,a=−Jnt4+Jnt.
运动各阶段速度为
⎩⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎧0⩽t⩽t1,0⩽t⩽t2,0⩽t⩽αt1,0⩽t⩽t3,0⩽t⩽βt4,0⩽t⩽t5,0⩽t⩽t4,v=v0+21Jmt2,v=v1+Jmt1t,v=v2+Jmt1t−21αJmt2,v=v3,v=v4−21βJnt2,v=v5−Jnt4t,v=v6−Jnt4t+21Jnt2.⟸⎩⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎧v1v2v3v4v5v6ve=v0+21Jmt12,=v1+Jmt1t2,=v2+Jmt1αt1−21Jmαt12=v2+21Jmαt12,=v3,=v4−21Jnβt42,=v5−Jnt4t5,=v6−Jnt42+21Jnt42=v6−21Jnt42.
运动各阶段距离为
⎩⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎧0⩽t⩽t1,0⩽t⩽t2,0⩽t⩽αt1,0⩽t⩽t3,0⩽t⩽βt4,0⩽t⩽t5,0⩽t⩽t4,s=v0t+61Jmt3,s=s1+v1t+21Jmt1t2,s=s2+v2t+21Jmt1t2−61αJmt3,s=s3+v3t,s=s4+v4t−61βJnt3,s=s5+v5t−21Jnt4t2,s=s6+v6t−21Jnt4t2+61Jnt3.⟸⎩⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎧s1s2s3s4s5s6se=v0t1+61Jmt13,=s1+v1t2+21Jmt1t22,=s2+v2αt1+21Jmt1α2t12−61Jmα2t13=s2+v2αt1+31Jmα2t13,=s3+v3t3,=s4+v4βt4−61Jnβ2t43,=s5+v5t5−21Jnt4t52,=s6+v6t4−21Jnt43+61Jnt43=s6+v6t4−31Jnt43.