网站首页 > 博客文章 正文
引言
对于从事无人机行业的人来说,了解和建立无人机的运动学和动力学模型是非常有必要的。否则,你看到一架无人机在天上飞,你只会说:卧槽,飞机飞得好高啊。而对于从事飞行控制行业的工程师来说,建模是他们的必备技能,尽管像PID控制算法不需要飞行器的精确模型就可以实现自动飞行,但是在设计串级控制器的时候是根据无人机的运动学和动力学模型进行的,而在通道解耦时也是要用到相应模型的。如果你要搞得稍微先进一点,几乎所有看起来高大上的控制算法都是基于模型进行控制律设计的。而在现实工程应用中,除了广泛使用的PID控制之外,大部分控制器都会引入部分非线性模型来提高算法的鲁棒性,所以学会如何对无人机进行建模是一切后续工作的基础。
无人机的模型包括运动学和动力学两部分,多旋翼、直升机、固定翼这三种常见的飞行器在建模时都被当作刚体,它们具有相同的运动学模型,而在动力学模型上具有很大的差别,这是因为他们产生升力的原理不同。本篇内容主要描述多旋翼飞行器的运动学和动力学模型,关于直升机和固定翼飞行器的动力学模型,我们以后会单独进行建模,为了便于说明,本篇文章以“+”型布局四旋翼为例进行建模过程的展示,有兴趣的读者可以根据自身需求对不同形式的布局进行建模。
坐标系
我们在之前的文章中已经对飞行器常用的坐标系进行了描述,在这里我们重申一下本次建模所使用的坐标系。
A、本地NED坐标系
原点固连于地面上任意一点,记为On;
X轴指向椭球模型地理北极,记为Xn;
Y轴指向椭球模型地理东方,记为Yn;
Z轴沿椭球面发现向下,记为Zn;
B、机载NED坐标系
原点固连于飞行器重心,记为Onv;
X轴指向椭球模型地理北极,记为Xnv;
Y轴指向椭球模型地理东方,记为Ynv;
Z轴沿椭球面发现向下,记为Znv;
C、机载轴坐标系
原点固连于飞行器重心,记为Ob;
X轴位于飞行器纵向对称面内,指向机头,记为Xb;
Y轴指向机身右侧,与纵向对称面垂直,记为Yb;
Z轴位于纵向对称面内,指向机腹,记为Zb;
符号说明
Pn:本地NED坐标系下的位置向量;
Vn:本地NED坐标系下的速度向量;
Vb:机体轴坐标系下的速度向量;
Rbn:机体轴系向机载NED坐标系的旋转矩阵;
Rnb:机载NED坐标系向机体轴系的旋转矩阵;
φ:滚转角;
θ:俯仰角;
ψ:偏航角;
ωb:机载NED坐标系向机体轴系旋转的角速度在机体轴系下的
表示;
S(ωb):反对称矩阵;
qnb:机载NED坐标系向机体轴系旋转的四元数表示;
Fb:旋翼作用力总和在机体轴系下的表示;
m:飞行器质量;
g:重力加速度;
J:飞行器的转动惯量矩阵;
T:旋翼升力;
cT:旋翼升力系数;
Q:旋翼反扭矩;
cQ:旋翼反扭矩系数;
JR:旋翼转动惯量;
n:旋翼转速;
Fb:所有旋翼总升力在机体轴系下的表示;
τb:作用在飞行器上的总力矩在机体轴系下的表示;
运动学模型
运动学模型包括线运动和角运动,也就是位置跟速度的关系,角度跟角速度的关系;
位置跟速度的关系很简单,就是微分关系:
上面公式中的下标n和b就代表在相应坐标系中的描述,而R的上标n和下标b就代表b坐标系向n坐标系旋转的旋转矩阵。后续描述如无特别说明,默认如此。因为动力学模型中我们一般都是在机体轴坐标系中描述,所以为了统一两个方程中的速度,在此将本地NED坐标系的速度转换为机体轴系的速度。
角运动是描述角度跟角速度的关系,我们在之前的文章里也讲过描述飞行器姿态有三种方法:欧拉角、旋转矩阵、四元数。在这篇文章中我们将三种描述形式的角运动方程都描述出来,但是不在这儿进行证明,我们会在后续文章中对三种方式的描述进行证明。
欧拉角角运动方程:
这也是为什么θ角度为±90°时会出现奇点的原因。
旋转矩阵角运动方程:
上述公式中S表示反对称矩阵,后续如无特殊说明S均为反对称矩阵。
四元数角运动方程:
动力学模型
飞行器的动力学模型也叫牛顿欧拉方程,学过理论力学的朋友一定很熟悉它们的表达方式。接下来我们对一个+型布局的四旋翼进行动力学建模,其示意图如下:
位置动力学方程就是牛顿第二定律,也就是力和加速度之间的关系,因为作用在飞行器上的升力在机体轴系中表述比较方便,所以我们在机体轴系建立其方程,其速度、角速度、作用力包括重力在公式中都是在机体轴系的表示,其表达式如下:
而姿态动力学方程描述的是力矩与角加速度之间的关系,同样我们在机体轴系中描述,其表达式如下:
在计算作用在四旋翼上的总升力和力矩之前,我们对单个旋翼的升力和反扭距进行分析,这里旋翼升力我们采用无风悬停时的表达式:
系数CT和CQ可通过实验确定。
当旋翼转速变化时,反扭矩的公式为:
在得到单个旋翼的升力和反扭距之后,我们就可以计算出飞行器的总升力和总力矩。在机体系下,旋翼的升力总是沿Z轴负向,所以作用在飞行器上的总升力为:
作用在飞行器上的总力矩:
总结
建模可以帮助了解你要控制的对象,但是绝大多数的控制对象都无法精确的建模,尤其像无人机这种复杂的对象,它们具有多种飞行状态,每一种飞行状态的模型都不一样。
本文的内容涵盖了一架多旋翼飞行器主要的数学模型,当然我们忽略了机体的气动阻力、桨叶的挥舞以及电机模型等部分,虽然我们并不能建立完全精确的数学模型,但是其依然具有重要意义:
A、仿真实验的基础;
B、控制律设计的依据;
C、分析控制对象的重要方法;
D、众多控制律算法的优化源泉。
更多内容请关注我,北航博士为你带来无人机技术的解析。
猜你喜欢
- 2024-10-14 “互联网+”大赛华软学院参赛项目风采|疲劳驾驶预警系统
- 2024-10-14 双目视觉在机械臂抓取中的应用(3D locate)
- 2024-10-14 翻译文章二:项目说明及四旋翼直升机的动力学原理
- 2024-10-14 基于TOF相机的靶标识别与位姿测量系统设计
- 2024-10-14 ANSYS Fluent中的动态网格模型理论介绍
- 2024-10-14 3D视觉 | 机器人3D手眼标定实验(上)
- 2024-10-14 基于VANET的车辆相对定位技术(gps相对定位常用的组合方法有)
- 2024-10-14 研究员为HoloLens 2 AR引导操作提出鲁棒性更强的姿态追踪
- 2024-10-14 基于全球卫星导航信号的极化阵列平台姿态估计
- 2024-10-14 使用OpenCV和Dlib的头部姿态估计(opencv 姿态估计)
你 发表评论:
欢迎- 最近发表
- 标签列表
-
- powershellfor (55)
- messagesource (56)
- aspose.pdf破解版 (56)
- promise.race (63)
- 2019cad序列号和密钥激活码 (62)
- window.performance (66)
- qt删除文件夹 (72)
- mysqlcaching_sha2_password (64)
- ubuntu升级gcc (58)
- nacos启动失败 (64)
- ssh-add (70)
- jwt漏洞 (58)
- macos14下载 (58)
- yarnnode (62)
- abstractqueuedsynchronizer (64)
- source~/.bashrc没有那个文件或目录 (65)
- springboot整合activiti工作流 (70)
- jmeter插件下载 (61)
- 抓包分析 (60)
- idea创建mavenweb项目 (65)
- vue回到顶部 (57)
- qcombobox样式表 (68)
- vue数组concat (56)
- tomcatundertow (58)
- pastemac (61)
本文暂时没有评论,来添加一个吧(●'◡'●)