基于labview的交通灯的课程设计

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

第1章程序的设计
1.1 前面板的设计
前面板是VI的用户界面。

创建VI时,通常应先设计前面板,然后在前面板
上创建输入/输出任务。

本课程设计中前面板比较简单,只需要用六盏灯、两个时间显示器、一个停止按键即可。

其中的六盏灯,红、黄、绿各两盏,在控件选板中选择指示灯,将它放在前面板合适的位置,单击鼠标右键,更改指示灯的属性,改变指示灯的大小,做出一个合适的指示灯,依同样的步骤可以做好另外五个,将六个灯均分为两组,每组都包含红黄绿三种颜色的灯,再用框将每组灯框起来,做成一个交通灯。

在每组交通灯合适的位置放置一个数值显示控件作为交通灯的计时器。

在前面板合适的位置放置一个开关按钮,控制循环的停止。

这样交通灯系统的前面板
就做好了。

面板设计如图1-1所示。

图1-1 交通灯前面板示意图
1.2 定时信号的产生
毫秒计时器在LabVIEW中的一个计时单元,它的图标与用途如图3-2所示。

在函数选板的【编程】→【定时】子选板中选择时间计数器选定该单元。

毫秒计数器对时间信号计数,要产生一个一秒为单位的时间信号,所以还得用毫秒计数值除以1000,取商得到以秒为单位的时间信号。

接线如图1-3所示:
图1-2 时间计数器图1-3 时间计数器接线图
1.2时间信号的分段
将得到的时间信号除以每个循环所用的时间70s,取余数。

得到的余数x的
范围为0<=x<70,当0<=x<5时,条件满足,执行第一个条件结构里面的程序,北
黄和东红灯点亮。

当5<=x<35时,条件满足,执行第二个条件结构里的程序,北红和东绿灯点亮。

当35<=x<40时,条件满足,东黄和北红灯点亮。

当40<=x<70时,x<40的条件不满足,执行条件结构里面为假的程序,北绿和东红灯点亮。

时间分段的程序结构如图1-4所示。

图1-4 时间分段程序
这里用到了判定范围并强制转换控件,应用这个控件可以判定输入的数是否
在上限和下限之间。

它的图标和作用如图1-5所示。

如果输出信号在范围之内,“?”接口将产生一个信号,此信号恰可以输入到条件结构作为分支选择器信号。

图1-5 判定范围并强制转换控件
而时间显示器则用一定的值减去输入的时间量,以实现倒计时的功能,各结构里的程序略有不同,具体程序如图1-7到图1-10所示。

第一阶段:余数在0至5秒之间,此时东红和北黄两个灯点亮,向东方向的时间显示器东灯显示为离红灯熄灭的时间(从6s到1s),向北方向的时间显示器北灯显示为离黄灯熄灭的时间(从6s到1s)。

图1-7 条件结构1
第二阶段:当北黄灯点亮5秒后,即余数大于5并且小于35时,条件结构2条件满足,北红和东绿两个灯点亮,向东方向的时间显示器显示离东绿(通行)熄灭的时间(从30s到1s),向北方向的显示离红灯(禁止通行)熄灭的时间(从
35s到6s)。

继续显示离红灯(禁止通行)熄灭的时间(从6s到1s)。

图1-10 条件结构4
3.4循环的设计
LabVIEW中的循环结构主要通过while和for循环实现。

这两种循环的功能基本相同,但使用上有一些差别。

for循环必须确定循环次数,循环一定次数后自动退出循环;而while循环不用确定循环次数,只需要指定退出循环的条件。

本次课程设计中循环的次数不能确定,所以就用到了while循环。

LabVIEW 中的while循环相当于C语言中的while循环和do…while循环。

While循环可以从程序框图中的【结构】子选板中创建,while循环包括两个端口:条件端口和重复端口。

它的功能、图标及说明如图所示。

在此课程设计中,用按键连接条件端口,当按键按下时,循环停止。

图1-11 while循环
运行状态2,北红灯亮6s—1s,东黄灯亮6s—1s,此时往东方向的车辆准备禁止通行。

准备时间总共为5s,向北方向的车辆准备通过。

时间显示器显示的为离下一个状态到来的时间,如图2-2所示,两个显示器都显示为5,表明再过5s 向北方向将转变为绿灯,向东方向转为红灯,彼时向东方向将禁止通行,向北方向将允许通行。

图2-2 运行状态2
运行状态4,北黄灯亮6s—1s,东红灯亮6s—1s,此时往东方向的车辆准备通行,准备时间总共为5s;向北方向的车辆准备禁止通过。

时间显示器显示的为离下一个状态到来的时间,如图2-4所示,两个显示器都显示为3,表明再过3s 向北方向将转变为红灯,向东方向转为绿灯,彼时向东方向将允许通行,向北方向将禁止通行。

图2-4 运行状态4
第3章心得总结
此次课程设计圆满结束了,对于我经过努力所得的结果,我感到非常满意。

此次设计以分组的方式进行,每组有一个题目。

我们做的是十字路口交通灯系统。

由于平时大家都是学理论,没有过实际开发设计的经验,虽然上课的时候讲过很多关于LabVIEW的应用,但课后也从没真正地应用过这个软件,对它一点都不熟悉,拿到的时候都不知道怎么做。

但通过电脑对LabVIEW进行了几天的摸索学习,我终于把课程设计做好了,并发现其实LabVIEW很简单,很实用。

通过这次课程设计我基本学会了虚拟仪器设计的步聚和基本方法,提高了动手能力,增强了理论联系实际的能力,分组工作的方式给了我与同学合作的机会,提高了与人合作的意识与能力,同时也培养和发展了同学之间的感情,对此我感到非常欣慰。

总之,在这次课程设计中我受益匪浅。

在这个课程设计中,我真正的感受到了虚拟仪器的优越性,“软件即仪器”,仅仅在Labview上写入一些图形程序,就可以实现相应的仪器的功能,只需要借助一台计算机,一个LabVIEW软件,就可以实现很多仪器的功能,真的好方便,好伟大啊!这真的是仪器界的一场伟大的革命,可以断定不久的将来虚拟仪器之风将刮到世界上每个角落。

在这之前我们做了数字电子技术课程设计、 PLC课程设计,与实实在在的数字电路和PLC相比,在LabVIEW上完成的仪器有更大的优越性,它的内容可以完全由自己定义,而且不必用到其他的任何硬件,可以非常方便地修改做成的仪器。

就我个人认为,虚拟仪器应该有更广泛应用,要把它推广到农业,工业以及服务业的每一个部门。

我由衷的感慨:LabVIEW功能太强了,作用太大了,虚拟仪器会在更广泛地领域得到应用。

要想以后有更大发展,学好虚拟仪器技术是非常必要的。

通过这次设计实践。

我总结了使用LabVIEW编程的两个要点。

第一,熟悉
参考文献
[1]张健,韩薪莘.LABVIEW图形化编程与实例应用.北京:中国铁道出版社
[2]戴鹏飞.测试工程与LABVEIW应用.北京:电子工业出版社
[3]路林吉.虚拟仪器的应用.电子技术
[4]侯国屏.LabVIEW7.1编程与虚拟仪器设计.清华大学出版社
[5]杨乐平,李海涛,宵相生,等.LABVIEW 程序设计与应用.北京:电子工业出版社
[6]张重雄.虚拟仪器技术分析与设计.电子工业出版社
[7]黄峰.虚拟仪器技术教学资料.湖南工程学院出版社。

相关文档
最新文档