热门标签:代写本科论文 写作发表 工程师论文 代写一篇论文多少钱
当前位置: 代写一篇论文多少钱 > 工程师论文 > 智能交通灯控制系统设计探索

智能交通灯控制系统设计探索

时间:2019-06-11 13:46作者:曼切
本文导读:这是一篇关于智能交通灯控制系统设计探索的文章,伴随着社会经济的逐步发展, 道路使用者数量也在不断增加, 现有交通设施提供的资源有限, 城市交通问题已经成为人们所关注的热点。

  摘    要: 交通灯控制着人来人往, 但是固化的交通灯控制系统, 不仅无法处置突发状况, 而且也是一种时间上的浪费。本课题将设计一种智能化交通灯信号灯系统, 在正常路口信号灯运行基础上, 缓解交通拥堵现象, 节省时间和费用。

  关键词: 公安技术类; 智能; 交通灯;

  0 、引言

  伴随着社会经济的逐步发展, 道路使用者数量也在不断增加, 现有交通设施提供的资源有限, 城市交通问题已经成为人们所关注的热点。与此同时, 世界各地的自驾游日益增多, 私家车的数量急剧增加, 国内交通灯控制系统的问题逐渐显现, 其他国家也需要对其本国的交通灯控制系统做出优化, 以便更好适应这种不断增长的需求。基于传统交通灯控制系统设计过于死板, 红绿灯交替时间过于程式化的缺点, 智能交通灯控制系统的设计就显示出了它的研究意义。

  1 、交通信号控制系统国内外发展现状

  交通信号控制系统是现代城市交通控制和疏导的主要措施。平面交叉路口, 作为城市交通的基本组成部分之一, 其通行能力是解决城市交通问题的核心, 而交通信号灯又是平面交叉路口必不可少的交通控制手段。伴随着计算机技术和自动控制技术的发展, 以及交通流理论的不断发展完善, 交通运输组织与优化理论、技术的不断提高, 国内外逐渐形成了一批高水平有实效的城市道路交通控制系统[1]。本次课题从交通灯控制系统这个点切入, 进行相关研究。

  2 、智能交通灯控制系统的设想

  本文采用软件和硬件相结合的设计方案, 自动控制十字路口四组红、绿交通灯的状态转换, 指挥各种车辆和行人安全通行, 实现道路的最大通行效率, 减轻交警路面指挥压力。

智能交通灯控制系统设计探索

  2.1、 Arduino系统简介

  选用Arduino Due作为本次实验的控制板, 和其他Arduino控制板不同的是, 它是第一块基于32位ARM核心的Arduino控制板, 比以往使用8位AVR核心的其他Arduino更加强大;内部集成DMA控制器, 极大地提高了运算速度;同时拥有84Mhz的CPU时钟频率、96KBytes的SRAM和512KBytes的Flash, 能满足更快速度和更大存储容量的应用需求。需要注意的是, Arduino Due的运行电压是3.3V, I/O引脚的最大容忍电压是3.3V, 所以实验过程必须确保将电压控制在3.3V以下[2]。

  2.2、 ESP8266模块

  这个小模块允许微控制器连接到Wi-Fi网络, 并使用Hayes风格的命令进行简单的TCP/IP连接。处理器基于Tensilica Xtensa Diamond Standard 106Micro的L106 32位RISC微处理器内核, 运行频率为80 MHz。内存如下:

  (1) 32KB指令RAM;

  (2) 32KB指令缓存RAM;

  (3) 80KB用户数据RAM;

  (4) 16KB ETS系统数据RAM。

  外部QSPI flash:支持最高16MB (通常包括51 KB至4MB) 。

  ESP8266引脚排列如表1所示:

  表1 ESP8266引脚排列
