打靶系统程序清单
程序清单计算机0206班陈召学号:012002013805 试验台:87、88 整个系统包含两大块程序:下行机的client.cpp和主控机的host.cpp一、下行机程序:client.cpp1、程序功能:负责读取靶数,并进行相关的显示,同时负责与主控机进行通信;2、开发环境:TC2.0;3、开发人:陈召,左明,许诺,刘树伟4、开发日期:2005年9月7日源代码:#include <conio.h>#include <stdio.h>#include <stdlib.h>#include <math.h>#include <dos.h>#include <graphics.h>#define data51 0x308 /*8251数据口*/#define ctrl51 0x309 /*8251命令/状态口*/#define dataa55 0x300 /*8255数据A口*/#define datab55 0x301 /*8255数据B口*/#define datac55 0x302 /*8255数据C口*/#define ctrl55 0x303 /*8255命令口*/void int51();void int55();int send(int,int);void main(){int temp,temp2,total,count=0;int data,x0,y0,c=0;double ab,r,x,y;float e;int graphdriver=VGA,graphmode=VGAHI;int flag=0x00;int51();int55();/*struct fillsettingstype save;*/initgraph(&graphdriver,&graphmode," ");/*getfillsettings(&save);*/ /*得到初始化时填充模式*/setbkcolor(EGA_BLUE);cleardevice();setcolor(12);circle(320,220,30); /*在显示器上显示靶图*/circle(320,220,45);circle(320,220,60);circle(320,220,75);circle(320,220,90);circle(320,220,105);circle(320,220,120);circle(320,220,135);circle(320,220,150);circle(320,220,165);while(1){dotemp=inportb(datab55);while(flag==(temp&0x80)); /*当从8255b口读出的数据最高位改变时,跳出循环*/if(flag==0) { /*将标志flag改变*/flag=0x80;}else flag=0x00;data=temp&0x7f; /*将数据的最高位置0*/if(data>10) data=0;count++; /**/c=c+19;e=c%100;e=e/100;if(data==0){;}else{r=(10-data)*15+22;x=r*e;ab=r*r-x*x;y=sqrt(ab);if(e>0.5){ /*随机决定点x0坐标的区间*/x0=320+x;}else x0=320-x;if(e>0.5){ /*随机决定点y0坐标的区间*/y0=220+y;}else y0=220-y;setcolor(15);circle(x0,y0,6);}/*转入发送程序*/total=send(data,count);if(count==10){/*getch();*/closegraph();count=0;flag=0x00;printf("\n**********************************************************");printf("\n ***************Welcome to our shooting game!********************");printf("\n**********************************************************");printf("\n************************************************************* ************");printf("\nyou have shot %d",total);printf("\npress anykey to restart");printf("\npress 2 to exit\n");scanf("%d",&temp2);if(temp2==2){count=send(0xff,0);break;}clrscr();/*struct fillsettingstype save;*/initgraph(&graphdriver,&graphmode," ");/*getfillsettings(&save);*/ /*得到初始化时填充模式*/setbkcolor(EGA_BLUE);cleardevice();setcolor(EGA_GREEN);circle(320,220,30); /*重新在显示器上显示靶图*/setcolor(12);circle(320,220,45);circle(320,220,60);circle(320,220,75);circle(320,220,90);circle(320,220,105);circle(320,220,120);circle(320,220,135);circle(320,220,150);circle(320,220,165);}}}int send(int data,int count){ /*串行通信程序*/int status,rletter;dostatus=inportb(ctrl51); /*获取8251 TXRDY 状态*/while((status&0x01)==0); /*已准备好,则将数据发送出去*/outportb(data51,data);if(count==10){dostatus=inportb(ctrl51);/*已准备好,即有数据传送过来,则接收1个字符*/while((status&0x02)==0);rletter=inportb(data51);return rletter;}else return 0;}void int51() /*8251的初始化程序*/{outportb(ctrl51,0x00);delay(100);outportb(ctrl51,0x40);/*8251复位*/delay(100);outportb(ctrl51,0x4e);/*8251A方式命令*/delay(100);outportb(ctrl51,0x27);/*8251A工作命令*/}void int55(){ /*8255的初始化程序*/outportb(ctrl55,0x92);}二、主控机程序:host.cpp1、程序功能:从下行机获取数据并储存,当达到一定的数目时计算总成绩返回到下行机;还包括其他一些显示功能;2、开发环境:TC2.0;3、开发人:左明,陈召,许诺,刘树伟4、开发日期:2005年9月7日源程序:#include<stdio.h>#include<conio.h>#include<dos.h>#define data51 0x308 /*8251数据口*/#define ctrl51 0x309 /*8251命令/状态口*/#define dataa55 0x300 /*8255数据A口*/#define datab55 0x301 /*8255数据B口*/#define datac55 0x302 /*8255数据C口*/#define ctrl55 0x303 /*8255命令口*/#define COUNT 10 /*每局打靶的次数*/void int51()/*初始化函数*/{outportb(ctrl51,0x00);/*空操作*/delay(100);outportb(ctrl51,0x40);/*8251复位*/delay(100);outportb(ctrl51,0x4e);/*8251A方式命令*/delay(100);outportb(ctrl51,0x27);/*8251A工作命令*/}void main(void){int a[COUNT];int j;int b=0;int e;int i=0;int status;int temp;int51();printf(" **************************************\n\r ");printf(" * THE SHOOTING SYSTEM *\n\r ");printf(" * ver1.0 cz xn zm lsw *\n\r ");printf(" ********************************\n\r ");for(;;)/*总循环*/{if(i==COUNT){ /*如果一局打完输出此局各次的成绩和总成绩*/for(j=0;j<COUNT;j++){b+=a[j];}printf("\n***************************************");printf("\nYour total score is :%d",b);i=0;dostatus=inportb(ctrl51);/*获取8251 TXRDY 状态*/while((status&0x01)==0);/*已准备好,则将键入的字符发送出去*/outportb(0x308,b);b=0;for(j=0;j<COUNT;j++) /*将各元素的值清零*/a[j]=0;}dostatus=inportb(0x309);/*检测8251状态,若有数据传送过来,则接收1个字符*/while((status&0x02)==0);a[i++]=inportb(0x308);printf("\nThe score of your %dth %d",i,a[i-1]);if(a[i-1]==255){clrscr();printf("\nIf you want to EXIT:press Esc!\nCONTINUE:press any key!");if((e=getche())==0x1b)/*是ESC?是,则退出,并返回DOS*/break;}}}。
电脑打靶作业指引
3.4首孔确认准确后将待打孔板孔位放入摄像头下进行连续钻孔作业。
四、钻咀更换操作:
4.1按(8)键或鼠标选择(更换钻刀)功能;
4.2将盖板镙丝旋入盖板孔,取出盖板;
4.3用专用扳手将待更换的钻头拆下,具体操作为插好扳手,大下,小上,两手向外扳松夹嘴;
4.4将钻头装入夹嘴,用扳手向内扳锁紧;
4.5盖好盖板,取下盖板镙丝。
五、关闭系统:
5.1点击退出加工,点击关闭系统,再点击“开始”点击关闭计算机;
5.2关掉总电源。
六、注意事项:
6.1钻孔连打点击参数设置将孔径误差减小;
6.2不打孔点击阙值设定将亮度增强;
6.3钻偏孔点击中心校正进行校准。
七、设备保养:
浙江常山德讯达电子科技有限公司
文件名称
中检电脑打靶作业指导书
版本
A
文件编号
DXDW0005
生效日期
2010、04、18
页数:1
第1页
一、目的:
1.1、灯检,防止不良品流入下工序。
1.2、指导钻孔作业,防止机器损坏及发生品质事故。
二、职责:
2.1、负责发现控制短路、残铜、线幼、不够位、印返、不下油
2.2负责电脑钻孔机的日常维护及保养;
2.3负责钻孔作业;
2.4负责按要求对产品进行标识。
2.5先戴好手套,50块板一叠一拿,检板时双手拿着板边两端顺图形线路往下检查,每1PCS必须检查到位,一叠板检完必须清点数,保证每叠板是50。
三、操作:
3.1打开总电源开关,电脑自动启动控制系统,并自动进行中心校正;
3.2放一块待打孔板将孔位放入摄像头下,点击靶孔学习,选择外环中心点击(或内径中心);
打靶参考资料
1.0MPa蒸汽管线吹扫打靶方案一、 1.0MPa蒸汽管线吹扫打靶简述1.0MPa蒸汽管线吹扫打靶分三步进行:1、从1. 0MPa蒸汽管网界区阀至蒸汽分水器D-406前进行吹扫。
2、从蒸汽分水器D-406处至汽轮机管线进行吹扫打靶。
3、从蒸汽分水器D-406至汽包D-501过热蒸汽出口管线进行吹扫打靶。
二、吹扫打靶的总体要求:1.吹扫要求①吹扫打靶前所有蒸汽管线的施工动改要完成,吹扫打靶后蒸汽管线不得进行动改施工。
②吹扫打靶前应将流量孔板拆除,调节阀走旁路,并将不需吹扫的支线盲死。
③吹扫前先进行暖管排水,检查管道热位移及管托、支吊架情况。
④吹扫时采取每次吹扫一根轮流吹扫的方法。
⑤吹扫需用大流量进行,流速不低于30m/s。
⑥吹扫时应按升温----降温----升温的顺序循环进行,并组织人员对管线焊口、弯头等用木棒进行敲击。
⑦吹扫时要通知周围人员离开防止烫伤,有专人监护。
⑧在大流量吹扫12小时后,该管线可装靶板检查,视靶板情况决定是否继续吹扫。
2、打靶要求①打靶要在规定位置安装靶板,引蒸汽进行打靶,每次打靶要求至少持续15min后检查靶板。
②靶板合格标准项目质量标准靶片痕迹(大小)φ0.6mm痕深<0.5mm粒数1个/Cm2③打靶合格以连续两次合格为准。
④靶板制作可参考下图:L≥管径30mm 靶板支架靶片δ=5mm的铝板三、1.0MPa蒸汽管线吹扫打靶步骤1、从蒸汽管网界区阀至蒸汽分水器D406进行吹扫1.1吹扫前准备:1.1.1全面检查从蒸汽管网界区阀至蒸汽分水器D406流程。
1.1.2拆掉D406,接好放空临时线。
1.1.3要求临时线开口450向上,离地面3米以上。
1.1.4分水罐D406平移到一边,开口处用塑料布包好,防止进入杂物。
1.1.5在管线支吊架、管托处做好初始位置划线工作。
1.2暖管1.2.1打开此段蒸汽管线的疏水阀。
1.2.2缓慢打开蒸汽界区隔断阀,对此段管线进行暖管。
1.2.3检查管线热位移情况及管线支吊架、管托情况。
打靶法的一个c程序
zjia[0]=zding[0]+dlts;//zjia[0]=s(i)+dlts(i)
dydx[0]=zjia[0];//y'=z[0]
dzdx[0]=1.5*yding[0]*yding[0];//z'=f(x,y,z)=1.5*y*y
for(j=0;j<5;j++)
{
h=0.2+0.2*j;
//
cout<<zout<<endl;//yout从这里输出,切记!!!//
z=zout;
cout<<h6;
} for(i=0;i<n;i++)
{
dzm=0.0;
dzt=0.0;
yt=0.0;
zt=0.0;
dzf=0.0;
}
}
void main()
{
double F[1],Fs[1],zjia[1],dlts=0.00001;
dydx[0]=z[0];//y'=z[0] dzdx[0]=1.5*y[0]*y[0];//z'=f(x,y,z)=1.5*y*y } // 子过程RK4
void rk4(int n,double h,double x,double y[],double z[],double dydx[],double dzdx[],double yout[],double zout[]) {
rk4(n,h,x,yding,zjia,dydx,dzdx,yout,zout);
//
cout<<"yout["<<h<<"]="<<yout[0]<<endl;
智慧靶场训练系统在哪设计方案
智慧靶场训练系统在哪设计方案智慧靶场训练系统的设计方案主要涉及硬件设备、软件系统、训练模块和数据分析等方面的内容。
以下是一个大致的设计方案,共计约1200字。
1. 硬件设备:智慧靶场训练系统的硬件设备包括靶场设备、感应设备、监控设备和计算设备。
靶场设备:根据不同训练需求,靶场设备可以分为靶板、移动式靶子和仿真敌军装备等。
靶场设备需要具备可调节的难度和复杂度,可以根据训练要求进行自动调节。
感应设备:利用现代感应技术,为训练系统提供准确的数据反馈。
如摄像头、红外传感器等,用于捕捉训练者的动作、姿势等。
监控设备:用于实时监控和记录训练过程。
如监控摄像头和麦克风等,可以用于捕捉训练者的表情、声音等。
计算设备:用于实时处理和分析训练数据。
可以选择高性能的计算机服务器。
2. 软件系统:智慧靶场训练系统的软件系统主要分为训练控制系统和数据分析系统两个部分。
训练控制系统:提供训练任务的设置和控制,包括难度设置、训练时间控制、训练模式选择等功能。
可以根据训练者的水平和需求进行定制化设置。
数据分析系统:用于对训练数据进行分析和统计,提供训练者的成绩评估和训练效果分析,以及训练数据的可视化展示。
可以通过机器学习算法,对训练者的表现进行评估和预测,提供个性化的训练建议。
3. 训练模块:智慧靶场训练系统的训练模块根据不同训练需求,可以包括射击训练、战术演练和心理训练等内容。
具体训练内容可以根据不同用户的需求进行定制。
射击训练模块:通过靶场设备、感应设备和监控设备,模拟真实的射击场景,进行射击技能训练。
可以提供靶场调节、子弹轨迹模拟、射击姿势评估等功能。
战术演练模块:通过靶场设备和感应设备,模拟真实的战术环境,进行战术技能训练。
可以提供多人协同演练、战术选择评估、战术实施模拟等功能。
心理训练模块:通过监控设备和感应设备,对训练者的心理状态进行监测和训练。
可以提供心理压力评估、应激反应训练等功能。
4. 数据分析:智慧靶场训练系统的数据分析功能可以对训练数据进行分析和统计,提供训练效果评估和个性化训练建议。
第一人称射击类系统设计项目书
项目说明目录1 需求分析 (1)2 概要设计 (1)2.1 设计思路 (1)2.2 存储结构设计 (1)2.3 功能模块设计 (2)3 详细设计 (3)3.1 游戏工程视图 (3)3.2 游戏界面布局 (4)3.3 功能模块设计实现 (5)3.4 其他设计实现 (11)3.4.1 摄像机的跟随 (11)3.4.2 游戏音效的添加 (12)3.4.3 游戏开始界面的设计 (12)4 运行与测试 (14)5 总结.............................................. 错误!未定义书签。
小组成员分工表...................................... 错误!未定义书签。
1 需求分析1.1技术需求此游戏是在Unity2018上开发出来的,Unity2018可以支持2D、3D场景的编辑,本游戏是基于3D场景开发的。
游戏中的脚本语言使用的是C#,Unity2018中的microsoft visual 2017为脚本编辑提供了平台。
1.2功能需求1.2.1古堡行动游戏玩法介绍:玩家通过注册登录帐号进入游戏,游戏中设有三个敌人出生点,并且会自动寻路并攻击玩家,玩家通过持枪射击对抗敌人,每击杀一个敌人玩家为加一分,玩家有血条,地图会随机生成血包,供玩家增加血量,当玩家血量值为0时,游戏失败;当玩家击杀敌人个数达到200个后,游戏即为胜1.2.2古堡行动游戏制作功能的需求:登录注册、玩家和敌人AI、游戏特效(子弹设计特效,敌人死亡特效)、敌人生成、敌人自动寻路、碰撞检测、UI界面设计.2 概要设计2.1 设计思路我们选择第一人称射击游戏的设计来源来自经典的cf游戏,但由于能力和时间原因,我们做出来的很简单。
设计思路是要保证游戏拥有最基本的第一人称射击游戏的功能。
2.2 存储结构设计游戏中出现的所有类:例如:Player类:玩家类Enemy类:敌人类AppearEnemy类:敌人出生点AddBlood类:血包Bullet类:子弹ShootAudio类:射击音效GameManager类:游戏状态设计Xml文档<Root><User user_name="Admin" user_password="123" qq="123456" /> <User user_name="ylb" user_password="123" /></Root>2.3 功能模块设计游戏具有六大功能模块,分别为:游戏开始模块(1)战斗模块(2)生存模块(3)场景切换模块:包括场景触发器的设计;(4)分数统计模块:包括对玩家分数的显示;(5)游戏结束模块:包括游戏结束菜单的设计;其功能模块图如图2-1所示:图2-1功能模块图3 详细设计3.1 游戏工程视图“Audios”文件夹如图3-1所示:图3-1 “Audios”文件夹“Textures”文件夹如图3-2所示:图3-2 “Textures”文件夹然后我们需要新建“Materials”:材质文件夹;“Prefabs”:预制文件夹;“Scenes”:游戏场景文件夹;“Scripts”:脚本文件夹。
X-ray自动钻靶机操作指导书
X-ray自动钻靶机操作指导书1.0 目的:建立生产操作规范,使X-RAY钻靶机得以顺利进行生产2.0 范围:适用于我司ADT-900XP2 X-RAY自动钻靶机。
3.0 职责:3.1.生产部负责具体操作及工艺纪律、工艺卫生的执行。
3.2.工艺部负责提供工艺参数。
3.3.品质部IPQC负责相关相关物理性能测试及流程稽查。
3.4.设备部负责生产设备的保养维修。
4.0 定义:(无)在压合后的外层或次外层的铜表面钻出内层定位孔,达到内层或次外层对准之目的;X-Ray 打靶机就是利用X-Ray 在不同介质中不同的穿透能力,以CCD 摄像头接收经板子吸收后之不同能量,再经图像形成装置与信号放大装置将信号与图像传递至计算机系统,后经图像解晰,发现于内层中之目标点,再经一定定位程序后,依据程序设定在预定之位置钻出有与外层对准之功能之定位孔。
5.0 内容:5.1.作业前准备5.1.1.物料工具:防静电手套,钻咀,自主检查记录表,笔,卷尺,千分尺,斜板车。
5.1.2.生产前须依MI要求的孔径更换钻咀,钻咀直径须经千分尺检测5.2.操作步骤:5.2.1.开机:将主电源开关由OFF转向ON位置。
5.2.2.将紧急停止按钮ECG依箭头指示方向松开。
5.2.3.按电脑指示完成开机程序,当完成电脑开机步骤程序后屏幕将显示JDQTech操作的捷径,用鼠标点击,便可进入操作界面。
注意事项:开机前先要把稳压器及高压气打开。
5.3.基本资料设定即操作:5.3.1.点击基本资料菜单,可选择已作好的资料和新增料号(上图为操作界面主菜单)。
5.3.2.输入新增料号的基本数据,(板长,板宽,长边管位A1A2距离,宽边管位A1B1距离,A1A2至前缘。
注意制板尺寸,最大700MM*620MM 最小300MM*100MM,最后保存资料。
A1A2距离不可低于300MM,A1B1最小距离不可低于100MM。
)5.3.3.注意新增料号时要选择钻孔方式:可分两种钻孔方式,重心基准钻孔与中央基准钻孔,在这两种钻孔方式中又可分钻两个孔,三个孔及四个孔,同时钻四个孔时不能设定为中央基准。
靶标系统设备实施方案
靶标系统设备实施方案一、引言。
靶标系统设备是一种用于精确测量和监测目标的装置,广泛应用于军事训练、射击比赛、武器测试等领域。
本文将介绍靶标系统设备的实施方案,包括设备选型、布置方案、操作流程等内容,旨在帮助用户更好地使用靶标系统设备。
二、设备选型。
在选择靶标系统设备时,需考虑以下几个方面:1. 测量精度,靶标系统设备的测量精度直接影响到训练或测试的效果,因此需要选择具有较高测量精度的设备。
2. 适用范围,不同的靶标系统设备适用于不同的场景,如室内射击训练、野外射击演习等,需根据实际需求选择适用范围广泛的设备。
3. 稳定性,设备的稳定性直接关系到使用过程中的可靠性,选择稳定性较高的设备可以减少故障发生的可能性。
三、布置方案。
靶标系统设备的布置方案应根据实际训练或测试场地的情况进行调整,一般包括以下几个步骤:1. 场地勘察,在进行布置之前,需要对训练或测试场地进行勘察,了解场地的地形、地貌、环境等情况,以便确定最佳的设备布置方案。
2. 设备摆放,根据勘察结果,合理摆放靶标系统设备,确保设备之间的距离和角度符合训练或测试的要求。
3. 联网设置,对于多台靶标系统设备,需要进行联网设置,确保设备之间的数据同步和互动。
四、操作流程。
靶标系统设备的操作流程一般包括以下几个步骤:1. 设备启动,按照设备说明书的要求,正确启动靶标系统设备,并进行系统自检。
2. 参数设置,根据训练或测试的要求,设置靶标系统设备的参数,包括靶标距离、运动速度、靶面大小等。
3. 监控操作,在训练或测试过程中,需要对靶标系统设备进行监控操作,确保设备运行正常。
4. 数据记录,靶标系统设备通常会记录训练或测试过程中的数据,包括命中率、射击时间等,用户可以通过数据分析来评估训练或测试的效果。
五、总结。
靶标系统设备的实施方案对于训练或测试的效果具有重要影响,正确选择设备、合理布置和规范操作流程是保证设备正常运行和提高训练或测试效果的关键。
希望本文介绍的内容能够帮助用户更好地使用靶标系统设备,提高训练或测试的效果。
军用训练靶数字系统设计
第I页共Ⅱ页目录1课题的研究 (1)1.1课题背景 (1)1.2课题研究的内容 (1)1.3课题研究的目的及意义 (1)2军用训练靶数字系统的方案设计 (2)2.1设计任务 (2)2.2方案确定 (2)2.2.1系统功能研究 (3)2.2.2决定方案因素 (4)2.2.3数据传输方案 (4)2.2.4信号采集方案 (5)2.2.5系统方案确定 (6)2.3军用训练靶数字系统的组成 (6)2.3.1军用训练靶数字系统结构 (6)2.3.2系统各个模块功能描述 (7)3军用训练靶数字系统硬件电路设计 (9)3.1设计该系统硬件需要具备的知识 (9)3.2相关功能模块设计 (9)3.2.1采样模块设计 (9)3.2.2电源电路设计 (10)3.2.3复位电路设计 (11)3.2.4显示电路设计 (12)3.2.5通信接口设计 (12)3.3相关设计原理介绍 (13)3.3.1主控电路原理 (13)3.3.2显示电路原理 (13)3.3.3计算机串口接口说明 (15)3.4无线传输模块介绍 (16)3.5相关参数的设定 (17)3.5.1XL01-232AP2模块的设置 (17)3.5.2波特率的设置 (17)3.6串口数据传输技术 (18)桂林电子科技大学毕业设计(论文)专用纸第II页共Ⅱ页3.6.1单片机与模块之间的通信 (18)3.6.2单片机与电脑之间的通信 (18)4军用训练靶数字系统软件部分 (19)4.1单片机编程 (19)4.1.1软件功能分析 (19)4.1.2主要程序设计 (20)4.2PC机V C++编程 (21)4.2.1Vc++下串行编程的方法 (21)4.2.2串行通信控件MSComm (22)4.2.3Vc++下界面制作技术 (23)5军用训练靶数字系统制作及调试 (24)5.1系统PCB板的设计 (24)5.1.1布局 (24)5.1.2布线 (24)5.2硬件调试 (25)5.2.1元器件测试 (25)5.2.2芯片管脚信号测试 (26)5.3软件调试 (27)5.3.1系统主控软件调试 (27)5.3.2Vc++界面绘图程序段调试 (28)5.3.3界面图像重叠错误调试 (30)5.3.4界面控件覆盖错误调试 (31)6总结 (32)谢辞 (33)参考文献 (34)附录 (35)附录1发送端控制程序 (35)附录2接收端控制程序 (44)附录3界面V C++程序 (48)附录4系统原理图 (62)附录5系统PCB图 (63)1课题的研究1.1课题背景目前部队在每次射击训练完后,大都采用人工现场报靶的方式来报告成绩。
课程设计激光打靶系统
摘要本毕业设计主要设计自主研发的激光打靶系统的信号处理过程,继而实现整个打靶系统。
激光打靶系统主要包括半导体激光枪、光电探测器和信号处理电路,信号处理过程是整个系统的关键。
激光打靶的打靶过程,由激光枪发射激光脉冲信号,光电靶接收激光脉冲信号,经过系列信号处理过程最终得到打靶的结果。
光电靶由许多块的光电探测器组成,每块不同位置的光电探测器对应不同编号,从打靶的实际情况出发,确定了相应的编号规则。
打靶的成绩由激光所击中的光电探测器的编号来判定。
激光打靶系统的主要信号处理过程包括:信号的放大、编码和数据传输。
信号由光电探测器检测后传送到相应的放大电路,放大电路采用集成运算放大器。
按原先对光电探测器的编码规则采用多路优先编码器对信号进行编码。
最后把编码值以串口的形式传送到计算机,利用计算机的强大功能对打靶结果进行各种处理。
与计算机之间的串行数据传输由89C2051单片机实现。
89C2051单片机的程序,使用keil编译器进行设计和调试完成,其主要功能是控制数据的串行传送,实现与计算机的串口通信。
该信号处理系统实现了对信号的良好检测。
与计算机之间的串口通信可以实现数据在计算机上的显示、统计、储存等功能,为打靶者提供非常直接、准确的打靶结果,有利于提高打靶效果。
关键词:激光打靶;信号处理;信号编码;串行传输ABSTRACTThe main aim of this thesis is to design and realize signal processing of a self-developed laser target shooting system and then realize the whole laser target shooting system. The laser target shooting system consists of semiconductor laser gun, photoelectric detector, and signal processing circuit, which is the key part of the whole system. Laser target shooting process go though following steps: laser gun emitted a pulse of laser, which would be received by the laser target and the results of shooting will be shown on screen of computer by series signal processing. The laser target consists of some silicon photoelectric units that were encoded with different numbers according to certain rule. The result of the shooting will be got when detecting the number of the photoelectric unit that receives the laser pulse.The signal processing of the laser target shooting system mainly consists of signal amplification, signal encoding and data transmission. The inspected photoelectric signal was then amplified by operator amplifiers, coded by multiplex priority encoder according to the prearranged rule, and then transferred to computer by 89C2051 MCU through its serial port. And then computer can process the signal. The program of 89C2051 MCU is designed in keil and debugged using keil compiler. It is designed to control the data transmission with computer.The designed signal processing system can detect signal effectively. Through the serial data transmission, computer can process the shooting result, such as display, statistics and storage etc. It provide direct and exact shooting result for trainer, so it can increase the efficiency of the shooting training.Key words:laser target shooting;signal amplification;signal encode;serial data transmission目录1 引言 (1)2 概述 (2)2.1 激光打靶系统概述 (2)2.2 本设计方案思路 (3)2.3 研发方向和技术关键 (3)2.4 主要技术指标 (3)3 总体设计 (4)3.1 激光的检测 (4)3.2 靶位的划分 (4)3.3 编码标准 (5)3.4 成绩的传送和处理 (5)3.5 其他说明 (5)4 硬件设计 (6)4.1 信号放大电路 (6)4.2 整形电路 (8)4.3 编码电路 (9)4.4 串行传送 (11)4.5 电平转换 (13)5 软件设计 (14)5.1 总体方案 (14)5.2 程序流图 (14)5.3 模块说明 (15)6 制作与调试 (18)6.1 硬件电路的布线与焊接 (18)6.2 调试 (18)7 结论 (20)致谢 (21)参考文献 (22)附录 (23)1 引言目前的射击打靶训练,基本以实弹训练为主,国防开支大,危险系数高。
飞机射击游戏程序设计
《程序设计基础》课程设计——飞机射击游戏程序设计一、课程设计目的和要求课程设计是课程教学中的一项重要内容,是完成教学计划达到教学目标的重要环节,是教学计划中综合性较强的实践教学环节,它对帮助学生全面牢固地掌握课堂教学内容、培养学生的实践和实际动手能力、提高学生全面素质具有很重要的意义,开设课程设计的目的:1、深化已学的知识,完成从理论到实践的转化通过此次课程设计,进一步加深对C++语言和运用的了解,将理论知识运用于开发的实践,并在实践中逐步掌握软件工具的使用。
2、提高分析和解决实际问题的能力课程设计不仅是软件工程实践的一次模拟训练,同时通过此次实践,积累经验,提高分析和解决问题的能力。
3、熟悉VC集成开发环境。
4、了解简单的数据结构和算法。
5、提高学生在实际操作中收集信息、对信息进行价值判断、进行信息整理、信息加工的能力;6、培养“开拓创新“的能力课程设计的要求体现于整个工作的各个阶段中,可根据所选课题的特点而有所侧重,但应达到如下的基本要求:1、根据课题任务制定合理、可行的工作计划任务;2、制定适当的技术方案;3、学生在老师的指导下独立完成设计过程;4、撰写课程设计说明书;5、通过课程设计检查评定。
二、课程设计任务内容设计一个飞机射击小型游戏。
1.学生根据自己的兴趣爱好或专长,确定一个课程设计主题;2.根据确定的主题,通过各种途径收集、整理、加工所需要的信息;3.利用C++语言和其它制作软件设计制作各个模块;4.将各个模块联系起来;5.调试和运行完成的程序;6.将整个制作过程用书面形式写出来。
三、详细设计说明(1)需求说明我所设计的这个飞机游戏,是由两部分组成。
我方飞机在下面,向上发射子弹射击敌方飞机。
敌方飞机从上方下来,向下发射子弹。
我方飞机每接到一个我方子弹后便会增加火力,敌方火力也会增强且敌方飞机熟增多。
我方飞机共五次生命,被敌方射中五次,则游戏结束。
此时可以按esc退出,也可以继续游戏。
