找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 19585|回复: 101

基于RTT实时系统和CAN总线的开源四轴飞行器 使用Mavlink无线通信协议

  [复制链接]
发表于 2015-4-16 22:49:41 | 显示全部楼层 |阅读模式

加入社区,轻松玩转无人机!

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
本帖最后由 Bluesky 于 2015-4-25 17:15 编辑

by Majianjia (感谢嘉神的无私贡献)
3.png

摘要
四轴飞行器作为低成本的实验平台,在各个领域都有发挥作用的潜力。对比于其他类型的飞行器,四轴飞行器拥有结构简单紧凑,飞行效率高,机动灵活的优点。本文介绍四轴飞行器的设计过程,主要包括结构设计,硬件设计,软件设计三个部分。四轴飞行器的构件设计采用纯板件设计,全机仅使用三种不同的板件、一种型号的尼龙柱和一种型号的螺丝,即可组装成完整的机架实体。为了降低重量和信号连接线的复杂程度,减少PCB数量,设计中将导线设计在机架中,所以机架本身同时作为结构部件与PCB
两种功能。


本设计为了解决传统飞行控制器接线复杂,模块较多的问题,采用了两个新的设计理念:硬件上使用单总线设计理念,软件上为虚拟智能终端。单总线设计理念是指使用一条贯穿全机的CAN Bus总线来代替绝大部分的信号线。虚拟智能终端使得终端虚拟化,实现单个硬件实体上运行多个终端的能力。增加了使用灵活度,减少了硬件实体的总数,减轻了编程负担。本设计使用的传感器包括三轴陀螺仪、三轴加速度计、三轴磁阻传感器(电子罗盘)和大气压力传感器。定位系统包括GPS,超声波测距模块。无线通讯方面,使用航模9通道RC遥控器,串口无线透传模块。地面站使用开源项目QGC(QGroundControl项目),并使用开源协议Mavlink(Micro Air Vehicle Communication Protocol)。姿态算法使用四元数算法,姿态误差修正算法使用互补滤波算法,控制算法为PID算法。


关键词:四轴飞行器;姿态计算;四元数;远程控制;Mavlink


5.png


4.png



(原理图和源代码下载在27楼)
回复

使用道具 举报

 楼主| 发表于 2015-4-17 17:15:42 | 显示全部楼层
引言

小型多轴飞行器因其结构简单,组装方便,已经越来越接近大家的生活。随着MEMS传感器、微控制器、电机和电池技术的发展和普及,多轴飞行器已经成为微小型无人机中的新锐力量。直到今天,多轴飞行器已经应用到各个领域,如军事应用、公安追捕、灾害搜救、地理调查、输电线巡查、电影拍摄等。


以汶川地震救灾为例子,传统的调查方式为有人直升机或者固定翼拍摄。限于飞机的数量和飞行高度,当地的能见度,地形等因素,有人飞机不能很好的完成现场拍摄等任务,救灾人员无法实时地分析现场状况。此时需要的是能低空拍摄,灵活调度的微小型无人机,多轴飞行器则是现场最适合的无人应用平台。


目前广泛应用的无人飞行器有固定翼飞机,单轴直升机等。与固定翼相比,多轴飞行器有对场地要求低,能实现垂直起降,定点悬停等优点,与直升机相比,有结构简单,提高升力效率的潜力大,成本低等优点。


四轴飞行器是多轴飞行器中最典型的案例,相比其他多轴飞行器,四轴飞行器有简单的结构,易于制造,而在飞行原理与控制方式上,四轴飞行器与其他多轴飞行器没有太大的区别,仅仅在于输出控制量时对单个电机的映射不同。所以,本文就四轴飞行器的设计过程进行阐述,并说明其飞行控制原理。

回复 支持 1 反对 0

使用道具 举报

 楼主| 发表于 2015-4-25 17:10:18 | 显示全部楼层
原理图下载:
电调
db esc 1.0.pdf (449.03 KB, 下载次数: 444)

飞控板
dbp quadcopter v1.0.pdf (628.13 KB, 下载次数: 296, 售价: 1 金钱)


通用扩展板
DBP universal expanded board V1.pdf (209.68 KB, 下载次数: 310)


调试器
debug v1.0.pdf (419.04 KB, 下载次数: 328)


