打印

基于DSP和CPLD的小型四轴飞行器飞控计算机设计

[复制链接]
1846|5
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
liwsx|  楼主 | 2012-3-20 22:16 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
小型无人机在现代军事和民用领域的应用已越来越广泛。在经历了早期的遥控飞行后,目前其导航控制方式已经发展为自主飞行和智能飞行。导航方式的改变对飞行控制计算机的精度提出了更高的要求;随着小型无人机执行任务复杂程度的增加,对飞控计算机运算速度的要求也更高;而小型化的要求对飞控计算机的功耗和体积也提出了很高的要求。高精度不仅要求计算机的控制精度高,而且要求能够运行复杂的控制算法,小型化则要求无人机的体积小,机动性好,进而要求控制计算机的体积越小越好。
1 概述
目前,随着微电子技术的飞速发展,市场上出现了众多功能强大,功耗、体积大大缩小的集成电路。芯片制造工艺的进步,像ARM,DSP等集成众多外围电路的CPU芯片以及EPLD,FPGA等大规模逻辑器件也已经出现,其性能比以前的芯片增强,外部电路也大为精简。其中,数字信号处理器(DSP)以强大的指令系统、接口功能以及友好的开发环境显示出功能完善,速度快,开发方便等优势,能够有效解决小型飞控计算机中高速与微型的矛盾,从而使为微、小型无人机量身设计的集高速度、高精度和小型化于一体的新型飞控计算机成为可能。
在众多处理器芯片中,最适合小型飞控计算机CPU的芯片当属TI公司的TMS320LF2407,其运算速度以及众多的外围接口电路很适合用来完成对小型无人机的实时控制功能。它采用哈佛结构、多级流水线操作,对数据和指令同时进行读取,片内自带资源包括16路10位A/D转换器且带自动排序功能,保证最多16路有转换在同一转换期间进行,而不会增加CPU的开销;40路可单独编程或复用的通用输入/输出通道;5个外部中断;集成的串行通信接口(SCI),可使其具备与系统内其他控制器进行异步(RS 485)通信的能力;16位同步串行外围接口(SPI)能方便地用来与其他的外围设备通信;还提供看门狗定时器模块(WDT)和CAN通信模块。
TMS320LF2407丰富的片内资源配合LATTICE公司的EPLD以及串口扩展芯片28C94使飞控机实现较复杂的飞行控制与飞行管理功能,同时还满足了小型无人机的小体积和低功耗的要求。CPU提供192 KWord字的可扩展外部存储空间,能够装载较大的应用程序,进一步增强对外部电路的控制能力。系统开发语言选择BC 3.1,能方便地开发应用程序,并使之有良好的可移植性。集成开发工具CC2000能很方便友好地实现系统的调试。

2 系统硬件设计

2.1 组成模块

飞控系统实时采集各传感器测量的飞行状态数据、接收无线电测控终端传输的由地面测控站上行信道送来的控制命令及数据,经计算处理,输出控制指令给执行机构,实现对无人机中各种飞行模态的控制和对任务设备的管理与控制;同时将无人机的状态数据及发动机、机载电源系统、任务设备的工作状态参数实时传送给机载无线电数据终端,经无线电下行信道发送回地面测控站。按照功能划分,该飞控系统的硬件包括:主控制模块、信号调理及接口模块、数据采集模块以及舵机驱动模块等。具体的硬件构成原理如图1所示。



2.2 模块功能

各个功能模块组合在一起,构成飞行控制系统的核心,而主控制模块是飞控系统核心,它与信号调理模块、接口模块和舵机驱动模块相组合,在只需要修改软件和简单改动外围电路的基础上可以满足一系列小型无人机的飞行控制和飞行管理功能要求,从而实现一次开发,多型号使用,降低系统开发成本的目的。系统主要完成如下功能:

(1)完成多路模拟信号的高精度采集,包括陀螺信号、航向信号、舵偏角信号、发动机转速、缸温信号、动静压传感器信号、电源电压信号等。由于CPU自带A/D的精度和通道数有限,所以使用了另外的数据采集电路,其片选和控制信号是通过EPLD中译码电路产生的。

(2)输出开关量信号、模拟信号和PWM脉冲信号等能适应不同执行机构(如方向舵机、副翼舵机、升降舵机、气道和风门舵机等)的控制要求。

(3)利用多个通信信道,分别实现与机载数据终端、GPS信号、数字量传感器以及相关任务设备的通信。由于CPU自身的SCI通道配置的串口不能满足系统要求,设计中使用多串口扩展芯片28C94来扩展8个串口。

3 系统软件设计

该系统的软件设计分为2部分,即逻辑电路芯片EPLD译码电路的程序设计和飞控系统的应用程序设计。

3.1 逻辑电路程序设计


EPLD用来构成数字逻辑控制电路,完成译码和隔离以及为A/D,D/A,28C94提供片选信号和读/写控制信号的功能。该软件的设计采用原理图输入和VERILOG HDL语言编程的混合设计方式,遵循设计输入→设计实现→设计校验→器件编程的流程。系统使用了两片ispLSI1048芯片,分别用来实现对A/D,D/A的控制和对串口扩展芯片28C94的控制。

3.2 系统应用程序设计

由于C语言不但能够编写应用程序、系统程序,还能像汇编语言一样直接对计算机硬件进行控制,编写的程序可移植性强。由于以DSP为核心设计的系统中涉及到大量对外设端口的操作,以及考虑后续程序移植的工作,所以飞控系统的应用程序选用BC 3.1来设计,分别实现飞行控制和飞行管理功能。

软件按照功能划分为4个模块:时间管理模块、数据采集与处理模块、通信模块、控制律解算模块。通过时间管理模块在毫秒级时间内对无人机进行实时控制;数据采集模块采集无人机的飞行状态、姿态参数以及飞行参数、飞行状态及飞行参数进行遥测编码并通过串行接口传送至机载数据终端,通过无线数据信道发送到地面控制站进行飞行监控;姿态参数通过软件内部接口送控制律解算模块进行解算,并将结果通过D/A通道送机载伺服系统,控制舵机运行,达到调整、飞机飞行姿态的目的;通信模块完成飞控计算机与其他机载外设之间的数据交换功能。

4 结语

利用高速DSP控制芯片在控制律计算和数据处理方面的优势及其丰富的外部资源,配合大规模可编程逻辑器件CPLD以及串行接口扩展芯片28C94设计小型机载飞控计算机,以其为核心设计的小型无人机飞控系统具有功能全,体积小,重量轻,功耗低的特点,很好地满足了小型无人机对飞控计算机高精度、小型化、低成本的要求。该设计已成功应用于某验证无人机系统。

相关帖子

沙发
xichengmadia| | 2012-3-20 23:25 | 只看该作者
讲的好简单啊

使用特权

评论回复
板凳
五谷道场| | 2012-3-21 19:23 | 只看该作者
不知道中国的四轴飞行器技术怎么样啊,呵呵,能不能赶上美国

使用特权

评论回复
地板
liedc| | 2012-3-21 21:23 | 只看该作者
感谢楼主分享      
嗯资料不错                                               
楼主辛苦了         
学习了

使用特权

评论回复
5
czdo| | 2012-3-21 21:26 | 只看该作者
四轴飞行器确实很热啊!!!啥时候楼主整一个出来分享一下

使用特权

评论回复
6
gaochy1126| | 2012-3-22 10:10 | 只看该作者
楼主说的很简单,最好能说一下,数据的处理过程和控制算法,我们好借鉴一下!

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

0

主题

221

帖子

0

粉丝