新闻中心

EEPW首页 > 智能计算 > 设计应用 > 基于ARM的无人机飞行控制系统的研究实现

基于ARM的无人机飞行控制系统的研究实现

作者:时间:2016-11-11来源:网络收藏

一、引言

本文引用地址:http://www.eepw.com.cn/article/201611/316781.htm

无人机飞行控制系统是一种具有高性能的自主导航、自动飞行控制、任务管理的综合系统,需要进行大量复杂的数据处理与数学运算。飞控计算机是飞行控制系统的核心子系统,随着航空航 天技术的发展,飞控计算机向着高精度和小型化方向发展。高精度要求无人机的制导控制精度高、稳定性好,能够适应复杂的外界环境,致使控制算法比较复杂,计 算速度快、精度高。小型化则对控制控制系统的重量和体积提出了更高的要求,要求计算机的性能越高越好,体积越小越好。性能指标和体积限制迫切需要研制新型 的飞控计算机。

二、飞控计算机与外围的接口设计要求

基 于ARM的飞行控制计算机的设计,关键在于系统整体方案设计。接口设计是一个重要环节,其质量将直接影响系统的性能,信号输入输出时要考虑抗干扰性,所设 计的整体方案要易于实现,对不同型号的无人机要有一定的适应性。对于要求相近的型号,应该以修改控制软件为主,以少改动或不改动硬件设计为好,这些要求都 要在方案设计的各个环节中考虑。

首先要对无人机的飞控/导航任务和实现目标作需求分析。根据飞行要求和控制对象的复杂程度,选择控制周期;按照控制周期内控制计算量来确定计算的类型和运算速度,并结合外部单元确定接口方案,以及对抗干扰因素的考虑,可确定整体的通讯协议和接口形式。

在 无人机的飞行过程中,为了实现一定的飞行任务,需要对其飞行姿态进行控制,引导飞机按照一定的航线准确飞行。为了进行姿态控制,就需要获得飞行姿态的实时 参数信息以及遥控遥测参数。有了这些信息参数,经过计算机的控制算法计算,实时输出控制粮到执行机构,从而实现控制/导航目的,其构成示意图见图1。

垂 直陀螺、三轴角速率陀螺输出的是模拟信号,因此飞控计算机必须具有多路模拟信号的高精度采集能力。而磁航向传感器、高度传感器以及与GPS和遥控遥测的等 外围单元的数据交换则采用了RS-485、RS-232通讯协议,因此飞控计算机要具有多串口的通行能力。同时系统要求一系列的电平输出/输入接口、舵机 接

1、ARM的选择

从计算精度、计算速度、控制性能要求、功耗及上述接口等方面考虑, 采用ATMEL公司的AT91M55800A芯片作为CPU。该芯片集成了ARM7TDMI核、嵌入式ICE接口、存储器以及外围。

AT91M55800A具有先进系统总线(ASB)和先进外围总线(APB)两条主要总线,ASB接口由存储控制寄存器控制用于实现最高的性能。ARM7TDMI核通过ASB接口实现与片内32位存储器、外部总线接口(EBI)以及AMBA桥的连接。AMBA桥用来驱动APB;APB用来访问片内外围,优化系统功耗AT91M55800A通过完全可编程的外部总线接口直接连到片外存储器,使读或写操作最快可达一个时钟周期。8优先级向量中断控制器和片内外围数据控制器则显著提高了器件的实时性能.

AT91M55800A主要硬件资源极其关键特性如下:

(1) 芯片提供了丰富的片上资源。有片上A/D和D/A转换器,则系统无需外接A/D和D/A芯片,提高了系统的可靠性,减少了系统的复杂性。AT91M 55800A有片内看门狗电路,可以监测程序的意外失控。AT91M55800A芯片提供SPI总线,便于与扩展外设进行连接。

(2)集成了ARM7TDMI ARM Thumb处理核——低功耗高性能的32位RISC(Reduced Instruction Set Computer)处理器。指令功能强,采用能提供0.9MIPS/MHz的三级流水线和冯·诺依曼结构;具有能产生64位结果的增强型乘法器;寻址能力 强,有ARM指令集和Thumb指令集;嵌入式ICE,先进的软件开发和调

试环境。

(3)8KB片内SRAM.—32位数据总线宽度,单时钟周期访问。

(4)完全可编程的外部总线接口(EBI)—最大可寻址空间为64MB,多达8个片选线,软件可编程的8 位或16位外部数据总线。

(5)8优先级、可单独屏蔽的向量中断控制器(AIC)—7个外部中断,包括一个高优先级、低延迟的中断请求。

(6)58个可编程I/O口线,由PIOA和PIOB控制。

(7)6通道16位定时器/计数器,实时时钟(RTC),系统定时器,看门狗定时器。

