平台罗经担负着为舰艇上导弹、作战指挥等系统提供航向、姿态及位置等信息的重要任务,一旦失效,将直接影响舰艇航行安全及其战斗效能的发挥。平台罗经结构复杂,且涉及多学科知识,维护使用人员只有经过专门培训才能胜任故障定位、排除以及装备等日常维护工作。由于受经费、生产能力等客观条件制约,以及训练内容、形式有限,实装训练不能完全满足训练需求。
为了提高使用人员的操作技能和维护保养水平,本文设计了平台罗经训练模拟器,研制成本仅约为实装的十分之一,而且可以设定多种工作方式和工作环境,提高了训练效果,具有显著的军事意义和经济价值。
1 系统组成及功能
平台罗经维修训练模拟器以“硬模拟与软模拟结合,硬模拟为主”为基本原则,设计一个操作实践平台即学员操作台和一个控制与演示平台即教员控制台。
其中学员操作台利用“硬模拟”的直观性,为受训人员发现、分析、排除故障提供一种动手上机实践的环境。学员操作台以1:1比例模拟平台罗经系统电子机柜,其外观及维修操作控制与实装完全一致,具有模拟实装操作的功能。由单片机、CH452L、8255A组成的硬件电路完成其功能。
教员控制台接收来自学员操作台的操作信息,具有设置、记录、提示、报警等功能。此外,教员控制台利用“软模拟”的适应性,充分运用现代信息技术、仿真技术、虚拟现实技术,有效地节省模拟器的研制成本,在提高通用性的同时拓展其模拟功能。该系统以VB6.0和SQL 2000为软件设计平台,采用面向对象设计思想和数据库编程技术设计。
2 硬件设计
2.1 电路总体结构
为正确模拟平台罗经系统操作控制面板,设计了基于单片机的控制与显示电路。该电路接收来自控制计算机的控制字与数据,显示相应的信息,并采集按键状态,反馈至计算机。其总体结构如图1所示。
该电路实现的功能:
1)通过MAX232,实现单片机与计算机之间的串口通信,传递控制命令与数据;
2)基于CH452L可驱动8个数码管或64个发光二极管的功能,采用3片CH452L并联,实现1片单片机驱动18个数码管与54个发光二极管,显示来自计算机的相应数据;
3)通过光耦隔离芯片TLP521-1,控制蜂鸣器的工作状态;蜂鸣器采用12 V直流电源供电,单片机控制电路为5 V直流电源供电;
4)通过8255A采集模拟器按键开关状态,传递至计算机。
2.2 电路模块化设计
系统采用模块化设计方法,主要由通信模块、数码管(指示灯)显示模块组成。
2.2.1 通信模块设计
本文中89C51单片机与PC机通过串口进行通信。89C51单片机内部有一个可编程全双工串行通信接口(BXD、PAD),具有UART的全部功能。该接口电路能同时进行数据的发送和接收,一般情况下只要通过TXD、RXD和GND 3条线连接就可以实现与PC机的串行通信。由于PC机的串行口是RS-232标准接口,其电平采用的是EIA电平,而单片机要求的是TTL电平,为了实现单片机与PC机之间能可靠地进行串行通信,还需要将单片机的串行接口的电平转换成RS-232电平标准。本设计选用MAXIM公司生产的专用芯片MAX232进行电平转换,MAX232芯片具有集成度高,内置了电压倍增电路及负电源电路,单+5 V电源工作,只需外接5个容量为0. 1~1μF的小电容,即可完成两路RS-232与TTL之间电平转换,其连接图如图2所示。
2.2.2 数码管显示模块设计
数码管显示电路包括了3片CH451芯片。CH451是一个整合了数码管显示驱动和键盘扫描控制以及u P监控的多功能外围芯片。内置RC振荡电路,可以动态驱动8位数码管或者64位LED,通过串行接口与单片机相连接。CH451向89C51单片机提供复位信号RESET和系统时钟信号SCLK。
CH451的段驱动引脚串接了电阻R1(200Ω),用以限制和均衡段驱动电流,在5 V电源电压下,串接200 Ω电阻通常对应段电流13 mA。本文不需要键盘功能,省去KEY信号线,只使用DCLK、DIN、LOAD三个信号线。
当数码管多于8个时,可以采用多个CH451进行驱动。多个CH451与单片机的连接方式有两种方案:一是并联,单片机为每个CH451提供一根独立的LOAD信号线,但DIN和DCLK信号线同时提供给所有的CH451,也就是说,各个LOAD信号线相当于各个CH451的片选线;二是串联。单片机将DCLK和LDAD信号线同时提供给所有的CH451,单片机只提供DIN给最前级的CH451,而后级CH451的DIN连接到前级CH451的DOUT引脚。由于该平台罗经显控面板有18位数码管,故本文采用3片CH451级联方式,其连接图如图3所示。
3 软件设计
系统软件使用面向对象的编程技术,采用VB6.0作为软件平台,使用SQL2000作为数据库平台,进行编程开发。本系统既可与模拟器硬件配合进行实物操作,也可单独使用进行模拟操作。进行实物训练时,通过硬件电路采集相应操作和显示相应响应,同时计算机显示器同步显示操作过程和响应。当进行模拟操作时,通过鼠标和键盘进行人机交互操作。软件采用模块块化设计,软件主要功能模块如图4所示。
3.1 通信模块设计
在VB6.O中提供了完成串行通信的控件MSComm,该控件提供了标准的事件处理函数、过程,并通过属性的方法提供了串行通信口参数的设置,比较容易地解决了串行通信的问题。
其基本的属性:
CommPort:设置并返回通信端口号,缺省为COM1;
Settings:以字符串形式设置并返回波特率,奇偶校验,数据位,停止位;
PortOpen:设置并返回通信端口的状态,也可以打开和关闭端口;
InputMode:定义Input属性获取数据的方式(0:文本方式;1:二进制方式)
Inputlen:设置或返回接收缓冲区内用;
Input:读入的个数,若取O,则Input读取整个缓冲区的内容,Input表示从接收缓冲区移走一串字符;
Inbuffersize:设置或返回接收缓冲区的大小,缺省1 024 B。
3.2 逻辑判断模块
模拟器实质是一个控制系统,程序主要是针对大量事件的响应。如鼠标、键盘的输入,模拟器按键、开关量的输入等,通过计算机屏幕、数码管、指示灯等输出设备进行显示。本系统采用数据库技术,在检测到事件响应时,首先查找数据库,确定当前系统状态,读取在不同状态和事件下相应响应或调用相应的子程序,使大量的逻辑判断通过查找数据库完成,简化了系统程序的逻辑关系。程序流程图如图5所示。
4 结束语
该平台罗经模拟器模拟平台罗经工作情况,可进行平台罗经开机、关机、装订查看、调平和导航等操作的训练,模拟器操作和相应与实际装备完全一致,具有较好的使用环境和交互界面。在保证训练效果的同时,具有价格低廉的优势。