Design and Implementation of Traffic Lights with Fuzzy Controller Based on PLC
作 者 :长江大学 电子与信息工程学院 吴凌云
关键词: 模糊控制 可编程控制器 梯形图 交通灯
1 引言
目前,大部分城市中十字路口交通灯的控制普遍采用固定转换时间间隔的控制方法。由于十字路口不同时刻车辆的流量是复杂的、随机的和不确定的,采用固定时间的控制方法,经常造成道路有效利用时间的浪费,出现空等现象,影响了道路的畅通。为此,采用不依赖数学模型的模糊控制方法设计交通灯控制器,能较好地解决这个问题。另外随着众多高科技技术在日常生活的普遍应用,城市空中各种电磁干扰日益严重,为保证交通控制的可靠、稳定,选择了能够在恶劣的电磁干扰环境下正常工作的PLC是必要的。
2 模糊控制算法的设计
在十字路口的车道上,分别设置2个环型检测器,一个设在十字路口处,用于检测离开的车辆数;另一个设在距第一个环型检测器约
图1 传感器设置图
为了实现交通灯的模糊控制,将绿灯时间分为两部分。其一是固定的最小时间t1为15s,其二是根据车辆流量变化进行模糊决策的绿延时t2。本系统的输出是东西和南北两个方向的红、黄、绿灯,由于两个方向的输出关系是固定的,最终都可归结到对当前绿灯的延时上。
将测得的队长可看作模糊变量l,其论域为:L={1,3,5,7,9,11,13,15,17,19,21},取7个语言值:l1(很长),l2(长),l3(较长),l4(中等),l5(较短),l6(短),l7(很短),赋值表如表1所示:
表1 语言变量l赋值表
绿灯追加时间t2同样看作模糊变量g,其论域为:_={5, 10, 15, 20, 25, 30, 35, 40, 45} , 取7个语言值:g1(很多),g2(多),g3(较多),g4(适中),g5(较少), g6(少), g7(很少),赋值表如表2 所示:
表2 语言变量g赋值表
根据交警的控制经验一般可总结出下列7 条控制规则:
若l=li, 则g=gi, i=1,…, 7 (1)
根据模糊控制理论知道, 一个完整语言控制策略是由很多不同的语言控制策略所组成的。式(1)所示的单输入单输出语言控制策略就是由7条语言控制策略所组成, 每条控制策略可用下面模糊关系矩阵表示:
Ri=[li]×[gi],i=1, …, 7 (2)
其中[li] 为11×1列向量, [gi] 为1×9行向量,其数值分别对应于表1和表2中的行。总的一组控制策略的模糊矩阵为各个模糊关系矩阵求“并”。
R= R1∪R2∪R3∪R4∪R5∪R6∪R7 (3)
由表1 、表2 和式(2) 、(3) 得模糊关系矩阵:
(4)若将测得的队长按表1将其模糊化, 记为l, 则由下式得到输出的模糊响应:
g= lo Rlg (5)
然后采用加权平均法进行模糊判决得模糊控制查询表,如表3所示:
表3 模糊控制查询表
3 模糊控制器的PLC实现
3.1 控制器的硬件设计
控制器功能要求:东、西、南、北方向各有红、黄、绿信号灯一盏,共12盏信号灯;各有七段数码显示管2个,共8个(东、西方向及南、北方向的信号灯可并联,CD4511为4位BCD码输入);则共有14个输出点。该控制器设一个启动按钮;
一个停止按钮;8个环型检测器脉冲输入端;共有10个输入点。
因此,可选用日本三菱FX2N-32MR的PLC作为控制器核心,它有16个输入点,16个输出点,继电器输出。PLC的I/O地址分配与具体接线原理图如图2所示,其中X为输入继电器,Y为输出继电器,电源的连接可参考PLC的使用手册。
图2 控制器硬件接线原理图
3.2 控制器的软件设计
控制器的工作原理。控制器接通电源,按下启动按钮,开始工作。首先东西方向绿灯亮,南北方向红灯亮(亮灯延时时间由队长决定),当东西方向绿灯最后3s时闪烁3次转黄灯亮3s;接着东西方向红灯亮,南北方向绿灯亮(亮灯延时时间由队长决定),当南北方向绿灯最后3s时闪烁3次转黄灯亮3s;接着又转东西方向绿灯亮,南北方向红灯亮,如此循环,直到按下停止按钮结束。显示时间最短为15s,最长为60s。
通过X2-X11可测出每个车道上的车辆数即队长,经过比较得出当前绿灯方向和当前红灯方向处于检测区的最大车辆数,再通过查表得出绿延时t2。因此,交通灯控制程序主要由队长数据采集程序、绿延时查表程序、灯亮程序和时间显示程序组成。下面主要介绍绿延时查表程序和时间显示程序。
绿延时查表程序:将固定的最小时间t1=15s存入数据寄存器D10,根据模糊控制查询表3得到的绿延时t2存入数据寄存器D11~D31中,经过比较得出的待显示绿灯方向处于检测区的最大车辆数m存入变址寄存器V中,最后将得到的东西方向或南北方向绿灯亮的总时间分别存入数据寄存器D0或D1中,程序梯形图如图3所示。当东西方向黄灯熄灭时,将待显示绿灯方向(南北方向)处于检测区的最大车辆数m(设为12)存入变址寄存器V中,则将D22(10+12=22)中的值25写入D2中,然后加上固定时间15s即40s写入D0中,作为南北方向绿灯(东西方向红灯)的时间显示,D0减去6得34s即D4为绿灯亮时间,然后3s用于绿灯闪烁,3s用于黄灯亮。
图3 南北方向绿延时查表程序
数码显示程序:当东西方向黄灯熄灭时(Y11产生负跳变),将得到的南北方向总的绿延时时间D0(40s)写入D6中,秒脉冲M8013使D6中的数每秒钟减1,通过BCD码变换指令将D6中的数据转换为BCD码送到输出端Y0~Y7,经过CD4511用于两个七段数码管显示。程序梯形图如图4所示,其中M为辅助继电器。
图4 南北方向时间显示程序
4 结束语
城市交通的智能控制是一种必然趋势, 而模糊控制是其中较有效的方法之一。本文中用PLC设计的模糊控制器,可对十字路口交通灯进行控制。经过调试运行,结果表明该控制器可靠性高, 适应性强, 实时性好。可以有效地改善十字路口的通行能力,为优化城市交通控制提供了一种参考方法。用PLC作为控制器的核心, 使控制器编程简单灵活, 操作方便。由于PLC联网通信功能强,也便于构成智能交通控制系统。