(8)主从式SPI接口—8~16位可编程数据长度,4个外部从芯片选择。

(9)采用片内主振荡器和PLL倍频的时钟产生器及片内32K振荡器的实实时钟—3MHz~33MHz频率范围。

(10)具有3个USART—每个USART有两个外围数据控制器(PDC)通道。

(11)8通道10位ADC和2通道10位DAC。

(12)先进电源管理控制器(APMC)—正常、等待、慢速、待机和掉电方式。

(13)针对所有数字引脚的JEEE 1149.1JTAG边界扫描。

AT91M55800A上述功能和特点,使得复杂的控制算法可以在规定的时间内完成,且满足了精度的要求。

2、存储器的扩展

由 于AT91M55800A内部存储器较小,所以程序和数据大多只能放在片外,因此要进行存储器扩展。AT91M55800A的内核采用了冯·诺依曼结构。 存储器接口可在使用存储器最少情况下实现其潜能。速度关键的控制信号采用流水作业,处理速度极快。所选RAM的速度必须小于RAM的读写周期。在系统工作 时,程序要放在Flash中,在系统上电时由启动代码程序搬移到片外RAM中运行,因此选择ROM时也要考虑存储容量和速度。根据以上特点选择了一片 12ns的IS61LV51216RAM组成存储系统的RAM,一片访问周期90ns AT49BV1604A-90TI (Flash Memory)作为程序存储空间。此外通过SPI总线扩展一个X5045(NOVRAM),NOVRAM可在断电后保存装定的航迹与任务数据。

3、模拟信号的接收

垂 直陀螺、角速率陀螺、电源电压等输出的模拟信号首先经过信号调理模块输入,片上自带的8路10位ADC已经完全满足了系统通道数目和精度的要求,不再扩展 其他ADC器件。所采集的飞机姿态、电网电压等信号,是飞行控制系统对无人机工作状态进行控制和监控的基础,同时这些信号经过编码发往地面遥测设备,供操纵人员参考。

4、串口通信

机 上传感器的输出信号多数都是采用串行标准。遥控指令、遥测数据、GPS数据、高度信号、航向信号、航路装定、控制参数设置都采用RS-232或者RS- 485接口,而AT91M55800A片内集成的3个USART不能满足要求,必须要对串口进行扩展。完全采用软件模拟扩展串口,将加重处理器的负荷,降 低系统的实时性。而采用16C554专用串口扩展芯片将增加系统的电路复杂性,增加电路板面积。在综合考虑各种方案之后,将串口作如下配置:

(1) 串行口0 为遥控通道,与遥控接收机相接,接收上行信道送来的遥控信息,下传飞机状态参数信息,RS—232标准,波特率9600。

(2) 串行口1:通过4052 扩展,与高度传感器和航向传感器相接。 采用RS—485标准,波特率9600。

(3) 串行口2 与GPS接收机相接,接收GPS数据,采用RS—232标准,波特率9600。

(4) 采用SPI总线接口的USART收发器件MAX3111扩展了一路串行接口,本串行口的TX通道作为遥测通道,用于发送飞行姿态、电源电压、发动机转速、 任务设备工作状态等遥测信息;RX通道为双用途,可以作为装定自主飞行时的预设航路用,也可以用来装定控制参数。这样,兼顾了系统的实时性和紧凑性

5、频率信号的输出

控 制伺服机构常用的是四个舵机,飞行中要求这四个舵机可以同时动作,相互之间不能有延迟。而AT91M55800A的6路定时/计数器正好可以用来作为输出 PWM信号的器件,不需要扩展接口芯片。余下的一路定时器用作μC/OS-II的系统时钟,另外一路定时器用作发动机转速监测。根据舵机的工作方式和控制 精度的要求,设置工作方式,满足舵机工作要求。这样既减少了硬件的扩展又降低了软件的消耗,提高了精度、大大提高系统效率。

6、数字I/O口输出

通过AT91M55800A GI/O由片上PIOA和PIOB控制器输出开关量,通过光耦隔离、驱动放大进行控制任务设备、回收装置等设备。

7、复位电路

AT91M55800A 在复位时,主时钟来自慢速时钟(32 768Hz),并且主时钟上的信号必须在NRST信号上升沿之前至少10个时钟周期内保持有效,及复位信号至少保持0.3ms,所扩展的存储系统复位时间 均小于0.3ms,因此本系统采用了能提供20ms低脉冲的MAX6315芯片。同时AT91M55800A具有可编程的看门狗定时器。由于系统电源瞬间 欠缺或意外掉电致使程序跑飞或重要数据丢失导致系统无法工作时,采用看门狗定时器可产生内部复位信号,使复位系统。

四、系统设计中的关键技术

1、硬件资源的合理利用和端口配置的原则