其他
dbp1.0.pdf (872.68 KB, 下载次数: 343)
dbph 1.0.pdf (13.28 KB, 下载次数: 653)

源代码下载:

ESC32+RTT
ESC32 RTT.rar (2.25 MB, 下载次数: 432, 售价: 1 金钱)

UEB 拓展模块源码
UEB 拓展模块源码.rar (2.54 MB, 下载次数: 362, 售价: 1 金钱)

电源板源码
电源板源码.rar (1.95 MB, 下载次数: 398, 售价: 1 金钱)
飞控主板源码
飞控主板源码.rar (4.87 MB, 下载次数: 1504, 售价: 1 金钱)

回复 支持 1 反对 0

使用道具 举报

 楼主| 发表于 2015-4-25 16:56:11 | 显示全部楼层
6.3 PID 参数调整


PID参数的调整方法,与传统方式是一样的。例如在控制算法中,调整俯仰的PID参数。用手握紧飞行器,但保持腕关节放松,先调整P,从小到大,当飞行器接近振荡时,记录下当前的P值。然后再调整D参数,用手让四轴飞行器做快速俯仰运动,感到四轴飞行器有明显的抵抗时记录下D参数。依据这两个初步确定的参数,再结合实际飞行时的反应继续进行微调。最后加上I参数,当其出现缓慢振荡时,记录下当前的I参数并将其乘以0.7以后,得到的I参数即为所需要的I参数。这样就确定完成PID的三个参数了。


其他部分的程序如用到PID调参,均类似于以上例子。


6.4 试飞


试飞过程较为简单,当所有工作都准备好后,四轴飞行器第一次试飞就顺利离开地面,在经过几次调试PID参数后,已经能稳定飞行。实际飞行灵活轻便,可以挂上摄像机等负载,实现定高定点飞行等功能,达到设计要求。如图 6-6为飞行器与地面控制站,图 6-7为实际飞行时拍摄的照片。
11.JPG


12.JPG


回复 支持 1 反对 0

使用道具 举报

 楼主| 发表于 2015-4-17 23:05:59 | 显示全部楼层
4.2 飞行控制器电路设计


飞行控制器(以下简称飞控)作为本设计中核心的模块。为了简化整机设计,对飞控有几个最基本的要求:第一,集成度高,以尽量减少外置模块的数量;第二,能够独立完成控制及导航任务;第三,体积小质量轻,对于四轴飞行器来说,每少一点重量,都是对续航时间或者载荷能力的提升。


飞控需要非常强大的处理能力,在飞行时,滤波、姿态与控制算法需要非常多的浮点计算。多路输出、输入接口则需要控制器拥有多种多样的外设。另外,飞控程序本身的多任务特性,则要求控制器有足够大的内存和最小的中断时间。如使用传统8位、16位单片机,很难完成如上任务,在后续章节中将对飞控中重要线程与其占用资源做描述。


综合上述因素,本设计中采用ST公司生产的Cortex-M4F 内核控制器STM32F407VGT6。它拥有最高168MHz的运行频率,FPU浮点运算单元,192K Byte RAM,1M Byte Flash,其中包括64k单周期访问的CCM内核专用储存区。此外还有各种丰富的外设,包括多个ADC,SPI,SDIO,UART,CAN Bus,DMA,USB等本设计必须的外设 。经过与其他型号的Cortex-M内核控制器进行比较,该型号控制器非常适合本设计所需的要求,第一,相对较高的运行频率、额外的DSP指令集、FPU浮点单元和CCM内存等可以提供足够的计算能力,是各个复杂算法的基础。第二,丰富的外设使得飞控PCB设计变得简单,减少外部IC的数量,并能一定程度上减轻CPU的工作压力。第三,Cortex-M内核特有的NVIC,相比其他内核而言有更快地中断相应速度和更丰富的配置能力,能尽快地完成切换任务工作,。


传感方面,飞控中集成了10个自由度的传感器,包括三轴陀螺仪(MAX21000)、三轴加速度传感器(ADXL362)、三轴磁阻传感器/电子罗盘(HMC5983)和大气压力传感器(MS5611)。有了这10个自由度的传感器,即可计算出当前四轴飞行器的姿态角度、飞行器朝向和海拔高度等。


