张鹏展,高航,张冷,程任翔,张金,刘飞,李玉魁
(金陵科技学院电子信息工程学院,江苏南京,211169)
现代城市交通负荷大,交通事故频发加剧。同时由于城市高速路构造的固有特点,相应交通情况与普通道路耦合处有所不同。开发一套有效服务于城市交通的控制系统,用于交通数据监测、交通疏导与控制,非常必要及时。如今,计算机管理系统已成为城市交通指挥系统中最重要组成部分,计算机与仪器技术相结合,使得交通系统更加便捷智能化,智能交通将会是未来城市交通建设的发展趋势[1-2]。用于设计交通控制系统的方法较多,如可编程控制PLC、单片机、标准逻辑器件灯等;然而这些需要调试电路,更需硬件支持,增加了设计的难度与工作量。虚拟仪器技术的出现,打破了传统仪器由生产厂家定义,用户无法改变的模式。LabVIEW软件具有编程简单、灵活、可靠性高等优点,成本低、经济效益高,给传统交通灯控制技术产生了不小的影响[3-4]。卢佩等人报道,使用LabVIEW可模拟出传统交通灯中三色交替点亮功能[5]。吴义满指出,利用LabVIEW设计的交通灯不仅能模拟真实交通灯工作,工程师还可创建更高效便捷的自定义解决方案[6]。徐晓龙等人使用LabVIEW进行教学改革创新,通过虚拟仪器设计出的交通灯可改善传统交通灯设计过于死板的缺陷[7]。本文中,我们基于虚拟仪器LabVIEW软件开发平台,设计出了一套不同于以往报道的交通灯管理控制系统。该系统不仅具有传统交通灯红黄绿三色灯的交换,同时还加入了相应的计时功能,并且实现了一键红绿灯的转换。
整个道路交通管制系统共分为3个大模块,其中包括了交通灯模块、倒计时模块和一键红绿灯功能模块。通过簇创建交替灯,使用循环结构并配合使用层叠顺序结构实现红绿黄灯交替变化,模拟出真实道路交通路况[5-7]。通过对路口实时监控,添加倒计时模块,使用数组的索引来控制簇控件模拟的LED灯,之后加上相应算法实现红绿黄灯倒计时功能。根据实际交通路况,黄灯并非一直处于点亮状态,而需闪烁一段时间为路口等待车辆缓冲,黄灯闪烁模块功能通过某数除以2得到余数为1或0来控制点亮与熄灭,并将循环时间缩短以实现灯闪烁。最后设计GUI界面,根据实际情况合理布置相关路口与图形化图标。
交通灯模块为整个系统设计的核心模块。首先创建一个自定义模型,自定义一个.ctl文件,以此创建自定义交通灯控件。当然,也可放入3个圆形LED灯控件作为交通灯。在不同的零件层添加不同的图形数据,底层为矩形框,中层为圆形框,并将3个圆形分子(element)设置为布尔常量分别显示为绿、红、黄,最上层为名称显示框,显示控件名称为交通灯,便于下面模块调用。将3种颜色灯光分别设置为3个布尔常量(bool),倒计时结束时,依次调用这三个bool,就可实现红绿黄灯交替。
倒计时模块整合了倒计时和时间设置,使用LabVIEW中时间应用快速VI,通过对快速VI所提供的时间端子进行设置,以实现所需的各种功能。如图1所示,在快速VI重启端子(reset)接入预先设计好的案例结构,图中true代表南北方为绿灯,东西方为红灯,false时相反。时间目标端子(target)接入的是用户自定义设置的时间数据,然后和时间消耗端子(elapsed time)输出的经过时间进行减法操作得出剩余的时间,最后通过转换函数(U8)将时间数据转换为无符号的8b位整数(unsigned 8 bit integer)进行输出。
黄灯功能与一键红绿灯功能集成在一起,所以当正常运行时黄灯会闪烁,当一键红或绿灯后,时间结束时黄灯还是会进行闪烁,之后回归正常。这里用到的设计为枚举法,通过枚举依次实现红、绿、正常。当选择一键红灯或绿灯时,程序进入枚举选择并将选择信息存入数组,通过属性节点(property node)返回到交通灯模块并将数据传送到for循环并根据枚举选择,决定是一直让绿灯亮还是红灯亮。图2为交通灯模块中的for循环以及枚举操作中属性节点。
当枚举信息进入交通灯模块时,还会经过黄灯功能区。黄灯架构和正常红绿灯运行架构相似。如图3所示,枚举信息返回后,黄灯功能区通过循环迭代端子(loop iteration)与数据流相联通,并随信息流向一并发送到最终显示控件中,并随结果显现出来。对于黄灯的闪烁和倒计时功能,用户通过for循环数值来改变黄灯运行时间,而闪烁功能则是直接使用了not函数。我们预设输入为F,第一次循环黄灯亮起,此时x为T;第二次循环时x的输出为flase,黄灯熄灭;添加一个300ms延时后,黄灯就能实现闪烁功能了。
图1 倒计时功能程序框图
图2 for循环(左)和属性节点(右)
图3 黄灯功能
本交通灯管制系统的图形用户界面,根据实际情况中的交通路口所创作示意,视觉效果更加的人性化,完全符合城市交通管控所需,比早起的命令行界面,用户更易于从视觉上接受。图4为操作界面GUI,界面的图标功能与软件的实际功能相匹配,不会出现有任何功能不能够正常使用。
图4 操作界面GUI
本文针对日益严峻的交通问题,介绍了使用虚拟仪器LabVIEW平台研究开发新交通控制系统的方法,不仅实现了传统红黄绿三色灯的交换,同时还加入了相应计时功能与一键红绿灯转换功能。通过接入GUI界面,使用者能更直观了解并实际操作交通控制仿真所实现的功能。后期可使用NI ELVIS平台与LED实物化并加以完善,使用硬件完整还原本次设计中的仿真。