《毕业设计(论文)基于LabVIEW的交通信号灯设计.doc》由会员分享,可在线阅读,更多相关《毕业设计(论文)基于LabVIEW的交通信号灯设计.doc(40页珍藏版)》请在三一办公上搜索。
1、 毕业设计说明书(论文)作 者:学 号:学院(系):专 业:题 目:基于LabVIEW的交通信号灯绿波带设计指导者: (姓 名) (专业技术职务)评阅者: (姓 名) (专业技术职务) 2011年 6 月毕业设计说明书(论文)中文摘要“绿波带”是指在某一路段,车辆以一定的速度行驶,若在第一路口遇到红灯,之后路口遇到全是绿灯;若在第一路口遇到绿灯,之后路口遇到也全是绿灯,犹如行驶在一条畅通无阻的绿色屏带中,故名绿波带。LabVIEW是一种用图标代替文本进行创建应用程序的图形化编程语言。本文首先分析了绿波带的实际应用及发展状况,然后重点分析了基于LabVIEW软件的交通信号灯绿波带设计过程,通过使
2、用case结构、for循环等函数控件,运用商与余数的基本算法,实现红绿灯的倒计时控制,程序中定时计数可人为设定,灵活的人机交互方式充分发挥了虚拟仪器软件的特点。接着使用74LS04与74LS08两种芯片的与门和非门结构在ELVIES平台上搭建了硬件电路,而且很好的实现了电脑与平台之间的通信。最终调试中整个系统能够很好的反映绿波带的功能,而且明确的显示了绿波带的可调节性。关键词 LabVIEW 绿波带 ELVIS平台 交通控制毕业设计说明书(论文)外文摘要Title Design of The Traffic Lights Green Wave Based on LabVIEW Abstract
3、When driving on a section of highway with a certain speed,if you encounter a red light at the first intersection,then there will be green lights at all the remaining intersections. Also if it is a green one at the first intersection, they will be green lights at the rest of the intersections too. It
4、 likes driving in an unimpeded green screen. So it names Green Wave. LabVIEW is a graphical programming language which uses icons instead of texts to create applications. This article first analyzes the practical application and the development of green wave. And then it emphatically introduces the
5、design process of traffic lights green wave which based on LabVIEW. Using the basic algorithm of the quotient and the remainder with the case construction, the for circulation and some other function controls, we can control the countdown of the traffic lights. And the time count can be set artifici
6、ally in the program. The flexible human-computer interaction gives full play to the characteristics of the virtual instrument software. Then we use the AND gate and the NOT gate of the chips 74LS04 and 74LS08 to construct a hardware electric circuit on ELVIS platform. We achieve a very good signal c
7、ommunication between the computer and the platform. During the final commissioning, the entire system can primely reflect the function of green wave and clearly shows the adjustability of the green wave.Keywords LabVIEW Green Wave ELVIS Platform Traffic Control目 录1 引言11.1 绿波带概述11.2 构建绿波带51.3 论文章节安排5
8、2 基于LabVIEW的绿波带系统软件设计62.1 LabVIEW介绍62.2 设计最初思路72.3 用商与余数运算来解决设计十字路口红绿灯不可调问题92.4 三个路口绿波带设计202.5 本章小结233 绿波带在NI ELVIS硬件平台上的实现与调试243.1 LED灯信号输出逻辑243.2 在ELVIS平台上搭建电路273.3 LabVIEW程序与ELVIES平台硬件电路的通信调试294 关于绿波带问题的一些展望31结论32致谢33参考文献34附录A 三个路口红绿灯前面板和程序图35附录B ELVIS平台实物图与电脑控制图361 引言在日常生活中当人们开车在公路上可能会发现,遇上一个红灯之
9、后继续开车行驶的话除非路况很差,基本不会怎么再遇到红灯,这个就是本文要研究的绿波带。绿波带是指计算车辆通过某一路段的时间,再对各个路口的红绿灯信号进行协调,车辆在通过时能连续获得一路绿灯的技术。绿波带在中国设计时速是30公里,但也要车少时才有效。要使绿波带充分发挥作用,首先应建立城市道路的网络分流,分流这两条主干道上的车流量;其次通过非机动车、行人的交通综合治理,提高车辆行进速度,才能使绿波带发挥作用。绿波带技术与人们的日常生活息息相关,所以研究绿波带技术对于人们提高生活质量有很重要的意义。11 绿波带概述早在1918年得纽约人们就开始对一条路上的交通光信号灯进行线控制,以减缓交通压力。世界上
10、第一个实现交通线控制的系统于1917年出现在美国盐湖城。这是一种内联式线控制系统,它把一条道路上6个连续的交叉口的信号灯用电缆联接,使用手动开关。此后十年间,先后又试验成功了同时式、交变式、推进式线控制系统,它们都是机械联动。随着交通压力愈发增加,越往后发展就发展到开始使用电子计算机控制一条路上的红路灯。1952年美国在丹佛市试验用电子计算机对道路网各交叉口的交通信号进行控制,这就是面控制。与此同时,在高速公路上也安装了交通控制系统。1959年加拿大多伦多市进行实验并于1963年正式安装了世界上第一个可以实现面控制的面控制系统。此后,许多国家也都采用新型电子计算机,使一个区域内的信号灯协调运转
11、。中国于1932年在广州开始采用手动信号灯,1976年在北京安装了第一台单点感应式信号机,1978年在北京试用线控制系统。1.1.1 绿波带在国内外的研究现状绿波带交通提出比较早,国外许多国家对这方面研究比较深。美国、日本以及欧洲一些国家在二十世纪五十年代就开始进行干线绿波协调控制的研究,但是他们一般都是先开辟单行道,然后在单行道上试试绿波带控制。因为从原理上来讲,单行道能较易实现绿波交通,而双行道绿波交通在实现上则有很大难度。近年来,为了缓解日益加剧的城市交通拥挤,绿波协调控制也在我国许多大城市得到应用。北京继在2005年对二环内209个红绿灯实施“绿波”通行后,2006年“绿波”范围将扩展
12、到三环;2005年,南京市有42条道路178个路口采取了信号“绿波控制”技术,两年之内,南京所有的道路将实现“绿波”智能交通;济南市已在经十路、经七路、经二路等市区主干道近百个路口设置了“绿波带”。但目前这些应用都主要采用双向绿波交通或单行道上的绿波交通。由于中国城市普遍单行道数量不多,而实施双向绿波交通的条件相对比较苛刻而且最终效果容易受到各种实际因素的影响,所以虽然对绿波交通的应用在逐渐多,但实施后往往收效甚微,尤其在我国自行车、行人等干扰因素较多的情况下1。1.1.2 绿波带的控制系统介绍 a 定周期控制系统定周期控制是使信号灯按预先定好的周期和绿信比运转。这是最简单、应用最普遍的一种控
13、制方式。一段定周期控制是在全控制过程中信号灯只有一种周期和绿信比;多段定周期控制是信号灯预先定有若干个周期和绿信比,在控制过程中,根据交通量的变化,自动变换周期和绿信比。感应式控制是用感应式信号机根据安置在交叉口各入口的车辆检测器所收集的交通情报,灵活地控制绿灯开放时间。全感应式控制是在交叉口各入口处都设有车辆检测器;半感应式控制只在交叉口的某两个入口设有车辆检测器,使该方向的绿灯能灵活开放。b 线控制系统线控制有三个基本参数,即信号周期、绿信比和相位差。相位差是相邻两个交叉口信号机同方向绿灯开启时间差与周期之比。实现线控制的系统有两种:1)有电缆线控制系统。系统设有主控制器。预先编好的各种控
14、制模型贮存在主控制器内,主控制器通过传输电缆把控制指令发给各交叉口上的信号机,使其按控制模型的要求变换灯色;同时收集车辆检测器所提供的交通情报,并进行处理。2)无电缆线控制系统。这种系统不设主控制器,各种控制模型分别贮存在各交叉口的信号机内。这些信号机都装有高精度的石英晶体钟,用统一的时间而相互协调一致,按预定的控制模型运行。线控制系统根据功能又可分为三种:1)单时段线控制系统。整个系统只有一种周期、绿信比和相位差,只能组合成一种控制模型。系统只按一种控制模型工作,不能适应经常变化的交通流量。这是早期发展的一种简单线控制系统。2)多时段线控制系统。它具有多种周期、绿信比和相位差,可组成多种控制
15、模型,并能按时间自动变换,以适应交通流量的变化。3)感应式线控制系统。具有有电缆控制系统的控制功能。主控制器内贮存多种控制模型,根据车辆检测器所检测到的交通量大小,实时地改变控制模型。普遍应用的线控制模型有同时式、交变式、推进式等几种。其基本原理是在各交叉口信号周期统一的前提下,适当调整各信号机的绿信比和相互间的相位差,使被控制的干道上形成“绿波带”,车辆在行驶中减少遇到红灯的次数,从而提高干道的通行能力。c 面控制系统面控制是对城市道路网上若干个相邻交叉口的信号周期、绿信比、相位差和设在道路上的各种可变标志进行集中统一控制。面控制系统由以下几部分构成:1)控制中心,在控制中心设有中心处理机及
16、其外围设备、地图显示板、交叉口信号状态显示板、交通情况显示板、交通事故和车辆诱导显示装置、控制台等;2)传输系统,由中央数传机、终端数传机和传输线组成;3)信号控制系统;4)交通情报收集系统,由设在道路上的各种车辆检测器组成;5)可变标志系统;6)通信系统,包括有线电通信和无线电通信;7)电视监视系统;8)控制模型和软件系统。面控制系统的功能:1)收集交通情报。设在道路上的车辆检测器随时把检测到的车辆数、车辆行驶速度、车辆阻塞度和空间占有率等情报,通过传输系统送到中心处理机处理。2)控制终端信号机和可变标志。中心处理机根据交通流量的变化,实时地改变控制模型,随时发出控制指令,控制终端信号机和可
17、变标志。3)诱导车辆。中心处理机根据收集的交通情报,对于交通阻塞地点,一方面控制有关的终端信号机和可变标志以诱导车辆,另一方面通过通信系统,发布交通阻塞情报,诱导车辆避开阻塞地点。4)集中监视。通过各种显示设备和电视监视系统,工作人员可了解控制区域内的交通状况,为迅速排除交通阻塞、处理异常情况、采取人工干预提供直观依据。面控制系统因有上述功能,所以对疏导交通流量,提高道路通行能力,减少交通事故和交通公害有明显的效果。面控制模型是保证实现系统功能的软件系统。在一个区域内,把各种复杂的交通流视为一个整体,用交通流理论,确立其数学模型。目前各国的面控制,多采用TRANSYT(Traffic Net-
18、work Study Tool)程序和SIGOP(Traffic Signal Optimization Program)程序实现对信号的控制。这种程序的基本原则是通过优化相位差,实现配时方案,以求全区域的最佳运行效率。d 绿波带-高速公路交通控制系统对高速公路上匝道(进出口)、交汇和行驶速度进行控制的系统。在高速公路匝道上设有信号灯或可变标志。当高速公路上车辆阻塞或车流达到饱和容量时,便控制入口处的信号灯或可变标志,限制车辆驶入。在发生交通事故或遇有施工等紧急情况时,也限制车辆驶入或驶出,或完全关闭匝道。对于刚驶入高速公路匝道的车辆,靠匝道上的信号机引导进入干线,以保证交汇时的安全。设在高速
19、公路上的各种可变标志,随时给驾驶人员提供道路上的车辆阻塞度、速度限制、路面湿度和冰冻状况、交通事故和施工等情报,保证车辆按规定速度行驶。高速公路交通控制系统由各种检测器、信号机、可变标志、通信传输系统、设在控制中心的中心处理机及其外围设备、交通状况显示板和使上述设备协调工作的软件系统组成。控制人员为了直观了解道路上的交通状况和控制效果,还设有电视监视系统。1.1.3 实施绿波带控制的好处随着城市化的提高,人们生活水平也有很大的改善,行驶在城市里的汽车已经越来越多,尽管北京城里已经实行根据车牌单双在单双日出行的政策,但是北京城里的交通仍然是苦不堪言。而实行绿波带控制技术的理想状态就是让每辆车在到
20、达目的地之前不停歇的运动,这可以大大缓解交通压力。这样就减少了车辆等待的时间,减少了油耗以及尾气排放,既能集约资源,也能保护环境。市民出行也比较方便,可以将自己的时间充分利用起来。只要保持在一定速度行驶,就能保证一路畅通。该“绿波带”根据道路车辆行驶的速度和路口与路口之间的距离,自动设置信号灯的点亮时间差,以保证车辆从遇到第一个绿灯开始,只要按照规定速度行驶,之后遇到的信号灯将全是绿灯。“绿波带”的作用,就是减少车辆行经灯控路口时的停车延误,从而提高整个路段的通行效率。1.1.4 现实生活中影响绿波带控制的因素上面也提到绿波带收到制约的因素比较多。比如我们开车在路上随时要注意来来往往的行人,以
21、及在路边的自行车等。他们随时可能拐弯,可能对交通的顺畅产生很大的影响。而且,汽车在启动的时候也有加速时间,也会影响绿波带的功效,只有将这些干扰因素都考虑进去的情况下,才能很好的将绿波带设计的符合我们城市交通现状。启用绿波带后,驾驶人在该路段行驶基本通畅。但需要提醒的是,如果驾驶人未按照规定速度匀速通过以上路段,等红灯的烦恼依然存在。同时,绿波带只是保证某一个交通流的畅通,而要解决城市拥堵难题,最根本的办法是改造道路,发展公交事业,提高道路运载能力,并在市民行车道德上下功夫。1.2 构建绿波带上面我们了解了绿波带的大体结构,所以根据绿波带特性来讲,绿波带的设计其实就是让各个路口的空绿灯延时循环亮
22、暗。假如一辆汽车以某一速度从1号路口往3号路口行驶,途中经过2号路口。12两个路口之间用时T1,23两个路口之间用时T2。如果以1号路口的绿灯启动时间为零参考时刻。设1号路口的绿灯在t0时刻启动,那么,2号路口的绿灯在t0+T1时刻启动,3号路口的绿灯在t0+T1+T2时刻启动。这样,如果车辆在1号路口碰到红灯,则等到绿灯时继续以同样的速度行驶。在2和3号路口便刚好碰到由红灯变为绿灯,不会再碰到红灯。如果车辆在1号路口碰到的就是绿灯,那么,在2和3号路口碰到的依然是绿灯2。用这样的方法我们就可以设计出一个交通信号灯绿波带。图1.1 三个路口平面图1.3 论文章节安排本文主要以交通绿波带为研究课
23、题,利用LabVIEW编写程序并且在ELVIS平台上搭建硬件电路实现电脑对硬件的控制。本文章节安排为:第一章引言;第二章用LabVIEW在电脑上模拟实现绿波带控制技术;第三章在ELVIS平台上搭建硬件电路并实现软件与平台的通信对接;第四章对绿波带技术进行一些展望;第五章介绍下设计过程注意事项。 2 基于LabVIEW的绿波带系统软件设计LabVIEW是一种程序开发环境,由美国国家仪器(NI)公司研制开发的,类似于C和BASIC开发环境,但是LabVIEW与其他计算机语言的显著区别是:其他计算机语言都是采用基于文本的语言产生代码,而LabVIEW使用的是图形化编辑语言G编写程序,产生的程序是框图
24、的形式7。而设计中需要用到case结构、while循环、for循环等一些基本的结构。需要有逻辑门关系来实现红绿灯的亮暗以及倒计时的实现。2.1 LabVIEW介绍虚拟仪器(virtual instrument)是基于计算机的仪器。计算机和仪器的密切结合是目前仪器发展的一个重要方向。粗略地说这种结合有两种方式,一种是将计算机装入仪器,其典型的例子就是所谓智能化的仪器。随着计算机功能的日益强大以及其体积的日趋缩小,这类仪器功能也越来越强大,目前已经出现含嵌入式系统的仪器。另 一种方式是将仪器装入计算机。以通用的计算机硬件及操作系统为依托,实现各种仪器功能。虚拟仪器主要是指这种方式。上面的框图反映了
25、常见的虚拟仪器方案。虚拟仪器实际上是一个按照仪器需求组织的数据采集系统。虚拟仪器的研究中涉及的基础理论主要有计算机数据采集和数字信号处理。目前在这一领域内,使用较为广泛的计算机语言是美国NI公司的LabVIEW。与C和BASIC一样,LabVIEW也是通用的编程系统,有一个完成任何编程任务的庞大函数库。LabVIEW的函数库包括数据采集、GPIB、串口控制、数据分析、数据显示及数据存储,等等。LabVIEW也有传统的程序调试工具,如设置断点、以动画方式显示数据及其子程序(子VI)的结果、单步执行等等,便于程序的调试。LabVIEW(Laboratory Virtual Instrument E
26、ngineering Workbench)是一种用图标代替文本行创建应用程序的图形化编程语言。传统文本编程语言根据语句和指令的先后顺序决定程序执行顺序,而LabVIEW则采用数据流编程方式,程序框图中节点之间的数据流向决定了VI及函数的执行顺序。VI指虚拟仪器,是LabVIEW的程序模块。LabVIEW提供很多外观与传统仪器(如示波器、万用表)类似的控件,可用来方便地创建用户界面。用户界面在LabVIEW中被称为前面板。使用图标和连线,可以通过编程对前面板上的对象进行控制。这就是图形化源代码,又称G代码。LabVIEW的图形化源代码在某种程度上类似于流程图,因此又被称作程序框图代码2。LabV
27、IEW特点鲜明,它尽可能采用了通用的硬件,各种仪器的差异主要是软件。可充分发挥计算机的能力,有强大的数据处理功能,可以创造出功能更强的仪器。用户可以根据自己的需要定义和制造各种仪器。2.2 设计最初思路在用LabVIEW设计红绿灯的时候,考虑到除了要实现红绿灯正常各个颜色灯循环交替亮暗,也要为它设计一个延时按钮,让绿灯能在想要的时刻亮起来,这样才能实现绿波带的控制。设计中最好用for循环来控制实现倒计时。由于for循环用于将某段程序循环执行制定次数,这里通过输入数值大小给定循环次数,设计一个总时间为60秒的红绿灯。并且在循环里面加入一个1000毫秒的延时来控制循环间隔,以达到每隔一秒数值i改变
28、一次,i是从0往59跳的。这样一个关于红绿灯的60秒循环就做好了,外面再套一层while循环就可以使其一直循环运行,如图2.1所示。图2.1 60秒循环结构在60秒循环做好后就要开始考虑红绿灯的转换如何实现以及红绿灯的每个灯亮之后的倒计时如何运行。在此,设计中就要使用一个新的结构,就是case结构也称条件结构。Case结构在运行时当输入为真时显示真的的内容,为假时可以不显示,也可以显示假状态下的内容。具体见图2.2、图2.3的内容。 图2.2 case结构判断为真 图2.3 case结构判断为假由于红绿灯的需要交替循环亮暗,红灯亮的时候绿灯黄灯不亮,绿灯亮的时候红灯黄灯不亮,黄灯亮的时候绿灯红
29、灯不亮,并且他们按照绿黄红绿的顺序循环。这里我们可以用一个判定,在某个时间范围内绿灯亮然后再接下来的时间范围内黄灯亮,最后红灯亮。但是要考虑到红绿灯需要能够调节起始时间的问题,不然整个绿波带是一个死的绿波带,时间间隔是一样的。这里使用值域控制。首先,假定直行路口绿灯起始时间为0并且绿灯亮27秒黄灯时间固定为3秒,这样的话,就可以知道接下来026秒绿灯亮,2729秒黄灯亮,3059秒红灯亮,这样岔路口的时序为029秒红灯亮,3056秒绿灯亮,5759秒黄灯亮。这样可以用一个逻辑关系当在026秒时绿灯输入端输入为1即高电平,如图2.4所示。图2.4 绿灯亮的条件判定后来发现这里设计出来的红绿灯是不
30、可调,所以在此加入一个起始时间T0,这时在原来时刻的基础上加上T0之后就是红绿灯亮暗的时间,只是这种设计可能有局限性,而且不可以调节。因为在这种设计上,如果要考虑初始时间T0大于33的时候,那是绿灯亮的范围就和图2.5所示的逻辑不一样了,但是如果在把它分段重新设计的话那么程序结构就会很大,不是那么的方便。所以设计最后还是决定另外寻求方法。图2.5 红绿灯程序图2.3 用商与余数运算来解决设计十字路口红绿灯不可调问题商与余数的运算是将一个数值除以另一个数之后得到余数和商的运算。它的功能是在X/Y之后输出a为他们的商,b为他们的余数。在LabVIEW中的图标如图2.6。图2.6 商与余数运算符这里
31、要设计三个十字路口的红绿灯,逻辑关系就要理清。首先从这里插图中看一下十字路口红绿灯分布情况。图2.7 三个十字路口示意图按照上北下南左西右东,这里分别有东西方向和南北方向的红绿灯各三个,东西方向的红绿灯相互间是有延时的,而南北的只要与东西方向的配合就行了。2.3.1 东西方向红绿灯通过商与余数的运算来使得红绿灯亮暗在不同时段,而且在初始时间T0在059之间改变时也可以正常运行。可以将i减去T0然后将这个数值除以绿灯持续时间T1在商为0余数不为0的时候绿灯亮并且用其减一并且减去余数值作为绿灯显示的倒计时。而其他黄灯和红灯也与此类似只是除以的那个数字一个在T1的基础上加上1,一个为60。这一段的程
32、序流程图如图2.8所示。图2.8 i大于等于TO时的程序流程图此流程图十分明确的介绍了在i大于等于TO时各个灯的亮暗条件,以及先后顺序,由此直观的表达了在此期间各个数据之间的运算关系。这样设计出的红绿灯一部分程序就如图2.9所示。图2.9 i大于等于TO时的程序图但是这个仅仅考虑到iT0的情况,而当iT0时则了解这里输入的为i-T0+60,如图2.8所示。在此,用两个case结构将这两部分整合,就可以完整的显示一个红绿灯的状况了。将iT0那一部分的红绿灯的程序流程图可以画出来之后则如图2.10所示。图2.10 东西方向红绿灯在i小于TO时的程序流程图由此可以得出红绿灯的程序图如下。图2.11
33、东西方向红绿灯在i小于TO时的程序图综合以上两种情况,可以画出来整个红绿灯的程序。如图2.12就显示了一个完整的红绿灯的程序:图2.12 东西方向的红绿灯完整程序图2.3.2 南北方向红绿灯由于南北方向的红绿灯是需要与东西方向的红绿灯进行配合的,在东西方向红灯亮的时候南北方向的绿灯亮然后黄灯亮三秒之后再让红灯亮,此时东西方向的绿灯亮。这里的设计其实和上面东西方向的红绿灯的设计其实是十分相似的,只是由于这里灯亮的次序是红灯绿灯黄灯。所以这里先是红灯亮,除以的数值为60-T1-3,然后绿灯为60- 3,黄灯为60所以流程图如图2.13。图2.13 南北方向红绿灯在i大于等于T0时的程序流程图程序框
34、图如图2.14所示图2.14 南北方向红绿灯在i大于等于T0时的程序图而在iT的状态下就是的输入为i-T+60,画出流程图如图2.15图2.15 南北方向红绿灯在i小于T0时的程序流程图这里程序图如下:图2.16 南北方向红绿灯在i小于T0时的程序图再用case结构整合一下就能得出一个完整的南北方向的红绿灯的程序结构,如图2.17。图2.17 南北方向的红绿灯完整程序图这样一个完整的十字路口红绿灯程序就设计好了。接下来所要做的就是将三个路口按照一定延时组合起来,就能得到整条绿波带的设计程序图。2.4 三个路口绿波带设计这里先看一下三个路口的红绿灯之间的关系。图2.18 程序前面板一号和二号路口
35、之间相距1125米,则以30km/h的速度来说为2分15秒,由于我设计的红绿灯周期为1分钟所以,这里一号与二号路之间时间差为15秒。二号路口与三号路口相距50米,用时6秒通过,所以相差为6秒。可以更改输入控件,使其输入时间初始为5秒、20秒以及26秒,绿灯持续时间都设为27秒。这里演示一下其不同时刻红绿灯亮暗的不同。 第一个路口亮的时候整体图:图2.19 第一个路口绿灯亮第二个路口绿灯亮的:图2.20 第二个路口绿灯亮第三个路口绿灯亮:图2.21 第三个路口绿灯亮从这三个路口绿灯亮时的状态可以看出,整个程序很好的实现了绿波带控制的技,且可以直观的反映这个绿波带中间的时间差,且能够了解整个绿波带
36、运行情况。而且这个绿波带是可以调节的,通过改变输入控件的值也就是绿灯起始时间来达到控制整个绿波带的目的。2.5 本章小结本章利用LabVIEW设计出了这三个路口的红绿灯,虽然在一开始设计的时候走过一些弯路,但是经过和老师的探讨以及翻阅资料,将设计中的困难慢慢克服,并且一点点做出了设计最后需要的程序,利用商与余数的方法和一些简单的结构做出了绿波带的控制的程序。后期在制作程序的过程中只是需要进行美化,将每个输入控件的输入有效范围设定,并且初始值设定。将十字路口的平面图插入LabVIEW的前面板中,并将其移至最后,用以示意整个绿波带控制的各个路口,使得每个路口的红绿灯层次分明。3 绿波带在NI EL
37、VIS硬件平台上的实现与调试2003年,美国NI公司针对高校实验室教学内容开发了一套ELVIS平台(education laboratory virtual instrumentation suit)。整套平台硬件上包括原型板,ELVIS工作台以及625l的数据采集卡和68针数据传输线;软件上包括软前面板(soft front panel,sFP)仪器和ELVIS硬件驱动程序(LabVIEW APIs),软前面板SFP仪器是根据ELVIS平台应用的特点编写的LabVIEW VI,模拟、代替传统实验中的硬仪器。NI ELVIS是美国NI公司设计开发的一个能与电脑进行上下层通讯的硬件平台,可在此平
38、台上使用LabVIEW和数据采集卡开发新的仪器功能,设计新的实验。这里要用到ELVIS工作台来搭建一个硬件电路,更形象的反映这个绿波带的运行状况,看看是否能用于实践。3.1 LED灯信号输出逻辑由于在ELVIS面板上面只有a0a7八个信号直接输入口,这里有三个路口,也就是18盏灯,虽然说每个路口都能按照一定的逻辑输出信号,在这里取了一个最简单的逻辑输出,只有与门与非门,就能通过输出三个信号灯的信号得出一个路口六盏灯的逻辑输出信号。图3.1 十字路口红绿灯这里显示了一个路口的红绿灯情况,可以选择输出红1、黄1和黄2的信号。由于红2与红1两者在整个过程中一定有一个亮,所以红1的非就是红2。而且当黄
39、1不亮并且红1不亮的时候绿1就亮,黄2不亮并且红2不亮就是绿2亮。所以用三个输出就可以控制一个路口的亮暗。可以得到逻辑关系如图3.2。所示。图3.2 一个路口路灯输出逻辑其中黄1、红1、黄2为输出,每个路口都可以这样设计,这样的话整个程序只要9个输出口,前面8个可以用ELVIS自带的输出控件来进行输出。但是还少一个输出端口,这里用一个模拟输出端口控制,创建一个DAQ,并且在属性中设置其最高最见低电压,最高设置5V,最低为0,而且设置为一次采样,不然采样会出现问题。详细如图3.3。但是在真正运行的过程中,发现模拟输出的端口灯不亮,查阅资料之后,发现这个端口输出的是1V和0V这样并不足以将LED灯
40、点亮,最后在这个端口设置了一个case结构,在信号输出为真时输出为5,假的时候输出为0,这样就可以实现LED灯得亮暗了。图3.3 模拟输出控件属性设置 图3.4 模拟控件输入为真 图3.5模拟控件输入为假这样我们解决了将程序之中的信号输出到ELVIS平台的问题。3.2 在ELVIS平台上搭建电路由于整个ELVIS平台输出端口有限,只能提供基本的八个输出口,如果要用平台的内部的输出量显然比较复杂,所以用简单的直接输出的八个输出口和一个模拟通道,加上9个非门6个与门,就可以选择最简单的74LS04和74LS08这两个最简单的与门和非门芯片。他们管脚图如下:图3.6 74LS04管脚图图3.7 74
41、LS08管脚图用这两种芯片在ELVIS上面的面包板上连出实物图,两种芯片每种需要两片,红、黄、绿三种LED灯都需要6盏,线若干。每个路口的灯的逻辑和图3.2一样。其实物连线图如下:图3.8 实物连线图上图中第一个路口东西方向的红灯、黄灯、绿灯标号为:“红灯11、黄灯11、绿灯11”南北方向为“红灯12、黄灯12、绿灯12”。第二个路口东西方向的红灯、黄灯、绿灯标号为:“红灯21、黄灯21、绿灯21”南北方向为“红灯22、黄灯22、绿灯22”。第三个路口东西方向的红灯、黄灯、绿灯标号为:“红灯31、黄灯31、绿灯31”南北方向为“红灯32、黄灯32、绿灯32”图3.9 模拟输出端口图3.10 E
42、LVIS自带的8个输出口至此,一个基于LabVIEW的绿波带设计就到此结束了。本设计设计出的程序和实物平台都和任务书上要求的一样,而且基本的红绿灯上的功能也能一一实现,并且能够很好的运行。最后在平台上的运行也十分稳定,能够很好的实现上下层的通讯并且能够被电脑的程序很好的控制。3.3 LabVIEW程序与ELVIS平台硬件电路的通信调试在用LabVIEW编写程序的过程中,必须对程序进行调试,确保程序能正常运行之后才能开始对ELVIS进行上下层通信。对于程序的调试应该在程序每个小块制作出来后模拟运行,若有问题则可以找出问题症状并解决,这样确保每个模块能够正常运行,不需要对每个小模块进行检测。在本章
43、在NI公司生产的ELVIS硬件平台搭建了一个绿波带控制电路。ELVIS平台上面八个输出口与一个模拟输出口,分别输出“红灯11、黄灯11、黄灯12、红灯21、黄灯21、黄灯22、红灯31、黄灯31、黄灯32”的信号。用下面两个控件对程序中各个灯得信号进行接收并且再ELVIS平台上输出。图3.11 八个信号输出控件与模拟输出控件对于平台上的每个输出信号先进行调试,看看能否输出,若是并未检测而直接搭建电路势必在出现故障之后很难轻松找到问题之症结所在。将红绿灯按照一个一个路口连接下来,并且再每个路口路灯连接完之后进行通讯并运行,确保没有问题再进行下一个路口的连接。得到实物平台连线成功之后如下。图3.1
44、2 实物平台4 关于绿波带问题的一些展望由于这个绿波带设计的时速比较高,这样的话就比较容易受到不确定因素的干扰,比如过路行人,所以现实生活中可能绿波带设计时速越低的话,就能使得整个绿波带功能越明显。但是当设计时速低的话,也会有人超速什么的,那样绿波带的功能对于那个超速的人又不能真正体现。所以,要真正设计一个干扰因素小的绿波带需要广大市民在道德层次上有所提高,这样不仅别人出行方便,自己出行就更加方便了。而且绿波带设计时间间隔问题考虑的因素应该不仅仅是两个路口的时间差,也要考虑到车辆通过路口会适当减速,这样的话可能时间差就应该相应的变大,不然达不到一路绿灯的效果。交通控制系统今后将从被动系统向主动
45、系统发展。所谓主动系统即是按程序行驶系统。主动系统的中心处理机可直接掌握控制区域内每辆车的出发点和要去的目的地,并为其选择最佳路径。在控制方法上,将改变定周期的系统控制,使系统内的周期可随时改变,增加系统的灵活性,以适应瞬时变化的交通流量。在控制设备上,将广泛采用大规模集成的电子化设备和微型计算机。在这个设计中其实也有一些欠缺的地方,如果能讲显示的数值用LED显示屏显示出来就会更加的像现实生活中的红绿灯了。考虑过这个想法,这个就涉及到关于子vi的调用,而这个子vi就是LED显示屏的子vi。现实生活中如果红绿灯设计过程中能加入一些实时的路况信息并且按照这些信息对红绿灯进行调节,这样可以大大提高整个路段的利用率,减少车辆等待以及堵车的状况。结 论本设计是在学习和研究了大量技术资料的基础上,以日常所见的交通绿波带控制作为研究主题。交通绿波带在人们生活中处处可见,也