激光枪自动射击装置(陕西赛区一等奖)

更新时间:2024-01-18 16:36:01 阅读量: 教育文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

激光枪自动射击装置

薛晓忠 李浩

(渭南师范学院物理与电气工程学院电气工程系电子信息科学与技术)

摘 要:利用MSP430F149单片机、OV6220数字摄像头及步进电机等器件设计了一个激光枪自动射击装置,由激光枪、瞄准机构、胸环靶及弹着点检测电路组成。该系统通过单片机键盘控制激光枪瞄准、击发;利用摄像头拍摄靶面,对图像数据处理确定环数和靶位信息,在液晶显示器上显示出来,同时在显示器上显示胸环靶的相应图形,并闪烁显示弹着点;用一个单片机控制两台步进电机的旋转实现两维控制来进行瞄准,射击,用另外一个单片机控制OV6620及液晶显示器实时显示环数、定位信息和胸环靶的相应图形、弹着点进行闪烁显示等。通过实际测试,本设计可实现自动报靶、自动瞄准和射击等功能,误差在允许的范围内,基本达到预期的效果。

关键词:MSP430F149、OV6620摄像头、步进电机、激光枪、靶点识别

一、系统方案论证与比较

1 系统功能简介

此次作品采用两片TI公司的超低功耗芯片MSP430F149分别作为胸环靶数据采集处理的主控芯片和步进电机的从控芯片。主控制芯片通过软件编程对来自数字摄像头的数据进行处理,识别环数和位置信息,通过检测电路在12864上显示弹着点的环数和方位信息,同时在液晶上显示胸环靶的相应图形,并闪烁显示弹着点;在激光束变化的过程当中液晶显示器会实时显示环数、定位信息和胸环靶的相应图形,及其弹着点的闪烁。从控芯片通过按键设定相应的环数, 并在数码管上进行显示,按键控制激光笔的瞄准、击发;在环数改变的情况下,数码管会对环数实时显示。系统框图如图1所示。

12864液晶显示环数、方位及绘制胸环靶MSP430F149单片机用户按键设置电机的转动方位OV6220摄像头FIFOAL4228Motor –1水平方向MSP430F149电机控制部分胸环靶激光笔Motor—2垂直方向 第 1 页

图1 系统的控制框图

2 硬件设计

2.1 MSP430F149单片机模块

MSP430F149单片机主要实现对图像数据的采集、分析、处理,LCD显示,数码管的显示、步进电机的控制、激光笔的控制、按键的控制等功能。

2.2 数字摄像头模块

图2 摄像头、存储器和单片机的连接图

OV6620图像采集模块:OV6620采用PAL制式(国内的普通电视机制式),每秒25帧,分辨率为356*292,内部集成了AD转换模块和视频分离模块,省去了1881视频分离芯片OV6620的优点:供电电压低,简化电路;内部集成AD和视频分离模块,简化电路,并且使得采集程序简单,采集质量高;视频信号转换在内部进行,减轻单片机负担。。

OV6620时序依靠垂直同步信号 VSYN 为两个正脉冲之间扫描一帧的定时,即完整的一帧图像 在两个正脉冲之间;水平同步信号 HREF 扫描该帧图像中各行像素的定时,即高电平时为扫描一行像素的有效时间;像素同步信号 PCLK 为读取有效像素值提供同步信号,高电平时输出有效图像数据,若当前图像窗口大小为 352×288,则在 VSYNC 两个正脉冲之间有 288 个 HREF 的正脉冲,即 288行;在每个 HREF 正 脉冲期间有 352 个 PCLK 正脉冲,即每行 352 个像素,这就是 VSYNC、HREF、PCLK 三个同步信号之间的关系。

图像数据自动存储为了将 OV6620 输出的图像信号自动地存入 FIFO,只需要通过逻辑门就能产生符合 FIFO 要求的写时序。

图像数据读取方法是图像数据根据硬件逻辑自动存储在 FIFO 中,MSP430F149只需要对FIFO进行初始化后,就可以通过IO驱动 FIFO WCK 输出数据,主动读取。

