1 引 言
在军队的训练项目中,野战的射击姿势训练是一个重要的部分。要求学员对在复杂环境中突然出现的目标,能够根据距离远近和目标大小等特点迅速作出判断,并采用正确姿势击中目标。这样的项目若进行实弹训练,则对环境要求高CONTROL ENGINEERING China版权所有,比较难以找到封闭的训练场地;进行小组配合训练时,人员危险较大;而且,需要人工统计打靶结果www.cechina.cn,不利于横纵向比较和训练效果分析。
为此,本文设计了基于红外接收管和激光发射器的激光靶模拟训练系统。在这个系统中,以靶面上安装红外光敏接收元件的光电靶代替传统的靶子,将红外激发射光器安装在步枪头部,激光发射开关安装在枪机上,扳动枪机则发射一次激光脉冲代替子弹,此激光脉冲击中光电靶时将被靶上由单片机构成的检测器检测到,单片机计算出击中的行列坐标,通过CAN现场总线发送到监控计算机,在计算机上显示打靶成绩,并对训练结果进行统计和管理,从而构成了完整的模拟射击训练系统。
2 系统功能与硬件设计
激光模拟训练系统主要由监控计算机或笔记本电脑、通讯模块和光电靶3大部分构成,其中计算机放置在训练场地起点
计算机为主控制单元,监测着100m范围内的射击情况,采用通讯总线与光电靶上的智能单元进行通讯。其中的应用程序由VB编写,因为VB作为一种可视化编程语言具有简单易学、功能强大等特点,可以在短时间内开发出易于操作、界面友好的应用程序,而且VB有专用的通讯控件,可以可靠的实现通讯功能。
通讯模块负责帮助计算机进行CAN总线的通讯。
光电靶由通讯板和检测板2大部分组成。由于实际训练中要求目标的大小和形状都有不同,就使得靶子的形状不一致,因此设计了几种标准形状的检测板,根据每个光电靶子外形的不同进行拼装,以满足训练的需要www.cechina.cn,最大的一块光电靶需要由4块形状不同的检测板组成。
检测板结构示意图如图2所示,检测板上正面每隔2cm放置一个光电二极管,若光电二极管被击中则导通,单片机检测到被击中点坐标后,通过485串行总线发送到通讯板,由通讯板负责统一将整个光电靶的击中信息和工作情况传送给通讯模块。
每块个光电靶都由多个检测板构成,为了提高系统效率,加入一块通讯板,负责整理本光电靶信息,统一与上位机进行数据交换。通讯板主要就是统计并计算本靶的打中点坐标送到上位机,接受上位机的消息后传给检测板,使得同一靶子中多块检测板同步动作;其次还有故障检测的功能。通讯板与检测板之间要求通讯即时、可靠,用485串行总线进行工作。这样的结构使单个光电靶工作相对独立CONTROL ENGINEERING China版权所有,方便以后系统节点的扩展。通讯板的结构示意图如图3所示。
3 系统的软件设计
3.1 CAN总线的通讯设计
3.1.1 CAN 总线简介
控制器局部网(CAN——Controller Area Network)是一种现场总线,它是一种有效支持分布式控制或实时控制的串行通信网络。它以半双工的方式工作,同一时间内只能有一个节点发送信息,多个节点接受信息,可以实现全分布式多机系统,提高数据在网络中传输的可靠性。在各种现场总线中,它以其结构简单、应用灵活方便而在工业控制和车辆中得到广泛应用。
CAN总线的信息存取采用广播式的存取工作方式,信息可以在任何时候由任何节点发送到空闲的总线上,每个节点的CAN总线借口必须接受总线上出现的所有信息,因此各接点都设置由一个接收寄存器,接收寄存器首先将信息接收,然后根据接收信息的标示符决定是否读取信息包中的数据,即判定是否使用这一信息。CAN总线协议的一个最大特点就是废除了传统的地址编码,代之以对通信数据块进行编码。CAN总线面向数据而不是面向节点,采用这种方法的优点是可使网络内的节点个数在理论上不受限制,假如和减少设备不影响系统的工作。因此,基于CAN总线的射击模拟训练系统可以根据实际要求增加或减少光电靶的数量。
CAN总线每帧收发数据的长度最多为8个字节,因而不存在占用总线时间过长的问题,可以保证通信的实时性CONTROL ENGINEERING China版权所有,通信速率最高可达1Mb/s(通信距离40m时),通信距离最远可达10km(传输速率为5kb/s).通信介质可以是双绞线、同轴电缆或光导纤维。
3.1.2 CAN总线通讯的实现
在本系统中,采用PHILIPS公司的SJA1000芯片,通过对SJA1000的位定时寄存器进行设置来实现不同通信波特率的要求,CA