首 页文档资料下载资料维修视频包年699元
请登录  |  免费注册
当前位置:精通维修下载 > 文档资料 > 家电技术 > 维修教程知识 > 单片机栏
AVR单片机在无线自动报靶系统中的应用
来源:本站整理  作者:佚名  2011-06-21 11:16:57



目前,在野外射击训练考核中,大部分还是通过人工报靶的方法,带有很多人为因素(如报靶人员的主观性、情绪等),影响报靶的结果,使得射手不能正确了解自己的成绩,不利于打靶水平的提高。虽然现在市面上出现了一些自动报靶产品,但这些产品的成本高、系统比较复杂,并且占用场地。因此,本文根据实际训练需要,研制出了集轻武器射击训练所需的所有功能于一体的、基于AVR单片机的一种无线自动报靶系统。该系统包括精确和非精确报靶,射击成绩的自动实时显示、统计和打印,可以满足多种武器和多种射击模式的训练需求,对目标的隐显时机、次数、间隔等均按训练大纲要求由电脑自动控制,既可同时监控多个(25个)靶位的射击情况,也可单独监控一个靶位的射击情况。
1 系统组成
 无线自动报靶系统由传感器(特制头靶、胸靶、身靶等)、数据采集、无线传输、数据处理、显示和打印机等构成。报靶传感器为特制的靶子,其两面各有一层导电橡胶(或其他导电软材料),反面导电橡胶接地线,正面按胸环靶样式用绝缘材料分隔成不同环位和方位区域,不同区域分别引出信号线。当子弹穿越靶子,射击目标的报靶可以精确到5~10环(以胸环靶为例),弹着点的显示可以精确到圆周的1/8,即将每一环分为8个区域,报靶信息即为射击的环数和所处的区域。图1为纸上对环和区域的划分情况。
当子弹穿过目标时,在瞬间会连通其中的一个环和一个区域,完成数据采集,单片机由此确定报靶信息,编码后由收发模块调制发出,完成射击成绩的报靶。子弹击中目标的情况如图2所示。

2 单片机控制电路设计
 在本系统中,单片机采用Atmel公司的AVR单片机Atmega32。在如图3所示的单片机控制电路图中,PB端口和PC端口用于检测靶的环和区的信号,当有子弹穿过靶时,会将连接在PB和PC端口对应的环和区引脚导通,通过读取PB和PC端口的引脚电平状态,即可分析出子弹击中了靶中哪个环和区。

 图3中,PA0引脚的ADC用于将采样电机过载电流信号传送给MCU,PD4~PD7用于驱动全桥电路的4个臂端,以保证电机正常运转。K1、K2按键的功能是手动启动电机将靶拉起或放倒。PD0、PD1引脚是串行通信接口的RXD和TXD,这两个引脚与无线发射/接收模块的TXD和RXD相连接,当ATmega32单片机检测到子弹击中靶子时,将计算出来的环和区的信号通过RXD和TXD引脚发射出去,传送到计算机软件系统。
 由于子弹的速度很快(达到1 000 m/s),靶的内部铝层厚度为5 mm,使穿透铝层最小时间只需5 μs。而在这5 μs时间之内,Atmega32单片机必须通过PB和PC端口完成实时的采样,并同时计算出子弹是穿透哪个环和区。因此,必须为Atmega32配置高速的时钟源。由于Atmega32单片机频率最高可以达到25 MHz,但同时还要满足串行通信的波特率要求,因此,Atmega32采用18.432 MHz的时钟源,为整个系统高速运算提供保证。
在实际测试中,Atmega32单片机从检测到子弹开始发射到子弹穿透铝层,并确定子弹穿透的是哪个环和区,不到2 μs就可以完成采样。
3 单片机软件设计
 单片机软件主要功能:(1)实时检测是否有子弹穿透训练靶,若检测到有子弹穿过,程序获取靶被击中的环和区,并将该靶的环和区信息通过串口发送出去。由于这部分程序对时间要求极为苛刻,因此将这部分内容由INT0外部中断服务程序来完成。(2)单片机串口实时监测是否有控制中心发来的数据帧,若有,则读取数据帧内容,并分析是否为合法数据帧,若是非法帧,则丢弃该帧;若是合法数据帧,则分析该帧的内容,并置接收帧成功标志。由于控制中心可能随时会发送数据帧过来,这部分内容交给串口的中断服务程序来完成。(3)主程序中,除了完成相关初始化内容之外,主要判断按键K1和K2是否按下,若有则执行电机驱动的拉起和放倒动作;同时,还检测接收到的数据帧标志是否成功,若成功,则根据数据帧的命令字来分析夜间指示灯的开或关闭、启动电机作拉起或放倒动作等。

关键词:

文章评论评论内容只代表网友观点,与本站立场无关!

   评论摘要(共 0 条,得分 0 分,平均 0 分)
Copyright © 2007-2017 down.gzweix.Com. All Rights Reserved .
页面执行时间:80,871.09000 毫秒