基于ARM11+CPLD的小型无人机飞行控制器设计
1 引言
小型无人机具有重量轻、使用费用低、机动灵活等特点,在军用、民用领域有着广泛的应用。在民用领域,无人机可搭载不同任务载荷完成诸如国土资源保护、城市规划、电视台航拍、大气监测、交通监察、边境及海岸线巡逻、灾情监视等任务;在军事上,可以执行空中侦察、充当靶机、导弹攻击、充当诱饵、战场损伤评估和电子站等任务,已成为许多国家军队的主要武器装备。
飞行控制器承担着无人机的姿态控制、导航控制、与地面控制站的通信、任务载荷控制等任务,是小型无人机的核心。评价小型无人机的飞行控制器的优劣的指标之一是其控制的精度。提高飞行控制器的控制精度的方法有:提高获取飞机状态信息的精度;采用先进的控制算法提高控制性能[1-3];提高控制指令输出的实时性等。而要实现以上目标就须有高性能的MCU和合理的硬件电路设计。
本文针对这一问题,设计了基于ARM11(S3C6410)+CPLD(EPM1270)的飞行控制器。ARM11架构的MCU S3C6410接口丰富、运算速度快;CPLD芯片的应用提高了系统的实时性。以下将阐述该飞行控制器的设计。
2 飞行控制器硬件系统的设计
本文飞行控制器以S3C6410和CPLD(EPM1270)为核心,将无人机系统各部分有机整合,硬件构架具体如图1所示。
S3C6410采用ARM1176JZF-S的核,该核在电压为1.2V的情况下,可以运行到667MHz[4],高主频保证了飞控有较强的计算能力。S3C6410拥有丰富的接口,本文通过UART串口通讯连接了GPS模块和数传电台;SPI通讯接口连接了ADIS16365惯性系统传感器(含加速度、角速度传感器),两个MS5540气压传感器。S3C6410可连接大容量内存和FLASH,本设计中配置了256M 的DDR RAM和1G的NAND FLASH,大容量的内存是飞控进行大量计算及数据存储的保证。
而CPLD模块选用ALTERA公司的EPM1270芯片,该模块完成遥控接收机控制指令的接收及解码;多路PWM控制指令的解码及输出;任务载荷的控制管理。CPLD的应用,使得飞行控制器在处理遥控指令、姿态控制上具备了运算速度快、实时性强的特点。
基于上述两模块构建的飞行控制器,按其功能可分为:导航功能模块、姿态控制功能模块、通信功能模块、任务载荷功能模块。本文选取导航功能模块和姿态控制功能模块的硬件设计进行阐述。
2.1 导航功能模块硬件设计
导航功能模块主要实现无人机按设定航点、航线飞行的功能,这需要计算无人机当前的位置和目标位置之差。本文设计了GPS、气压传感器来获取无人机当前的位置信息,即经度、纬度、高度、速度、航向等。在硬件设计上,设计了UART口与GPS模块连接,气压传感器与GPIO口连接的外围硬件电路。
飞控的GPS模块采用的是UBLOX公司的型号为LEA-5H的GPS模块,本设计中GPS模块采用的是外接的形式,即GPS模块可根据机体的实际情况放置在合适位置,所以设计时在飞控主板的接口中预留TX、RX、VDD5V、GND四个引脚,这四个引脚连接到MCU的UART口。
飞控的两个气压传感器都采用瑞士INTERSEMA公司的MS5540芯片,一个用以测量飞机的高度,另一个用来测量飞机的空速。本设计中利用S3C6410的GPIO,模拟SPI通讯接口方式来实现通讯。MS5540需要外接工作时序脉冲,利用CPLD分频后产生相应工作脉冲,接入MS5540。其余MS5540通讯引脚都与普通IO相连。
2.2 姿态控制功能模块硬件设计
姿态控制功能模块主要由采集姿态数据和输出姿态控制指令两部分构成。
本文姿态传感器采用ADI公司的ADIS16365惯性传感器。ADIS16365内部集成3个陀螺仪和3个加速计,测量范围可达为±300°/sec,±18g,角度分辨率为±80°/sec。应用ADI的iMEMS Motion Signal Processing(运动信号处理)技术,对电压变化、温度变化及其它影响进行校准,具有动态补偿功能[5]。ADIS16365提供一个串行外部接口SPI。硬件电路设计上,连接SPI通讯端口、片选脚,如图2所示。ADIS16365对于电压的稳定性要求较高,其工作电压为4.75V-5.25V,系统板电源设计上要考虑到电压的输出范围。
姿态控制是通过控制无人机上各数字舵机的转角大小和动力大小来实现。本文无人机以锂聚合物电池作为动力电源,由电子调速器来控制直流无刷电机的转速,电子调速器通过输入的PWM信号控制。数字舵机的转动角度由输入到舵机信号线的PWM信号决定。本文无人机上的4路PWM控制信号,周期为20ms,脉宽范围为1ms至2ms,都由CPLD产生,其内部实现过程如图3所示,各模块功能介绍如下:
(1) SPI数据接收模块,负责对MCU发出的数据及指令进行实时的接收。实现的基本原理是模拟从设备SPI通讯协议,数据通讯采用的是16位数据结构,另外SPI接收模块只负责对MCU数据的接收,不负责对CPLD内部数据的发送操作,目的是增加了
- 基于ARM11的无线视频监控系统(07-07)
- TD-LTE多模基带平台ARM子系统的运行流程控制和异常定位分析(08-24)
- 基于ARM11的Linux NAND FLASH模拟U盘挂载分析(11-25)
- ARM系列微处理器简介之:ARM芯片的特点与选型(08-13)
- 基于ARM11和DSP协作视频流处理技术的3G视频安全帽设计(01-14)
- ARM11后现代时:Cortex开枝散叶(06-04)