目前,传统PID控制器因其通用性已经成为了开源飞控的主流算法,但是由于是线性控制器,其局限性也是显而易见的。本文针对四旋翼无人机的姿态控制的难点,在传统PID控制算法的基础上,提出了串级模糊PID控制算法,该算法构造了一个串联型模糊PID控制器,并用陀螺仪数据代替角度的微分,减小了误差的引入。实验结果表明,串级模糊PID算法具有鲁棒性好,调节速度快,超调量小等优点,在提高控制质量的前提下也保留了PID控制器不依赖精确数学模型的特点。
1
-StereoCV光学跟踪-使用openFrameworks和openCV-处理USB摄像头-校准stereoCV-处理和跟踪多个IR-Blob-将跟踪的Blob转换为realWorldValues-漂亮的GUI
2021-05-10 13:03:21 54KB 开源软件
1
本设计为基于瑞萨RL78/G13的四旋翼飞行器,具备一键式启动,航拍、循迹飞行以及拾取投掷重物等功能。 基于Renesas RL78/G13的X字形四旋翼飞行器,本四旋翼飞行器由主控制板、飞行控制板、循迹模块、航拍模块、电磁铁模块、超声波模块、电机模块等部分组成。由APM飞控板获得当前的姿态数据,交由主控核心RL78/G13进行处理和控制;用串级PID控制算法对数据进行处理,解算后经PID输出相应电机的PWM增减量,用于调整电机转速从而调整飞行姿态;采用超声波传感器进行测距并结合PID算法实现稳定定高飞行;循迹模块使用OV7620摄像头对黑线位置进行采样,经过数据处理后控制飞行器始终保持在目标黑线正上方飞行从而完成循迹飞行任务;电磁铁模块在MCU的控制下可以准确的完成拾取、投放铁板的任务。在各模块相互协作下,四旋翼飞行器可以稳定的进行悬停,航拍,拾取、投放物品,循迹飞行等各项任务。 四旋翼飞行器系统整体电路图 四旋翼飞行器实物图 电路城语:此资料为卖家免费分享,不提供技术支持,请大家使用前验证资料的正确性!如涉及版权问题,请联系管理员删除!
1
前言: 记得在上大二下的时候参加了2015全国电子设计大赛,题目刚下来便决定了做C题"多旋翼的自主飞行器"4天3夜拿到瑞萨最小系统后便开始写各个模块的驱动代码,因为有开发环境CUBE的神助攻,所以前期的驱动代码是还很顺利的。接下来便是飞行器的组装和电路板 制作,在一起就绪后花掉了2天时间,剩下的两天便疯狂调试,最苦恼的是电池供给跟不上,无奈只能调调停停,初次制作算法也还不够成熟,我直接用的以前做平衡车的经验。不过最后飞得也还算平稳,用的手机加蓝牙控制飞行(后来想一想也是胆大),但题目要求自主飞行,于是我便苦恼了,我便开始记录四旋翼起飞的油门,在起飞后直接给油门(危险)效果也还可以,就在比赛前一天晚上出事故了 一块刚充满电的电池 我装上做最后测试。电池电量过高 直接结果导致飞机飞太高撞到了天花板,结果将飞机撞坏了一个电机,桨就不用说了 惨,不过幸运的是人没事。队友也傻了,怎么办?此时已是凌晨1点。我们捡起“残骸”拍拍上面的灰,听了首“安河桥”便开始和队友一起埋头苦干。哈哈···最后在早上6点前飞机修好了 虽然效果大打折扣不过最基本的任务还算能够完成。第二天比赛,我们是下午开始。第一次参赛,试飞的时候发现异常,冷静后发现超声波线松了 排除故障后开始比赛,比赛结果就不往下写了。(。。。。。)无论怎样我很享受这个过程。比赛结束后便有了做一个小四轴的想法,于是便在网上搜索资料,偶然看到了STC的这个开源项目,于是便自己也动手做了一个,控制代码我也有重写,现分享给大家!!!一起交流!!! 功能概述: 本设计是基于STC15W4K61S4的微型四轴。以STC15W4K61S4为主控。硬件包括,mpu6050传感器,电源,nrf2401通信模块,720空心杯电机,PCB机架。姿态解算采用四元数,串级PID作为控制器,配合遥控器实现俯仰,横滚,偏航姿态控制。主要用于学习和理解四轴飞行器的基本原理。 实物图: 应用场景: 控制思路: 首先调整电机1,3同向 2,4同向 且相邻电机旋转反相在X型模式下首先通过mpu6050获取三轴加速度计和三轴陀螺仪数据 经过数据处理融合后 得到姿态角度pitch roll 以及Z轴陀螺仪积分出 yaw角。将得到的姿态角送入PID控制器计算输出对应的油门补偿对应的电机 从而使四旋翼平衡。简单来说飞机往那边沉 对应的电机就加速提高升力抵抗它下沉,它的下沉程度是通过角度来反映的而已,具体补偿多少合适,则是通过PID控制器计算的而已。单纯通过角度误差来控制,是属于单级的PID 控制。经过试验这种控制策略应用在小四轴效果不太理想,因此我们通常采用的串级PID控制小四轴,即引入了角速度环,通常内环使用PD(对象角速度)外环使用PI(对象角度&内环输出)这样的控制策略在测试中效果较好,但理想的参数调整比较难,因此需要耐心调试才能得到较好的效果。 系统框图: 本系统硬件设计组成: 主控:STC15W4K61S4 (封装:LQFP32) 传感器:MPU6050(三轴加速度计,三轴陀螺仪)(封装:QFN)https://www.datasheet5.com/pn-MPU-6050-1083104 电机:720空心杯 MOS管 AO3400A (封装:SOT23_M)https://www.datasheet5.com/pn-AO3400A-1215185 2.4G无线:NRF2401 (模块)https://www.datasheet5.com/datasheet/NRF2401/250319... 电源芯片: ME6219 (封装:SOT95)https://www.bom2buy.com/search/ME6219 BL8530-501SM(封装:SOT89)https://www.datasheet5.com/pdf/BL8532/1751621/BELLI... 元器件成本估算: 部分器件成本估算:https://www.bom2buy.com/list/1312-stc15w4k61s4 总结: 此项目在大三上完成,经过调试 能够实现基本飞行,同时也存在以下问题: 参数应该还不够理想(遥控器跟随效果不好)。 PCB设计过大 导致超重,因为担心手焊的MPU不好使故留了较多直插模块接口同时还考虑到十字和X型所以各留了一个这样的直插接口。 这是一次不错的动手经历吧,从原理图PCB到代码都是自己一个人完成,每当遇到问题就网上寻求答案,过程还是很坎坷的,不过也特别有意思。同时也学到很多知识,做事情也更加细心严谨! 测试结果: 手机里翻了半天总算找到了一点视频上传与大家分享,效果不太好希望勿喷。
1
基于mk的飞控程序,不过只是其中的一部分,英文代码和注释,方便查看阅读
2021-04-13 17:04:42 186KB 四旋翼 飞控
1
使用MATLAB R2019a 编写,相关博文: https://blog.csdn.net/ReadAir/article/details/104755710 注意:正常仿真需要在运行之前将文件夹中STEP模型添加到机身模块中。否则可能会报错。添加方法可以看我之前的
2021-03-12 22:29:27 83KB 四旋翼 仿真 Simscape Simulink
1
本人在读研究生,平时做项目需要做地面站,所以自己也写的比较好理解,可以方便大家学习。
2021-02-26 11:01:22 5.19MB 四旋翼或直升机地面站
1
这是由本人亲自调过的基于STM32程序,用于控制四旋翼的动作
2020-02-13 03:12:04 9.04MB 飞控程序
1
这个代码是循线四旋翼的上位机部分,代码中包含了构成上位机的基本部分,以及用opencv进行图像处理的部分。
2020-01-03 11:40:14 192B qt opencv 循线 四旋翼
1
四旋翼PID控制系统分析与设计
2019-12-21 22:15:55 16.12MB 四旋翼 PID
1