飞控中集成了超小封装的GPS模块(Ublox Max 7Q),在提供GPS定位能力的情况下,尽量减轻了模块本身的重量。这个GPS模块提供高达10Hz的定位信息输出,相比普通GPS模块仅有的1Hz输出而言,拥有更好的动态定位性能。


电源部分,为了提高效率,降低能耗和发热量,采用了DC/DC芯片(LT1616)从外部输入的5V电压降压到3.3V给微控制器、GPS模块和传感器供电。


飞控有不错的输入输出能力。特别地,由于CAN Bus总线的引入,减少了四轴飞行器的接线负担,使飞控的在减少实际引线的情况下,提高了输入输出能力。飞控包含以下接口:1路PPM信号输入,12路PWM舵机控制信号输出,1路UART接口,1路CAN Bus总线接口,1路USB接口,1路专用8 Pin调试口(包括1路UART与一路SWD调试接口)。


飞控板设计有一个microSD卡插槽,此卡通过STM32F407VGT6的SPI总线访问,用于记录详细的调试数据与飞行数据。



回复 支持 1 反对 0

使用道具 举报

 楼主| 发表于 2015-4-17 17:22:50 | 显示全部楼层
1  序论


1.1 选题背景、目的、意义


资料显示,随着信息战和网络中心战系统的迅速发展,无人机日益成为战争体系对抗中关键装备之一,在需求推动下,预计今后10年内全球对无人机需求总数约达23000架,其市场增加到原来的3倍,年均开支将由27亿美元增加到83亿元。未来10年共计花费近550亿美元。


垂直(VTOL)和短距起降无人机的销售高峰将出现在2010~2013年,据悉,法、德、西班牙和英国将会化费5亿欧元为本国新型战舰配备这类无人机。美制“火力侦察兵”无人旋翼机预约订货在不断增加。  
      
随着无人机技术的成熟和使用经验的丰富,今后无人机民用领域将不断扩展,防灾救灾、农林作业、缉私缉毒、大地测绘、资源探测、治安反恐、管线监视等各种民用无人机市场需求已出现了明显增长。


四轴飞行器是一种飞行器,同时也是一个飞行的试验平台。当智能设备搭载在四轴飞行器这个灵活的试验平台上时,就拥有了其他形式的智能机器人所没有的优势。例如,困扰地面机器人最大的难题在于如何去适应全部的地形,又例如水上机器人需要面对起伏的波浪和海水的腐蚀,这些问题在飞行平台上,都可以得到完美的解决。但是四轴飞行器作为飞行平台,也有本身的一些缺陷,例如飞行时间不长,容易受风的影响,平台不稳定等问题。


目前在工业发达的国家中,四轴飞行器已经作为一个通用的平台来进行试验和应用了,但国内对四轴飞行器的研究起步较晚,研究力度较少。在国内还没有成熟技术的背景下,对四轴飞行器的控制进行研究,具有重要意义和应用前景。


1.2 国内外发展现状


1.2.1国外发展现状


国外有不少民间微小型飞控(无人机飞行控制器)项目,包括PIXHAWK项目、AutoQuad项目、APM(ArduPilotMega)项目等,他们都可以控制包括四轴飞行器在内的多种飞行器。不少项目甚至是开源的,为爱好者们学习提供了很多方便。


来自ETH Zurich 大学  Institute Dynamic Systems and Control 实验室的Raffaello D'Andrea 与他的团队将四轴飞行器与运动算法相结合,完成了如打球、顶倒立杆、集群飞行和抓取等非常精确的动作和准确的控制效果。


1.2.2国内发展现状


2008年,在随着德国著名的四轴飞行器飞控Mikrokopter 的开源,在国内的电子工程师中掀起了一阵DIY四轴飞行器的热潮。但因当时MEMS传感器较贵,姿态算法有很大的缺陷等一些原因,DIY热潮很快在2009年消散。


2012年,随着锂电池性能提升,传感器和微控制器价格下降,航空模型得到较大的发展。这时,一些辅助性航模设备,包括固定翼陀螺仪和其他飞行增稳系统等出现并有一定的用户群。DIY四轴飞行器的门槛变得较低,国内也重新出现了一次DIY飞控的热潮。


目前国内对四轴飞行器的研究还处于比较初步的状态,开源的项目较少。比较出名开源项目有匿名四轴飞行器,起始于2012年底,现在已经发展出多个版本飞行器硬件和完善的上位机,是一款非常有潜力的四轴飞行器项目。