AT91M55800A 有着丰富的硬件资源,能否充分利用和恰当配置这些资源是设计成败的关键。如果给CPU的负担过重,系统有可能难以完成实时控制的任务,如果配置不合理,资 源则不能得到充分利用,而且会影响系统的实时性,增添软件的复杂性。CPU主要处理4路模拟量输入、10路开关量输入、1路频率量输入、3路定时信号输 入、4路PWM波输出、8路开关量输出和4路串行数据接口,根据微控制器的结构特点分别配置,如将模拟量输入配置在A/D部分,开关量输入和输出配置在 GPI/O,3路定时信号输入、1路频率量输入和PWM波配置在定时/计数器多通道部分,4路串行数据接口通过适当扩展配置在3个USART上。在设计中 对端口分配遵循了以下原则,并做了一定的时间测算;

(1) 首先确定MCU内核的实现方案,为输入输出信号量连接方案的确定开创条件;

(2) 优先考虑各端口的基本功能,再次考虑端口的第二、第三功能;

(3) 考虑信号匹配与端口的驱动能力;

(4) 考虑时间因素,对ADC、UARST、GPI/O、PWM、SPI等处理子程序进行时间估计与测算,确定CPU的任务量,保CPU有一定的时间裕度;

(5) 利用空余的端口做冗余设计,使某些功能的实现有一定的自由度。

2、系统的抗干扰措施

在无人机系统性能诸指标中,可靠性是首要考虑的因素。无人机飞行控制器必须稳定可靠地运行,否则将导致控制出现偏差,严重时将可能造成巨大经济损失或者生命危险。因此在控制器硬件的设计中,要始终贯彻高可靠性、高稳定性这一原则,并为软件抗干扰措施的实施打好基础。

影响控制器可靠安全运行的主要因素有以下几个方面:电磁场干扰、供电方式、元器件性能、PCB的布局与走线、机械结构设计等。

针对这些因素,在本系统的硬件设计中采用了如下一些措施:

(1)主控板采用四层的高频电路板;

(2)采用滤波技术、去耦电容、屏蔽技术、隔离技术和接地技术减小电磁场的干扰;

(3)数字部分和模拟部分独立供电

(4)尽量选用高集成度、高稳定性、高可靠性的面贴元件;

(5)PCB板上元器件按功能分区、就近布局,45°走线、满接地;

(6)选择高可靠性接插件,紧固安装,屏蔽壳体。

3、整机供电与功耗考虑

无 人机的动力源是能量有限的机载蓄电池,所以能耗问题是衡量控制其性能的一项指标。机载蓄电池提供的是±12V的直流电源,对于飞控器来说,需要解决两个问 题。一是如何进行DC/DC转换既能满足系统对电源数量及伏值的要求,又使转换效率足够高;二是选用什么样的元器件,既能满足信号匹配的要求又能使器件功 耗低。

系 统中选用的是高转换效率的小型PKC2121模块,可以产生稳定的±12V电压,为±9V的电源基准提供输入,5V和9V根据具体需要给模拟电路供 电,5V作为3.3V电源基准REF192GS的输入电压,3.3V给飞控计算机供和存储系统供电。在信号匹配的前提下尽量选用低功耗的CMOS器件,降 低系统总能耗。


五、结束语

经 过初步调试,该硬件平台各项功能均达到设计目的。为了方便和硬件的联调,软件设计以源码公开的实时嵌入式操作系统μC/OS-II为软件平台,将系统功能 按照优先级循序分为数据采集模块、控制解算模块、模态控制模块、高度航向读取模块、指令接收模块、 GPS接收模块、航路控制模块、遥测发送模块、芯片启动部分选用汇编语言,对算法复杂、计算量大的,采用C语言。软件和硬件分别调试通过后,可进行软件和 硬件的联调,最后形成基于ARM的新型飞行控制计算机。

该硬件系统体积小,成本低。设计中采用了模块化的结构形式,将主控模块和信号调理模块及信号输出模块分开,那么将主控模块与不同的信号调理模块和输出信号的相结合可以实现设计系统的通用性作为某型号的一系列无人机的飞控器。随着技术的不断发展 ,ARM将以它特有的优越性在军事和高科技中得到广泛的应用。


参考文献:

[1] David Seal. ARM Architecture Reference Manual Second Edition [M]. Pearson Education Limited.

[2] ARM7TDMI (Rev4) Technical Reference Manual[M]. ARM DDI

[3]张明廉.飞行控制系统[M]. 北京:航空工业出版社, 1993

[4]何衍庆等. 控制系统分析、设计和应用[M]. 北京:化学工业出版社. 2003.1

[5]马忠梅等. ARM嵌入式处理器结构与应用基础[M]. 北京:北京航空航天大学出版社.2003



评论


技术专区

关闭