小型无人机飞控系统如何组成和设计?
共 1 个回答
在众多处理器芯片中,最适合小型飞控计算机CPU的芯片当属TI公司的TMS320LF2407,其运算速度以及众多的外围接口电路很适合用来完成对小型无人机的实时控制功能。
它采用哈佛结构、多级流水线操作,对数据和指令同时进行读取,片内自带资源包括16路10位A/D转换器且带自动排序功能,保证最多16路有转换在同一转换期间进行,而不会增加CPU的开销;40路可单独编程或复用的通用输入/输出通道;5个外部中断;集成的串行通信接口(SCI),可使其具备与系统内其他控制器进行异步(RS485)通信的能力;16位同步串行外围接口(SPI)能方便地用来与其他的外围设备通信;还提供看门狗定时器模块(WDT)和CAN通信模块。
飞控系统组成模块
飞控系统实时采集各传感器测量的飞行状态数据、接收无线电测控终端传输的由地面测控站上行信道送来的控制命令及数据,经计算处理,输出控制指令给执行机构,实现对无人机中各种飞行模态的控制和对任务设备的管理与控制;同时将无人机的状态数据及发动机、机载电源系统、任务设备的工作状态参数实时传送给机载无线电数据终端,经无线电下行信道发送回地面测控站。
按照功能划分,该飞控系统的硬件包括:主控制模块、信号调理及接口模块、数据采集模块以及舵机驱动模块等。
模块功能
各个功能模块组合在一起,构成飞行控制系统的核心,而主控制模块是飞控系统核心,它与信号调理模块、接口模块和舵机驱动模块相组合,在只需要修改软件和简单改动外围电路的基础上可以满足一系列小型无人机的飞行控制和飞行管理功能要求,从而实现一次开发,多型号使用,降低系统开发成本的目的。系统主要完成如下功能:
(1)完成多路模拟信号的高精度采集,包括陀螺信号、航向信号、舵偏角信号、发动机转速、缸温信号、动静压传感器信号、电源电压信号等。
由于CPU自带A/D的精度和通道数有限,所以使用了另外的数据采集电路,其片选和控制信号是通过EPLD中译码电路产生的。
(2)输出开关量信号、模拟信号和PWM脉冲信号等能适应不同执行机构(如方向舵机、副翼舵机、升降舵机、气道和风门舵机等)的控制要求。
(3)利用多个通信信道,分别实现与机载数据终端、GPS信号、数字量传感器以及相关任务设备的通信。由于CPU自身的SCI通道配置的串口不能满足系统要求,设计中使用多串口扩展芯片28C94来扩展8个串口。
系统软件设计
该系统的软件设计分为2部分,即逻辑电路芯片EPLD译码电路的程序设计和飞控系统的应用程序设计。
逻辑电路程序设计
EPLD用来构成数字逻辑控制电路,完成译码和隔离以及为A/D,D/A,28C94提供片选信号和读/写控制信号的功能。
该软件的设计采用原理图输入和VERILOGHDL语言编程的混合设计方式,遵循设计输入→设计实现→设计校验→器件编程的流程。系统使用了两片ispLSI1048芯片,分别用来实现对A/D,D/A的控制和对串口扩展芯片28C94的控制,参数来源于翼趣无人机网。
系统应用程序设计
由于C语言不但能够编写应用程序、系统程序,还能像汇编语言一样直接对计算机硬件进行控制,编写的程序可移植性强。由于以DSP为核心设计的系统中涉及到大量对外设端口的操作,以及考虑后续程序移植的工作,所以飞控系统的应用程序选用BC3.1来设计,分别实现飞行控制和飞行管理功能。
软件按照功能划分为4个模块:时间管理模块、数据采集与处理模块、通信模块、控制律解算模块。
通过时间管理模块在毫秒级时间内对无人机进行实时控制;数据采集模块采集无人机的飞行状态、姿态参数以及飞行参数、飞行状态及飞行参数进行遥测编码并通过串行接口传送至机载数据终端,通过无线数据信道发送到地面控制站进行飞行监控;姿态参数通过软件内部接口送控制律解算模块进行解算,并将结果通过D/A通道送机载伺服系统,控制舵机运行,达到调整、飞机飞行姿态的目的;通信模块完成飞控计算机与其他机载外设之间的数据交换功能。
利用高速DSP控制芯片在控制律计算和数据处理方面的优势及其丰富的外部资源,配合大规模可编程逻辑器件CPLD以及串行接口扩展芯片28C94设计小型机载飞控计算机,以其为核心设计的小型无人机飞控系统具有功能全,体积小,重量轻,功耗低的特点,很好地满足了小型无人机对飞控计算机高精度、小型化、低成本的要求。该设计已成功应用于某验证无人机系统。
本文转载自网络
专注于机器人、无人机/车,工程师都关注的“机器人网”
- 1