无人机的微分平坦性详细推导+Mini snap

无人机的微分平坦性详细推导

目标:将无人机的状态一个12维的向量用4维表示
即将无人机的位置,方向,速度和角速度用位置(X,Y,Z)和绕z轴的 ψ \psi ψ角表示
无人机状态矩阵
图1

1.无人机非线性动力学

在这里插入图片描述在这里插入图片描述

2.机体坐标系表示

无人机的推力始终与机架垂直因此
Z B = t ∥ t ∥ Z_B=\frac{t}{\|t\|} ZB=tt, t = [ x ¨ , y ¨ , z ¨ + g ] T t=[\ddot x,\ddot y,\ddot z + g]^{\mathbf T} t=[x¨,y¨,z¨+g]T
然后我们通过一个中间坐标系来求 Y B Y_B YB,坐标系如图1的, X C , Y C , Z C X_C,Y_C,Z_C XCYC,ZC
X C = [ c o s ψ , s i n ψ , 0 ] T X_C=[cos\psi,sin\psi,0]^{\mathbf T} XC=[cosψ,sinψ,0]T
通过 X C X_C XC我们得到 Y B Y_B YB
Y B = Z B × X C ∥ Z B × X C ∥ Y_B=\frac{Z_B \times X_C}{\|Z_B \times X_C\|} YB=ZB×XCZB×XC(因为 X C X_C XC X B , Z B X_B,Z_B XB,ZB在一个平面内)
X B = Y B × Z B X_B=Y_B \times Z_B XB=YB×ZB
R B = [ X B   Y B   Z B ] R_B=[X_B \ Y_B \ Z_B] RB=[XB YB ZB](它表示的旋转可以由 ϕ , θ , ψ \phi,\theta,\psi ϕ,θ,ψ的旋转矩阵表示,因此这三个角可以被消除掉)

3.角速度替换

对下式两边求导,(对一个旋转矩阵求导,等于它的角速度乘以本身这个坐标系。旋转矩阵求导看这里: 旋转矩阵求导
在这里插入图片描述
ω B W = ω x X B + ω y Y B + ω z Z B \omega_{BW}=\omega_xX_B+\omega_yY_B+\omega_zZ_B ωBW=ωxXB+ωyYB+ωzZB 表示体坐标系下的角速度
上式中的
在这里插入图片描述
将它带入上式得到
在这里插入图片描述
这里的 h ω h_\omega hω的所有量都是已知量
h ω = ω B W × Z B = ( ω x X B + ω y Y B + ω z Z B ) × Z B h_\omega=\omega_{BW}\times Z_B=(\omega_xX_B+\omega_yY_B+\omega_zZ_B)\times Z_B hω=ωBW×ZB=(ωxXB+ωyYB+ωzZB)×ZB
因为
X B × Z B = − Y B X_B\times Z_B=-Y_B XB×ZB=YB
Y B × Z B = X B Y_B\times Z_B=X_B YB×ZB=XB
Z B × Z B = 0 → Z_B\times Z_B=\overrightarrow{0} ZB×ZB=0
因此上式可以展开为
h ω = − ω x × Y B + ω y × X B h_\omega= - \omega _x \times Y_B+\omega _y\times X_B hω=ωx×YB+ωy×XB
然后两边点乘 Y B Y_B YB,得到
ω x = − h ω ⋅ Y B \omega _x=-h_\omega \cdot Y_B ωx=hωYB
两边点乘 X B X_B XB,得到
ω Y = h ω ⋅ X B \omega _Y=h_\omega \cdot X_B ωY=hωXB
因为 ω B W = ω B C + ω C W \omega_{BW}=\omega _{BC}+\omega _{CW} ωBW=ωBC+ωCW,而 ω B C \omega _{BC} ωBC Z B Z_B ZB上没有分量,
因此 ω z = ω B W ⋅ Z B = ω C W ⋯ Z B = ψ ˙ Z W ⋅ Z B \omega _z=\omega _{BW}\cdot Z_B=\omega _{CW} \cdots Z_B=\dot \psi Z_W \cdot Z_B ωz=ωBWZB=ωCWZB=ψ˙ZWZB
至此12维变量变成了4维变量表示。
在实际的路径规划中我们只需要规划出轨迹的位置, ψ \psi ψ角通常表示为速度的切向方向(群里咨询的,不知是否还有什么知识不知道)。具体的控制回路如下;
例如在mini snap规划时我们只需要将规划的轨迹加上速度的切线方向丢这个控制回路,就可以实现无人机的飞行。

图2

mini snap我的博客园: link

https://www.cnblogs.com/gongliqiang/p/14375447.html

参考资料:深蓝学院

https://www.cnblogs.com/long5683/p/11871630.html

  • 6
    点赞
  • 35
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
1.项目代码功能经验证ok,确保稳定可靠运行。欢迎下载使用! 2.主要针对各个计算机相关专业,包括计科、信息安全、数据科学与大数据技术、人工智能、通信、物联网等领域的在校学生、专业教师或企业员工使用。 3.项目具有丰富的拓展空间,不仅可作为入门进阶,也可直接作为毕设、课程设计、大作业、初期项目立项演示等用途。 4.当然也鼓励大家基于此进行二次开发。在使用过程中,如有问题或建议,请及时私信沟通。 5.期待你能在项目中找到乐趣和灵感,也欢迎你的分享和反馈! 【资源说明】 基于EKF扩展卡尔曼滤波的四旋翼无人机姿态估计matlab仿真源码+超详细注释+项目说明.zip 说明:题为作者本科毕业设计的选题,使用EKF(Extended Kalman Filter, 扩展卡尔曼滤波)算法来对四旋翼无人机的姿态进行滤波和估计,姿态包括:俯仰角、滚转角、偏航角的角度值和角速度值。前提:角度值无法直接通过传感器直接测得,角速度值可以测得。 代码说明 - test1.m:一维线卡尔曼滤波的例子 - jaccsd.m:用于求解EKF算法中的雅克比矩阵 - EKF.m:EKF算法仿真程序 仿真结果 - 说明: - 1.仿真软件采用MATLAB2010b - 2.控制量和姿态角速度值采用随机生成的数据(使用实际数据更好) - 3.仿真过程偶尔会出现错误结果,原因是EKF计算过程中有几率出现奇异矩阵,导致算法无法进行下去

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值