基于labview的交通信号灯课程设计.docx
- 文档编号:5727254
- 上传时间:2023-05-09
- 格式:DOCX
- 页数:15
- 大小:307.20KB
基于labview的交通信号灯课程设计.docx
《基于labview的交通信号灯课程设计.docx》由会员分享,可在线阅读,更多相关《基于labview的交通信号灯课程设计.docx(15页珍藏版)》请在冰点文库上搜索。
基于labview的交通信号灯课程设计
《虚拟仪器》课程设计说明书
基于labview的交通信号灯课程设计
系、部:
学生姓名:
指导教师:
职称
专业:
班级:
完成时间:
目录
1虚拟仪器LabVIEW和交通灯简介1
1.1LabVIEW简介1
1.2交通灯介绍1
2总体设计方案2
2.1实现功能2
2.2总体设计思路2
3程序的设计3
3.1前面板设计3
3.2定时信号的产生4
3.3时间信号的分段4
3.4各组时间信号的动作5
3.5循环的设计8
4调试及结果9
结束语12
致谢13
参考文献14
附录交通灯程序图15
摘要
LabVIEW是一种用图标代替文本进行创建应用程序的图形化编程语言。
本文首先分析了绿波带的实际应用及发展状况,然后重点分析了基于LabVIEW软件的交通信号灯绿波带设计过程,通过使用case结构、for循环等函数控件,运用商与余数的基本算法,实现红绿灯的倒计时控制,程序中定时计数可人为设定,灵活的人机交互方式充分发挥了虚拟仪器软件的特点。
接着使用74LS04与74LS08两种芯片的与门和非门结构在ELVIES平台上搭建了硬件电路,而且很好的实现了电脑与平台之间的通信。
最终调试中整个系统能够很好的反映绿波带的功能,而且明确的显示了绿波带的可调节性。
关键词LabVIEWELVIS平台交通控制
Abstract
LabVIEWisagraphicalprogramminglanguagewhichusesiconsinsteadoftextstocreateapplications.Thisarticlefirstanalyzesthepracticalapplicationandthedevelopmentofgreenwave.AndthenitemphaticallyintroducesthedesignprocessoftrafficlightsgreenwavewhichbasedonLabVIEW.Usingthebasicalgorithmofthequotientandtheremainderwiththecaseconstruction,theforcirculationandsomeotherfunctioncontrols,wecancontrolthecountdownofthetrafficlights.Andthetimecountcanbesetartificiallyintheprogram.Theflexiblehuman-computerinteractiongivesfullplaytothecharacteristicsofthevirtualinstrumentsoftware.ThenweusetheANDgateandtheNOTgateofthechips74LS04and74LS08toconstructahardwareelectriccircuitonELVISplatform.Weachieveaverygoodsignalcommunicationbetweenthecomputerandtheplatform.Duringthefinalcommissioning,theentiresystemcanprimelyreflectthefunctionofgreenwaveandclearlyshowstheadjustabilityofthegreenwave.
KeywordsLabVIEWELVISPlatformTrafficControl
1虚拟仪器LabVIEW和交通灯简介
1.1LabVIEW简介
LabVIEW是一种程序开发环境,由NI公司研制开发的,类似于C和BASIC开发环境,但是LabVIEW与其他计算机语言的显著区别是:
其他计算机语言都是采用基于文本的语言产生代码,而LabVIEW使用的是图形化编辑语言G编写程序,产生的程序是框图的形式。
LabVIEW提供很多外观与传统仪器(如示波器、万用表)类似的控件,可用来方便地创建用户界面。
用户界面在LabVIEW中被称为前面板。
使用图标和连线,可以通过编程对前面板上的对象进行控制。
这就是图形化源代码,又称G代码。
相对于传统的标准仪器来说,LabVIEW由于是基于软件的,所以提供了更大的灵活性。
通过LabVIEW开发的虚拟仪器是由用户而不是仪器生产商定义仪器功能的。
一台计算机、数采板卡和LabVIEW的结合就能够变成一个可配置的虚拟仪器来完成用户设定的任务。
通过LabVIEW就可以用传统仪器
几分之一的价格创建一个用户所需要的虚拟仪器。
当需要改变这个虚拟仪器的时候,只几分钟的时间通过LabVIEW修改就可以了。
为了便于使用,LabVIEW还集成了大量的函数库以及子程序来帮助完成绝大多数的编程任务。
在使用这些子函数的时候,可以忘掉传统编程语言中的令人头痛的指针操作、内存分配等编程问题。
除此之外,LabVIEW还包含了针对应用的数据采集(DAQ)、GPIB、串口、数据分析、数据显示、数据存储以及Internet网络通信的函数库。
1.2交通灯介绍
交通灯通常指由红、黄、绿三种颜色灯组成用来指挥交通的信号灯。
绿灯亮时,准许车辆通行,黄灯亮时,已越过停止线的车辆可以继续通行;红灯亮时,禁止车辆通行。
近年来,在快速城市化进程和经济发展的影响下,城市交通迅速增长,交通问题成为困扰许多大城市发展的通病,已成为日趋严峻的国际性问题。
其中,十字路口则是造成交通堵塞的主要”瓶颈”。
世界发达国家都在积极探索如何最大限度地发挥道路通行能力,尽量减少交通堵塞造成的各种损失。
我们设计了基于labview的智能交通灯控制系统,该系统可实现3种颜色灯的交替点亮,通过信息提示指挥车辆和行人安全通行,并能实时监测交通灯工作状态。
该系统不仅编程简单、灵活、具有较高的可靠性,而且成本低、具有良好的经济效益。
2总体设计方案
2.1实现功能
本次课程设计要完成一个十字交通信号灯的设计,这个交通信号灯系统能为向北和向东两个方向行驶的车辆指示能否通行。
这个交通路口每一个方向上的红绿黄灯按绿—黄—红的顺序循环,每个循环的时间为70s,其中通行(绿灯)的时间为30s,等待通行(黄灯)的时间为5s,禁止通行(红灯)的时间为35s。
当停止键按下时,循环停止。
2.2总体设计思路
此次设计可以用六盏灯来指示路口的红绿灯状况,它们分别是下文中的东红、东黄、东绿、北红、北黄、北绿。
信号灯按一定规律循环点亮,每盏红灯亮35秒,每盏黄灯亮5秒,每盏绿灯亮30秒。
每个循环包括四个阶段。
第一阶段:
北黄和东红灯点亮,时间为5秒。
第二阶段:
北红和东绿灯点亮,时间为30秒。
第三阶段:
东黄和北红灯点亮,时间为5秒。
第四阶段:
北绿和东红灯点亮,时间为30秒。
每个循环用时70秒。
东、北两个方向分别放置一个时间显示器来显示离下一个信号到来的时间。
用计数器产生以秒为单位的计时信号,再将产生的时间信号进行分段,每到一个时间段时系统进行相应的动作。
总体流程如图2-1所示:
图2-1总体流程图
3程序的设计
3.1前面板设计
前面板是VI的用户界面。
创建VI时,通常应先设计前面板,然后在前面板上创建输入/输出任务。
本课程设计中前面板比较简单,只需要用六盏灯、4个LED逻辑和等待时间、一个停止按键即可。
其中的六盏灯,红、黄、绿各两盏,在控件选板中选择指示灯,将它放在前面板合适的位置,单击鼠标右键,更改指示灯的属性,改变指示灯的大小,改变其颜色,分别设置为红绿黄,将六个指示灯拖到前面板上,做出一个合适的指示灯,依同样的步骤可以做好另外五个,将六个灯均分为两组,每组都包含红黄绿三种颜色的灯,再用框将每组灯框起来,做成一个交通灯。
在每组交通灯合适的位置放置一个数值显示控件作为交通灯的计时器。
在前面板合适的位置放置一个开关按钮,控制循环的停止。
这样交通灯系统的前面板就做好了。
面板设计如图3-1所示。
图3-1交通灯前面板示意图
3.2定时信号的产生
毫秒计时器在LabVIEW中的一个计时单元,它的图标与用途如图3-2所示。
在函数选板的【编程】→【定时】子选板中选择时间计数器选定该单元。
毫秒计数器对时间信号计数,要产生一个一秒为单位的时间信号,所以还得用毫秒计数值除以1000,取商得到以秒为单位的时间信号。
接线如图3-3所示:
图3-2时间计数器图3-3时间计数器接线图
3.3时间信号的分段
将得到的时间信号除以每个循环所用的时间70s,取余数。
得到的余数x的范围为0<=x<70,当0<=x<5时,条件满足,执行第一个条件结构里面的程序,北黄和东红灯点亮。
当5<=x<35时,条件满足,执行第二个条件结构里的程序,北红和东绿灯点亮。
当35<=x<40时,条件满足,东黄和北红灯点亮。
当40<=x<70时,x<40的条件不满足,执行条件结构里面为假的程序,北绿和东红灯点亮。
时间分段的程序结构如图3-4所示。
图3-4时间分段程序
这里用到了判定范围并强制转换控件,应用这个控件可以判定输入的数是否在上限和下限之间。
它的图标和作用如图3-5所示。
如果输出信号在范围之内,“?
”接口将产生一个信号,此信号恰可以输入到条件结构作为分支选择器信号。
图3-5判定范围并强制转换控件
3.4各组时间信号的动作
条件结构是LabVIEW最基本的结构之一,条件结构类似于文本编程语言中的switch语句或者if…then…else语句。
条件结构可以从【结构】子选板中创建,它的图标及功能如图3-6所示。
图3-6条件结构
在条件结构中,选择端口相当于switch语句中的“表达式”,框图表示符相当于“表达式n”。
编程时,将外部控制条件连接至选择端口上,程序运行时选择端口会判断送来的控制条件,引导选择结构执行相应框架中的内容。
在本程序中的控制条件为从判定范围并强制转换“?
”端口输出地判断值。
当各组条件满足时,将执行各条件结构里的程序。
每个条件结构里的程序基本相同。
用需要点亮的灯与布尔真常量连接,不需要点亮的与布尔假常量连接,而时间显示器则用一定的值减去输入的时间量,以实现倒计时的功能,各结构里的程序略有不同,具体程序如图3-7到图3-10所示。
第一阶段:
余数在0至5秒之间,此时东红和北黄两个灯点亮,向东方向的时间显示器东灯显示为离红灯熄灭的时间(从6s到1s),向北方向的时间显示器北灯显示为离黄灯熄灭的时间(从6s到1s)。
图3-7条件结构1
第二阶段:
当北黄灯点亮5秒后,即余数大于5并且小于35时,条件结构2条件满足,北红和东绿两个灯点亮,向东方向的时间显示器显示离东绿(通行)熄灭的时间(从30s到1s),向北方向的显示离红灯(禁止通行)熄灭的时间(从35s到6s)。
图3-8条件结构2
第三阶段:
当东绿灯点亮30秒后,即余数大于35并且小于40时,条件结构3条件满足,东黄灯点亮,而北红未到熄灭的时间,继续点亮。
向东方向的时间显示器显示离东黄(准备转换)熄灭的时间(从6s到1s),向北方向的继续显示离红灯(禁止通行)熄灭的时间(从6s到1s)。
图3-9条件结构3
第四阶段:
当北黄灯点亮5秒后,即余数大于40并且小于70时,条件结构4为假的条件满足,北绿和东红两个灯点亮,向东方向的时间显示器显示离东红(禁止通行)熄灭的时间(从35s到6s),向北方向的显示离绿灯(通行)熄灭的时间(从30s到1s)。
图3-10条件结构4
3.5循环的设计
LabVIEW中的循环结构主要通过while和for循环实现。
这两种循环的功能基本相同,但使用上有一些差别。
for循环必须确定循环次数,循环一定次数后自动退出循环;而while循环不用确定循环次数,只需要指定退出循环的条件。
本次课程设计中循环的次数不能确定,所以就用到了while循环。
LabVIEW中的while循环相当于C语言中的while循环和do…while循环。
While循环可以从程序框图中的【结构】子选板中创建,while循环包括两个端口:
条件端口和重复端口。
它的功能、图标及说明如图所示。
在此课程设计中,用按键连接条件端口,当按键按下时,循环停止。
图3-11while循环
4调试及结果
这次所设计的十字路口交通灯有四种运行状态:
状态1、状态2、状态3、状态4。
各种状态的效果在下文中将会讲到。
运行状态1,北红灯亮35s—6s,东绿灯亮30s—1s,此时往东方向的车辆可以通行,通行时间总共为30s,向北方向禁止通行,禁止时间总共为35s。
时间显示器显示的为离下一个状态到来的时间,如图4-1所示,东灯显示器显示为26,表明再过26s绿灯将转变为黄灯,彼时向东方向将禁止通行;北灯显示器显示为31,表明再过31s向北将允许通行。
图4-1运行状态1
运行状态2,北红灯亮6s—1s,东黄灯亮6s—1s,此时往东方向的车辆准备禁止通行。
准备时间总共为5s,向北方向的车辆准备通过。
时间显示器显示的为离下一个状态到来的时间,如图4-2所示,两个显示器都显示为5,表明再过5s向北方向将转变为绿灯,向东方向转为红灯,彼时向东方向将禁止通行,向北方向将允许通行。
图4-2运行状态2
运行状态3,北绿灯亮30s—1s,东红灯亮35s—6s,此时往东方向的车辆禁止通行。
禁止时间总共为35s(还有5s在下一个状态中体现);向北方向的车辆允许通行,通行时间总共为30s。
时间显示器显示的为离下一个状态到来的时间,如图4-3所示,北灯显示器都显示为11,表明再过11s向北方向将转变为黄灯,彼时向北方向将准备禁止通行;东灯显示器显示16,表明再过16s,向东方向转为绿灯,彼时向东方向将允许通行。
图4-3运行状态3
运行状态4,北黄灯亮6s—1s,东红灯亮6s—1s,此时往东方向的车辆准备通行,准备时间总共为5s;向北方向的车辆准备禁止通过。
时间显示器显示的为离下一个状态到来的时间,如图4-4所示,两个显示器都显示为3,表明再过3s向北方向将转变为红灯,向东方向转为绿灯,彼时向东方向将允许通行,向北方向将禁止通行。
图4-4运行状态4
运行中按下停止键后,程序停止循环,如图4-5所示:
图4-5停止运行
如需继续运行程序,须单击工具栏中的【运行】或【连续运行】按钮。
结束语
此次课程设计圆满结束了,对于经过努力所得的结果,我感到非常满意。
此次设计以分组的方式进行,每组有一个题目。
我做的是十字路口交通灯系统。
由于平时大家都是学理论,没有过实际开发设计的经验,虽然上课的时候讲过很多关于LabVIEW的应用,但课后也从没真正地应用过这个软件,对它一点都不熟悉,拿到的时候都不知道怎么做。
但通过对LabVIEW进行了几天的摸索学习,我们终于把课程设计做好了,并发现LabVIEW很实用。
通过这次课程设计我基本学会了虚拟仪器设计的步聚和基本方法,提高了动手能力,增强了理论联系实际的能力,分组工作的方式给了我与同学合作的机会,提高了与人合作的意识与能力,同时也培养和发展了同学之间的感情,对此感到非常欣慰。
总之,在这次课程设计中我受益匪浅。
在这个课程设计中,我真正的感受到了虚拟仪器的优越性,“软件即仪器”,仅仅在Labview上写入一些图形程序,就可以实现相应的仪器的功能,只需要借助一台计算机,一个LabVIEW软件,就可以实现很多仪器的功能,真的很方便!
致谢
在做课程设计的过程中,我遇到了不少的问题,但最终我终究还是战胜困难,取得了成功,当然其中很大一部分功劳都要归功于指导老师夏老师和同学们,要不是没有指导老师的指导和与同学们的相互交流学习,我的课程设计肯定不会如此轻松。
参考文献
[1]张健,韩薪莘.LABVIEW图形化编程与实例应用.北京:
中国铁道出版社
[2]戴鹏飞.测试工程与LABVEIW应用.北京:
电子工业出版社
[3]路林吉.虚拟仪器的应用.电子技术
[4]侯国屏.LabVIEW7.1编程与虚拟仪器设计.清华大学出版社
[5]杨乐平,李海涛,宵相生,等.LABVIEW程序设计与应用.北京:
电子工业出版社
[6]张重雄.虚拟仪器技术分析与设计.电子工业出版社
[7]黄峰.虚拟仪器技术教学资料.湖南工程学院出版社
附录交通灯程序图
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 labview 交通 信号灯 课程设计
文档标签
- 课程设计交通信号灯
- 基于ELVIS交通信号灯
- 基于8086信号灯设计
- 基于protel交通灯课程设计
- 交通信号灯课程设计
- 基于labVIEW交通灯课程
- 基于labview交通信号灯
- 基于LabVIEW交通灯设计
- 基于PLCS交通信号灯
- 基于labVIEW交通灯课程设计
- 基于S7200PLC交通信号灯
- 基于LABVIEW课程设计
- 基于8086交通灯课程设计
- 基于labview交通灯系统
- Labview课程设计报告交通灯
- 关于交通灯课程设计
- 基于FPGA交通信号灯
- 基于LabVIEW脉搏信号
- 基于LabVIEW音频信号
- 交通信号灯设计
- 交通信号灯设计
- EDA交通信号灯交通信号灯
- 毕业设计交通信号灯设计
- 交通信号灯设计概要
- 交通信号灯EDA课程设计
- EDA课程设计交通信号灯
- multisim交通信号灯