回复 支持 反对

使用道具 举报

 楼主| 发表于 2015-4-17 22:41:13 | 显示全部楼层
2  系统综述


2.1 四轴飞行器的飞行原理


四轴飞行器几乎是结构最简单的飞行器,控制上也很容易对其进行分析。四个旋翼分别产生四个垂直方向的力和四个反扭力,当这8个力处于平衡状态时,四轴飞行器可以在静止的空气中平稳悬停,当控制其中一个或者多个力共同改变时,四轴飞行器将可以离开平稳状态向所需要的方向进行改变。


但其本身是不稳定的,需要一套飞行控制系统对每一个电机的输出量进行实时调整。这套系统需要做的工作是检测回来姿态,并计算出控制量,并控制四个电机,即可使飞机的受力发生改变。图 2-1 四轴飞行器飞行原理 展现了其悬停时四个电机的转速一致。图 2-2 四轴飞行器逆时针旋转 为四轴飞行器逆时针旋转的例子,1、3号电机减速,2、4号电机加速。其余控制情况类似。
3.JPG

4.JPG

2.2 四轴飞行器的设计目标


设计目标为实现四轴飞行器的控制。系统以STM32F407VG系列微控制器作为飞控系统的核心控制器件,采用惯性传感器和绝对位置定位方式,对飞行器的姿态进行检测,并相应地实现自动控制飞行器平衡,定点飞行等功能。


2.3 四轴飞行器的基本工作过程


实现自动控制的主要工作过程分为两部分。第一部分为姿态算法部分,MCU通过SPI总线提取多个不同的惯性传感器件和电子罗盘数据,通过四元数算法和互补滤波器进行融合后进行姿态积分,而后通过四元数转欧拉角矩阵,得出当前的飞行器姿态角度。第二部分为控制算法部分,MCU利用当前的姿态角度,与期望姿态角度做对比,得到偏差角度,将偏差角输入PID控制算法,即可输出三个方向上的修正量。最后,利用三个方向的修正量,通过映射关系,映射到四个电机后输出,即可实现飞行器自动控制飞行。


其他工作,包括飞行器与上位机通信,飞行器的失控保护系统,工作记录等。


2.4 四轴飞行器的总体构成


四轴飞行器硬件主要由三种电路板组成,分别为一块飞控板(无人机飞行控制器),一块电源管理板,四块无刷电子调速器。此外还有一个串口数传模块和若干个通过通用拓展板拓展的传感器与接收机模块。


2.4.1  飞控构成
飞控(飞行控制器)是整个控制系统的核心,它负责计算当前飞行器的姿态,并输出控制量。MCU使用Cortex-M4F内核STM32F407VG微控制器,操作系统使用RT-Thread 1.2。飞控板拥有较多的感知能力,传感器包括三轴陀螺仪、三轴加速度计、三轴磁阻传感器(电子罗盘)和大气压力传感器。另外还有TF卡插槽,mini-USB接口,2路UART接口(其中一路专用于调试),1路PPM信号输入端口与12路舵机兼容PWM输出接口。此外它内置了GPS模块,可以独立实现单板导航控制功能。


2.4.2  电调构成
电调(无感无刷电子调速器)主要功能是负责驱动三相无感无刷电机,并通过CAN Bus实现电压监测,电流反馈功能。MCU使用Cortex-M3内核的STM32F103C8T6微控制器,与飞控相同地,软件上基于RT-Thread 1.2操作系统。电调包括1路UART接口,1路SWD调试口,1路CAN Bus总线接口,1路PWM输入接口。飞控可以选择通过PWM输入引脚控制电调板,或者CAN Bus总线控制电调板,仅取决于接线方式。


2.4.3  电源板构成
电源板主要功能是负责电池电压(11.1V~12.6V)到5V的转化,内置一个3A的DC/DC转化电路。电源板与电调相同,内置STM32F103C8T6微控制器并基于RT-Thread 1.2操作系统,使电源管理独自形成一个智能的模块。电源管理板负责监控最多5路单
节锂电池电压(3.7~4.2V)与1路整块锂电池电压(最高21V)监控,同时提供电池电流监控。当电流或者电压接近危险值时,通过自身的CAN Bus接口,向飞控和四个电调发出电源危险警告,并通过蜂鸣器发出声音警报,使四轴飞行器尽快着陆以保护锂电池和飞行器。


