基于FPGA的智能交通灯模糊控制的设计

基于FPGA的智能交通灯模糊控制的设计,第1张

1 概述

为了解决城市交通拥挤的问题,需要从供求两个方面来采取措施:一是加强城市道路的基础建设,二是要充分利用、提高现有路网的利用效率。目前,国内的城市交通灯大多数都是采用固定的绿信比(一个信号相位的有效绿灯时长与周期时长之比),不能满足交叉路口车辆的时变性要求。

模糊控制技术作为智能控制的重要分支之一,它的最大特点是针对各类具有非线性、强耦合、不确定性、时变的多变量复杂系统,在各个控制领域中得到广泛的应用,并取得良好的控制效果。在城市道路中存在大量的平面交叉路口,交叉路口一般可以分成十字形、X形、T行、Y行和多路交叉形,本文以十字形交叉路口作为研究对象。

在平面交叉路口上某一支或者几支交通流所获得的通行权称为信号权,简称相位。一个周期内有几个信号相位,则称该信号系统为几相位系统。本文以双向6车道4相位系统为例。第1相位东西方向交通流直行,第2相位东西方向交通流左转,第3相位南北方向交通流直行,第4相位南北方向交通流左转,所有右转方向交通流不予控制。其交通运行图如图1所示。

基于FPGA的智能交通灯模糊控制的设计,FPGA的模糊控制交通灯控制方案设计,第2张

图1 4相位交通运行图

2 模糊控制器的设计

模糊控制器通常包括模糊化接口数据库、规则库、模糊推理机和解模糊接口5部分,如图2所示。

基于FPGA的智能交通灯模糊控制的设计,FPGA的模糊控制交通灯控制方案设计,第3张

图2 模糊控制器的组成

2.1 隶属度函数

为了完成输入的模糊化,必须知道输入精确值对模糊化的隶属度函数,如取7个,即PL(正大)、PM(正中)、PS(正小)、ZE(零)、NS(负小)、NM(负中)、NL(负大)。在精度要求比较高的情况下可以采用正态分布,一般情况下可取三角形或者梯形,本文采用三角形的隶属度函数。

在红灯期间,取线圈感应取为100 m,车身及车距平均距离取5 m,将测得的车辆排队长度P看作模糊变量。其论域为:
P={1,3,5,7,9,11,13,15,17,19,21}
取7个语言值,其赋值表如表1所列。

基于FPGA的智能交通灯模糊控制的设计,FPGA的模糊控制交通灯控制方案设计,第4张

 

表1 P赋值表

当前相位车队长度与下一相位的车队长度之差Q作为绿灯延迟的修正值。其论域为:
Q={-12,-9,-6,3,0,3,6,9,12}
取7个语言值,其赋值表如表2所列。

基于FPGA的智能交通灯模糊控制的设计,FPGA的模糊控制交通灯控制方案设计,第5张

 

表2 Q赋值表

一般情况下,为了避免车辆来不及通过,绿灯时间不低于20 s;为了避免车辆等待时间太长,绿灯时间不超过60 s。绿灯的追加时间看作模糊量g。总的追加时间的论域为:
T={4,8,12,16,20,24,28,32,36}
取7个语言值,其赋值表如表3所列。

基于FPGA的智能交通灯模糊控制的设计,FPGA的模糊控制交通灯控制方案设计,第6张

 

表3 T赋值表

2.2 车辆检测器

采用环形线圈式,金属线圈埋在地下,构成LC振荡回路。受车身铁磁材料的影响,电感量发生变化,根据电感不同可知车辆通过时的脉冲,从而推算出车辆通过的频率。

2.3 控制器的设计

本文采用二维模糊控制器,二维指的是模糊控制器的输入变量有两个,而控制器的输出只有一个。这类模糊规则的一般形式为:
IF X1 IS Ai AND X2 IS Bi THEN Y IS Ci

由控制规则得到模糊控制规则表,如表4所列。

基于FPGA的智能交通灯模糊控制的设计,FPGA的模糊控制交通灯控制方案设计,第7张

 

表4 模糊控制规则表

3 模糊控制的FPGA实现 3.1 Spartan3A/3AN介绍

FPGA具有性能好、规模大、可重复编程、开发投资小等优点,在现代电子产品中应用得越来越广。使用Xilinx的Spartan3A/3AN FPGA时,ISE是必备的设计工具。它可以完成开发的全部流程,包括设计输入、仿真、综合、布局布线、生成BIT下载文件、配置和在线调试等[4]。本文采用EElements ISE Development Kit开发套件和ISE10.1软件设计工具,建立模糊控制交通灯系统工程,如图3所示。

基于FPGA的智能交通灯模糊控制的设计,FPGA的模糊控制交通灯控制方案设计,第8张

 

图3 模糊控制交通灯系统工程图

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/dianzi/2617888.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-08-10
下一篇 2022-08-10

发表评论

登录后才能评论

评论列表(0条)

保存