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

发布者:导航灯最新更新时间:2016-08-06 来源: eefocus关键字:ARM  无人机  飞行控制系统 手机看文章 扫描二维码
随时随地手机看文章
一、引言

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

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

基 于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

关键字:ARM  无人机  飞行控制系统 引用地址:基于ARM的无人机飞行控制系统的研究实现

上一篇:ARM 汇编命令参考AREA
下一篇:ARM连接器介绍

推荐阅读最新更新时间:2024-03-16 15:04

ARM/DSP双核系统的通信接口设计
引 言   嵌入式系统的核心是嵌入式微处理器和嵌入式操作系统。早期的嵌入式系统硬件核心是各种类型的8位和16位单片机;而近年来32位处理器以其高性能、低价格,得到了广泛的应用。近年来,又出现了另一类数据密集处理型芯片DSP。DSP由于其特殊的结构、专门的硬件乘法器和特殊的指令,使其能快速地实现各种数字信号处理及满足各种高实时性要求。随着现代嵌入式系统的复杂度越来越高,操作系统已成为嵌入式系统不可缺少的部分。免费的嵌入式操作系统,如Linux等,随着自身不断的改善,得到了飞速的发展。Linux是一个免费的、强大的、可信赖的、具有可伸缩性与扩充性的操作系统。Linux实现了许多现代化操作系统的理论,并且支持完整的硬件驱动程序、网络通
[嵌入式]
2018年4大安全隐患,无人机平民化将是噩梦
2017年全球事务的报道中“闪光点”很多,但是专家们认为,在2018年全球事务会出现更多的安全隐患,而且每一件都会威胁到民众的安全。   据悉,2017年,由于民用 无人机 质量不断提高,价格不断下降,使得ISIS也拥有了空中力量。麻省理工学院的教授丽莎帕克斯在接受美国广播公司新闻采访时表示:“民用无人机便宜、精确、易于操作,可以在隐蔽的地方使用。如果有一天,恐怖分子将无人机发射到一个人口稠密的地区,那么他们轻而易举地就能造成巨大的破坏。无人机平民化将是一个噩梦。”       2017年5月, 谷歌 的 人工智能 程序AlphaGo击败了地球上最优秀的棋手柯洁,中国在2017年7月宣布大举进军人工智能领域,并称计划在20
[嵌入式]
九寨沟、新疆地震突如其来,地震仪到底发展到啥程度了?
这两天,想必大伙一定被两则地震消息给刷屏了,一个是08月08日21时19分发生在四川阿坝州九寨沟县发生7.0级地震;另一个是8月9日7时27分,在新疆博尔塔拉州精河县发生 6.6级地震。有网友疑问,为什么 地震仪 不能提前预测并大幅度减少伤亡呢?地震仪的技术到底发展到什么程度了?   今天的《 方案馆 》,与非小编就和大伙说一说关于地震仪的故事。   发展史 说到地震仪,不知道大伙是不是和小编一样,“张衡”两个字瞬间跳到眼前。张衡是我国东汉时代的科学家在公元132年就制成了世界上最早的“地震仪”,准确的说是 地动仪 。此仪器据说能判定地震发生的方位,那个没有电子仪器的年代,这玩意当真有用吗?     地动仪的核心部件就是一个青
[嵌入式]
ARM4412的MMU内存管理单元
由于在裸板驱动的时候要中断 异常 MMU MMU是一个内存管理单元,在CP15协处理器里面,而CP15处理器是嵌入在ARM芯片里。功能是将虚拟地址映射到物理地址里面。 在使用MMU寄存器机制之前首先要配置寄存器。将寄存器的功能打开 映射的机制支持段模式1M,小段模式,小页模式(更精细) 000000-------1000000 rom的地址 TLB虚拟地址与物理地址缓存的对应关系 页表的产生:假如将4个G的虚拟地址映射到1G的物理地址,假如有100个线程同时使用表,此时,建立的表的大小为: 4G*8*100=3200G。而此时将表放到内存中。。。。。。 但是将虚拟地址映射到物理的地址比如:将3000 0000地址映射到50
[单片机]
ARM汇编指令集之七——数据交换指令
1、SWP指令 SWP指令的格式为: SWP{条件} 目的寄存器,源寄存器1, SWP指令用于将源寄存器2所指向的存储器中的字数据传送到目的寄存器中,同时将源寄存器1中的字数据传送到源寄存器2所指向的存储器中。显然,当源寄存器1和目的寄存器为同一个寄存器时,指令交换该寄存器和存储器的内容。 指令示例: SWP R0,R1, ;将R2所指向的存储器中的字数据传送到R0,同时将R1中的字数据传送到R2所指向的存储单元。 SWP R0,R0, ;该指令完成将R1所指向的存储器中的字数据与R0中的数据交换。 2、SWPB指令 SWPB指令的格式为: SWP{条件}B 目的寄存器,源寄存器1,
[单片机]
“海盗”无人机 貌似是个纯“侦察员”
“海盗”察打一体 无人机 在俄罗斯纪念卫国战争胜利73周年阅兵式上,“海盗”短程无人攻击机在红场也完成了首秀。正处于最后测试阶段的“海盗”系列无人机,在陆军、海军和特种部队都可以使用,俄军计划在2025年前大量装备这款飞行器。 “一方面完善和充实俄罗斯无人机体系,另一方面也是对美国不断研发先进无人机的应对之策。”国防科技大学电子对抗学院教授盛怀洁对科技日报记者表示,俄罗斯在叙利亚战场的实战表明,俄军有人轰炸机、战斗机在应对治安战的效果并不好,亟须长航时、低成本的察打一体无人机,“海盗”无人机正是在这样的背景下上马研制的。 作为俄军方斥巨资打造的一款战术攻击无人机,“海盗”无人机的主要特点是具有察打一体的功能,这也是世界无人作战
[嵌入式]
ARM学习易搞混的:函数指针和指针函数
在学习arm过程中发现这“指针函数”与“函数指针”容易搞错,所以今天,我自己想一次把它搞清楚,找了一些资料,和大家的一些总结,整理到此,和大家分享。 首先它们之间的定义: 1、指针函数是指带指针的函数,即本质是一个函数。函数返回类型是某一类型的指针 类型标识符*函数名(参数表) int*f(x,y); 首先它是一个函数,只不过这个函数的返回值是一个地址值。函数返回值必须用同类型的指针变量来接受,也就是说,指针函数一定有函数返回值,而且,在主调函数中,函数返回值必须赋给同类型的指针变量。 表示: float*fun(); float*p; p=fun(a);
[单片机]
Exosite/ARM携手提供极致安全物联网解决方案
远景科技(Exosite)宣布与ARM携手合作为安全的产品开发提供完整的解决方案。 两家公司目前将Exosite的企业级物联网云端平台Murano,以及用于物联网设备管理的可扩展式解决方案 ARM mbed Cloud进行整合。 该组合产品为客户提供了通过标准化、安全的芯片到云端设备管理解决方案及垂直解决方案模板与物联网平台功能可简化并加速连网产品开发。 ARM的物联网业务销售及市场营销副总裁 Michael Horne表示,以可信赖的方式将数据从连网设备安全地传输到云端是加速物联网导入的关键,对许多OEM客户而言是一大挑战。 ARM和Exosite Murano云端平台间的合作,为客户提供了一种简化、便捷的方式进行联网产品与设备
[半导体设计/制造]
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
随便看看
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved