labview课程设计报告交通灯Word下载.docx
《labview课程设计报告交通灯Word下载.docx》由会员分享,可在线阅读,更多相关《labview课程设计报告交通灯Word下载.docx(10页珍藏版)》请在冰豆网上搜索。
![labview课程设计报告交通灯Word下载.docx](https://file1.bdocx.com/fileroot1/2022-11/23/feb6da17-593b-407e-8b61-2d1ead78e0a7/feb6da17-593b-407e-8b61-2d1ead78e0a71.gif)
Z11161035
指导教师:
施刚
时间:
2013~2014学年第一学期
南京邮电大学
课程设计题目
基于labview智能交通灯系统设计
课程设计目的及要求:
设计目的:
(1)掌握LabVIEW软件编程方法;
(2)培养综合应用所学知识来指导实践的能力。
设计要求:
(1)能够将现实生活中的交通灯出现顺序在电脑上面显示;
(2)具有友好的人机界面。
课程设计详细内容:
1.前面板的设计
前面板是VI的用户界面。
创建VI时,通常应先设计前面板,然后在前面板上创建输入/输出任务。
本课程设计中的前面板是模拟一个现实中简单的道路交通系统,交通灯的时间设置由用户自己来定义,所以更人性化了一点。
此次设计共需要用12盏灯、4个LED灯倒计时和一个控制设置面板。
其中的12盏灯,红、黄、绿各4盏,在控件选板中选择指示灯,将它放在前面板合适的位置,单击鼠标右键,更改指示灯的属性,改变指示灯的大小,做出一个合适的指示灯,依同样的步骤可以做好另外11个,将12灯均分为四组,每组都包含红黄绿三种颜色的灯,再用框将每组灯框起来,做成一个交通灯。
在每组交通灯合适的位置放置一个LED倒计时作为交通灯的计时器。
在前面板合适的位置放置一个控制设置面板,在上面编辑一些系统所需要的控件,包括两个输入控件和两个显示控件,还包括一个交通管制按钮。
前面板示意图如图1-1所示。
图1-1交通灯前面板示意图
2.程序框图的设计
2.1延迟信号的产生
等待计时器在LabVIEW中的一个计时单元,它的图标与用途如图3-2所示。
在函数选板的【编程】→【定时】子选板中选择时间计数器选定该单元。
毫秒计数器对时间信号计数,要产生一个一秒为单位的时间延迟信号,所以还得给毫秒计数值加上一个1000毫秒的的常量。
如图1-2等待计数器所示。
图1-2等待计数器
2.2显示控件数字的同步
利用一个For循环,将用户自己设置的倒计时时间时间连接上For循环的的条件语句上,即N接口,然后在加一些算法和时间延迟就做成了倒计时模块了。
倒计时模块程序结构如图1-3所示。
图1-3倒计时模块程序结构
2.3各组时间信号的动作
平铺结构是labview中的结构类型之一,平铺结构类似文本编辑语言中的顺序结构。
平铺结构可以从【结构】子选板中创建。
它的图标及功能如图1-4所示。
图1-4平铺结构
在执行各平铺结构里的程序。
每个平铺结构里的程序基本相同,只是有的多一些时间倒计时模块。
用需要点亮的灯与布尔真常量连接,不需要点亮的与布尔假常量连接,而时间显示器则用一定的值减去输入的时间量,以实现倒计时的功能,各结构里的程序略有不同,具体程序如图1-5到图1-8所示。
第一阶段:
首先是对各个灯的初始化。
其初始化程序图如图1-5所示。
图1-5各个灯的初始化
第二阶段:
南北红灯倒计时的设计程序。
并且应用到了LED倒计时的子VI,如图
1-6所示。
图1-6南北红灯倒计时设置模块
第三阶段:
当南北红灯倒计时结束后,东西绿灯灭掉,与此同时东西黄灯会闪烁三下以提示正在行驶的车辆和行人,注意信号灯。
东西黄灯闪烁框图如图1-7所示。
图1-7东西黄灯闪烁框图
第四阶段:
当东西黄灯闪烁结束后,东西红灯开始变亮,南北绿灯变亮。
如图1-8所示。
图1-8各个灯的再次初始化
接下来的步骤和以上基本一致。
3.1LED倒计时的子VI的设计
制作LED倒计时时,首先要创建一个10*7的数组,然后再跟你所要显示的数字做一个数组矩阵,我数组矩阵中从上到下每一行分别代表我做的LED的0、1、2、、、、9。
我使用索引数组查找数组中的每一行,然后输给显示控件。
这次利用更为简便的程序,可以同时显示99以下的数字。
当用户输入一个数值后,数值经过商与余数运算模块和常量10相除,求出的结果分别输给索引数组的行输入接口,然后从数组中索引出对应的行,最后输给显示控件。
具体程序如图1-9所示,前面板显示如图2-1所示。
图1-9LED倒计时子函数程序框图
图2-1登录界面界面
3.2交通管制的设计
当要设置多个选项时,就要用到事件结构。
事件结构相当于c语言中的case语句,事件结构可以从程序框图中的【结构】子选板中创建。
本次交通管制总共设置5个选择项,分别是故障检修、东西禁行、南北禁行、三向禁行、夜晚模式。
程序主要就是事件结构的选择,里面的程序控制的就是灯的亮变和灯的闪烁。
事件结构如图2-2所示。
交通管制的程序图如图2-3所示。
图2-2事件结构
图2-3交通管制部分程序图
3.3循环的设计
LabVIEW中的循环结构主要通过while和for循环实现。
这两种循环的功能基本相同,但使用上有一些差别。
for循环必须确定循环次数,循环一定次数后自动退出循环;
而while循环不用确定循环次数,只需要指定退出循环的条件。
本次课程设计中循环的次数不能确定,所以就用到了while循环。
LabVIEW中的while循环相当于C语言中的while循环和do…while循环。
While循环可以从程序框图中的【结构】子选板中创建,while循环包括两个端口:
条件端口和重复端口。
它的功能、图标及说明如图所示。
在此课程设计中,用按键连接条件端口,当按键按下时,循环停止。
图2-4while循环
3.4部分程序图
设计总结及体会:
在做这个课程设计的过程中,我感受到了虚拟仪器的优越性,知道了写程序也可以一样有趣。
通常我们认为写程序是一个繁琐无聊的过程。
但是在Labview中只需要写入一些图形程序,就可以实现相应的运算和控制,可以模拟一些仪器的相应功能。
通过这次的课程设计实践,我懂得了要想学好用好一个软件,不仅仅是LabVIEW,首先要学会使用它的基本功能,掌握了基础才能向更深的层次学习。
但是通过对labview的学习知道了,好多繁琐的程序都是由基本的运算单元构成的。
如果我们不知道每个单元是用来干什么的,那就根本谈不上应用它们了,只有在知道这个空间是做什么用的,我们才会去使用它。
知道需要用到某个单元,但是不知道怎么使用,怎么连线,这也是很让人郁闷的事,所以我们要去熟悉一些基本单元的用法。
学生(签字)
_____年_____月_____日
指导教师评语:
课程设计成绩:
指导教师(签字)_______________
教研室意见:
教研室主任(签字)