张晶莹
(天津城市建设管理职业技术学院,天津 300134)
交通是社会经济的“血液循环系统”,是制约经济发展的瓶颈。城市交通问题,是困扰城市发展、制约城市经济建设的重要因素,人们对交通有效控制的意识越来越强烈。但由于目前的交通信号控制机大多数是进口设备,价格昂贵,兼容性差,且维护不便;另一方面,由于传统交通控制系统采用有线敷设的方式,建设成本偏高,施工困难,建设周期长,维护不便,而且网络成本、网络规模、信道共享等都存在一定的局限性。如果采取无线技术取代有线,上述的大部分问题都能够得到很好的解决。因此,基于GPRS的交通信号控制系统的研制,具有一定的经济效益。
系统由交通信号机、数据中心服务器/客户端、GPRS无线数据通信模块(GPRS DTU)、移动网络以及因特网组成。交通信号机安置在交通路口,数据中心服务器设在交通指挥中心,客户端可设在各交通支队,分别具有不同的权限。交通信号机的控制核心——数字信号处理器DSP,集成有RS-232全双工方式的通讯口,通过与GPRS通信模块RS232连接,可实现交通信号机与数据中心服务器/客户端的联网通讯。采用RS232串口电路和GPRS模块,利用移动网络与因特网实现无线通信。此方法的益处,是不用破坏路面,连网方便[1]。通讯前,需要协调中央控制计算机与DSP的通讯格式,采用一致的通讯协议和组态数据(包括起始位,停止位,波特率,奇偶校验及数据长度等数据)。
信号机的硬件,采用模块化设计,选择以TMS320F 2812型DSP为核心控制单元,连接驱动元件、存储器和电源等组成控制主板,它与信号灯驱动板、GPRS模块、LCD屏和按键构成交通信号机的硬件。
本设计选用TMS320F281x系列中的TMS320F2812型DSP,其主要特点有:采用高性能静态CMOS技术,主频可达150 MHz,FLASH编程电压为3.3 V;片内集成128 k×16的Flash和8 k×16单访问周期的RAM存储器;支持动态改变锁相环的倍频数,片内集成看门狗定时模块;支持多种串口通信包括 SCI、SPI、UART 和 e CAN 等[2]。
本设计采用串行通信,RS232接口电路用来实现上位机和DSP的数据传输,将预设方案从上位机发送到DSP,DSP将信号机的运行状态反馈给上位机。硬件上,DSP的SCI引脚RXA和TXA直接连接到RS232电平转换芯片MAX3232来实现。两个RS232接口,一个用于有线连接,另一个用于无线连接。
GPRS是通用分组无线业务(General Packet Ra-dio Service)的英文简称[3]。本系统选用的无线通信模块,是结合西门子工业级MC55无线通讯模块,配有串行通讯接口(RS-232/422/485),通过GPRS自动上线接入因特网进行拨号,并具有自动上线注册机制。因此可以直接与任何带有串行接口的终端设备连接,实现完成透明数据传输,提供基于互联网的完备处理机制和方便标准的二次开发能力,为不具备TCP/IP协议处理功能的终端设备,提供基于互联网的完善无线通信能力。
城市交通控制的目标,是期求最大的通行效率,该目标是通过系统软件设计的实现。系统采用C语言开发,主要实现功能是交通信号机控制、串口通讯、液晶显示驱动等,同时还包括系统初始化、中断、定时等与硬件相关的工作[4]。系统将提供若干套交通控制方案,可通过串口无线发送方案号或本地键盘控制交通信号机执行相应方案,实时返回运行方案号,LCD显示运行方案,并且可通过上位机发送命令,随时监听各路口的交通运行情况。
系统程序采用模块化设计。整个程序分为:初始化程序、主程序、信号灯控制程序、按键程序、串口中断程序、LCD显示程序等。主程序流程图如图1所示。
图1 主程序流程图
首先系统初始化,关中断起到对LCD和RS232初始化程序的保护作用,之后使能全局中断,主程序不断扫描是否有按键,如果有键盘键入,执行信号灯控制程序,全局也可通过串口中断方式,无线控制交通运行方案。方案选择是通过无线通信发送方案号或本地键盘控制交通方案,方案包括十字路口的运行方案(区别在于红绿灯的时间不同)、主干道通行程序(绿通带)和黄闪控制程序(4个路口都有黄灯闪烁表示允许所有的车辆慢速通过)。
串口中断程序主要功能,是实现串口的收发数据,包括数据服务中心对交通方案的发送与接收和键盘控制运行方案向数据服务中心的发送。此外,数据服务中心可发送监听命令0x00,实时监听各路口信号机当前运行情况。
串口通信程序采用中断控制方式,流程图如图2所示。
图2 RS232通信程序流程图
主要包括串口初始化函数InitSci(),串口中断发送函数SCITX_ISR(),串口中断接收函数SCIRX_ISR()。
本系统实现的是多路口在线监控,上位机一方面可以通过无线发送方案号给交通信号机,改变交通运行方案。对于方案的改变,无论无线发送还是键盘控制,都可以向数据服务中心即时反馈;另一方面,可在线监听各路口交通灯运行情况,包括动态IP、登陆时间、最后通讯时间、当前运行方案等;并且在服务器端开发数据库管理系统,包括系统登录、方案管理、交通控制管理和系统维护这4个模块,对交通数据进行维护。
本系统后台采用Microsoft SQL Server 2000数据库,该数据库系统在准确性、安全性和运行速度方面,有绝对优势,并且效率高,处理数据量大;前台采用微软公司的Visual Studio 2005作为主要的开发工具,实现与SQL Server 2000数据库无缝链接,开发语言采用C#。系统运行平台可以是Windows XP(SP2)/2000(SP4)/Windows Server 2003(SP1),运行环境为Microsoft.NET Framework SDK v2.0。
Winsock的接口函数封装了TCP/IP协议的各种功能。.NET Framework Socket类是Winsock32 API提供的套接字服务的托管代码版本。在大多数情况下,Socket类方法只是将数据封送到它们的本机Win32副本中,并处理任何必要的安全检查。一个系统的通信,首先要建立服务器端和客户端,需要分别创建套接字(socket),然后再绑定通讯地址,建立监听后方可完成通讯。Winsock网络编程流程图如图3所示。
图3 Winsock网络编程流程图
本系统采用SQL Server2000作为后台数据库,数据库命名为tramagsys。在VS.NET开发环境中,C#利用ADO.NET进行数据库开发的基本步骤,总的来说经历了这样的几个过程[5]:
(1)创建和数据库tramagsys连接的Connection对象;
(2)配置Data Adapter对象并创建和操作数据集Data Set;
(3)把 tramagsys数据库中的表添加到 Data Set中;
(4)把数据集Data Set绑定到用户界面的Data Grid上;
(5)运行程序时,利用SqlDataAdapter把数据填充到Data Set中,最终的数据库中的数据显示在用户界面的Data Grid中。
根据数据中心服务器接入Internet的不同方式,本文提出了4种组网方案:
(1)数据中心直接使用合法的固定IP地址;(2)数据中心没有固定的IP地址,通过路由器端口映射获得固定IP地址;
(3)数据中心采用动态IP地址;
(4)用户数据中心通过专线方式直接连接到GPRS网络。
本系统选用了方案(3),数据中心没有固定的全局IP地址,通过ADSL调制解调器连接到因特网。ADSL Modem上电自动拨号获得动态IP地址,在数据中心安装动态域名解析服务程序;GPRS DTU设备上的服务端IP和端口号设置为数据中心服务器的域名和侦听端口号,如果是TCP连接方式,则自动与ADSL等调制解调器建立可靠的TCP连接。
系统通信方式可分为两种:
(1)服务器端—DTU终端方式通信;
(2)客户端—服务器端—DTU终端方式通信。方式(2)是客户端和DTU终端均与服务器联网,服务器作为传输中介。
一方面,通过服务器端或客户端向各路口交通信号机发送方案,控制交通灯运行,并向服务器端和客户端即时反馈运行情况;
另一方面,现场键盘控制交通方案,并向服务器端即时反馈运行情况,所有记录出现在界面的报文监视中,并生成log文件存在硬盘。
此外,服务器端可对任意路口发送“0x00”监听命令,交通信号机实时返回当前交通运行情况。实现实时监听,提高系统可靠性。
城市交通一直是困扰城市建设的重要因素,采用有效的交通控制系统,可以提高交通车辆通行率,减少交通事故的频繁发生,实现交通的实时性、快速性和安全性,具有一定的现实意义。创新将GPRS无线通信运用到交通控制系统中,具有使用成本低、准确性高、对环境适应性好、易于安装、易于维护等特点。
[1]陈以蒙,王亦军.一种基于GPRS的DSP与PC机通信系统[J].浙江科技学院学报,2004,16(4):236-238.
[2]苏奎峰,吕 强,耿庆锋,陈圣俭.TMS320F2812原理与开发[M].北京:电子工业出版社,2005.
[3]贝 茨,朱洪波,沈越泓,蔡跃明.通用分组无线业务(GPRS)技术与应用[M].北京:人民邮电出版社,2004.
[4]杨钢锋,毛汉领,黄振峰.交通信号机基于DSP的解决方案设计[J].交通与计算机,2008,26(2):79-81.
[5]赛奎春.明日科技.Visual C#开发技术大全[M].北京:人民邮电出版社,2007.