OV6620 图像格式: 人类的眼睛对低频信号比对高频信号具有更高的敏感度。事实上,人类

的眼睛对明视度的改变也比对色彩的改变要敏感的多。所以我们采用YUV 彩色电视信号输出时,其中Y信号表示为亮度,UV 信号为色差信号。对于人眼而言,Y 分量比 UV 分量重要,根据人眼的这一特征,在不使用任何复杂算法的前提下,可以抛弃了抛弃U和V分量以达到压缩的目的,这就是部分取样 。在16bit模式YUV格式下,Y管脚源源不断的输出灰度值,这就为我们处理数据但不丢失重要数据提供了比较可行的算法。

我们利用了SCCB 总线协议对图像传感器芯片进行控制,由于OV6620摄像头每帧数据

第 2 页

的高速输出,为了单片机较好的接收数据,采用AL422B作为高速缓存,以便得到可用的数据进行分析处理。 2.3 步进电机模块

步进电机采用28BYJ48,驱动电路使用ULN2003进行驱动,系统供电电压为5V,由于其很小的步进角度,可以保证每个步进的精确控制。

二、理论分析与计算

激光枪自动射击装置原理分析及计算

此系统利用两块MSP40F149单片机来作为主控制芯片,一块作为数据采集、分析、处理的设备;另外一块作为两台步进电机的控制设备。利用I/O口电平控制激光枪的亮灭,并可在胸环靶上相应的位置上显示出亮斑。可利用按键设置任意的环数,控制电机在预定的范围内精确打靶。

步进电机的选择和确定:

图3 步进电机步进转动角计算示意图

如上图示,按照误差的精度要求,我们可以将r取不同值时,光点在靶面上沿径向移动1cm,步进电机的转动角度按下式计算出来

⊿θ = atan((r+1)/300)-atan(r/300)

距靶心的值r 沿径向光斑移动1cm(单位:cm) 电机转动的角度 0 0.191082095 1 0.191077849 2 0.191069357 3 0.191056621 4 0.191039642 5 0.191018423 6 0.190992965 7 0.190963274 8 0.190929352 9 0.190891205 10 0.190848837 11 0.190802254 12 0.190751461 距靶心的值r 沿径向光斑移动1cm(单位:cm) 电机转动的角度 16 0.190506347 17 0.190434622 18 0.190358737 19 0.190278702 20 0.190194527 21 0.190106223 22 0.190013803 23 0.189917277 24 0.189816660 25 0.189711963 26 0.189603201 27 0.189490387 28 0.189373537 第 3 页

13 14 15 取平均值为电机转动步进角 0.190696467 0.190637278 0.190573902 0.190407014 29 30 0.189252666 0.189127789 由于整个胸环靶的直径范围为60cm,激光头距离靶心的直线距离为300cm,所以最终选择步进角可调的28BYJ48电机作为控制装置,其步进角度可以达到0.09°,理论上电机步进一次可以在靶面上径向移动0.47cm,达到误差要求。

定位算法的确定:由弹着点检测到的坐标信息计算该点与坐标原点的连线和垂直方向y轴的夹角β的正切值与坐标的正负来确定其位置。如图4所示。

表1 位置分界线的tan值表 β tan(β) 0° 0 22.5° 0.414214 45° 1 67.5° 2.414213 90° ∞

图4 靶面定位信息标准图

弹着点环数检测算法,以靶心的(0,0)坐标作为实际基准点,各环之间的环间距为5cm,单片机通过OV6620摄像头数字图像分析可以获得光点的像素坐标(x,y),此时解析的(x,y)坐标通过坐标校正,就可以将其对应到实际的靶环坐标中,然后进行直角坐标运算,就可以得到弹着点的实际环数。

弹着点方位检测算法,以靶心的(0,0)坐标作为基准点,以坐标校正后的(x,y)坐标作为运算点,通过x>0,y>0;x>0,y<0;x<0,y>0;x<0,y<0;及tan(x/y)的值,就可以获得此时弹着点的方位坐标信息。