2.4.4  其他飞行支持器件

包括动力锂电池、电机、螺旋桨等。

回复 支持 反对

使用道具 举报

 楼主| 发表于 2015-4-17 22:43:10 | 显示全部楼层
2.5 编程语言、编程工具和RTOS


2.5.1  编程语言 — C语言
系统硬件使用的各个微控制器均为32位的Cortex-M内核的芯片,计算性能与硬件资源远远超过8位,16位单片机。为了保证算法与代码兼容性和可读性,本设计完全使用C语言进行编程。现代编译器中,已经能很好地优化代码结构,使高级语言编译出来的代码接近汇编语言的效率,同时C语言的可读性是汇编所不及的。C语言是除了汇编语言以外最接近底层的编程语言,所以用C语言也能很好地解决硬件问题,并提高程序的运行效率,可以在贴近硬件的同时,也能使用更高级的编程思维。


2.5.2  编程环境 — RealView MDK
编写代码及编译过程,均是使用RealView MDK 5来进行的。MDK 5 是一个相当优秀的IDE (Integrated Development Environment)。Keil公司开发的ARM开发工具MDK,是用来开发基于ARM核的系列微控制器的嵌入式应用程序。它适合不同层次的开发者使用,包括专业的应用程序开发工程师和嵌入式软件开发的入门者。MDK包含了工业标准的C编译器、宏汇编器、调试器、实时内核等组件,支持所有基于ARM的设备,能帮助工程师按照计划完成项目。


2.5.3  实时操作系统 — RT-Thread
RT-Thread 是一款由中国开源社区主导开发的开源嵌入式实时操作系统(遵循GPLv2许可协议),它包含实时嵌入式系统相关的各个组件:实时操作系统内核,TCP/IP 协议栈、文件系统、libc 接口、图形界面等。四轴飞行器上的每一个微控制器中的软件,实际上都是基于RT-Thread 1.2 的一个或者多个线程。RT-Thread 1.2是一个国产开源实时操作系统(RTOS: Real Time Operating System),采用C 语言面向对象的编程思维,非常巧妙地兼顾了C语言的底层编程特点和高级语言的面向对象的编程思想。它优秀的可裁剪性和丰富的组件,使四轴飞行器的软件设计和硬件设计过程变得简单且利于维护,并提高了代码的复用性。


回复 支持 反对

使用道具 举报

 楼主| 发表于 2015-4-17 22:47:38 | 显示全部楼层
3  可行性参数及结构设计


四轴飞行器是一个复杂实体,包含非常多的结构零件及参数设计。本文将从简入手计算主要的关键参数,包括几个主要部分,电机选择、螺旋桨选择、电池选择、机架尺寸设计等几个主要参数。


3.1 可行性参数设计


3.1.1  指定基本参数
根据资料与一般经验,作者确定出以下几个部分的参数,利于个人独立制作与调试,并能兼顾一定载荷与续航时间。
四轴飞行器基本参数如表 3-1:
5.JPG

根据表 3-1中的几个基本设计参数,可以完成大部分的参数选定。


3.1.2  电机与螺旋桨选定
航模无刷电机通常是指三相无感无刷交流电机。相比于有刷电机,无刷电机少了电刷,磨损主要是在轴承上了。从机械角度看,无刷电机几乎是不需要进行维护的。无感无刷电机的缺点是它的启动性能相比与有刷电机较差,启动时扭矩不足,驱动器在低转速时不能很好定位转子的极性。但当其用于航空模型时,这种缺点显得不是很严重,因为螺旋桨在启动时是气流阻力较小,并且螺旋桨质量较轻转动惯量较小,电机启动负载非常小。此外无感无刷电机拥有非常高的能量转换效率,同时体积较小,这大大延长了飞机的留空时间。所以无感无刷电机在航模上的应用已经代替了有刷电机,成为航模中最常见的电动机。


本设计中的四轴飞行器,它所需求的升力、留空时间等参数和使用条件,与航模使用的条件是类似的,所以作者选择使用航模无感无刷电机作为四轴飞行器的电机。航模无感无刷电机分为两类,一类是内转子电机,一类是外转子电机。通常内转子电机转子有2个磁极,定子有3个或者更多磁极。相比之下,外转子电机转子磁极通常为10个以上,定子磁极也通常为10个以上。所以内转子的相对于外转子电机更容易达到高的转速,而外转子电机通常有比较高的扭矩。


