基于C8051F340的机载武器测控系统设计
扫描二维码
随时随地手机看文章
摘要:为了实现对某型机栽武器测控的需求,利用C8051F340单片机和HS3282芯片设计了ARINC429总线和计算机RS-232总线的接口转换电路,通过C语言设计了单片机固件程序,实现了串并数据的转换与传输以及数据传输速率和字长的设置。最后利用VB语言编写了PC端武器测控系统软件,对串口数据进行解码和发送,实现了对武器系统的实时检测和控制。实际应用表明,该系统具有测试结果实时准确、响应命令迅速无误的特点,可满足外场测试的需求。
现代战机配备有空空导弹、空地导弹、制导炸弹、航空炮弹等多种武器系统,目前飞控系统与机载武器系统交换数据的总线主要有:ARI NC429总线、1553B总线、RS422总线等。ARINC429是专为航空电子系统通讯规定的航空工业标准;它是航空通讯设备最常用的数据接口之一,不仅应用于民用航空领域如空客A310/A320、A330/A340飞机,波音727、737、747、757和767飞机.也广泛应用于机载武器系统,如“鹰击-81”空舰导弹机载系统的232H机载雷达、ZJ-9指挥仪、210多普勒导航系统、HZX-5航向姿态系统、8415大气数据系统和622自动飞行控制系统均采用ARINC429总线连接。某型武器同样采用ARINC429总线与飞控系统进行通信,为了利用计算机模拟飞控系统对该武器进行现场监测和控制,需要实现计算机与武器系统的ARINC429接口通信,传统的方法是在计算机中扩展一个基于ISA或PCI总线的ARINC429卡,这种转换卡往往价格昂贵,不同计算机采用总线结构不同也会降低ARINC429卡的通用性,转换卡通信方式的配置也较为固定化,不利于自主编程,在没有配备ARINC429卡的计算机上就无法实现对武器系统的测控。
为了解决上述问题,使计算机能够与武器系统进行数据交换,文中利用C8051F340作为主控芯片,实现了RS232/ARINC429的接口转换,上位机对接收到的转换后的串口数据进行解码,能实时显示武器系统状态,上位机以串口形式发送操控命令给下位机,下位机接收命令后通过HS3282芯片转换为ARINC429格式数据发送给武器系统,在获得武器系统响应后将结果反馈给上位机。
1 总体设计
测控系统的结构图如图1所示,机载武器系统采用ARINC429总线,32位字长通信,计算机采用RS232总线,为了建立武器系统与测控计算机之间的通信,测控计算机RS232串行数据经电平转换芯片转换为TTL电平后与C8051F340单片机建立异步串口通信,单片机在接收到4个8位串口数据后,通过I/O口将串行数据转换为2个16位并行数据,429转换芯片HS3282内部为16位数据总线;分两次读取单片机16个I/O口数据,构成32位ARINC429串行数据的低16位和高16位,由于HS3282FIFO中可存8个429数据字,因此单片机可连续接收32个8位串行数据,转换为16个16位的并行数据给HS3282,HS3282将16个16位并行数据转换为8个429数据字储存到FIFO中,经单片机控制,一次发送8个ARINC429串行数据作为一个通信帧。反之,HS3282可将32位的429数据转换为2个16位并行数据,单片机分两次读取后,转换为4个8位串行数据,经电平转换后传输给计算机。计算机端武器测控系统软件,对串行数据进行解码后得到武器系统相应的状态和反馈信息。
2 系统硬件设计
系统以C8051F340为控制核心,C8051F340单片机由美国Silicon Labs公司设计;指令速度可以高达48 MIPS,拥有40个I/O口,能够满足串并数据转换的处理速度和控制引脚的数量要求。
HS3282芯片是intersil公司生产的CMOS ARINC总线接口电路,满足ABINC429规范的要求。供电电压+5 V,内部包含相互独立工作的2个接收器和1个发送器。接收端可直接与429总线相连,发送端配合HS3182电平驱动芯片转换为429电平。由于篇幅所限,其相关控制和指示引脚参见相关手册。
单片机与HS-3282的连接关系如图2所示。
单片机与HS-3282均为5 V电压供电。
由于C8051F410单片机P4的I/O口不可位寻址,为了便于编程和识别,单片机P2.0-P2.7引脚分别接HS-3282的BD0-BD7口,P3.0-P3.7引脚接BD8-BD15,用于传输和接收16位的并口数据。P0口专门连接HS-3282的控制和状态指示引脚。C8051F410单片机异步串行通信口只能配置在P0.4和P0.5口,因此P0.4和P0.5用与串口通信,外接232电平转换芯片。
HS3282除了与单片机相关引脚连接外,D429DI1(A)和429DI1(B)口用于连接武器系统的429总线,clk引脚用来外接有源晶振,根据芯片手册要求,这里外接1 MHz的有源晶振。
HS3282输出信号为TTL电平,为了将信号电压抬升至符合ARINIC429总线要求的标准,通过专用的HS3182驱动芯片与之配合。需外接+15 V和-15 V,本文采用了开关电源供电,可满足系统功耗要求。HS3282输出的429差分信号经HS3182驱动后,通过引脚Aout和Bout与武器系统进行429通信。
Ca和Cb根据429通信速率的高低外接不同的高精度电容。100 kB通信速率时为75 pF,低于14.5 kB通信速率时为300 pF。
单片机的串口使用TTL电平标准,它的逻辑1电平是5 V,逻辑0电平是0 V,而电脑串行口所使用的是RS232C的电平标准,它的逻辑1电平是-3~12 V,逻辑0电平是+3~+12 V。两者的电平范围相差很远,连接时需要用到电平转换电路。本文采用商用的MAX3232芯片组成电平转换电路,如图4所示。
MAX3232外接极性电容值均为0.1μF。MAX3232对两路TTL电平进行转换,本文使用了其中一路。T1IN接单片机串口发送,R1OUT接单片机串口接收引脚。T1OUT接电脑串口接收引脚,R1IN接电脑串口发送引脚。
3 测控系统软件设计
该测控系统的软件分为单片机固件程序和上位机程序2部分。
单片机固件程序实现单片机和接口芯片寄存器初始化配置、数据格式转换、接收和发送控制等功能。利用到了单片机的中断系统、通用I/O口、定时器和串口UART0。固件程序目的在于实现串口数据与429数据的转换、接收和发送,从而建立上位机程序与武器系统之间的通信。
上位机程序采用VB语言编写,通过RS-232串口与单片机通信。可发送测控命令给武器系统,同时能实时反馈武器系统的工作状态。
单片机固件程序,是测控系统软件设计的核心。其主要功能是将上位机命令转换为ARINC429格式数据,按照一定帧周期发送给武器系统,并能将武器系统反馈数据转换为RS232串口数据发送至上位机,从而能够实时监测武器系统工作状态。
初始配置,用于初始化单片机和HS3282相关寄存器,对IO口进行配置和定义。
根据硬件连接关系,为方便程序操作,对IO口做定义如下。
根据武器系统通信要求,配置ARINC429通信速率100 kb/s,32位有效数字,奇校验,并关闭自测功能。根据芯片手册说明,程序设计如下
时钟产生模块由单片机定时器实现,单片机定时器配置为50 ms一次中断,在中断服务程序中一次性发送8个32位的429数据,构成一个数据帧,从而实现50 ms的帧速率。
串并转换模块,对4个8位串口数据和32位ARINC429数据进行转换。单片机在接收到4个8位串口数据后,依次排列,按照从低位到高位的顺序,分两次输出到16个IO口,HS3282读取并口数据并储存在FIFO中,组成一个32位的ARINC429数据。429总线数据的接收采用中断方式,当DR1口为低电平时,触发外部中断服务程序,程序分两次对16个IO口进行读取后将数据储存在一个8位数据数组中,当数组元素达到32个时,完成一次429帧周期的数据读取,此时在外部中断程序中以查询发送的方式,将数据发送至上位机。
收发控制模块对发送和接收数据以及命令数据的改变进行合理时序安排,单片机未接收上位机命令时,以50 ms的帧周期,发送默认查询命令给武器系统,当收到1个帧周期的反馈数据后,将32位格式的ARINC数据分割为4个8位数据,通过UART0发送至上位机。当收到上位机命令时,进入串口中断,对命令数据进行解析后,改变相应的发送数据,以50 ms的帧周期发送操作命令给武器系统,得到系统操作反馈信息后通过串口发送至上位机。
串口通信模块,可实时接收武器系统反馈数据。机载武器系统处理的数据对象,往往不是以单个数据为单位的,而是一组长度固定的数据,其中每一个数据包含着不同的地址信息和数据信息。这里我们称这组数据为一个数据帧,单片机在收完一个数据帧的数据后才将数据反馈给上位机;上位机通过串口发送相应操作命令给单片机,单片机通过串口接收中断接受命令,改变发送的命令数据,从而对武器系统进行相关操作。
ARINC429标准数据与HS3282数据对应位关系如图6所示。
可以看出,ARINC429数据标号位与正常顺序正好相反,要先发送高位后发送低位。ARINC429数据的高3位要后移至8-10位,发送和读取相应32位的ARINC数据时,要对相应位的数据进行移位和反转操作。
单片机固件程序流程图如图7所示。
上位机程序,采用VB语言编写了人机交互界面,如图8所示。利用MSComm控件,建立PC机与单片机之间的串口通信。
发送命令时,上位机通过串口一次性发送32个8位数据给单片机,单片机将数据组合为8个32位的ARINC429数据,构成一个数据帧,在定时器的中断服务程序中,依次存入HS3282的FIFO中后,启动发送,可一次性发送8个429格式数据给武器系统。
接收武器系统反馈数据时,上位机程序通过检测不同的标志位,可分离出8个不同的429数据。根据HS3282的2个高低16位数据与标准ARIN C429数据位对应关系,解析出相关武器系统工作信息,显示在人机界面当中。
上位机串口配置程序如下:
则InStrRev (BytReceived;'A0')返回1,InStrRev (BytReceived;'A1')返回9,每4个8位字符构成一个32位的ARINC429数据。每组数据的后2个8位数据对应标准ARINC429数据的14到29位。程序通过对标志位数据搜索,确定数据位位置后,每组后2个数据位进行位解析和数据组合,可获得武器系统的相关信息。
4 实验应用
该测控系统用于某型机载武器的外场测试;其测控内容涵盖了机弹接口、部件性能、舵机系统等多个方面。测控主要界面如图9所示。
进行测试时,首先要给武器系统和单片机依次上电,单片机加电后自动发送自检命令给武器系统。系统正常后,测控界面相关指示灯变绿。若出现异常,则相应异常部分指示灯变红。若自检结果一切正常,则可设置模拟目标给武器系统,通过系统供气,解锁,以及引信解保,完成武器系统一个战斗过程的完整测试。该测控系统也可对舵机发送相关控制指令,改变武器舵机的方位和俯仰角。舵机实时姿态信息,通过右侧的方位角和俯仰角文本控件实时显示。
本测控系统已应用于武器系统挂载前的外场测试,实践表明该系统测试结果准确、稳定可靠,实现了系统的经济化、小型化,也提高了系统的通用性和便携性。
5 结论
该测控系统采用C8051F340配合专用的接口转换芯片HS3282建立计算机与武器系统之间的通信,利用VB语言编写了上位机测控系统软件,以单片机为主控芯片,解决了RS232-与ARINC429接口的转换问题,实现了武器系统信息的实时反馈和上位机对武器系统的模拟操控。在多次外场测试中,顺利实现了武器挂载前的检测。实际应用表明该测控系统具有测试准确、稳定可靠、人机界面友好等特点,达到了设计要求。