基于ARM的四旋翼无人飞行器控制系统Word格式.docx
《基于ARM的四旋翼无人飞行器控制系统Word格式.docx》由会员分享,可在线阅读,更多相关《基于ARM的四旋翼无人飞行器控制系统Word格式.docx(9页珍藏版)》请在冰豆网上搜索。
乾,孙志锋
*
(浙江大学电气工程学院,浙江杭州310027
摘要:
为改变传统以单片机为处理器的四旋翼无人飞行器的控制方式,提出了一种基于嵌入式ARM的飞行控制系统的设计和实现方案。
详细介绍了控制系统的总体构成以及硬、软件设计方法,包括传感器模块、电机模块、无线通信模块。
试验结果表明,该设计结合嵌入式实时操作系统,
保证了系统的高可靠性和高实时性,能满足飞行器起飞、悬停、降落等飞行模态的控制要求。
关键词:
ARM;
四旋翼无人飞行器;
控制系统中图分类号:
TP277;
TH39
文献标志码:
A
文章编号:
1001-4551(201110-1237-04
Four-rotorunmannedaerialvehiclescontrolsystembasedonARM
LIUQian,SUNZhi-feng
(CollegeofElectricalEngineering,ZhejiangUniversity,Hangzhou310027,China
Abstract:
Inordertochangetheconventionalcontroloffour-rotorunmannedaerialvehiclesusingmicrocontrollerastheprocessor,asolutionofflightcontrolsystembasedonembeddedARMwaspresented.Themainfunctionofthesystem,
thehardwarestructureandthesoftwarede-signwerediscussedindetail,
includingthesensormodule,themotormodule,thewirelesscommunicationmodule.Withembeddedrealtimeoperatingsystemtoensurethesystem’shighreliabilityandreal-timeperformance,theexperimentsresultsshowthattherequirementsofflightmodearesatisfied,includingtakingoff,hovering,andlandingandsoon.Keywords:
four-rotorunmannedaerialvehicles;
controlsystem
0引言
近年来,随着新型材料以及飞行控制技术的进步,小型四旋翼低空无人飞行器得到了迅速发展,在军事和民用领域具有广阔的应用前景。
和传统的直升机相比,它有着自身的优势:
当前后两个旋翼逆时针旋转,而左右两侧的旋翼顺时针旋转时,则尾桨控制和旋翼倾斜问题可以被忽略
[1]
。
但由于小型四旋翼低空飞
行器是一个具有4个输入力,同时却有6个输出的欠驱动系统,
具有多变量、非线性等特性,这使得飞行控制系统的设计变得比较困难。
目前的飞行器控制系统多采用单片机来完成姿态控制,存在硬件资源有限、运算和处理速度慢等问题。
本研究选用32位ARM处理器,并且可以内嵌实时操
作系统,和传统的控制方式相比,外设资源更丰富,性能更好。
本研究从小型四旋翼飞行器的机型特点和实际需要出发,结合ARM控制器的优越性能,探讨小型四旋翼飞行器控制系统的硬、软件实现方案。
1
系统工作原理和结构框架
1.1
四旋翼飞行器工作原理
四旋翼飞行器上下的垂直运动是通过4个旋翼同
时增速(减速得到的,当4个旋翼的升力之和等于飞行器的自重时,
飞行器便保持悬停。
水平面内的前后运动是在旋翼1、2分别增速(减速的同时,旋翼3、4减速(增速,这样机身就会发生向后或者向前的倾斜,得到水平面内的前后运动;
俯仰运动是通过旋翼1、3速度不变,旋翼2增速(减速的同时,旋翼4减速
机电工程第28卷
(增速来实现的。
相似地可以得到滚转运动:
即旋翼1增速(减速,同时旋翼3减速(增速。
通过组合以上的基本运动,可以实现小型四旋翼飞行器的各种复杂运动[2]。
四旋翼飞行器的结构俯视图如图1所示
图1小型四旋翼飞行器结构俯视图
1.2控制系统总体框架
小型四旋翼飞行器的飞行控制系统通常由传感器测量装置、主控制器和驱动电机等部分组成。
传感器用来测量四旋翼飞行器的飞行状态信息,主控制器根据这些传感器反馈回来的状态信息、预先给定的状态和现场无线输入的控制指令信息进行处理,使控制系统根据控制算法处理结果输出4路PWM信号控制电机转速,以实现自动调节旋转力矩来稳定飞行姿态。
整个四旋翼飞行器控制系统主要分为机载控制部分和地面控制部分。
机载部分系统结构框图如图2所示
图2飞行控制系统结构框图
2系统硬件设计
本研究采用ST公司生产的STM32F103RCT6作为系统的主处理器。
STM32系列基于专为要求高性能、低成本、低功耗的嵌入式应用而设计的ARMCor-tex-M3内核。
它主要负责采集传感器检测到的姿态角速率(俯仰角速率、横滚角速率和偏航角速率、三轴的线加速度和航向信息并实时解算;
根据检测到的飞行信息,结合既定的控制方案,计算输出控制量;
通过无线通信模块与地面进行数据的传输,实现接收控制命令改变飞行状态和下传飞行状态数据。
2.1传感器模块
小型四旋翼低空飞行器在某个时刻的状态由6个物理量来描述,包括在三维坐标中的3个位置量和沿3个轴的姿态量(即称为六自由度。
惯性传感器有两种类型:
陀螺仪和加速度计。
陀螺仪起到测量四旋翼飞行器的角速率的作用,在惯性导航系统中非常重要。
因此,精度和稳定性可作为陀螺仪选型的重要原则。
本研究选用ADI公司的角速率陀螺仪ADXRS150,负责采集四旋翼飞行器3个方向的角速率(俯仰角速率、横滚角速率、偏航角速率。
该陀螺测量精度达到150ʎ/s,其工作电压为5V。
加速度传感器起到感应飞行器3个轴向的线加速度的作用。
本研究的应用环境主要是室外的低速运动场合,因此每个轴向的加速度并不大。
根据这个选型原则,本研究选用Kionix公司体积小、功耗低、高灵敏度的三轴加速度传感器KXM52-1050。
它是一款数字式传感器,灵敏度为660mV/g。
在惯性导航算法中,导航参数会随着传感器的测量误差积累而发散,因而不能满足长时间自主飞行的需要,故选用霍尼韦尔公司的三轴式数字罗盘HMR3300对惯性导航系统进行姿态校准。
它的工作电压是5V,采用UART协议通信,经过转换电路之后可以和STM32的SCI口通信,并且自带模数转换,以便与微处理器直接通信。
2.2电机控制模块
本研究采用PWM控制直流电机的转速。
小型四旋翼低空飞行器的动力系统由电机、减速齿轮和旋翼组成。
电机选择1225FE33型号的铁心电机。
直流电机是功率器件,需要很大的驱动电流,控制器的驱动能力有限,因此必须选用专门的驱动芯片[3]。
本研究采用LG生产的集成芯片LG9110来控制和驱动直流电机,该芯片两个输出端能直接驱动电机的正反向运动,它具有较大的电流驱动能力,每通道能通过750mA800mA的持续电流;
同时它具有较低的输出饱和压降,使它在实现驱动直流电机的功能上更安全可靠。
由于飞行器的电机在转动过程中会产生比较大的冲击电流,为了提高飞行控制系统的可靠性,本研究需要对STM32输出的PWM信号进行隔离。
飞行器选用锂电池供电,光电耦合器进行信号隔离时,工作电流大,锂电池供电能力无法满足要求。
ADI公司的iCou-pler系列数字隔离器将CMOS与芯片级变压器技术相结合,大大降低了电路板的体积和功耗。
电机隔离电
·
8321·
第10期刘乾,等:
基于ARM的四旋翼无人飞行器控制系统
路如图3所示,数字隔离器ADuMl400实现了4路PWM信号的隔离
图3电机隔离电路
2.3无线通信模块
无线通信模块是四旋翼无人飞行器和地面控制中心之间通信的桥梁。
本研究要求的无线传输距离为100m左右,故选用NordicVLSI公司推出的单片射频收发器芯片nRF905[4]。
nRF905芯片工作在433MHz的ISM频段,工作电压为3.3V,使用SPI接口与STM32通信,配置和使用非常方便。
此外,nRF905芯片功耗非常低,以-10dBm的输出功率发射时电流只有11mA,接收信号时电流只有12.5mA,在100m之内传输稳定可靠。
具体的硬件连接如图4所示
图4STM32与nRF905硬件连接图
3软件设计
3.1总体设计
四旋翼飞行器控制系统软件设计的总体目标是启动飞行控制系统的各个功能模块并使之正常工作,按照既定规划实现稳定飞行。
由于四旋翼飞行器为六自由度的系统,而其控制量只有4个,这就意味着被控量之间存在耦合关系[5],所设计的控制算法应能够对这种欠驱动系统足够有效,用4个控制量对3个角位移量和3个线位移量进行稳态控制。
本研究在得到四旋翼飞行器的动力学方程之后,适当地选取控制量,运用控制理论中经典的PID控制算法对飞行器系统进行控制
图5系统启动流程图飞行控制系统的中央控制
模块主要完成系统初始化、系
统自检、解算传感器数据、导航
信息解算、执行控制算法、计算
并输出控制量等功能。
控制模
块选择使用μC/OS-II管理控
制任务的调度。
μC/OS-II是
一个专为嵌入式应用设计、基
于优先级调度的抢占式实时操
作系统内核,它包含了任务调
度、任务管理、时间管理/任务间通信与同步等功能。
各任务之间通过信号量和消息队列实现相互间的数据交换和同步[6]。