基于LabVIEW的交通灯设计样本.docx
《基于LabVIEW的交通灯设计样本.docx》由会员分享,可在线阅读,更多相关《基于LabVIEW的交通灯设计样本.docx(15页珍藏版)》请在冰豆网上搜索。
![基于LabVIEW的交通灯设计样本.docx](https://file1.bdocx.com/fileroot1/2023-2/26/4f162402-dbda-49f6-9d59-c71b6dafa364/4f162402-dbda-49f6-9d59-c71b6dafa3641.gif)
基于LabVIEW的交通灯设计样本
虚拟仪器课程设计
——基于LabVIEW交通灯设计
专业:
姓名:
学号:
一、课题研究背景和意义
近年来,在迅速都市化进程和经济发展影响下,机动车辆已成为普遍代步工具,交通负荷越来越重,交通问题成为困扰许多大都市发展通病,已成为日趋严峻国际性问题。
其中,十字路口则是导致交通堵塞重要”瓶颈”。
交通信号灯成为了维护交通秩序必备工具。
交通信号灯使用有效减小了交通拥堵维护交通顺畅。
本次课设题目是设计交通信号灯。
在设计过程中理解了交通灯显示规则,增强了加强交通安全意识,另一方面运用已学知识设计信号灯便于更好掌握labview软件使用,培养综合应用所学知识来指引实践能力。
二、程序设计思路
通过采用基于虚拟仪器交通灯系统设计,自动控制十字路口四组红、黄、绿交通灯和四组人行道暗、绿状态转变,指挥着行人和车辆安全运营,实现十字路口自动指挥和改进交通管理。
绿灯亮时,容许车辆和行人通行。
红灯亮时,禁止车辆和行人通行,为交通安全提供保障。
同步会有时间显示。
程序采用条件构造,做五个分支,分别相应五种运营模式:
正常运营:
在正常运营模式中,再用时钟信号做选取条件做四个分支,实现交通信号循环变换,控制逻辑顺序如下:
(1)南北红和东西绿(30秒);
(2)南北红和东西黄(05秒);
(3)南北绿和东西红(30秒);
(4)南北绿和东西黄(05秒);
东西禁行:
东西方向亮红灯禁止通行,南北方向亮绿灯容许通行。
南北禁行:
东西方向亮绿灯容许通行,南北方向亮红灯禁止通行。
两向禁行:
东西南北方向全亮红灯禁止通行。
检修:
把信号灯所有熄灭。
在各运营模式中,每个条件构造里程序基本相似:
用需要点亮灯与布尔真常量连接,不需要点亮与布尔假常量连接,而两方向灯时间显示屏则用一定值减去输入时间量,以实现倒计时功能。
2.1前面板设计
本设计中前面板需要用20盏灯、4个时间显示屏、1个菜单下拉列表、1个停止按键即可。
其中十字路口12盏灯,红、黄、各4盏,绿灯12盏,在控件选板中选取批示灯,将它放在前面板适当位置,单击鼠标右键,更改批示灯属性,变化批示灯大小和颜色,做出一种适当批示灯。
道理批示灯三个分为一组,每组都包括红黄绿三种颜色灯,再用框将每组灯框起来,做成一种交通灯。
在每组交通灯适当位置放置一种数值显示控件作为交通灯计时器,同样办法另做人行道8盏绿灯灯。
并在前面板适当位置放置一种控制窗口,用于选取交通灯运营模式及控制其开始与停止,然后设立窗口大小。
这样交通灯系统前面板就做好了。
交通灯前面板设计如下面图1所示。
2.2单位时间信号产生
时钟信号用毫秒计时器产生。
毫秒计时器计时十毫秒,10毫秒记反馈节点加一,要产生一种一秒为单位时间信号,因此还得用计数值除以100,取商得到以秒为单位时间信号。
图2单位时间信号
2.3时间信号分段
将所得时间信号除以每个循环所用时间70s,取别的数,得到余数x范畴为0<=x<70。
当运营模式选取为正常运营时,执行条件构造里为序号0程序。
当0<=x<30时,条件成立,执行程序框图中第一种条件构造里面程序,东西通行。
当30<=x<35时,条件成立,执行框图中第二个条件构造里程序,东西亮黄灯。
当35<=x<65时,条件成立执行框图中第三个条件构造里程序,南北通行。
当65<=x<70时,条件满足,执行框图中第四个条件构造里程序,南北亮黄灯。
时间分段程序框图如下图所示。
图3条件为真各时间分段程序
这里用到了鉴定范畴并强制转换控件,应用这个控件可以鉴定输入数与否在上限和下限之间。
它图标和作用如下图4所示。
如果输出信号在范畴之内,“?
”接口会有一种信号,该信号恰可以输入到条件构造中作为该分支选取器信号。
图4规定范畴并强制转换控件
2.4程序中所用构造
2.4.1循环构造
LabVIEW中循环构造重要通过while和for循环实现。
这两种循环构造、语句、功能基本相似,但使用上会有些不同。
for循环须先进行循环次数拟定,循环一定次数后自动不进行循环;而while循环则不用拟定循环次数,只需要拟定退出循环条件。
本次课程设计中不能预先拟定循环次数,因此就用到了while循环。
while循环是LabVIEW最基本构造之一,和C语言中while循环和do…while循环相类似。
While循环可以从程序框图中【构造】子选板中创立,while循环涉及两个端口:
1、条件端口2、重复端口,如下图5所示。
本次课程设计中用停止按钮连接条件端口,当按下按钮时循环停止。
2.4.2条件构造
条件构造也是LabVIEW最基本构造之一,类似于基于文本编程语言switch语句或者if…then…else语句。
条件构造可以从【构造】子选板中创立,条件构造包括选取端口和选取标签控制端口,如下图6所示。
图6条件构造
在条件构造中,选取端口相称于switch语句中“表达式”,框图表达符相称于“表达式n”。
编程过程中,将外部控制条件连接到选取端口上,程序运营时候其端口会判断送来控制条件,指引选取构造去执行相应框架里内容。
在本程序中控制条件为运营模式序号及从规定范畴并强制转换“范畴内?
”端口输出判断值。
选取端口外部控制条件数据有整型、字符串型、布尔型和枚举型。
其接线可任意放在框图左边某一位置。
如果其数据为布尔型,那么这个构造包括真和假两个分支,这是该软件所默认选取框架类型。
若为其他类型则可以随意使用分支个数。
要注意是,在使用条件构造时候,控制条件数据类型要和选取标签中类型同样,如果不一致话,LabVIEW显示浮现错误,与此同步选取器中字体颜色也会变为红色。
本次课程设计中,当各组条件为真时,将执行其框图程序。
每个条件构造里程序基本相似。
用需要点亮灯与布尔真常量连接,不需要点亮与布尔假常量连接,而两方向灯时间显示屏则用一定值减去输入时间量,以实现倒计时功能,各构造里程序略有不同。
三、各种运营模式程序
正常运营模式程序
程序用时钟信号做选取条件做四个分支,从左到右依次执行四个条件构造,实现交通信号循环变换,正常运营模式程序如下:
各段时间信号程序:
第一阶段:
余数在0~30s之间,条件构造1条件满足,十字路口南北红灯和东西绿灯点亮,人行道南北方方绿灯亮。
东西灯时间显示为离绿灯熄灭时间(从30s到1s),北灯时间显示为离红灯熄灭时间(从35s到6s)。
程序框图如图所示
第二阶段:
余数在30~35间,条件构造2件满足,十字路口南北红灯和东西黄灯点亮,人行道南北方绿灯亮。
东灯时间显示为离黄灯熄灭时间(从5s到1s),北灯时间继续显示为离红灯熄灭时间(从5s到1s)。
程序框图如右所示
第三阶段:
余数在35~65s时,条件构造4条件满足,十字路口南北绿灯和东西红灯点亮,人行道东西方绿灯亮。
东西灯时间显示为离红灯熄灭时间(从35s到6s),南北灯时间显示为离绿灯熄灭时间(从30s到1s)。
程序框图如右所示
第四阶段:
余数在65~70s之间,条件构造4条件满足,十字路口南北黄灯和东西红灯点亮,人行道东西方绿灯亮。
东灯时间显示为离红灯熄灭时间(从5s到1s),北灯时间显示为离黄灯熄灭时间(从5s到1s)。
程序框图如右所示
东西禁行模式程序
用东西红灯及南北绿灯与布尔真常量连接,人行道南北方向绿灯与布尔真常量连接,别的灯与布尔假常量连接,而两方向灯时间显示屏则输入零值。
东西禁行模式程序:
南北禁行模式程序
用东西绿灯及南北红灯与布尔真常量连接,人行道东西方向绿灯与布尔真常量连接,别的灯与布尔假常量连接,而两方向灯时间显示屏则输入零值
南北禁行模式程序:
两向禁行模式程序
用东西南北红灯与布尔真常量连接,人行道东西南北方向绿灯与布尔真常量连接,别的灯与布尔假常量连接,而两方向灯时间显示屏则输入零值。
两向禁行模式程序:
检修模式程序
所有灯与布尔假常量连接,而两方向灯时间显示屏则输入零值。
检修模式程序:
四、交通灯设计调试成果
本次所设计交通灯有五种运营模式:
正常运营、东西禁行、南北禁行、两向禁行、检修。
调试成果如下所示:
正常运营:
东西禁行:
南北禁行:
两向禁行:
检修: