您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 广告经营 > LabVIEW连连看课程设计报告
成绩评定表学生姓名***班级学号*********专业通信工程课程设计题目连连看游戏设计评语组长签字:成绩日期20年月日课程设计任务书学院信息科学与工程学院专业通信工程学生姓名***班级学号**********课程设计题目连连看游戏设计实践教学要求与任务:1.学习LabVIEW的虚拟仪器原理、设计方法和实现技巧;2.掌握简单LabVIEW程序的编程实现;3.掌握简单通信系统设计和分析方法;4.采用Labview语言,实现连连看游戏设计。(1)通过检索、查资料、调查研究、确定方案、画出组成系统结构方框图;(2)采用LabVIEW实现连连看游戏设计系统;(3)系统调试与改进,调整系统参数,分析系统运行结果;(4)写出设计总结报告。工作计划与进度安排:20周(上):学习LabVIEW虚拟仪器原理、设计方法和实现技巧,掌握简单LabVIEW程序的编程实现,掌握简单通信系统设计和分析方法。20周(下):采用LabVIEW语言,实现连连看游戏设计,并对系统进行性能分析。指导教师:201年月日专业负责人:201年月日学院教学副院长:201年月日目录1目的及基本要求.........................................................12连连看设计原理.........................................................23连连看设计和仿真.......................................................23.1主程序设计..........................................................23.2子程序详细设计......................................................33.3设计中遇到的问题...................................................104结果及性能分析........................................................114.1运行结果...........................................................114.2性能分析...........................................................11参考文献.................................................................12111目的及基本要求虚拟仪器技术就是利用高性能的模块化硬件,结合高效灵活的软件来完成各种测试、测量和自动化的应用。灵活高效的软件能帮助您创建完全自定义的用户界面,模块化的硬件能方便地提供全方位的系统集成,标准的软硬件平台能满足对同步和定时应用的需求。这也正是NI近30年来始终引领测试测量行业发展趋势的原因所在。只有同时拥有高效的软件、模块化I/O硬件和用于集成的软硬件平台这三大组成部分,才能充分发挥虚拟仪器技术性能高、扩展性强、开发时间少,以及出色的集成这四大优势。LabVIEW(LaboratoryVirtualInstrumentEngineeringWorkbench,实验室虚拟仪器集成环境)是一种图形化的编程语言(又称G语言),它是由美国NI公司推出的虚拟仪器开发平台,也是目前应用最广、发展最快、功能最强的图形化软件集成开发环境。使用这种语言编程时,基本上不用写程序代码,取而代之的是程序框图。虚拟仪器(VI)的概念虚拟仪器[1](virtualinstrument)是基于计算机的仪器。计算机和仪器的密切结合是目前仪器发展的一个重要方向。粗略地说这种结合有两种方式,一种是将计算机装入仪器,其典型的例子就是所谓智能化的仪器。随着计算机功能的日益强大以及其体积的日趋缩小,这类仪器功能也越来越强大,目前已经出现含嵌入式系统的仪器。另一种方式是将仪器装入计算机。以通用的计算机硬件及操作系统为依托,实现各种仪器功能。虚拟仪器主要是指这种方式。上面的框图反映了常见的虚拟仪器方案。尽可能采用了通用的硬件,各种仪器的差异主要是软件。同时可充分发挥计算机的能力,有强大的数据处理功能,可以创造出功能更强的仪器。熟悉LabVIEW开发环境,掌握基于LabVIEW的虚拟仪器原理、设计方法和实现技巧,运用专业课程中的基本理论和实践知识,采用LabVIEW开发工具,实现电子时钟的设计和仿真。要求通过本课程设计使学生熟悉LabVIEW开发环境,掌握基于LabVIEW的虚拟仪器设计原理、设计方法和实现技巧,使学生掌握通信系统设计和仿真工具,为毕业设计做准备,为将来的学习及今后从事科学研究、工程技术工作打下较坚实的基础。222连连看设计原理连连看是一种休闲游戏,当两个相同的图,可以使用三条线段连接,并且线段通过区域都为空(即,没有图)3连连看设计和仿真首先熟悉虚拟仪器的设计思想,而后便可着手进行连连看的相关设计,控件架构以及函数设置。具体设计步骤如下:3.1主程序设计1.设计前面板前面板模拟连连看的前面板,用于连连看的使用。由于虚拟面板直接面向用户,是连连看的核心。图1前面板图332.程序框图图2程序面板图3.2子程序详细设计(1)连连看相同图消除判断(a)Z型双节点连接是否成功44图3相同图消除程序框图判断两点是否可以z型双折点相连。条件:在以两点为端点的矩形内存在全为零的行或列。算法:利用单折点相连算法,以其中一个为基准,在给定的矩形内逐个按行(列)找零点,并判断此零点能否与第二单折点连接,若能,则返回成功,否则继续寻找,直到遇到非零点,返回失败标志。(b)单折点连接成功是否成功判断第一点和第二点的位置关系决定线路输出的排列顺序。判断行1列2元素是否为零:若为零,分别替换宠物位置里第一和第二行元素并且判断能否直线相连。若均可以直线相连,输出线路为行和列的叠加,但是有前后关系。(c)直线连接是否成功55图4直线连接部分程序框图判断两个相同的图直线连接是否成功。(d)判断连线是否成功图5连线程序框图判断所连相同的图连线是否成功。(e)点击点是否为空图6点击点程序框图判断此次点击的点位置—通过比较点击前后两个数组元素,不同的为新点击位置,判断宠物数组中点击位置是否为空白,若为空白,则本次点击无效(后续66程序完成),否则,本次点击有效。(f)显示可以连线成功的宠物图7显示连线成功程序框图点击后连线成功的宠物可以显示出来。(g)获取点击位置图8获取点击位置程序框图获取两次点击数组元素的位置。(2)宠物的移动图9宠物移动程序框图列向上移动,则先移动处于下方的元素。77(3)调整二维数组的顺序图10调整二维数组程序框图按行调整。(4)关卡宠物处理图11关卡宠物处理程序框图初始关卡——不变化;第1关——向下;第2关——向左;第3关——上下分离;第4关——左右分离;第5关——上下集中;第6关——左右集中;第7关——上左下右;第8关——左下右上;第9关——向外扩散;第10关——向内集中。(5)随机生成宠物88图12随机生成宠物程序框图1、生成两个整数序列,一个(n1)为最终生成宠物数组的目标,另一个(n2)保存位置信息。2、对n2数组随机取一个在其长度范围内的整数a,取出对应数组中的内容num后将此元素删除,表示以后不再选择此位。3、随机生成一个宠物代号b,并将n1中第num位替换为b,一次循环中实现两次2,3步的操作,目的是始终产生的宠物成对出现。4、当n2数组长度小于或等于0时,循环结束,本算法循环次数为行数×列数/2。(6)高分排行榜图13高分排行榜程序框图游戏结束后,根据得分的高低进行排名,名次,排名和姓名均可输入。(7)绘制路径99图14绘制路径程序框图宠物路径行列互换。(8)奖惩措施图15奖惩措施程序框图可是原来的生命,提示,得分,和时间改变。能形成新的生命,提示,得分和时间。这一系列可以根据个人喜好调节。(9)提示可以连接成功的宠物图16提示连接成功程序框图当点击提示按钮的时候,会出现两个可消的宠物。(10)重新排列宠物1010图17重新排列宠物程序框图3.3设计中遇到的问题由于是第一次进行LabVIEW的课程设计,缺乏相关的设计经验,因此一开始的时候确实无从下手。但是经过老师和同学的指点,包括自己独立思考与查阅相关资料,我渐渐对这个软件熟悉了,并且觉得图形化编程的好处实在是非常多的。设计期间,我确实遇到了许多的问题。由于对编程软件的不熟悉,导致在找相关控件时花费了许多时间,而且常常找到的是错误的控件,这直接造成程序运行失误。这一点在熟悉软件之后,好了很多。其次,在熟悉设计原理的时候,由于对相关逻辑关系以及函数关系的不太熟悉,也绕了不少弯子。后期,在总体完成连连看的设计后,基本功能都得到了实现,但是一直显得不太美观。连连看功能很简单,实现起来也很简单,但要做得美观、简洁却不那么容易。比如让其显示更多生动的字体,在一个小窗口里实现更多的动画。程序要实现丰富的内容及完美的界面主要还是要靠扎实的基础,掌握各控件的使用及各类型的模块间的转换。本来把本次课程设计的界面显示做成各种字体的,但由于时间及能力的关系,没有做得更好。这一点很遗憾,但愿有机会可以弥补。总体来说,设计过程遇到的问题不少,但是收获也更多。通过这次课程设计,真正体验到LABVIEW的强大功能。11114结果及性能分析4.1运行结果图18运行结果框图4.2性能分析连连看玩法连连看是一种休闲游戏,当两个相同的图,可以使用三条线段连接,并且线段通过区域都为空(即,没有图)。初始关卡——不变化;第1关——向下;第2关——向左;第3关——上下分离;第4关——左右分离;第5关——上下集中;第6关——左右集中;第7关——上左下右;第8关——左下右上;第9关——向外扩散;第10关——向内集中。1212参考文献[1]labview入门与提高.赵品编著.人民邮电出版社.2000.11[2]labview高级应用.赵品编著.人民邮电出版社.2000.11[3]labview印刷电路板设计教程.肖玲妮编著.清华大学出版社2003.8[4]labview完全自学手册.龙马工作室编著.人民邮电出版社2005.10.2[5]虚拟仪器设计基础教程.黄松岭,吴静著.清华大学出版社,2008[6]AMTLAB和LabVIEW仿真技术及应用实例.聂春燕,张猛,张万里著.清华大学出版社,2008[7]测试工程与LabVIEW应用.戴鹏飞,王胜开,王格芳,马欣著.电子工业出版社,2006
本文标题:LabVIEW连连看课程设计报告
链接地址:https://www.777doc.com/doc-1827023 .html