表1 ESP8266引脚排列
表1 ESP8266引脚排列

  2.3、 实验规划

  移动端和交通信号灯硬件互联采用网络层的TCP/IP协议, TCP (Transmission Control Protocol传输控制协议) 是一种面向连接的、可靠的、基于字节流的传输层通信协议。[3]实现该协议传输硬件端使用esp8266WIFI模块, 通过硬件端的Arduino Due与esp8266的串口通信, 将AT指令传输给WIFI模块, 该模块在收到指令后可以按照指令完成配置功能, 选择模式, 发送数据等相关任务。移动端使用套接字与esp8266通信, 移动端将指令用TCP数据包的形式发送给esp8266模块, esp8266收到指令后通过串口传给Arduino Due单片机, 单片机按照程序的指令映射控制红绿灯的变化。

  3、 功能介绍

  嵌入了单片机的加通红绿灯信号系统使得交通警察可以在Android平台终端, 例如手机, 平板等, 通过Wi-Fi协议远程连接周边的交通信号灯, 实现监视, 调控等功能。程序设计分为三种模式:监视模式、手动模式、应急模式。

  通常情况下, 信号灯按照原指令运行, 需要时, 交警打开移动终端的Wi-Fi, 连接上红绿灯发出的信号, 输入用户名密码即可以进入监视模式。监视模式下, 红绿灯的当前状态会实时显示在手机屏幕上, 包括倒计时、信号灯目前颜色、红绿灯参数, 部分带有太阳能电池的红绿灯也应当在屏幕上显示剩余电量。如遇特殊情况, 软件允许交警立刻切换为应急模式, 以此应对不同的紧急情况, 例如:火情, 警情, 大型活动道路管控等。此情形下, 交警可以对多个街区的道路信号灯进行统筹管理, 而不需要对单独的红绿灯进行设置, 只需选择具体路线, 再启动所需模式和预设的应急方案, 即可完成对路面的管控。极端情况下, 可以使用纯手动模式, 完全按照人工指令来显示需要的红绿灯模式, 但是此模式必须使用授权码才可以进入。

  4、 模块化设计与编程

  4.1、 Arduino Due与esp8266的串口通信

  Arduino串口用于Arduino电路板之间、Arduino与电脑、Arduino与其他串口设备之间的通信, 大部分Arduino板使用数字引脚0 (RX) 和1 (TX) 进行串口通信时都使用“Serial”, 数字引脚0 (RX) 和1 (TX) 与Arduino USB接口的读和写引脚是公用的。所以在程序上传时数字引脚0 (RX) 和1 (TX) 不可以接其他串口设备, 否则会出现上传错误的情况。Arduino Due有三个额外的串口 (3.3V TTL) :Serial1对应数字引脚19 (RX) and 18 (TX) ;Serial2对应数字引脚17 (RX) and 16 (TX) ;Serial3对应数字引脚15 (RX) and 14 (TX) 。本项目使用serial1, 也就是19 (RX) and 18 (TX) 两对数字引脚与esp8266模块通信, 其他引脚用来连接交通信号灯和传感器等。

  图1 主模块与控制板连接示意图
图1 主模块与控制板连接示意图

  4.1.1、 ESP8266预配置

  ESP8266支持flash, 在正式连接其与电路板时, 先使用串口转USB工具对其进行预配置, 这种配置会直接保存入FLASH, 查询版本固件号:AT+GMR, 必要的话, 更新ESP8266的版本固件。具体配置指令如下:

  (1) AT+CWMODE_DEF=2;//设置当前Wi-Fi模式并保存到Flash (1:Station模式, 2:SoftAP模式, 3:SoftAP+Station模式) ;

  (2) AT+CWSAP_DEF=<ssid>, <pwd>, <chl>, <ecn>[, <max conn>][, <ssid hidden>]//配置ESP8266 SoftAP当前参数, 保存到Flash (指令只有在SoftAP模式开启后有效) 。

  4.1.2、 ESP8266与Arduino Due接线

  配置完成后按照表2将Arduino Due与ESP8266连接:

  表2 Arduino Due与ESP8266连接对应表
表2 Arduino Due与ESP8266连接对应表

  4.1.3、 嵌入AT指令对ESP8266初始化

  每次对Arduino Due上电都包括对esp8266的初始化。将AT指令编入Arduino Due控制板中, 在setup () 函数中调用初始化函数。初始化核心步骤如下:

  (1) AT;

  (2) AT+RST//重启;

  (3) AT+CIPMUX=1//多连接模式 (0:单连接模式, 1:多连接模式) ;

  (4) AT+CIPSERVER=1, 8080//建立TCP服务器, 端口号8080。

  4.2、 通信Function和Method

  使用初始化函数建立起Arduino Due与esp8266的稳定通信渠道后, Arduino与esp8266开始进行数据交换, 主要采用的为print () 函数和AT+CIPSEND指令, 该函数可以将AT指令从串口从Arduino Due发送至esp8266模块, esp8266模块在接收到AT+CIPSEND指令后可以将数据通过Wi-Fi发送给已连接的客户端 (Client) , 客户端使用readLine () 来读取信息;同理, 客户端使用write () 函数向esp8266发送指令, esp8266读取指令后, 再用print () 函数, 将指令传给Arduino due。通讯示意图如图2。

  图2 通讯示意图
