基于运动/载体坐标系下的跟踪误差方程


在路径跟踪中,需要跟踪的是虚拟AUV;在轨迹跟踪中,需要跟踪的是位置随时间变化的点。无论是路径跟踪还是轨迹跟踪,实质上都是对一个移动的点进行跟踪,有相同之处。本文进行AUV在动系下的跟踪误差方程的推导,类似于在SF坐标系下的跟踪误差方程,关于在SF系下的跟踪误差方程,见https://blog.csdn.net/dooglocool/article/details/128681600?spm=1001.2014.3001.5501。

1.不同坐标系下的跟踪误差方程推导分析

虽然在不同坐标系下的跟踪误差方程有所不同,但其表达的本质相同。不同坐标系下的误差方程的推导,都有其共同点:就是跟踪误差结合坐标转换矩阵相关知识进行转化。
在SF系下的跟踪误差方程的推导中,用到的是 { W } \{W\} {W}系和 { S F } \{SF\} {SF}系的转换。
而在动系下的跟踪误差方程推导中,用到的是动系和定系的坐标转换(主要),还涉及到动系和SF系的坐标转换。

2.动系下的跟踪误差方程推导

定义目标点在定系下的位置坐标为 η R = [ x R , y R , z R ] T \eta_R=[x_R,y_R,z_R]^{T} ηR=[xR,yR,zR]T,AUV在定系下的位置坐标为 η = [ x , y , z ] T \eta=[x,y,z]^{T} η=[x,y,z]T
定系下的跟踪误差向量表示为:
η e n = [ x − x R y − y R z − z R ] \eta_e^n=\begin{bmatrix}x-x_R\\y-y_R\\z-z_R\end{bmatrix} ηen= xxRyyRzzR
此时在动系下的位置误差向量表示为
ϵ = [ x e y e z e ] = J 1 ( η 2 ) T η e n \epsilon=\begin{bmatrix}x_e\\y_e \\z_e\end{bmatrix}=J_1(\eta_2)^T\eta_e^n ϵ= xeyeze =J1(η2)Tηen
J 1 ( η 2 ) J_1(\eta_2) J1(η2)为动系到定系的转换矩阵,上式表示将定系下的跟踪误差向量通过转换矩阵转换为动系下的跟踪误差向量。
对上式进行求导,得到跟踪误差方程
η ˙ = J ˙ 1 T ( η 2 ) η e n + J 1 T ( η 2 ) η ˙ e n \dot{\eta}=\dot{J}_1^T(\eta_2)\eta_e^n+J_1^T(\eta_2)\dot\eta_e^n η˙=J˙1T(η2)ηen+J1T(η2)η˙en
下面需要用到旋转矩阵求导的知识,见https://blog.csdn.net/dooglocool/article/details/131954280?spm=1001.2014.3001.5501

J ˙ 1 ( η 2 ) = J 1 ( η 2 ) S ( ω n b b ) \dot{J}_1(\eta_2)=J_1(\eta_2)S(\omega_{nb}^b) J˙1(η2)=J1(η2)S(ωnbb)
其中 S ( ω n b b ) = [ 0 − r q r 0 0 − q 0 0 ] S(\omega_{nb}^b)=\begin{bmatrix}0 & -r & q \\r & 0 &0\\-q&0&0\end{bmatrix} S(ωnbb)= 0rqr00q00
此时的误差方程变为
ϵ ˙ = S T ( ω n b b ) J 1 T ( η 2 ) η e n + J 1 T ( η 2 ) η ˙ e n \dot{\epsilon}=S^T(\omega_{nb}^b)J_1^T(\eta_2)\eta_e^n+J_1^T(\eta_2)\dot\eta_e^n ϵ˙=ST(ωnbb)J1T(η2)ηen+J1T(η2)η˙en
进一步化简得到
ϵ ˙ = S T ( ω n b b ) ϵ + J 1 T ( η 2 ) η ˙ e n \dot{\epsilon}=S^T(\omega_{nb}^b)\epsilon+J_1^T(\eta_2)\dot\eta_e^n ϵ˙=ST(ωnbb)ϵ+J1T(η2)η˙en
ϵ ˙ = S T ( ω n b b ) ϵ + J 1 T ( η 2 ) ( η ˙ − η ˙ R ) \dot{\epsilon}=S^T(\omega_{nb}^b)\epsilon+J_1^T(\eta_2)(\dot{\eta}-\dot{\eta}_R) ϵ˙=ST(ωnbb)ϵ+J1T(η2)(η˙η˙R)
ϵ ˙ = S T ( ω n b b ) ϵ + J 1 T ( η 2 ) J 1 ( η 2 ) η ˙ − J 1 T ( η 2 ) η ˙ R \dot{\epsilon}=S^T(\omega_{nb}^b)\epsilon+J_1^T(\eta_2)J_1(\eta_2)\dot\eta-J_1^T(\eta_2)\dot{\eta}_R ϵ˙=ST(ωnbb)ϵ+J1T(η2)J1(η2)η˙J1T(η2)η˙R
ϵ ˙ = S T ( ω n b b ) ϵ + ν − J 1 T ( η 2 ) η ˙ R \dot{\epsilon}=S^T(\omega_{nb}^b)\epsilon+\nu-J_1^T(\eta_2)\dot{\eta}_R ϵ˙=ST(ωnbb)ϵ+νJ1T(η2)η˙R
等式右侧最后一项意为动系下的目标点的速度,等价于将目标点在目标轨迹(SF系)上的速度转换到动系下的速度,而目标点在轨迹上的速度只有纵向速度。表示为
[ u r 0 0 ] \begin{bmatrix}u_r\\0\\0\end{bmatrix} ur00 此处的 u r u_r ur也可以理解为目标点在定系下的和速度。
SF系到动系的转换矩阵表示为
在这里插入图片描述
则误差方程进一步变为
ϵ ˙ = S T ( ω n b b ) ϵ + ν − J ( ψ e , θ e ) ν F \dot{\epsilon}=S^T(\omega_{nb}^b)\epsilon+\nu-J(\psi_e,\theta_e)\nu_F ϵ˙=ST(ωnbb)ϵ+νJ(ψe,θe)νF展开得到
[ x ˙ e y ˙ e z ˙ e ] = [ r y e − q z e − r x e q x e ] + [ u v w ] − J ( ψ e , θ e ) [ u r 0 0 ] \begin{bmatrix}\dot{x}_e\\\dot{y}_e\\\dot{z}_e\end{bmatrix}=\begin{bmatrix}ry_e-qz_e\\-rx_e\\qx_e\end{bmatrix}+\begin{bmatrix}u\\v\\w\end{bmatrix}-J(\psi_e,\theta_e)\begin{bmatrix}u_r\\0\\0\end{bmatrix} x˙ey˙ez˙e = ryeqzerxeqxe + uvw J(ψe,θe) ur00 展开便得到在动系下的跟踪误差方程
在这里插入图片描述

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值