基于labview的交通灯系统设计.docx
《基于labview的交通灯系统设计.docx》由会员分享,可在线阅读,更多相关《基于labview的交通灯系统设计.docx(19页珍藏版)》请在冰豆网上搜索。
基于labview的交通灯系统设计
本科毕业论文(设计)
题目基于LabVIEW的交通灯系统设计
院(系)电子科学与电气自动化学院
专业电子科学与技术
学生姓名张莹莹
学号********
指导教师孙春虎职称助教
论文字数
完成日期:
2014年月日
巢湖学院本科毕业论文(设计)诚信承诺书
本人郑重声明:
所呈交的本科毕业论文(设计),是本人在导师的指导下,独立进行研究工作所取得的成果。
除文中已经注明引用的内容外,本论文不含任何其他个人或集体已经发表或撰写过的作品成果。
对本文的研究做出重要贡献的个人和集体,均已在文中以明确方式标明。
本人完全意识到本声明的法律结果由本人承担。
本人签名:
日期:
年月日
巢湖学院本科毕业论文(设计)使用授权说明
本人完全了解巢湖学院有关收集、保留和使用毕业论文(设计)的规定,即:
本科生在校期间进行毕业论文(设计)工作的知识产权单位属巢湖学院。
学校根据需要,有权保留并向国家有关部门或机构送交论文的复印件和电子版,允许毕业论文(设计)被查阅和借阅;学校可以将毕业论文(设计)的全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫描等复制手段保存、汇编毕业,并且本人电子文档和纸质论文的内容相一致。
保密的毕业论文(设计)在解密后遵守此规定。
本人签名:
日期:
年月日
导师签名:
日期:
年月日
基于LabVIEW的交通灯系统设计
摘要
用于交通灯控制系统的设计方法很多,例如可编程控制器PLC、单片机、标准逻辑器件等实现,然而,基于这些设备需要调整和调试电路的硬件支持,在某种程度上增加了设计过程的难度。
提出基于labVIEW的交通灯系统设计,不仅编程简单、灵活、可靠性高,而且成本低,经济效益高。
为实现交通系统智能控制提供了一个新方法。
虚拟仪器是当今仪器技术发展的重点,LabVIEW是一种图形化编程语言,如数据采集和仪器控制软件被广泛性应用于工业界、学术界、研究性课题。
本文主要研究基于LabVIEW的交通灯系统的设计,设计过程中十字路口用红、黄、绿三种颜色灯组成用来指挥车辆的交通灯,人行道用红、绿两种颜色灯组成用来指挥行人的交通灯。
模拟了十字路口交通灯,根据各种状态显示以及倒计时时间显示,用来指示各种车辆和行人安全通行。
关键词:
LabVIEW;交通灯;人行道
Atrafficlightsystemhasbeendesignedbasedonlabview
Abstract
Alotofmethods,suchasProgrammableLogicController(PLC),singlechipmicrocomputer,standardlogicdevice,etc,canbeusedinthedesignoftrafficlightsystem.However,adjustinganddebuggingthecircuitsbasedonthesedevicesrequirehardwaresupports.Insomesenseitcomplexthedesignprocess.TrafficlightcontrolsystembasedonLabVIEWwasapplied,notonlysimple,flexibletoprogramandhighreliability,butalsolowcost,higheconomicbenefit.Therefore,thissystemwillproposeanewwaytorealizetheintelligentcontroloftrafficsystems.
Virtualinstrumentistheinstrumenttechnologydevelopmentfocus,LabVIEW isagraphicalprogramminglanguage,suchasdataacquisitionandinstrumentcontrolsoftwareiswidelyusedinindustry,academia,researchtopic.
DesignoftrafficlightssystembasedonLabVIEWthispaper,acrossroadsinthedesignprocesswithred,yellow,greenthreecolorsoflightusedtovehicletrafficlightscommand,Sidewalkswithred,greenlampcomposedoftwocolorsfordirectingpedestriantrafficlights.Simulateacrossroadsoftrafficlightsandcountdowntimedisplayvariousstatusdisplayfordirectingavarietyofvehiclesandpedestrianssafepassage.
KeyWords:
LabVIEW,trafficlight,pavement
绪论
改革开放来,由于我国经济的发展以及国际地位提高,促使交通快速发展,虽然为人民的出行带来了极大的便利。
但是现在的交通问题已然成为困扰许多大城市发展的通病,也成为迫在眉睫的国际性问题。
其中,十字路口则是造成交通堵塞的主要“瓶颈”[1]。
为了最大限度的发挥道路通行的便捷,世界上绝大多数的国家都在积极研究如何能尽量减少由交通堵塞带来的种种麻烦及损失。
虚拟仪器技术如今是利用具有高性能的模块化硬件,同时结合高效灵活的软件来完成各种测试、测量和自动化的应用。
其推出以来至今,涉及到应用工程师和来自世界各地的科学家们已经利用图形化开发工具,更形象模拟出产品设计周期的各个方面,由此使产品的质量得到了大幅度的改善、产品投放市场的时间得到了缩减,同时产品的开发及其生产效率也得到了提高。
使用集成化的虚拟仪器环境与现实世界的信号相连,分析数据以获取实用信息,共享信息成果,有助于在较大范围内提高生产效率[2]。
虚拟仪器提供的各种工具能满足我们任何项目需要。
随着计算机技术的飞速发展,虚拟仪器技术也在数据采集、自动测试和仪器控制领域中发挥其重要作用,对测试系统和测量控制的设计方法有着促进并推动的作用,同时深刻影响了技术的实现。
“软件即仪器”是虚拟仪器理念的核心思想,从这一思想出发,基于电脑或工作站、软件和I/O部件来构建虚拟仪器。
I/O部件可以是独立仪器、模块化仪器、数据采集板(DAQ)或传感器[3]。
鉴于虚拟仪器的诸多性能,将用LabVIEW来完成一个十字路口的交通灯系统设计。
采用基于虚拟仪器的交通灯控制系统的设计,控制十字路口四组红、绿交通灯的状态转换,指挥各类车辆以及行人安全有序通行,实现十字路口交通自动化管理。
此系统不仅编程简单、方便灵活、具有可靠性较高的性能,而且成本低、具有良好的经济效益。
一、课题研究背景和意义
1.1课程研究的背景
城市交通控制系统主要是用于城市交通数据监测、交通信号灯控制与交通疏导的计算机综合管理系统,它已经成为现代城市交通监控指挥系统中最重要的组成部分。
因此,如何利用先进的信息技术改造城市交通系统已成为城市交通管理者的共识。
1.2课程研究的意义
交通灯得设置成为城乡各个路口的必备设置,为人们的出行安全提供了很好的保护措施。
该系统具有与现实结合的功能,培养综合应用所学知识来指导实践的能力。
二、课题研究原理
2.1课题研究思路
我通过采用基于虚拟仪器的交通灯系统设计,自动控制十字路口四组红、黄、绿交通灯和四组人行道红、绿状态的转变,指挥着行人和车辆的安全运行,实现十字路口的自动指挥和改善交通管理。
绿灯亮时,允许车辆和行人通行。
红灯亮时,禁止车辆和行人通行,为交通安全提供保障。
同时会有时间的显示,另这个虚拟的交通灯程序更好用。
我采用的控制逻辑顺序如下(因为相对的两个方向顺序一样所以只列出了十字路口北方和东方,人行道南北方和东西方的逻辑顺序):
(1)北红灯和东绿灯,南北红和东西绿(30秒);
(2)北红灯和东黄灯,南北红和东西绿(05秒);
(3)北绿灯和东红灯,南北绿和东西红(30秒)。
(4)北黄灯和东红灯,南北绿和东西红(05秒);
2.2原理流程图
N
N
三、交通灯系统的设计
3.1前面板的设计
前面板是VI的用户界面。
创建VI时,通常要先设计出前面板,然后在前面板上创建出输入/输出任务[4]。
本课程设计中前面板需要用20盏灯、12个时间显示器、1个停止按键即可。
其中十字路口的12盏灯,红、黄、绿各4盏,在控件选板中选择指示灯,将它放在前面板合适的位置,单击鼠标右键,更改指示灯的属性,改变指示灯的大小和颜色,做出一个合适的指示灯[5],依同样的步骤可以做好另外11个。
三个分为一组,每组都包含红黄绿三种颜色的灯,再用框将每组灯框起来,做成一个交通灯。
在每组交通灯合适的位置放置一个数值显示控件作为交通灯的计时器,同样的方法另做人行道的8盏灯和时间显示器。
并在前面板合适的位置放置一个开关按钮,用于控制循环的停止[6]。
这样交通灯系统的前面板就做好了。
交通灯前面板设计如下面图1所示。
3.2定时信号的产生
毫秒计时器在LABVIEW中的一个计时单元。
毫秒计数器对时间信号计数,要产生一个一秒为单位的时间信号,所以还得用毫秒计数值除以1000,取商得到以秒为单位的时间信号。
在函数选板的【编程】→【定时】子选板中选择时间计数器选定该单元[7]。
其图标与接线如下图2.1、2.2、2.3所示。
图2.1时间计数器图2.2得到时间信号的接线图图2.3商与余数
3.3时间信号的分段
将所得的时间信号除以每个循环所用的时间70s,取其余数,得到的余数x的范围为0<=x<70。
1、当满足x<65时,执行条件结构里为真的程序。
(当0<=x<30时,条件成立,执行程序框图中第一个条件结构里面的程序,北红和东绿、南北红和东西绿灯点亮。
当30<=x<35时,条件成立,执行框图中第二个条件结构里的程序,北红和东黄、南北红和东西绿灯点亮。
当35<=x<65时,条件成立,北绿和东红、南北绿和东西红灯点亮。
)2、当65<=x<70时,即x<65的条件不满足,执行条件结构里面为假的程序,北黄和东红、南北绿和东西红灯点亮。
时间分段的程序框图如下图3.1所示。
图3.1条件为真的各时间分段程序
这里用到了判定范围并强制转换控件,应用这个控件可以判定输入的数是否在上限和下限之间。
它的图标和作用如下图3.2所示。
如果输出信号在范围之内,“?
”接口会有一个信号,该信号恰可以输入到条件结构中作为该分支选择器信号[8]。
图3.2规定范围并强制转换控件
3.4程序中所用的结构
3.4.1循环结构
LabVIEW中的循环结构主要通过while和for循环实现。
这两种循环结构、语句、功能基本相同,但使用上会有些不同。
for循环须先进行循环次数的确定,循环一定次数后自动不进行循环;而while循环则不用确定循环次数,只需要确定退出循环的条件[9]。
本次课程设计中不能预先确定循环的次数,所以就用到了while循环。
while循环是LabVIEW最基本的结构之一,和C语言中的while循环和do…while循环相类似[10]。
While循环可以从程序框图中的【结构】子选板中创建,while循环包括两个端口:
1、条件端口2、重复端口,如下图4.1所示。
本次课程设计中用停止按钮连接条件端口,当按下按钮时循环停止。
3.4.2条件结构
条件结构也是LabVIEW最基本的结构之一,类似于基于文本编程语言的switch语句或者if…then…else语句[11]。
条件结构可以从【结构】子选板中创建,条件结构包含选择端口和选择标签控制端口,如下图4.2所示。
在条件结构中,选择端口相当于switch语句中的“表达式”,框图表示符相当于“表达式n”。
编程过程中,将外部控制条件连接到选择端口上,程序运行的时候其端口会判断送来的控制条件,指引选择结构去执行相应框架里的内容[12]。
在本程序中的控制条件为从规定范围并强制转换的“范围内?
”端口输出的判断值。
选择端口的外部控制条件的数据有整型、字符串型、布尔型和枚举型。
其接线可任意放在框图左边的某一位置[13]。
如果其数据为布尔型,那么这个结构包含真和假两个分支,这是该软件所默认的选择框架类型。
若为其它类型则可以随意使用分支的个数。
要注意的是,在使用条件结构的时候,控制条件的数据类型要和选择标签中的类型一样,如果不一致的话,LabVIEW显示出现错误,与此同时选择器中的字体的颜色也会变为红色[14]。
本次课程设计中,当各组条件为真时,将执行其框图的程序。
每个条件结构里的程序基本相同。
用需要点亮的灯与布尔真常量连接,不需要点亮的与布尔假常量连接,而两方向灯的时间显示器则用一定的值减去输入的时间量,以实现倒计时的功能,各结构里的程序略有不同,具体程序见下文。
3.5各段时间信号程序
因为相对的两个方向顺序一样所以下文只列出了十字路口北方和东方的逻辑顺序,人行道南北方和东西方即指南北1,2,3,4和东西1,2,3,4。
第一阶段:
余数在0~5s之间,条件结构1条件满足,十字路口北黄和东红两个灯点亮,人行道南北方绿灯和东西方红灯亮。
东灯时间显示为离红灯熄灭的时间(从5s到1s),北灯时间显示为离黄灯熄灭的时间(从5s到1s),南北方时间显示为离绿灯熄灭的时间(从5s到1s),东西方时间显示为离红灯熄灭的时间(从5s到1s)。
程序框图如图5.1所示。
图5.1条件结构1
第二阶段:
余数在5~35s之间,条件结构2条件满足,十字路口北红和东绿两个灯点亮,人行道南北方红灯和东西方绿灯亮。
东灯时间显示为离绿灯熄灭的时间(从30s到1s),北灯时间显示为离红灯熄灭的时间(从35s到6s),南北方时间显示为离红灯熄灭的时间(从35s到6s),东西方时间显示为离绿灯熄灭的时间(从35s到6s)。
程序框图如图5.2所示。
图5.2条件结构2
第三阶段:
余数在35~40s之间,条件结构3条件满足,十字路口北红和东黄两个灯点亮,人行道南北方红灯和东西方绿灯亮。
东灯时间显示为离黄灯熄灭的时间(从5s到1s),北灯时间继续显示为离红灯熄灭的时间(从5s到1s),南北方时间继续显示为离红灯熄灭的时间(从5s到1s),东西方时间继续显示为离绿灯熄灭的时间(从5s到1s)。
程序框图如图5.3所示。
图5.3条件结构3
第四阶段:
余数在40~70s时,条件结构4为假的条件满足,十字路口北绿和东红两个灯点亮,人行道南北方绿灯和东西方红灯亮。
东灯时间显示为离红灯熄灭的时间(从35s到6s),北灯时间显示为离绿灯熄灭的时间(从30s到1s),南北方时间显示为离绿灯熄灭的时间(从35s到6s),东西方时间显示为离红灯熄灭的时间(从35s到6s)。
程序框图如图5.4所示。
图5.4条件结构4
四、交通灯设计调试结果
这次所设计的交通灯控制系统有四种运行状态:
状态1、状态2、状态3、状态4。
各种状态的效果在下文中将会讲到。
4.1运行状态1
运行状态1:
十字路口北红和南红灯亮35s—6s,东绿和西绿灯亮30s—1s,此时按东西方向行驶的车辆可以运行,运行时间总共为30s,往南北行驶的车辆将禁止运行,禁止时间总共为35s(还有5s在下一个状态中体现)。
人行道南北方向红灯亮35s—6s,东西方向绿灯亮35s—6s,此时往东西方向的行人可以通行,通行时间总共为35s,向南北方向的行人禁止通行,禁止时间总共为35s。
时间显示器显示的为离下一个状态到来的时间,如图4-1所示,东灯和西灯显示器显示为28,表明再过28s绿灯将转变为黄灯,彼时向东西方向的车辆将准备禁止通行;北灯和南灯显示器显示为33,表明再过33s红灯将转变为绿灯,彼时向南北方向的车辆将允许通行;东西灯和南北灯显示器显示为33,表明再过33s向东西方向的行人将禁止通行,向南北方向的行人将允许通行。
图4-1运行状态1
4.2运行状态2
运行状态2:
十字路口北红和南红灯亮5s—1s,东黄和西黄灯亮5s—1s,此时往东西方向的车辆准备禁止通行,准备时间总共为5s,向南北去的车辆准备通行。
人行道南北方向红灯亮5s—1s,东西方向绿灯亮5s—1s,此时往东西方向的行人准备禁止通行,向南北方向的行人准备通行,准备时间总共为5s。
时间显示器显示的为离下一个状态到来的时间,如图4-2所示,东灯和西灯显示器显示为3,表明再过3s黄灯将转变为红灯,彼时向东西方向的车辆将禁止通行;北灯和南灯显示器显示为3,表明再过3s红灯将转变为绿灯,向南北方向的车辆将允许通行;东西灯和南北灯显示器显示为3,表明再过3s向东西方向的行人将禁止通行,向南北方向的行人将允许通行。
图4-2运行状态2
4.3运行状态3
运行状态3:
十字路口北绿和南绿灯亮30s—1s,东红和西红灯亮35s—6s,此时往南北方向的车辆可以通行,通行时间总共为30s,向东西方向的车辆禁止通行,禁止时间总共为35s(还有5s在下一个状态中体现)。
东西方向的人行道红灯亮35s—6s,南北方向的人行道绿灯亮35s—6s,此时往南北去的行人可以通行,通行时间总共为35s,东西方向的禁止行人行走,总共为35s。
时间显示器显示的为离下一个状态到来的时间,如图4-3所示,东灯和西灯显示器显示为28,表明再过28s红灯将转变为绿灯,彼时向东西方向的车辆将允许通行;北灯和南灯显示器显示为23,表明再过23s绿灯将转变为黄灯,向南北方向的车辆将准备禁止通行;东西灯和南北灯显示器显示为28,表明再过28s向东西方向的行人将允许通行,向南北方向的行人将禁止通行。
图4-3运行状态3
4.4运行状态4
运行状态4:
十字路口北黄和南黄灯亮5s—1s,东红和西红灯亮5s—1s,此时往东西方向的车辆准备通行,准备时间总共为5s,向南北方向的车辆准备禁止运行。
南北方向的人行道红灯亮5s—1s,东西方向的人行道绿灯亮5s—1s,此时往东西去的行人准备通行,准备时间总共为5s,向南北方向的行人准备禁止通行。
时间显示器显示的为离下一个状态到来的时间,如图4-4所示,东灯和西灯显示器显示为4,表明再过4s红灯将转变为绿灯,彼时向东西方向的车辆将允许通行;北灯和南灯显示器显示为4,表明再过4s向南北方向的车辆将禁止通行;东西灯和南北灯显示器显示为4,表明再过4s向东西方向的行人将允许通行,向南北方向的行人将禁止通行。
图4-4运行状态4
运行中按下停止键后,程序停止循环[15],如图4-5所示,
如需继续运行程序,须单击工具栏中的【运行】或【连续运行】按钮
总结
对于这次的课程研究设计,我觉得受益匪浅。
我做的是交通灯系统的设计,与我们的平常生活关联很大,经常出去的时候在十字路口时只知道去看红绿灯和时间显示也没关心过这种设备的原理等。
此次要运用的是LabVIEW软件也没怎么学过,对它一点也不了解更别说要去用了,拿到的时候都不知道怎么做。
但通过问导师主要学习哪些书,并下载了LabVIEW软件,通过理论与实际相结合,先练习参考书上的一些练习题,掌握了软件的一些基本元件与结构再进一步设计课题。
最终把课程设计按时完成。
通过这次课程研究,我第一次如此深的感觉到虚拟仪器极高的性能,可以将现实生活中用到得仪器设备在电脑中如此相似的展现出来。
仅需在LabVIEW中画出图形写些程序,就能够实现相应的仪器功能,通过对结果分析及时调整出性能更优的产品设备。
而且与数电和模电的实验相比,它不需要用到其他的任何硬件,可以很方便的修改做成的仪器,更不会有烧坏电路板和器件的现象出现。
我觉得虚拟仪器应该被学校提入一个非常重要的地位,被社会更广泛的应用。
我由衷的认识到:
LabVIEW这个软件的功能太强大了,会在更广泛的领域中得到应用。
真真正正的反应出了“软件即仪器”这一核心思想。
参考文献
[1]卢佩等智能交通信号灯控制系统设计与LabVIEW仿真实现[J] 技术电子,2008
(1):
52-58
[2]陈树学,刘萱.LabVIEW宝典[M].北京:
电子工业出版社,2011:
23-39.
[3]吴石增等现代科学仪器与计算机技术[J]现代科学仪器,2006(6)52-58
[4]申炎华,王汝杰等著.LabVIEW入门与提高范例教程[M]北京:
中国铁道出版社,2006:
20-40.
[5]侯国屏,王坤等编著LabVIEW7.1编程与虚拟仪器设计[M].清华:
清华大学出版社,2005:
32-39.
[6]王磊,陶梅编著.精通LabVIEW8.0[M]北京:
电子工业出版社,2007:
77-80.
[7]陈锡辉,张银鸿著.Labview程序设计从入门到精通[M].北京:
中国铁道出版社,2004:
254-265.
[8]阮奇桢著.我和LabVIEW--一个NI工程师的十年编程经验[M].北京:
北京航
空航天大学出版社,2009:
110-132.
[9]张重雄,张思维编著.虚拟仪器技术分析与设计[M].北京:
电子工业出版社,2012:
91-111.
[10]程学庆,房晓溪,张健,韩薪莘.LABVIEW图形化编程与实例应用[M]北京:
中国铁道出版,2005:
56-76.
[11]杨乐平,李海涛,宵相生等.LABVIEW程序设计与应用[M].北京:
电子工业出版社,2001:
78-99.
[12]张重雄编著.虚拟仪器技术分析与设计[M].北京:
电子工业出版社2007:
45-72
[13]黄峰.虚拟仪器技术教学资料[M].湖南工程学院出版社,2009:
82-98
[14]武一,杨瑞霞,王威等,应用虚拟仪器技术实现数字电路的仿真[J]。
仪器仪表学报,2008(4):
473-476.
[15]张毅,周绍磊,杨秀霞. 虚拟仪器技术分析与应用[M].北京:
机械工业出版社,2004:
156-188.
巢湖学院本科学生毕业论文(设计)指导教师评阅表
内容包括:
学生写作态度、科研作风,论文选题的理论意义和实践价值,论据是否充分、可靠,掌握基础理论、专门知识、研究方法和技能的水平,写作的逻辑性、技巧及其他优缺点。
成绩:
指导教师签名:
年 月 日
巢湖学院本科学生毕业论文(设计)综合评定意见表
答
辩
组
评
定
意
见
终评成绩:
答辩组组长签名:
年 月 日
院系
意
见
院长(主任)签名:
年 月 日
附录1交通灯程序图