图2 通讯示意图

  4.3、 移动端部分

  移动端开发主要采用Android Studio。Android Studio是谷歌推出的一个Android集成开发工具, 在IDEA的基础上, Android Studio提供了功能强大的布局编辑器, 可以拖拉UI控件并进行效果预览。

  4.3.1、 用户界面设计 (User Interface)

  图3 用户界面设计流程图
图3 用户界面设计流程图

  4.3.2、套接字程序设计 (Socket)

  套接字是TCP用主机的IP地址加上主机上的端口号作为TCP连接的端点。

  Socket被服务器端用来识别连入的客户端, 使用stream来进行通讯:getOutputStream () , getInputStream () 。

  因为本服务器端支持多客户端连接, 服务器采用线程 (Thread) 来连接多客户端, 以此提高效率避免blocks。

  图4 ObjectStream客户端----服务器时间线
图4 ObjectStream客户端----服务器时间线

  图5 多线程服务器时间线
图5 多线程服务器时间线

  5、 展望

  对多个交通红绿灯信号分析是必然趋势, Maram Bani Younes和Azzedine Boukerche在An Intelligent Traffic Light Scheduling Algorithm Through VANETs文中提到了ITLC算法, 其旨在减少每个道路交叉口的等待延迟时间并增加路口单位时间内的车流量, 该算法通过分析环境交通流的交通车流量特性, 使得每个交通灯处的排队延迟减少了25%, 车流量增加了30%。该算法利用Ad-hoc技术收集每个环境交通流量的实时交通特征, 准备区域被划分在信号化道路交叉点, 以确定每个阶段的最大允许时间[4]。

  交通规划者长期使用历史数据来制定信号灯方案, 优化“绿灯时间”以改善交通流量, 这些复杂的系统会使用不同时间、日期、计划和传感器来检测等待红灯的车辆。美国犹他州交通局可以在30秒内调整该州的几乎所有信号, 其拥有来自一千多个闭路摄像机的数据, 可远程控制该州80%以上的交通信号灯。不同于以往使用人力来监测和响应交通流量, 新信号使用雷达传感器和摄像头来检测交通状态, 使用复杂的算法根据实时情况立即调整交通信号灯。匹兹堡卡内基梅隆大学机器人研究所的史蒂芬·史密斯教授和他的团队在2012年安装了9个智能信号, 并获得了立竿见影的结果。通过道路的行程时间缩短了25%, 闲置时间下降了40%, 车辆排放量下降了20%[5]。

  最终, 交通信号灯可能会实现在无须“预测”交通车流量的情况下, 与交通工具相连接, 直接“询问”车辆出行方案, 并以此为依据改变相应的交通信号灯计划。

  参考文献

  [1]毕海滨, 刘玉德, 林建龙, et al.交通信号控制系统的现状与发展对策[J].北京工商大学学报:自然科学版, 2008, 26 (1) :29-32.
  [2] 乐鑫信息科技.ESP8266 AT指令集, 版本3.0.1.
  [3] university of Purdue-CS18000:Problem Solving and Object-Oriented Programming-JAVA Networking.
  [4] Bani Younes M, Boukerche A.[IEEE 2014 IEEE 39th Conference on Local Computer Networks Workshops (LCNWorkshops) -Edmonton, AB, Canada (2014.9.8-2014.9.11) ]39th Annual IEEE Conference on Local Computer Networks Workshops-An Intelligent Traffic Light scheduling algorithm through VANETs[J].2014:637-642.
  [5] Barry K.The Traffic Lights of Tomorrow Will Actively Manage Congestion[J].Korean Journal of Radiology Official Journal of the Korean Radiological Society, 2014, 16 (4) :936-41.

联系我们
  • 写作QQ:79211969
  • 发表QQ:78303642
  • 服务电话:18930620780
  • 售后电话:18930493766
  • 邮箱:lunwen021@163.com
范文范例
网站地图 | 网站介绍 | 联系我们 | 服务承诺| 服务报价| 论文要求 | 期刊发表 | 服务流程