打地鼠解析

相关主题
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

2 打地鼠游戏原理

本课程设计要求实现打地鼠游戏的设计与仿真,大致需要地鼠、成绩显示屏、玩的过程中地鼠个数显示、时间的设置输入以及一些控制游戏始末的开关等。用布尔开关来模拟,当开关开时记作地鼠出现,关时记作地鼠消失,为进一步的区分这两种状态,可以让开与关时的布尔控件显示不同的颜色,再用布尔控件来控制类似的电源开与关、游戏的开始与结束。屏幕的显示用字符串显示控件可以满足。地鼠出现的总个数、打中的以及为打中的是数字的显示,用数字显示控件。实现打地鼠游戏的功能。

3.1 具体设计步骤

1.前面板设计

根据在实际机器中的实物以及设计思路过程,大致需要地鼠、成绩显示屏、玩的过程中地鼠个数显示、时间的设置输入以及一些控制游戏始末的开关等。

在时间有限的情况下,没有能够自行设计一个控件,因此用布尔开关来模拟,当开关开时记作地鼠出现,关时记作地鼠消失,为进一步的区分这两种状态,可以让开与关时的布尔控件显示不同的颜色,如下图2-1-a。还是可以用布尔控件来控制类似的电源开与关、游戏的开始与结束。屏幕的显示用字符串显示控件可以满足。地鼠出现的总个数、打中的以及为打中的是数字的显示,用数字显示控件可以,如图2-1-a。当然时间的设置用数字输入控件好一些,为使时间的精度高一些,特以没0.1s来增加或减少。整体前面板控件如图1.

图1 前面板效果图

2.程序框图的设计

有了前面的大致控件的选择,要实现这些控件能合理的相互协调工作,就需要在程序框图里进行一定的算法结构。由于一个控件需要多次重复出现,故大量采用属性节点来达到一定要求。

首先,从总体控制单位开始,这个设计选择了条件结构来判断游戏可不可以开始与否,在游戏可以用后,用一个显示灯来告知使用者,若游戏不能用,则

要把相关的控件给清零,以便下次使用时不收上次的影响。如图2.

图 2 等待开始程序框图

其次,在进入可以游戏过程后,需要另一个布尔开关用条件结构来判断是

否开始或结束游戏,在开关为开时,即开始玩游戏了。如图3.

图3 初始化程序框图

首先对显示地鼠数目的项目进行哈清零,之后用一个while循环来是游戏反复的运行,当然,其控制也是由游戏开始与否的开关来实现。如图4.

图4 等待显示程序框图

在while循环中,由于地鼠是用布尔控件来模拟的,将其值转换为数值显示,对所有控件的值用公式节点的结构方式相加,对得到的值在进行条件选择,如果这十五个值相加为零,则说明所有地鼠没出现,此时就需要来随机产生地鼠出现了。可以用一个顺序结构来产生随机地鼠的出现,先用自定义的字符显示在显示屏上,提示使用者,之后用以随机数产生一个数字在放大十五倍后,进入一个条件节后,对相应的控件进行编号,使每个地鼠出现的概率是相同的。

图5 隐藏地鼠程序框图

每当进入某一个与控件编号对应的框图时,都将使该控件显示为相反状态,即处于开时的颜色,也就表示地处冒出了。接着,用运算规律对地鼠出现的总数目进行相应的跟踪显示。同时也会把使用者在玩的过程中击中地鼠的个数也会相

应计算显示出来。如图6。

图6 显示地鼠程序框图

如果有一个地鼠出现了,那所有控件和为1了,进入下面的框图,此时可以通过按下对应的控件恢复最初状态,在循环延迟时间的设置下,得以连续进行。如果没有进行任何操作,则在进入该程序步骤时,就有一个计时已用时间,把该记得时间与设置的延迟时间相比较。如果大于等于的话,就对所有的地鼠全部清零,同时,在显示未打中地鼠的数目将相应变化;如果记得的时间小于延迟时间,

就不执行任何语句,此时处于等待时间。如图7。

图7 隐藏地鼠程序框图

最后,在结束游戏后,主要是对玩的一个结果显示,如图8,

在这里面,选择了建立文本的形式,当然,也增加了对结果的分析,如果打中地鼠的数目与出现地鼠的总个数之比大于等于0.7的话,将会显示你这次是成功的。相反,如果小于0.7的话,那可就还需再接再厉了。

建立文本图标可以点击programming-string-built text得到,在建立文本编辑里,进行设置。这是在比之小于0.7的时候文本形式。对于每两个百分号里地变量要进行相应的类型设置,例如,地鼠出现的总个数需要变成number格式。还可以对数字出现设置相应精确度,对于地鼠出现数用整数。但对比之则需

要进行小数点位数的要求,可根据要求来。

图8 停止程序框图

3.2 设计中遇到的问题

由于是第一次进行LabVIEW的课程设计,缺乏相关的设计经验,因此一开始的时候确实无从下手。但是经过老师和同学的指点,包括自己独立思考与查阅相关资料,我渐渐对这个软件熟悉了,并且觉得图形化编程的好处实在是非常多的。

设计打地鼠游戏期间,我确实遇到了许多的问题。由于对编程软件的不熟悉,导致在找相关控件时花费了许多时间,而且常常找到的是错误的控件,这直接造成程序运行失误。这一点在熟悉软件之后,好了很多。其次,在熟悉设计原理的时候,由于对相关逻辑关系以及函数关系的不太熟悉,也绕了不少弯子。后期,在总体完成打地鼠游戏的设计后,基本功能都得到了实现,但是一直显得不太美观。本次课程设计的界面显示不太好,但由于时间及能力的关系,没有做得更好。这一点很遗憾,但愿有机会可以弥补。

总体来说,设计过程遇到的问题不少,但是收获也更多。在学习了信号与系

统、通信原理等课程之后,这实在是一个极好的学习机会与动手机会,也算是为大四的毕业设计做了一个良好的准备,于我而言,受益良多。

3.3 程序调试

对该简易打地鼠游戏的前面板和程序框图完成后,进行相应的运行,操作步骤有以下。

第一步,点击连续控制按钮,进入运行软件过程中;

第二步,点击开关按钮,至少灯则相应变亮,其他控件都恢复初始状态;

第三步,用时间设置来对地鼠出现的时间间隔自定义;

第四步,点击开始游戏按钮,进入游戏状态;

第五步,点击结束游戏,游戏结束,屏幕显示游戏结果;

第六步,点击开关,指示灯变暗,离开游戏区。

第七步,点击程序结束运行。

4 结果及性能分析

4.1 结果分析

1.未运行的时候效果图如图9:

相关文档
最新文档