通过摄像头识别激光枪投射在胸环靶上的弹着点光斑,并显示弹着点的环数与方位信息。其中环数包括:10、9、8、7、6、5、脱靶;方位信息是指弹着点与10环区域的相对位置,包括:中心、正上、正下、正左、正右、左上、左下、右上、右下。

第 4 页

三、电路与程序设计

电路设计的接线图见附录图所示 程序设计流程图如图5,6所示。

开始开始电机及驱动初始化按键初始化OV6620初始化数码管显示初始化LCD初始化按键Y/N靶点数据采集Motor1水平转动Motor2垂直转动激光笔胸环靶图形绘制环数及方位显示胸环靶投影 图5 主控制器流程图 图6 从控制器流程图

四、测试及结果分析

按照要求进行测试:

(1)测试光斑直径,从距靶面300cm处发射在靶面上测量,测出光斑直径在4mm左右,基本满足要求。

(2)通过按键控制步进电机带动激光枪旋转,使光斑进行上下左右移动,在靶面测量移动的距离和花费的时间,测量数据如下:

表2 按键控制光斑移动测量数据记录表 方向 步进移动的距离(cm) 移动30cm花费时间(秒) 向左 2.2 3.50 向左 2.4 3.56 向右 2.3 3.52 向右 2.2 3.51 第 5 页

向上 2.1 4.25 向上 2.0 4.19 向下 2.1 4.09 向下 2.2 4.18 测试数据表明有一定的误差,但都满足设计标准的要求。误差产生的主要原因在于两个电机的负载力矩不同和机械产生摩擦等。

(3)摄像头部分测试:通过实际的图像采集,获得灰度标准,作为单片机识别光斑的阈值标准。实际采集的灰度图像如图7,图8为经MATLAB二值化处理后的图像。

图7 实际采集的灰度图像 图8经MATLAB二值化处理后的图像

通过图8可以快速确定出光斑的位置信息,然后在图7的灰度值中快速找出光斑对应位置的灰度值范围:169~186。

(4)显示测试:通过程序的运行调试,能够在液晶上显示胸环靶的相应图形,并闪烁显示弹着点;实时显示环数和定位信息。也能够在数码管上正确的显示设置的环数。

(5)整体调试:基本能完成预期的要求。还有待完善。

五、总结

在设计过程中,通过查阅大量有关资料,与同学交流和自学,并向老师请教等方式,使自己学到了不少知识,也经历了不少艰辛,但收获同样巨大。大大提高了动手的能力,充分体会到了在创造过程中探索的艰难和成功时的喜悦。虽然这个设计做的也不太好,但是在设计过程中所学到的东西是最大收获和财富,设计终于完成,不仅是对前面所学知识的一种检验,而且也是对自己能力的一种提高。通过这次毕业设计使我明白了自己原来知识还比较欠缺。自己要学的东西还太多,以前老是觉得自己什么都会,什么都懂,有点眼高手低。明白学习是一个长期积累的过程,在以后努力提高自己知识和综合素质。若有时间会将这个制作不断完善。 参考文献:

[1] MSP430F149中文资料

[2] OV7620产品的规格-Rev. 1.3

[3] 柴婷婷, 何小刚, 闫瑞杰. 无线激光打靶系统设计[J]. 太原理工大学学报 , 2006,(S2)

[4] 刘卫国 MATLAB程序设计与应用(第二版)[M].高等教育出版社2006年7月.

第 6 页

[5] 黄争 德州仪器高性能单片机和模拟器件在高校中的应用和选型指南[M]. 德州仪器半导体技术(上海)有限公司大学计划部 2012年6月.

[7] OmniVision图像传感器的SCCB总线协议在DSP中的实现.pdf [8] AL422 Data Sheets(Revision V1.1).pdf [9] sccb协议.pdf

第 7 页

附录:

附图1 OV6620及FIFO连线图

附图2 液晶连线图

第 8 页

附图3 MSP430F149最小系统图

附图4 按键电路 附图5 数码管电路

第 9 页

本文来源:https://www.bwwdw.com/article/it5o.html

Top