基于ARM的六相位交通信号机设计

时间:2012-07-27来源:网络

传统的RS 232/RS 485串口,存在通信距离短、传输速率低等缺陷,不能满足未来交通控制系统联网的要求,因此本文为信号机设计了10/100Mb/s以太网接口。LM3S8962自带有10/100以太网控制器,包括完全集成的媒体访问控制器(MAC)和网络物理(PHY)接口器件。为了实现信号电平耦合与阻抗匹配,避免信号机系统与以太网之间相互干扰,本文在PHY和RJ 45接口之间连接网络变压器HR601680,将发送和接收信号线分别与PHY,RJ 45对应连接。以太网接口如图3所示。

e.JPG


2.5 绿冲突检测模块
绿冲突检测是系统自检的重要部分,检测同一时刻6个相位是否有2个或2个以上冲突相位的绿灯信号同时被点亮的情况。本文利用8位数据并入串出芯片74HC165为信号机设计了绿冲突检测电路,使用LM3S8962的3个GPIO端口PB7,PA4,PG1分别控制74HC165的并行数据加载、时钟脉冲输入和串行数据的读取,74HC165的8个输入端分别接至6个相位及2路人行道的绿灯信号。LM3S8962根据读取的绿灯信号状态及绿冲突判断规则判定是否发生绿冲突。

3 系统软件设计
系统软件包括设备驱动、控制软件以及网络通信协议三部分。
3.1 设备驱动
设备驱动程序作为系统软件的基础,是硬件设备的接口,应用程序通过这个接口才能控制硬件设备的工作。本信号机系统的驱动程序包括:FLASH读写驱动、SSI驱动、以太网控制器驱动、DS1302读写驱动、74HC165驱动等。
3.2 uIP协议
为了实现以太网通信,需要移植网络通信协议。uIP协议栈是为小型嵌入式微处理器设计的微型TCP/IP协议栈,提供必需的网络协议。本文为信号机系统移植uIP0.9协议栈,将信号机系统配置为一个小型WEB服务器。应用程序中监听80端口,从uip_conn结构体中读取当前连接的相关信息,由uip_connected()判断远程主机是否连接上本机,由uip_newdata()判断是否接收到远程主机的新数据,由uip_send()向远程主机发送数据包。
3.3 软件功能模块
系统控制软件是信号机软件的核心,本文采用模块化的设计方法,将控制软件按功能分为初始化、方案处理、秒时段处理、绿冲突检测、按键处理、通信等5个模块。
初始化包括硬件和软件初始化,硬件初始化包括对片内FLASH、DS1302芯片、液晶模块、以太网接口等的测试,软件初始化包括初始化信号机参数、清除标志等。
方案处理从FLASH中读取系统控制模式、工作时段、信号配时、通行相序等信号机的基本工作参数,并存入特定的数据结构,供其他模块调用。
秒时段处理由每秒中断一次的定时器完成各相位灯色信号输出、为各相倒计时时间计数、切换通行相位等任务。
绿冲突检测由定时器每隔特定的时间完成检测各相位是否发生绿灯信号冲突的任务。若发生绿冲突,进行声光报警并进入黄闪控制。
按键处理由外部中断服务程序完成查询系统状态、修改系统参数、更改系统工作模式等任务。
通信部分为信号机与监控中心的以太网通信,完成接收监控中心的控制命令、发送信号机状态参数等任务。
3.4 软件流程
信号机上电后,首先进行初始化,如果初始化能够正常完成,则进入方案处理,从FLASH中取出各控制模式对应的工作参数并存入特定的数据结构中,之后系统默认进入多时段控制模式,根据当前时段的工作参数执行对应的控制。当定时器产生1 s中断时,进入秒时段处理输出灯色、倒计时信号。当接收到按键请求时,进入外部中断处理程序响应用户请求。当接收到远程主机命令或者发送数据给远程主机时,进入通信处理模块。信号机每隔一定的时间间隔进入绿冲突检测模块,检测绿灯冲突。

1 2 3 4

关键词: 信号机 设计 交通 六相位 ARM 基于

加入微信
获取电子行业最新资讯
搜索微信公众号:EEPW

或用微信扫描左侧二维码

相关文章

查看电脑版