飞控简析
skyman满天星
这个作者很懒,什么都没留下…
展开
-
飞控简析-从入门到跑路序章
一、序言茫茫天数此中求,世道兴衰不自由万万千千说不尽,不如推背去归休本人搞飞控差不多两年了,从一开始什么都不懂的真·小白,到现在的高级小白,我已经经历了太多太多。因为感觉飞控是一个比较小众的产品,所以国内的资料并不是很完善,有些文章重复太多了,而且每个人看问题的视角是不一样的。我虽然只是个半瓶水,但是也想为国内的飞控圈子做一点贡献。二、学飞控有没有前途这个话题有点小,大一点的问...原创 2018-11-01 23:02:40 · 1854 阅读 · 2 评论 -
飞控简析-从入门到跑路 第一章PX4的姿态控制(3)
接着上一篇的代码继续进行分析,上一篇的最后我们已经得到了过渡姿态R_rp的旋转矩阵(大地坐标系)。并得到了从实际姿态旋转到过渡姿态时,在机体坐标系的三轴角度差e_R。 /* R_rp and R_sp has the same Z axis, calculate yaw error */ math::Vector<3> R_sp_x(R_sp(0, 0), R_sp(1, 0)...原创 2018-11-16 21:10:07 · 1984 阅读 · 1 评论 -
飞控简析-从入门到跑路 第一章新版PX4的姿态控制
今天我们来看下新版PX4(1.8.2版本,2018年11月21日)的姿态控制方法。首先下载该版本的代码。官方下载地址:https://github.com/PX4/Firmware/releases百度网盘:https://pan.baidu.com/s/18NiROf7Gsa7Zsbj7VoonVA解压文件后,定位到Firmware-master\src\modules\mc_att...原创 2018-12-01 17:51:13 · 2584 阅读 · 2 评论 -
飞控简析-从入门到跑路 第二章PX4的位置控制(1)
一、前言首先,我们要清楚的我们的需求,PX4的位置控制需要完成什么样的工作。位置控制需要完成的是,从期望位置得到期望姿态的一个过程,然后把期望姿态传递给姿态控制模块,所以位置控制的输入是期望位置,输出是期望姿态(当然可能还需要其他信息)。然后,PX4的位置又可以分为两种,一种是自动控制,即地面站规划航线,无人机自己飞,第二种是手动控制,即遥控器控制期望位置(或者叫GPS定点模式)。这两种控制需...原创 2018-12-11 07:57:27 · 4516 阅读 · 0 评论 -
飞控简析-从入门到跑路 第二章PX4的位置控制(2)
1.control_auto()说完control_manual,接下来我们在看看control_auto。control_auto是用来处理自动控制的函数,即把航线任务转换为期望位置。函数位于Mc_pos_control-mian.cpp的1089行。首先,如果函数的_mode_auto是第一次启动,那么就要进行初始化,重置xy位置期望值和高度期望值,如果无人机位于固定翼模式,也要重置x...原创 2018-12-16 10:40:57 · 2725 阅读 · 0 评论 -
飞控简析-从入门到跑路 第二章PX4的位置控制(3)
经过control_manual(dt)或者control_auto(dt)的处理,我们已经得到了实际控制用的期望位置,而我们期望输出的是期望姿态,下面我们就继续分析Mc_pos_control里的task_main()如何将期望位置转化为期望姿态。转化过程遵循:期望位置→期望速度→期望加速度(用于限制速度)→期望速度→期望推力→期望姿态首先程序已经调用了control_manual(dt...原创 2018-12-21 23:07:09 · 2875 阅读 · 0 评论 -
飞控简析-从入门到跑路 第三章姿态解算的比较
姿态解算是每一个无人机都需要解决的问题,目前常用的姿态解算方法有三种:卡尔曼滤波、互补滤波、梯度下降。为了研究每种算法的误差大小及解算出来的数据情况,特别拿出了我的(其实是公司的)珍藏多年Xsens公司的Mti-3模块(3000软妹币,原来有Mti-G-710的,但是在无人机上)进行数据的采集,以模块输出的姿态角为准,进行比较。传感器数据及MATLAB处理脚本下载地址:https://gith...原创 2019-09-29 14:31:48 · 1061 阅读 · 2 评论