对于固定桨距螺旋桨在桨尖线速度不超过0.7倍音速时,有如下关系式:
6.JPG

式中:T—拉力;Ct—拉力系数;Cp—功率系数;ρ—空气密度;n—螺旋桨转速;D—螺旋桨直径;


根据关系式,可得出,一般情况下,桨尖线速度不超过音速的0.7倍时,桨直径增大拉力随之增大,效率随之提高,需求的扭矩也越大。所以,本设计中选用外转子电机,使其驱动大直径低螺距的螺旋桨,以提高力效率(推力/功率),使四轴飞行器拥有较长的续航时间。


航模无感无刷电机型号一般使用4位数字表示,例如2212,前二位表示电机定子的直径,22mm,后二位表示电机定子的厚度,12mm。一般而言,定子直径越大扭力越大,KV值越低(KV值定义:输入电压增加1伏特,无刷电机空转转速增加的转速值),厚度越厚,额定功率越大。


航模定距螺旋桨型号一般用4位数字表示,前两位代表直径,后两位为螺距,但因直径不同略有区别。 10英寸以下的螺旋桨,例如8043,80代表直径为8英寸,43代表桨距为4.3英寸。10寸或以上螺旋桨例如1045,10代表10直径为10英寸,45代表桨距为4.5英寸。


一般而言,四轴飞行器的所有电机最大静推力,应该为其悬停时的1.5倍以上,才能保证单个电机有余量来维持飞行器稳定飞行。根据设计空机质量、载荷等参数,并假设电池质量为200g以内时,可以方便地计算出所需的推力为1125g左右,所以单个电机最大升力需要在281g左右。


综合电机重量,功率等因素考虑,最终选择一款D2206电机,它的KV值为1200,转子磁极数为14,定子极数为12,与其配套的螺旋桨为1045螺旋桨。测试条件为3节锂电池串联,电压12.6V至11.1V。因厂家未给出KV值为1200这个型号的测试数据,所以作者对其进行推与电流测试。推力测试方法如下:使用电子称将电机垫高,并保持电机水平,然后将电子称校准,螺旋桨向上吹风,将电子称往下压,螺旋桨的推力即是电子称显示的压力。电流测试使用一个可以测直流电的钳形电流表,因为其他电路所需电流较小,可以忽略,所以直接测试电池的输出电流。如图 3-1 电机电流与螺旋桨推力测试。
7.JPG


根据测试结果图 3-1,得知,电机的最大推力为296g,此时电流为2.6A。可以轻易算出,最大功率时力效率(推力除以输入功率的比值,单位g/w)为10.25g/w。

回复 支持 反对

使用道具 举报

 楼主| 发表于 2015-4-17 22:54:41 | 显示全部楼层
3.1.3  电池的选型


对于锂电池来说,一般应用关心两个参数,电压与容量。但在这里锂电池需要再关注另一个参数,放电倍数,即电池放电C率1C,2C,0.2C是电池放电速率:表示放电快慢的一种量度。C率等于电池的最大放电电流除以电池容量。无疑C率越高,锂电池的放电性能越好,电量也可以更快地从电池中放出。C率一般还与电池的内阻相关,内阻越小,C率越大。C数在航模动力锂电池里面是一个重要的指标,普通应用中,放电电流较小,电池内阻引起的电压掉落较少,但用于航模中的锂电池,一般要求在6至12分钟内放完电量,此时C率约为10至5。由电池内阻引起的电压下降将会比较大,电池本身因为放电引起的热损耗会增加,然而锂电池的特性使得它本身在高温下工作将严重减少它的寿命。


所以,在对锂电池选型时,应当优先考虑电池的C率。一般而言,航模使用的动力锂电池,都是聚合物锂离子电池,而且均经过特殊的改进,比如使用三元材料制作,增加电极面积等,使得航模用的动力锂电池拥有非常高的C率,根据不同需求,可达10至40C。


根据电机与螺旋桨的测试结果,需要3个单体串联的锂电池(11.1~12.6V)才能达到所需升力的功率需求。3串联锂电池中,常见的型号有2200mAh,3300mAh,4000mAh等。更大的容量意味着更长的工作时间、更大的放电电流(C率相同时)与更重的重量。当四轴飞行器工作于悬停状态时,以总重量750g (350g机架+200g电池+200g载荷 )来计算,根据前面计算出来的力效率,很容易就可以算出,四个电机的悬停时总工作电流不大于7.5A。如果选用2200mAh的电池,留空时间约为2.2/7.5 = 0.26小时,约为16分钟,大于设计要求的10分钟。此时需求的平均C率为 7.5A/2.2Ah = 3.4C。最大瞬时电流为2.6A*4/2.2Ah = 4.7C。


所以,只需要选择11.1V 2200mAh 10C或更高C率的锂电池。经过筛选,设计使用口碑较好的花牌11.1V 2200mAh 25C锂聚合物电池,电池照片如图 3-2。
8.JPG



3.2 结构设计


结构设计是四轴飞行器的设计中的重要环节。本设计中的四轴飞行器,相对于其他产品在结构设计中,有下列几个创新点。


1.  主要构件即是PCB电路板,除了飞控本身独立一块PCB外,其他构件充当智终端的作用,包括传感与伺服终端。


2.  纯板件零件设计,利于加工和减少加工成本。


3.  零件数量少,只有3个不同的平板构件和1个型号的尼龙柱,1个型号的尼龙螺丝钉。


4.  模块化设计,可以灵活更换部件。


5.  机身结构形成自锁状态,减少零件间的最大接触应力。


所有的板件采用1.6mm的PCB 板件,由PCB 打样公司制板并加工成品。组装成品图 3-3 四轴飞行器主体组装图所示:
9.JPG


回复 支持 反对

使用道具 举报

 楼主| 发表于 2015-4-17 22:59:52 | 显示全部楼层
3.2.1  电源板与底板设计


底板需要兼顾锁紧支臂,提供电池捆绑点,固定飞控,固定拓展模块等功能,所以将其外形设计如下。设计中尽量采用对称设计。四轴主体结构的固定方式为上下两层板夹紧支臂模块。四个对角线上设计四对插槽,用于固定四轴的四个支臂模块。一个四轴飞行器中,共使用两块底板,其中一块上焊接电子元件与微控制器,兼做电源智能终端,用于电源监控,电压变换等功能(此部分功能在硬件设计章节描述,这里只阐述外形设计), 另一块底板不焊接电子元件,单纯作为结构部件。因为插槽使用对称设计,所以使用同一块底板设计即可使用两次。图 3-4底板构件设计图显示了底板的外形设计。
10.JPG



3.2.2  支臂设计

支臂的设计如:图 3-5支臂构件外形设计图。
11.JPG



支臂的设计要求轻便稳固,因为在四轴飞行器中,支臂零件将需要同时使用八个(每一个电机座需要两个支臂来固定)。如果能在支臂上做优化设计,将重量与强度设计到最优,就能使重量大大减轻,这意味着四轴飞行器可以搭载更重的载荷,或是在载荷相
同的情况下,延迟续航时间。


支臂同时兼顾起落架的功能,下方伸出3.2厘米的长度,这样可以把挂载在底板上的锂电池支撑离开地面,使其得到保护。起落架还能使螺旋桨离地面的高度增加,减少起飞着陆过程中,螺旋桨的地面效应对四轴飞行器稳定性的负面影响。


支臂设计的电机座安装插槽设计为有5度的斜度,其作用类似固定翼飞机机翼的上反角,使螺旋桨产生的力方向微微向四轴飞行器中心轴正上方靠拢,这样可以产生一个趋于稳定的自稳效果。


如图 3-6上反角(Dihedral)示意图 ,上反角(Dihedral)可以让固定翼飞机产生自稳效果。
12.JPG



3.2.3  电调板与电机座结构设计
电调板如下图:
13.JPG



电机座与电源底板类似,兼做电机驱动与反馈智能终端,电子部分将在硬件设计章节详述。外形上,同样需要遵循简单对称的设计思路,两块支臂各通过一个插槽固定电机座,电机座上设计了多种电机安装插槽。可以兼容2204电机至2216电机。


3.2.4  主体结构质量估算

