下面几篇文章及资料是这两天看到的比较好的资源,可以多看看,对于新手来说,是个不错的提升自己的一些资料。可以分析每一种方案的特点,主控啊,传感器啊,不过到最后肯定要自己实践,才能得到最好的控制效果。
思路一、电路城上的一个资料:
名称:号外!号外!(搞四轴,有这套就足够了!)科研级别的小四轴STM32F4芯片支持WIFI且android手机控制自适应控制就是牛掰!
网址:电路城的一个资料
主要介绍:
该飞机面向有科研和强烈学习意向的小伙伴们使用,如果只是想玩的话你肯定不会喜欢这套四轴的,主要设计思想是提供一个高性能的控制和姿态算法验证平台,因此牺牲了许多“玩”的性能,却大幅的提高了通信和运算的能力。该机可以承载很大的通信数据量,通信部分我已经做了多线程时线程安全的考虑,可以随意的printf给上位机,完全不用自己考虑线程安全和数据胡乱穿插的问题(还没测试过最大能承载多大的数据量,但是实时发送存储飞控数据已经足够了)。最关键的是中央最优越的地理位置被一颗螺丝孔霸占了……这是做控制算法的人所必须的,连接万向节测试控制效果。上下位机软件的开发遵循“最简,方便修改”的原则,实现了大多数的功能,但是没有把程序写到“很大很复杂”,这样使用我程序的小伙伴们就可以非常方便的找到核心代码并按照自己的需求进行更改。
硬件:
-
主控:STM32F405RGT6
-
传感器: MPU9150+ms5611
-
通信: 完全的wifi通信 WM-G-MR-09
-
锂电充电:TP4056
-
SD卡: 支持
-
USB:支持 但目前没有驱动,仅提供充电
-
遥控方式: 航模手柄(接收机会超重,不建议使用),电脑USB游戏手柄,android手机(2.3以上可以遥控,4.0以上支持多点触控遥控)
-
电池: 300mah航模1s动力锂电池
-
电机驱动:MOS管驱动,带续流与匹配电容(没有试验条件暂时没法确定匹配电容的容量)
-
电机: 716空心杯电机 配46mm桨
-
重量: 含电池39.3g 不含电池30.4g
-
最大特点: 中央螺丝孔设计,可以连接转杆和万向节,方便进行控制和姿态算法的测试。
软件:
-
下位机:RT-Thread实时开源操作系统,UDP wifi通信,山猫飞控,SWD编程,不支持无线下载固件。
-
上位机:JAVA上位机,可接主流各种游戏手柄,强实时的3D姿态显示,飞控各种数据实- 时图表显示,自动记录并保存为excel格式。
-
android上位机:目前只提供虚拟摇杆的控制方式,3D姿态显示和体感控制暂时没有时间开发。
飞控算法:
-
导航:
梯度法的全姿态姿态解算,200Hz姿态输出,仿DMP的自动陀螺0飘校准,磁阻融合姿态可以使用,但在室内环境下变化实在太大,会影响整体的姿态而被我暂时关闭了。有简单的惯导空间位移输出,但在简单的校准情况下漂移异常严重,仅空间速度勉强可用。在使用无雪大神的椭球拟合矫正加计和磁阻以后可以实现能用的空间位移输出,但是由于是付费软件的关系没有加到我的代码中,真的有需求的话可以找无雪大神购买。 -
控制:
目前仅提供位置式PID的姿态控制 100Hz控制,以及单轴的自适应控制(原因见以前文章),稳定性上肯定是不如wmc的小四轴的(比如兔斯基),但是可以更好的理解控制的内涵而被我固执的保留了下来……飞机自带在线系统辨识的代码,可以提供几组在“最优参数范围”内的位置式PID参数供大家使用,所以该飞机只适合有科研和强烈学习意向的小伙伴们使用,如果只是想玩的话你肯定不会喜欢这套四轴的。
思路二、pixhawk开源飞控:
网址:1、pixhawk硬件构架
2、Pixhawk基于ARM芯片的开源飞行机器人控制系统(开源飞控)