0 引言
随着模拟技术的不断发展,各类模拟器应用于军用和民用许多领域,在人才培养、样机研制等方面起到了重要作用,发挥出了重大的经济效益和社会效益。在实践中,由于经常会为同一系列的不同型号装备、设备研制多套模拟器,从而导致造价高、存放空间利用率低等问题。研制适用于特定领域的通用模拟器是解决这些问题的很好思路。 从装备发展、模拟训练、人才培养等方面分析了通用模拟器研制的必要性,并进行了可行性分析。设计了通用搜索雷达模拟器和卫星测控通用模拟器。
本文作者在进行某型舰艇电子装备通用模拟器设计研制过程中发现,同一系列不同型号装备的整体结构和外观布局大体相同,主要区别在于局部操作元器件不同。为了实现模拟器的通用化,本文设计并实现了一种基于步进电机自动控制的多功能旋转式操作面板。
1 旋转式操作面板硬件设计
1.1 组成结构
旋转式操作面板由元器件三面体、控制板、步进电机组件、旋转体主轴、上位机组成。由控制板向步进电机组件发送控制指令,步进电机组件通过旋转体主轴带动元器件三面体实现操作面板的旋转。工作流程如下:
(1)上位机软件下发旋转切换指令给控制板,使其发送步进脉冲信号和方向电平信号给步进电机组件。
(2)步进电机组件收到信号后,旋转元器件三面体至合适位置,结束旋转操作。
(3)用户操作元器件三面体上的元件,操作结果上传至上位机软件,上位机软件进行相应处理。
1.2 元器件三面体设计
在某型舰艇电子装备通用模拟器中,元器件三面体能够实现三种不同类型的界面布局结构(见图1)。元器件三面体的三个面分别记为A 面、B 面、C 面。A 面元件为五个按键;B 面元件分别为两个指示灯、一个蜂鸣器、一个按键和三个旋钮;C面元件为四个旋钮。
将元器件三面体上的元件信号通过数据线引至控制板,并实现与上位机的通信。为避免旋转过程中数据线出现缠绕,选取某个操作面为基准操作面,其他两个面采用往复双向旋转复位方式运行工作。
1.3 控制板设计
旋转式面板控制板由主控制器、电源电路、CAN 通信电路、驱动电机转动电路、元器件通信电路组成(见图2)。主控制器接收上位机指令,转动元器件三面体至合适的平面位置。电源电路实现将12V 转换为5V,再将5V 电压转换为3.3V 供给给主控制器。CAN 通信电路主要由CAN 总线接口及CAN 收发器组成,连接上位机并接收CAN 通信指令。驱动电机转动电路主要完成发送步进脉冲信号和方向电平信号至电机,驱动电机转动,使其带动元器件三面体转动。元器件通信电路实现元器件与上位机通信。
2 通信协议设计
为实现上位机软件与控制板软件的通信,需要设计通信协议格式。通信指令分为两类:
(1)上位机向控制板发送元器件三面体切换指令。
(2)控制板向上位机发送操作面板的元器件状态指令。
通信协议格式见表1.
3 软件设计
3.1 下位机软件设计
下位机软件主要实现接收上位机指令驱动电机转动元器件三面体、扫描元器件操作状态等功能。
3.1.1 接收指令切换旋转面板
判断是否接收到指令,当接收到指令时转Step2,否则继续等待;设置步进脉冲信号和方向电平信号;将面板切换至合适的位置。
3.1.2 扫描元器件状态
启动定时器,定时扫描元器件状态;扫描元器件状态是否发生变化,当发生变化时发送给上位机程序,否则继续定时扫描元器件状态。
3.2 上位机软件设计
上位机软件采用面向对象技术,设计的重点是上位机通信类。CAN 通信接口采用千目电子的USB-CAN 转换器,该产品附带支持二次开发的动态库。
利用VC++ 实现上位机通信类的编程,该类的功能主要是下发旋转式操作面板切换方案、接收元器件状态。该类主要包括设备初始化方法(InitCan)、数据发送方法(SendData)、数据接收方法(RecvData)。
InitCan 方法
InitCan 方法完成连接并打开CAN 设备,输入参数是CAN设备号、波特率,输出值为布尔类型,标识CAN 设备是否打开。
处理过程:
加载收发指令动态库;
调用动态库中的Init_can 函数连接并打开CAN 设备。
SendData 方法
SendData 完成下发指令功能,输入参数是显示指令,输出值为布尔类型,标识发送是否成功。处理过程:
设置要发送的指令;
调用动态库中的Can_send 函数发送指令。
RecvData 方法
RecvData 完成接收指令和解析指令的功能。处理过程:
调用动态库中的Can_receive 函数接收指令;
根据通信协议进行解析,符合协议则处理,否则不处理。
4 结束语
本文设计并实现了一种基于步进电机自动控制的多功能旋转式操作面板,并应用于某型舰艇电子装备通用模拟器的研制,较好地解决了同一系列不同型号装备操作面板的模拟问题。该设计方案同样适用于其他多功能机电设备的设计,可以为解决操作面板可用面积不足时的元器件布设问题提供很好的借鉴作用。