DIY四旋翼(穿越机)软硬件设计
今天教教大家怎么真正意义上的DIY四旋翼飞行器,我将从机架入手DIY穿越机。
下面是我的步骤:
1、设计机架三维图纸;
2、导出机架的二维图纸并做修改;
3、设计飞控板;
4、试飞。
step 1. 我们先设计穿越机的三维图纸,我这里使用的是solidworks软件设计的,有很多学机械的学生画了这么多年的图纸却也没有运用过。计算机辅助设计,设计出来的图纸是可以用于实际的生产的。设计小零件,在装配图上看装配效果。莫问如何就能设计出这个形状,飞机看多了,胸中自有丘壑。工具软件在学校多学学,艺多不压身。这个世界上没有什么困难能阻挡勤劳的脑子和勤劳的双手。首先还是要确定使用材料的,使用的2mm厚的层板。
当然,在画图前要先确定飞机的轴距,用多大的螺旋桨(桨长了会打到中间的电池和控制板的),鄙人设计的参数是对角轴距是280mm,选用的是6040的桨。所以主要设计的还是底下的那块主要的板,其余的都是一些为了放置电池飞控板的构件和加强筋。下面这张图给出了我的设计思路,可供参考。打辅助线是为了更好的设计。
然后设计出加强筋,打孔是最后设计的,在起不到加强的地方镂空减少机架的质量。最后使用软件设计出来的效果如下图:
step 2. 接下来的工作比较简单,把三维图纸中每一个零件转化成二维的CDA图纸,由于我们使用的是2mm的层板,所以打孔时要主要对接的地方要用2mm的孔。下面是CAD图纸,如果想要CAD图纸的朋友可以给我留言,我看到便会给你发。
材料的加工是通过激光切割机的。面积比较大,激光切割机切割时最好夺走几遍,确保切透。当然如果没有相应的设备可以去网络上找人加工。鄙人运气比较好,鄙人学校有多台工业级的激光切割机。只要是做科技创新相关的项目,自己去打通关系都是可以使用的。下面是切割出来的零件拼装好的图片:
切割好的层板零件使用环氧树脂粘贴。
step 3.设计飞控板这个是一个技术活,不过没有关系也不是想象种的那么难。只要功夫深再加上脑子好使,技术道路上是没有困难的。学习是一个比较痛苦的过程,但是不自己学习做伸手党的话就会失去探索世界的真理的快乐,并且是永远的失去。飞控板的原理非常简单,无非就是使用MCU获得传感器的数据,解算出自身姿态然后控制电机就好了(博主是过来人,实事就是这么简单,对于懒人来说是很难的)。做一个勤劳的人,哪怕花上几个月半年总能学好的。下面制作飞控的硬件。使用的MCU是STM32F103芯片,传感器选用mpu6050。这里还需要学习一款软件,AD用于设计PCB电路图纸,只要用得到就去学习,这个才是作为工科生应该具有的素养。一个要往工程师方向发展的人如果不会以下的这些技能别说在不要在社会上混,就是大学也别呆了,丢不起那人(不过很多学校还是丢得起那人的)。1、熟悉使用工程上经常用到的一些软件,比如CAD和一些三维软件;2、至少熟悉掌握一门或者多门计算机语言;3、基本的物理知识过关,基本原理都能知道,至少知道怎么查书和手册力学定律(F=ma或者换成力矩的形式在控制中几乎无处不在);4、基本的高等数学知识,尤其是微积分原理(控制工程上经常用到)。5、有主动学习的意向和能力。一句话说明就是你不要太懒!言归正传,飞控实用STM32F103芯片,通过查找其数据手册和淘宝上各种最小系统板和开发板设计出最小系统板是一点问题都没有的。MPU6050的资源也是非常之多的,有个条件就是把英语学好。把需要用到的信号线引出来作为接口,遥控器接口和电机接口,下面这个是多年前设计的PCB:
焊接好芯片的PCB板,当年博主出手还是比较阔绰的
陀螺仪加速度计芯片MPU6050使用的通信方式是I2C,这个通信方式都是很简单的,稍微看看文档就能掌握其时序。仔细阅读数据数据手册就可以知道怎么设置其内部寄存器(电子工程师所具备的基本素养)。姿态决算比较复杂一点,要想实实在在的理解需要学习四元数,不过也不难,专心看看秦永元老师的《惯性导航》就好了,捡需要的用到的看,我这里有一句话比较靠谱,凡是用角速度来获得角度的都是在做积分处理,其余的都是在滤波和规范化角度,姿态解算最重要的一环还是使用加速度矫正角度。说到滤波,最有效的滤波基本都还是在取均值,取均值的方法不一样而已(这里就有很多比较靠谱的滤波方法了比如:卡尔曼滤波、均值滤波、互补滤波),处理均值滤波其余的两个滤波基本做的就是根据之前的状态估计当前的数据,然后加入当前采集到的数据加权获得比较好的估计值,简单列一下kalman滤波的一个公式吧,有此基础学习也比较容易理解,X’ = x(k-1)+kg*(x(k)-x(k-1)),kg是kalman增益,这是一个0到1的数字如果等于0代表相信数据是一成不变的永远是一个数,这是不可能的,等于1代表的是直接取当前数据估计也就没有效果,所以kalman滤波主要的就是确定这个增益kg,kg通过空间状态来获得,具体的可以去各种网站查找资料查找论文。飞控系统的编程是一个工程量比较大的软件工程,可以参考各大开源的飞控代码,在国内就有很多的开源飞控。这些组织都开源了代码,而且通俗易懂。使用天地飞7通道遥控器作为飞行器的遥控,天地飞7遥控和许多其他遥控提供的接收信号都是PWM脉冲,使用MCU捕获其脉宽来获得数据。天地飞信号的脉宽数据为周期是2020us的信号,高电平占空为1020到2020,对于油门信号1020时代表为油门为零,2020时满油门,对于其他通道常值为中间值1520us,使用TIM定时器设置时基单位为1us。用下面一幅图讲解一下串级PID
好好理解一下图中内容理解飞行器控制的串级PID控制一点都不难。串级PID使用的是角度外环加角速度内环,内环的输出是直接用于生成控制电机的PWM信号,外环的输入直接用于内环的目标输入。一般而言外环只用到了比例控制,内环有比例(P),积分(I),微分(D)控制。很多人的理解是积分应该放在外环,这里不做太多的解释,积分放在内环可以对陀螺仪获得的角速度零点漂移在控制器中的矫正。外环的输出就是内环的输入也就是说外环的输出就是期望的角速度。如此理解便可以调好串级PID的参数。对于航向角来说,航向角的值就是通过积分获得的,难免有误差,在控制上我们就不用再做积分为角度拿来做外环。所以对内环的控制就直接使用角速度环控制。试想,我期望的角速度为零不就是控制期望航向角稳定吗。如果叫上罗盘获得绝对角度就可以增加航向角的角度外环,此时由于罗盘的矫正没有累计误差。下图是机架加上控制板组装好的整机。
step 4.调试
调试最后飞行的视频:http://v.youku.com/v_show/id_XMjk1OTk1OTIyNA==.html?spm=a2h3j.8428770.3416059.1
拍摄的姿势不对,见笑了。
由于机架是层板做的,在强度上跟碳纤维差远了。不算加工费(我是借用了学校的切割机)这个机架也就是10块钱不到。飞机被折腾一遍之后下场自然大家都能想象,下面是我失手撞树上掉下来后的样子(如果保证不撞东西,不坠机还是能玩些时日的)。
工作量比较大,过程中问题比较多,感谢所有帮助过我的,南昌航空大学的老师学生。这里着重感谢昌航缪老师,为我提供了极好的实验室环境,让我能够安静的完成所有的工作,同时还帮我解答各种疑难问题。使我的整个制作过程极其的顺利。有这么多的好老师好同学帮助,没白来大学走一朝。
--山东大学某硕士
DIY四旋翼(穿越机)软硬件设计相关推荐
- 四旋翼飞行器2——自己设计四旋翼飞行器的硬件准备和基础知识
四旋翼飞行器2--自己设计四旋翼飞行器的硬件准备和基础知识 文章目录 四旋翼飞行器2--自己设计四旋翼飞行器的硬件准备和基础知识 DIY四轴需要准备什么零件 [基本原理与名词解释] 1.遥控器篇 什么 ...
- Optitrack视觉定位下基于ROS及PX4搭建四旋翼多机飞行平台
Optitrack视觉定位下基于ROS及PX4搭建四旋翼多机飞行平台搭建 1 单机平台 1.1 四旋翼硬件组装 a)注意 1.2 机载板环境配置 1.3 飞控参数配置 a)注意 1.4 实飞全流程 2 ...
- 四旋翼飞行器4——四旋翼飞行器的硬件设计(还未完)
本文详细介绍了如何结合市场上现有的四轴飞行器机架大小.传感器质量以及飞控板的质量等综合因素来对各个零部件进行选型,并完成对四轴飞行器机械结构的搭建和调节:并结合机架的尺寸来进行飞控板的设计,以尽量达到 ...
- 四旋翼飞行器控制原理与设计
一.相关理论知识 1.坐标系与欧拉角 进行动力学建模之前首先建立坐标系,在此建立地球坐标系和机体坐标系,如图所示,这里地球系z轴方向向下指向地心,机体系x轴为机头方向. 当描述一个三维空间内的刚体转动 ...
- 可变形的四旋翼飞行器——无人机
无人机的了解 四旋翼飞行器是无人机的一种,其结构简单.体积小.容易操纵,可以垂直起飞与降落,拥有很好的空中灵活机动能力.近些年来,四旋翼飞行器被应用到了许多领域,如航拍.地质监测.环境评估.运送快递等 ...
- 四旋翼数学模型——动力模型
一.动力模型 动力模型研究四旋翼机体系 xyzxyzxyz 轴上的力矩与四个电机输入油门的关系.这个过程中,假设电池电压不变,那么油门(即PWM波占空比)越大,则电调输入的等效电压越大,电机与螺旋桨转 ...
- 四旋翼与四元数学习笔记
为了实现四旋翼无人机的编队控制,重点学习了四旋翼加速度转换为姿态角和推力指令的具体手段,详细学习了四元数.旋转矩阵.欧拉角在四旋翼上的应用,学习了四旋翼的几何控制法.姿态角控制器设计,学习了mavro ...
- 微型四旋翼飞行器设计经验之瞎扯淡
在正式开始记录微型四旋翼飞行器设计的学习笔记之前,感觉自己很有必要先给自己一个总结,也希望能够帮到更多的朋友少走弯路(虽然不知道帮助大不大). 去年九月下旬开始了微型四旋翼飞行器的学习与设计,在12月 ...
- 2017 年全国大学生电子设计竞赛试题——四旋翼自主飞行器探测跟踪系统(C 题)【本科组】2
一.任务 设计并制作四旋翼自主飞行器探测跟踪系统,包括设计制作一架四旋翼自主飞行器,飞行器上安装一向下的激光笔:制作一辆可遥控小车作为信标. 飞行器飞行和小车运行区域俯视图和立体图分别如图 1 和图 ...
- 谷物清选机设计_轴用弹性挡圈装配机的设计_双柱机械式汽车举升机_助老型全自动“方便阅读架”机械、控制结构的设计_5T单梁桥式起重机金属结构设计_2000KN四柱式通用液压机设计……
自动机关打标机 基于Delta平台的三指机械手爪 环模颗粒饲料成型机全套CAD图纸 电池自动插机 顶升移载机 参考图纸-90度滚筒输送机2 直径127铝棒热剪机 参考图纸-气缸链条顶升机 数控油缸环缝 ...
最新文章
- Linux抓包工具tcpdump详解
- CodeIgniter URL
- Java多线程、高并发秒杀时MySQL出现死锁原因(Deadlock found when trying to get lock)及对应解决方案
- Spark简介,您的下一个REST Java框架
- OpenShift 之 Quarkus(4)用集成的Prometheus监控Quarkus应用
- markdown 编辑器_推荐一款公众号 Markdown 编辑器
- 软件测试面试题(每日一刷)
- Spark中使用Dataset的groupBy/agg/join/broadcast hasjoin/sql broadcast hashjoin示例(java api)
- ios系统中的美国App Store出现英文看不懂怎么办?
- 苹果开发者账号注册和邓白氏申请流程
- 没想到,买了这款不靠谱的达尔文重疾险易核版,成了他一生的噩梦
- 基于vue-cli3的vue项目 通过postcss-pxtorem 实现px自动转换成rem
- 通过JS代码简单实现九九乘法表
- Spring项目启动报错No qualifying bean of type [xxx] available: expected single matching bean but found 2
- IMPERVA - WAF syslog配置及注意事项
- 《数据结构》实验三:栈和队列实验 (实验报告)
- [FTP] ftp通信协议抓包分析
- Android之动画(一)
- 使用Feign传输File类型的数据
- python中print函数的end和sep参数的用法