基于单片机控制的自动报靶系统设计1 引言1.1 课题研究背景及发展方向在军队射击训练和各种体育射击比赛中,示靶、检靶、报靶和成绩的记录统计,是训练和比赛过程中的主要保障工作。
目前,这些保障工作大部分还是依靠人工来完成的。
人工报靶有着工作量大、效率低、安全性差的特点。
想要提高射击比赛或训练中报靶的效率,最主要是要解决自动报靶的问题[1]。
因此,设计制作并采用安全有效的自动报靶系统具有重要的现实意义也是迫切的现实需求。
当今较为先进的报靶系统包括光电坐标靶、图像处理坐标靶、CCD线阵靶、声电坐标靶、光纤编码坐标靶刚、双电极短路坐标靶等[2][3]。
但以上这些方法也存在着各自的不足:有的技术过于复杂、有的不能用于野外实弹射击报靶、有的成本过高、有的着弹实报率较低、不适用于连发射击训练等缺点。
目前应用较多的还有红外光电定位测试、基于图像处理模板匹配法、基于声电坐标定位法、基于光纤编码定位法、广义Hough变换法(基于图像处理)、面阵CCD精度靶等报靶系统,都是较有效的测试方法[3]。
近年来发展起来一种新型智能自动报靶系统,与传统的实弹射击准备工序繁琐且隐藏着极大的安全隐患比较,利用这种报靶系统开展的训练将会更安全高效。
这一智能自动报靶系统由主机、从机、靶面传感器三部分构成。
具有可对射击过程全程监控,并作数据处理、自动统计以及查询成绩等功能,还可对射手存在的问题作出分析,极大地提高了训练效率[4]。
可以预见,这种新型智能自动报靶系统将会在不远的将来取代传统自动报靶系统并向更加智能化、自动化、数字化方向发展,它将可能成为未来研制报靶系统的新趋势。
1.2 基于激光坐标定位法实现的自动报靶系统简介激光坐标定位法在一些资料中也称为光电坐标定位法,光电靶是由X、Y两个方向上的激光网络构成,如图l 所示。
图1.1 光电靶将普通靶纸置于激光网络之前并与之同轴,当子弹打破靶纸,并穿越激光网络时,会阻断相应位置处X和Y两个方向上的各一路激光,从而使接收装置(光敏管)开关状态发生变化[5][6]。
通过对光敏管开关状态进行编码,便可将子弹穿过时对应的光敏管状态进行记录,利用单片机对该信号进行处理,便可得到弹着点的坐标和环数。
激光坐标定位法的主要优点是在实际应用过程中不依赖于靶纸更不依赖于环境,可以做到快速、安全、高效、准确地自动报靶[7][8]。
2 电子电路的虚拟设计及仿真2.1 电路虚拟设计及仿真的意义当今电子信息技术的发展日新月异,电脑CPU主频越来越高,物理内存和硬盘容量也越来越大,相应的个人电脑的功能也越来越强大了,处理信息的能力也越来越强,但价格却随之越来越便宜,功能强大的个人PC机已经渐渐普及,同时得益于国际上一些知名的电子设计公司推出的各种功能不断完善的电子设计软件,现今的大部分电子电路设计都可以先在个人电脑上进行系统的总体设计、验证,得到相对正确的仿真设计结果后,再进行具体的硬件开发和制作。
通过电脑虚拟设计仿真后再进行具体实物的制作,能大大降低电子设计的开发成本,缩短研发周期,使研发人员工作量大大减少,把更多的精力投入到电子电路的合理性设计中去,而不用花费大量时间搭建实验所需的物理工作环境,进而提高研发效率和成功率。
2.2 系统虚拟设计所用软件简介此系统是基于单片机的自动报靶系统设计,首先运用了当今十分流行的单片机仿真软件Proteus,在电脑上搭建电子电路,然后运用到了Keil软件,进行程序设计。
Proteus和Keil软件可以进行联合调试,功能比较强大,对付一般的电子电路设计仿真已经绰绰有余。
最后还运用了Altium Designer软件对整个电路的原理图进行了绘制,并同时制作了PCB原理图,使整个设计更加完整。
在下文介绍中将要用到的电路图中,大部分为Altium Designer软件所绘制。
2.2.1 Proteus软件简介Proteus软件是英国Labcenter electronics公司出版的EDA工具软件。
它不仅具有其它EDA工具软件的仿真功能,还能仿真单片机及外围器件。
它是目前最好的仿真单片机及外围器件的工具。
虽然目前国内推广刚起步,但已受到单片机爱好者、从事单片机教学的教师、致力于单片机开发应用的科技工作者的青睐。
Proteus是世界上著名的EDA工具(仿真软件),从原理图布图、代码调试到单片机与外围电路协同仿真,一键切换到PCB设计,真正实现了从概念到产品的完整设计。
是目前世界上唯一将电路仿真软件、PCB设计软件和虚拟模型仿真软件三合一的设计平台,其处理器模型支持8051、HC11、PIC10/12/16/18/24/30/DsPIC33、A VR、ARM、8086和MSP430等,2010年即将增加Cortex和DSP系列处理器,并持续增加其他系列处理器模型。
在编译方面,它也支持IAR、Keil和MPLAB等多种编译器。
一、其功能特点Proteus软件具有其它EDA工具软件(例:multisim)的功能。
这些功能是:(1)原理布图设计。
(2)PCB自动或人工布线。
(3)SPICE电路仿真。
二、革命性的特点(1)互动的电路仿真用户甚至可以实时采用诸如RAM,ROM,键盘,马达,LED,LCD,AD/DA,部分SPI器件,部分IIC器件。
(2)仿真处理器及其外围电路可以仿真51系列、A VR、PIC、ARM、等常用主流单片机。
还可以直接在基于原理图的虚拟原型上编程,再配合显示及输出,能看到运行后输入输出的效果。
配合系统配置的虚拟逻辑分析仪、示波器等,Proteus建立了完备的电子设计开发环境。
三、具有4大功能模块(1)智能原理图设计(ISIS)丰富的器件库:超过27000种元器件,可方便地创建新元件;智能的器件搜索:通过模糊搜索可以快速定位所需要的器件;智能化的连线功能:自动连线功能使连接导线简单快捷,大大缩短绘图时间;支持总线结构:使用总线器件和总线布线使电路设计简明清晰;可输出高质量图纸:通过个性化设置,可以生成印刷质量的BMP图纸,可以方便地供WORD、POWERPOINT等多种文档使用。
(2)完善的电路仿真功能(Prospice)①ProSPICE混合仿真:基于工业标准SPICE3F5,实现数字/模拟电路的混合仿真;②超过27000个仿真器件:可以通过内部原型或使用厂家的SPICE文件自行设计仿真器件,Labcenter也在不断地发布新的仿真器件,还可导入第三方发布的仿真器件;③多样的激励源:包括直流、正弦、脉冲、分段线性脉冲、音频(使用wav 文件)、指数信号、单频FM、数字时钟和码流,还支持文件形式的信号输入;④丰富的虚拟仪器:13种虚拟仪器,面板操作逼真,如示波器、逻辑分析仪、信号发生器、直流电压/电流表、交流电压/电流表、数字图案发生器、频率计/计数器、逻辑探头、虚拟终端、SPI调试器、I2C调试器等;⑤生动的仿真显示:用色点显示引脚的数字电平,导线以不同颜色表示其对地电压大小,结合动态器件(如电机、显示器件、按钮)的使用可以使仿真更加直观、生动;⑥高级图形仿真功能(ASF):基于图标的分析可以精确分析电路的多项指标,包括工作点、瞬态特性、频率特性、传输特性、噪声、失真、傅立叶频谱分析等,还可以进行一致性分析;(3)独特的单片机协同仿真功能(VSM)①支持主流的CPU类型:如ARM7、8051/52、A VR、PIC10/12、PIC16、PIC18、PIC24、dsPIC33、HC11、BasicStamp、8086、MSP430等,CPU类型随着版本升级还在继续增加,如即将支持CORTEX、DSP处理器;②支持通用外设模型:如字符LCD模块、图形LCD模块、LED点阵、LED 七段显示模块、键盘/按键、直流/步进/伺服电机、RS232虚拟终端、电子温度计等等,其COMPIM(COM口物理接口模型)还可以使仿真电路通过PC机串口和外部电路实现双向异步串行通信;③实时仿真:支持UART/USART/EUSARTS仿真、中断仿真、SPI/I2C仿真、MSSP仿真、PSP仿真、RTC仿真、ADC仿真、CCP/ECCP仿真;④编译及调试:支持单片机汇编语言的编辑/编译/源码级仿真,内带8051、A VR、PIC的汇编编译器,也可以与第三方集成编译环境(如IAR、Keil和Hitech)结合,进行高级语言的源码级仿真和调试;(4)实用的PCB设计平台①原理图到PCB的快速通道:原理图设计完成后,一键便可进入ARES 的PCB设计环境,实现从概念到产品的完整设计;②先进的自动布局/布线功能:支持器件的自动/人工布局;支持无网格自动布线或人工布线;支持引脚交换/门交换功能使PCB设计更为合理;③完整的PCB设计功能:最多可设计16个铜箔层,2个丝印层,4个机械层(含板边),灵活的布线策略供用户设置,自动设计规则检查,3D 可视化预览;④多种输出格式的支持:可以输出多种格式文件,包括Gerber文件的导入或导出,便利与其它PCB设计工具的互转(如protel)和PCB板的设计和加工。
四、Proteus提供了丰富的资源(1)Proteus可提供的仿真元器件资源:仿真数字和模拟、交流和直流等数千种元器件,有30多个元件库。
(2)Proteus可提供的仿真仪表资源:示波器、逻辑分析仪、虚拟终端、SPI调试器、I2C调试器、信号发生器、模式发生器、交直流电压表、交直流电流表。
理论上同一种仪器可以在一个电路中随意的调用。
(3)除了现实存在的仪器外,Proteus还提供了一个图形显示功能,可以将线路上变化的信号,以图形的方式实时地显示出来,其作用与示波器相似,但功能更多。
这些虚拟仪器仪表具有理想的参数指标,例如极高的输入阻抗、极低的输出阻抗。
这些都尽可能减少了仪器对测量结果的影响。
(4)Proteus可提供的调试手段Proteus提供了比较丰富的测试信号用于电路的测试。
这些测试信号包括模拟信号和数字信号。
五、电路功能仿真在Proteus绘制好原理图后,调入已编译好的目标代码文件:*.HEX,可以在Proteus的原理图中看到模拟的实物运行状态和过程。
PROTEUS 是单片机课堂教学的先进助手。
Proteus不仅可将许多单片机实例功能形象化,也可将许多单片机实例运行过程形象化。
前者可在相当程度上得到实物演示实验的效果,后者则是实物演示实验难以达到的效果。
它的元器件、连接线路等却和传统的单片机实验硬件高度对应。
这在相当程度上替代了传统的单片机实验教学的功能,例:元器件选择、电路连接、电路检测、电路修改、软件调试、运行结果等。
课程设计、毕业设计是学生走向就业的重要实践环节。
由于Proteus提供了实验室无法相比的大量的元器件库,提供了修改电路设计的灵活性、提供了实验室在数量、质量上难以相比的虚拟仪器、仪表,因而也提供了培养学生实践精神、创造精神的平台。