轨迹生成——三次多项式

前言


一段平滑的运动轨迹,至少要求位移曲线平滑、速度曲线连续,即至少需要满足四个约束条件:起始位置 s 0 s_0 s0 、结束位置 s f s_f sf 、起始速度 s ˙ 0 \dot{s}_0 s˙0 、结束速度 s ˙ f \dot{s}_f s˙f

则可以用三次多项式来表示轨迹:
s ( t ) = a 0 + a 1   t + a 2   t 2 + a 3   t 3 (1) s(t)=a_{0}+a_{1} \, t+a_{2} \, t^{2}+a_{3} \, t^{3} \tag{1} s(t)=a0+a1t+a2t2+a3t3(1)

求解轨迹方程未知参数


带入约束条件,其中 t 0 = 0 t_0 = 0 t0=0
s 0 =   a 0 s f =   a 0 + a 1   t f + a 2   t f 2 + a 3   t f 3 s ˙ 0 =   a 1 s ˙ f =   a 1 + 2 a 2   t f + 3 a 3   t f 2 (2) \begin{align} s_{0}=\, & a_{0}\\ s_{f}=\, & a_{0}+a_{1} \, t_{f}+a_{2} \, t_{f}^{2}+a_{3} \, t_{f}^{3}\\ \dot{s}_{0}=\, & a_{1}\\ \dot{s}_{f}=\, & a_{1}+2 a_{2} \, t_{f}+3 a_{3} \, t_{f}^{2} \end{align} \tag{2} s0=sf=s˙0=s˙f=a0a0+a1tf+a2tf2+a3tf3a1a1+2a2tf+3a3tf2(2)
式(2)可转化为矩阵形式
[ s 0 s f s ˙ 0 s ˙ f ] = [ 1 0 0 0 1 t f t f 2 t f 3 0 1 0 0 0 1 2 t f 3 t f 2 ] [ a 0 a 1 a 2 a 3 ] (3) \left[\begin{array}{c}s_{0} \\ s_{f} \\ \dot{s}_{0} \\ \dot{s}_{f}\end{array}\right]=\left[\begin{array}{cccc}1 & 0 & 0 & 0 \\ 1 & t_f & t_{f}^{2} & t_{f}^{3} \\ 0 & 1 & 0 & 0 \\ 0 & 1 & 2 t_f & 3 t_{f}^{2}\end{array}\right]\left[\begin{array}{l}a_{0} \\ a_{1} \\ a_{2} \\ a_{3}\end{array}\right] \tag{3} s0sfs˙0s˙f = 11000tf110tf202tf0tf303tf2 a0a1a2a3 (3)
求解矩阵方程组(当 t f ≠ 0 t_f \neq 0 tf=0 时, d e t ( T 4 × 4 ) ≠ 0 det(T_{4 \times 4}) \neq 0 det(T4×4)=0
[ a 0 a 1 a 2 a 3 ] = [ 1 0 0 0 0 0 1 0 − 3 t f 2 3 t f 2 − 2 t f − 1 t f 2 t f 3 − 2 t f 2 1 t f 2 1 t f 2 ] [ s 0 s f s ˙ 0 s ˙ f ] (4) \left[\begin{array}{l}a_{0} \\ a_{1} \\ a_{2} \\ a_{3}\end{array}\right]=\left[\begin{array}{cccc}1 & 0 & 0 & 0 \\ 0 & 0 & 1 & 0 \\ -\frac{3}{t_{f}^{2}} & \frac{3}{t_{f}^{2}} & -\frac{2}{t_{f}} & -\frac{1}{t_{f}} \\ \frac{2}{ t_{f}^{3}} & -\frac{2}{t_{f}^{2}} & \frac{1}{t_{f}^{2}} & \frac{1}{t_{f}^{2}}\end{array}\right]\left[\begin{array}{c}s_{0} \\ s_{f} \\ \dot{s}_{0} \\ \dot{s}_{f}\end{array}\right] \Large \tag{4} a0a1a2a3 = 10tf23tf3200tf23tf2201tf2tf2100tf1tf21 s0sfs˙0s˙f (4)
式(4)也可转化为代数形式
{ a 0 = s 0 a 1 = 0 a 3 = 3 t f 2 ( s f − s 0 ) a 4 = − 2 t f 2 ( s f − s 0 ) (5) \left\{ \begin{array}{l} a_0=s_0\\ a_1=0\\ a_3=\frac{3}{t_{f}^{2}}\left( s_f-s_0 \right)\\ a_4=-\frac{2}{t_{f}^{2}}\left( s_f-s_0 \right)\\ \end{array} \right. \tag{5} a0=s0a1=0a3=tf23(sfs0)a4=tf22(sfs0)(5)

输出轨迹方程


{ s ( t ) = a 0 + a 1   t + a 2   t 2 + a 3   t 3 s ˙ ( t ) = a 1 + 2 a 2   t + 3 a 3   t 2 s ¨ ( t ) = 2 a 2 + 6 a 3   t (6) \left\{ \begin{array}{l} s\left( t \right) =a_0+a_1 \,t+a_2 \, t^2+a_3 \, t^3\\ \dot{s}\left( t \right) =a_1+2a_2 \, t+3a_3 \, t^2\\ \ddot{s}\left( t \right) =2a_2+6a_3 \, t\\ \end{array} \right. \tag{6} s(t)=a0+a1t+a2t2+a3t3s˙(t)=a1+2a2t+3a3t2s¨(t)=2a2+6a3t(6)

总结


缺点:虽然速度连续,但加速度是不连续的,因此存在柔性冲击,对电机的运作和寿命不利

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值