田新锋
(中国人民解放军92419部队,辽宁兴城 125106)
随着无人机技术发展,其在军用和民用方面的需求日益增多。这就要求飞行器平台不但具有可靠的飞行能力,还要有一定任务载荷能力[1-2]。这极大地压缩了飞行器本身工作设备的尺寸、重量。某固定翼无人机飞控系统由PC104架构的机载计算机和分离式大气数据计算机、垂直陀螺、GPS等组成,体积、重量、功耗大,影响了机上其他任务设备安装。因此对机载计算机和传感器进行一体化设计,减小设备体积、重量和功耗就具有重要的现实意义。
本文以该无人机飞控系统为研究对象,将原有PC104架构的机载计算机四张板卡的功能集成在一张以STM32F427微处理器为核心的主控板上,将原有的大气数据计算机、垂直陀螺和GPS三个分立传感器功能通过选用成熟商用MEMS传感器集成在一张传感器板上,实现了飞行控制系统一体化设计,降低了系统成本、体积、重量和功耗。
该型无人机采用火箭助推起飞、可自主程序飞行、无线电指令遥控飞行、降落伞加气囊缓冲回收。为满足上述功能一体化控制必须具备以下功能:配合地面发控设备实现靶机发动机点火控制、发射控制、起飞段程序控制;航迹、姿态测量功能,实现靶机姿态稳定与控制、三维航迹控制;配合地面控制站,进行无线电指令控制,完成机载任务设备的控制;完成任务后,在指定区域进行回收(打开引导伞、打开主伞、减震气囊充气、落地抛伞等时序控制)。该无人机飞行控制系统结构如图1所示。
图1 飞行控制系统结构图
为了实现图1所示功能,一体化飞行控制单元的设计遵循功能完善、能实现工程化、低成本、小型化的原则[3-4],通过以下技术途径来实现。
1)传感器选型使用商用成熟数字器件代替模拟器件,降低系统成本同时大大减小了体积,避免数据采集过程中滤波、电平转化带来的复杂电路设计,简化核心板对外接口通信;
2)对现有的执行机构接口进行改造,利用CAN总线替代原有10路AD/DA舵机位置采集与控制通道,大幅减少了信号采集辅助电路,提高了信息传输过程中抗干扰能力;
3)开关量功率输出选择光耦继电器,改变了以前由IO口通过光耦隔离控制继电器的模式,元器件体积大大减小,简化了电路设计,提高了工作可靠性;
4)选用接口丰富的STM32F427作为主控板MCU,实现了前期PC104架构以80586处理器为核心板,通过104总线扩展串口板、IO板、AD/DA板,4块104板卡的功能。
基于以上思路给出了一体化控制单元结构如图2所示。系统采用插板结构,由主控板、电源板、传感器板、底板组成。底板在各个模块之间起到一个“桥梁”作用,其他模块通过CRM3系列连接器与底板相连,实现各个板卡间的信号传递、转接和集线等功能。电源板主要完成供电转换,为主控板和传感器板提供稳定、可靠的工作电压。传感器板主要为机载传感器提供结构支撑和传感器信号输出。主控板实现与外围保障设备之间的通信,同时需要对传感器数据采集处理,实现对无人机飞行控制与管理,是本系统的核心和关键[5]。
图2 一体化控制单元结构图
传感器板一体化小型设计主要把原有的垂直陀螺和大气数据计算机由商用成熟MEMS器件替换,GPS/INS设备沿用NovAtel公司的OEM615模块不变。选用SBG公司Ellipse-E的OEM模块替代原有的垂直陀螺,数据更新率达到100 Hz,完全满足飞行控制50 Hz控制周期的需要,采用RS232接口与主控板通信;选用Honeywell公司IPT0020A33R和IPT0005G33R替代原有的大气数据计算机,分别测量气压高度和空速,高度压力测量误差为0.04%,满足0 m~10 000 m高度范围内,高度误差小于20 m的测量要求,空速差压测量误差控制在0.04%,满足亚声速飞行速度测量误差小于5 m/s的要求[6]。采用SPI接口与主控板进行通信;OEM615提供卫星定位信息,2路RS232输出,一路供主控板进行航迹控制用,另一路输出到Ellipse-E模块中用于飞行过程中误差补偿。在保证系统功能的情况下,板子大小控制在100 mm*120 mm*20 mm以内,体积缩小到原来的1/15。
主控板是整个飞行控制计算单元硬件系统的核心模块,CPU采用的是意法半导体公司32位芯片STM32F427,主频高达180 MHz,带有单精度浮点运算单元(FPU);具有3个12位24通道的A/D转换器,满足系统工作电压采集要求;高达8个UART,满足系统5路RS422和2路RS232接口扩展需求,6个SPI满足系统压力传感器通信要求;2个CAN接口,满足系统执行机构控制要求;16路开关量通道满足系统2路DI和9路DO的使用需要;同时具有16路FIFO和突发支持的DMA控制器,大大降低了诸多外设与CPU通信的中断开销,满足了CPU与外设的接口要求,并具有一定的可扩展性,同时也保证了CPU与外设的可靠实时通信。在系统功能一致的情况下,板子尺寸控制在100 mm*120 mm*16 mm,体积缩小到不到原来的1/2。
从总体需求和设计方案可以看出,以STM32F427为核心主控板是系统功能实现的关键,与PC104系统相比,成本得到有效控制,体积大幅度减小,下面从主控板对外数字通信功能、AD转化功能、开关量控制功能等方面进行详细设计。
1) 串口模块
为了与航行姿态系统、遥控遥测数据链、地面检测、动力和任务设备等外围单元的数据的通讯,同时考虑后续扩展,要求系统具有8路串口资源,STM32F427芯片具有8个串口,但输出电平为TTL格式,与外围设备要求的RS232/RS422电平不相匹配,需设计电平转换电路。采用MAX3160E芯片完成电平的转换功能,MAX3160E只需外接滤波电容即可正常工作,并且可通过跳线设置MAX3160E工作在RS-232/422电平模式,通过设置HDPLX引脚的电平可以选择芯片工作在半双工模式或全双工模式[7]。串行接口电路如图3所示。
图3 串行接口电路
2)SPI接口模块
主控板与气压高度和空速传感器接口采用了SPI接口,气压高度传感器选用Honeywell公司的IPT0020A33R型绝压传感器,其压力测量范围为0~20PSI(0~103.4 Kpa),满足0 m~10 000 m标准气压高度的测量;其中空速传感器选用Honeywell公司的IPT0005D33R型差压传感器,其压力测量范围为0~5PSI(0~34.5 Kpa),满足0 m/s~240 m/s空速的测量。气压计空速计均采用SPI接口,其接口电路如图4所示。
图4 气压高度/空速测量接口电路
3)CAN接口模块
为了实现舵机控制,需要外扩CAN接口电路,系统外扩了2路CAN接口电路。由于STM32F427自身具有CAN控制器,只需外接 CAN收发器即可完成CAN口通信功能。CAN接口电路如图5所示,本文选用TJA1050作为CAN收发器,但输出端需要外接120欧姆的电阻作为终端匹配电阻,具有避免信号的反射和回波、减少辐射的作用。
图5 CAN接口电路
处理器片内带有12个模拟量输入通道,但它的电压采样范围为0 V~3.3 V,而需要采集的工作电压一般在5 V、12 V等。因此在AD数据采集前要对输出电压信号进行调理,满足处理器采样需要,这里主要对输入的模拟量信号调理电路进行设计。调理电路设计主要包括滤波和电平转换两部分,由于系统仅对设备的工作电压进行采集,精度要求一般,只需考虑信号的电平转换即可。这里选用OP497进行电平的变换,接口电路如图6所示,不同的电压变换比例通过设计调整R1、R2、R3的电阻,即可满足系统模拟信号输入要求。
图6 A/D转换接口电路
开关量模块主要用来控制开关量输入与输出,开关量输入如图7所示,用来采集供电转换等设备工作状态的采集。4路数字输入信号经光电耦合器隔离、转换后,变成TTL电平的数字信号送至处理器芯片GPIO口,增强电路的抗干扰能力。
开关量输出通道主要用来控制开伞、抛伞、气囊充气等设备的控制,12路数字输出信号经继电器隔离,增加系统对外部设备工作时的抗干扰能力,如图8所示。
图7 开关量输入通道
图8 开关量输出通道
为测试验证一体化控制单元设计的合理性、正确性,对各接口功能分别进行测试验证,其中与一体化控制单元内部GPS、IMU、压力传感器采取直联测试,与其他外部设备交连接口采用PC机模拟、外部激励、外部采集的形式进行测试,如图9所示。
图9 系统测试图
数字通信接口包括串口、CAN和SPI接口。CAN接口本身就具有实时性强、抗干扰能力强、可靠的容错和检错机制等特点,其性能不容质疑,仅进行功能测试,验证电路板设计的合理性,结果表明CAN模块设计合理,满足使用要求。
串口通信测试重点在于多串口的实时性上,首先测试各串口单一工作条件下的发送或接收性能,再测试各串口并行工作下的实时性能。为此依据各端口功能特点,合理分配各端口参数,如表1所示;同时在数据发送中采用DMA机制,接收中采用FIFO和中断机制,最大限度地保证了数据的完整性,同时降低了CPU处理并行数据中断切换占用率高的问题。以GPS串口通信为例,其传输频率为20 Hz、每帧数据77 Byte,设置该接口波特率为38 400 bps,数据传输占空比在40%左右,在保证可靠传输的情况下,降低传输时延;在接收端设置256 Byte的环形接收FIFO,可完整存储3帧数据,保证了数据的完整性,当FIFO中接收数据大于77 Byte触发中断处理信息,大幅降低CPU中断次数,提高CPU利用率。依此进行其他串口设置测试,在并行、长时间、多次拷机情况下,无丢码、误码发生,表明多串口模块性能稳定可靠。
SPI接口与气压高度和空速采集处理结合进行。采用LAVERSAB公司的MODEL6580型大气数据校验仪为大气压力源,模拟初始速度为0,加速度为0.01 Ma/s2的匀加速过程,最终速度保持在Ma=0.5。一体化控制单元测量的速度曲线与激励源的空速跟踪及误差曲线如图10所示。可以看出空速压力采集很好地跟踪了激励变化,最大误差小于Ma=0.019,考虑大气数据校验仪本身输出精度在Ma=0.005,动态误差最大Ma=0.014,速度测量误差小于5 m/s,在设计允许范围内,稳态误差趋于0,说明数据采集处理合理有效,达到了设计的目的。
表1 串口通信参数表
图10 空速跟踪及误差曲线
AD接口的输入电压为0 V~5 V,精度为12位,采用E36100直流稳压电源作为输入激励,间隔1 V采集一次电压值,采集的数据如表2所示。由测试数据可知,最大采样偏差为0.026 V,平均采样误差0.016 V,满足0.1 V采样使用精度要求。
表2 AD转化采集数据
开关量包括4路DI和12路DO,先测试DO,再将DO最为DI的输入,测试DI。当DO通道程序输出高电平5 V、低电平0 V交替变化信号,使用示波器FLUKE124B可在DO输出端观察到规则的方波信号,测试结果如表3所示。将DO信号直接输出到DI口,可在DI输入端读取到高电平“1”和低电平“0”,可知4路DI和12路DO工作正常,满足设计需要。
表3 DO输出测量结果
本文依据低成本、小型化的要求,在继承系统功能的前提下,在原有飞控计算机体积内,实现了飞控计算机和传感器的一体化集成设计,节省了原有垂直陀螺和大气数据机的安装空间,实现了系统的小型化;同时选用商用成熟MEMS器件和主控MCU,降低了设备的成本。实验验证表明该一体化控制单元可与发控设备、任务设备、数据链、动力系统、仿真设备进行正常通讯,能够对回收和任务设备进行开关量控制、对发射和回收状态进行开关量采集,正确采集设备工作电压和传感器信息,可实现10 ms周期内无丢帧数据采集与处理,与原有20 ms采样控制周期相比,计算能力得到了有效提升,满足设计要求,同时该一体化单元资源丰富,具有一定的普适性,可以推广到其他无人飞行器飞行控制应用场合。