通过以上设计,可以估计各个板件的面积。并与制板厂家咨询后,得知1平方分米1.6mm厚度的PCB,质量为30~35g,实际值取决于PCB上的铜面积。我们以32克/平方分米估算。如表 3-2的估计,可以得到结构部分的重量估计值约为为135g。
14.JPG

可得构件部分设计重量为135g左右,根据图  3-3实际测量为130g。


3.2.5  实物装配图


15.JPG

图 3-8四轴飞行器实物装配图为四轴飞行器装配完成的照片,可以看到机械部分整个飞行器只使用了3个不同的结构构件。实际使用中,四轴飞行器的机架坚固轻便,大大延长了留空时间。

回复 支持 反对

使用道具 举报

 楼主| 发表于 2015-4-17 23:03:54 | 显示全部楼层
4  硬件电路设计


四轴飞行器的硬件电路分为几大模块:


1.  飞行控制器模块。
2.  无刷电子调速器模块。
3.  电源底板模块。
4.  通用拓展板模块。
5.  专用调试器模块。


以上各个模块组成四轴飞行器的所有电路功能。各个独立的模块都拥有自己的职能和地位,只有它们相互协调工作,才能保证四轴飞行器的稳定飞行。最重要的是飞行控制器模块,它负责管理所有飞行相关的主要的工作,是四轴飞行器的神经中枢和大脑。无刷电子调速器模块负责驱动独立的无感无刷电机,并反馈电机相关数据,是四轴飞行器的四肢和神经末梢。电源底板模块,负责将电池输出的高电压转化为5V电压,供给四轴飞行器上的所有电子设备,并完成电源监控和管理相关工作,是四轴飞行器的心脏。


拓展板则作为四轴飞行器的通用感知、伺服转化板,提供多种丰富的接口与非常小的体积。而专用调试器,则是由一个USB-HUB 芯片挂载了 Jlink-OB 与 USB 转UART芯片组成的联合调试器,通过自定的8Pin调试口,可以调试四轴飞行器上各个模块中的STM32微控制器。


四轴飞行器电路模块结构如图 4-1。
16.JPG



4.1 四轴飞行器单总线(CAN Bus)设计理念

值得注意的是所有的模块之间的数据交换,是通过一条CAN Bus总线来进行的。虽然对于某些模块来说,数据流经过转换,看起来像是走了弯路,但单一的总线代替原来的各种各样的信号线是利大于弊的,下面将具体分析传统接线方式与CAN Bus的区别。


CAN 是Controller Area Network 的缩写(以下称为CAN),是ISO国际标准化的串行通信协议。在汽车产业中,出于对安全性、舒适性、方便性、低公害、低成本的要求,各种各样的电子控制系统被开发了出来。由于这些系统之间通信所用的数据类型及对可靠性的要求不尽相同,由多条总线构成的情况很多,线束的数量也随之增加。为适应“减少线束的数量”、“通过多个LAN,进行大量数据的高速通信”的需要,1986 年德国电气商博世公司开发出面向汽车的CAN 通信协议。此后,CAN 通过ISO11898 及ISO11519 进行了标准化,在欧洲已是汽车网络的标准协议。


通过下面的表 4-1,可以清楚看到CAN Bus 与传统多根信号线在四轴飞行器的应用中的区别。
17.JPG



通过表 4-1,容易看出CAN Bus总线在四轴飞行器的便利。在硬件设计时,应用了CAN Bus相对而言减少了布线难度,而软件上,使用了CAN Bus后,令解码函数统一了,从而减少了软件的复杂程度。


每一个CAN Bus报文,都是明文传送,所以每一个模块,都可以不通过主机,而直接通过报文ID接收其他模块发出的报文,间接减少了主机的处理压力。例如当电源板发送低电压警报到总线时,电调板可以通过CAN Bus总线中的报文ID,确定出此次报文是属于电源模板发出的紧急信息,并做相应的处理,例如闪动电调板上的LED等发出警告,或者在电量处于危险程度时,强制降低电机功率使四轴飞行器缓降避免更大的损失。相反地,电源板可以监听CAN Bus中电调板发送的电压电流反馈信息,如果发现超负荷运转等危机情况,利用电源板内置的蜂鸣器发出声音报警。以上两个例子,均不需要飞行控制器本身参与,其反应过程,类似于脊椎动物的脊柱产生的本能反应。


回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表