張晶瑩
(天津城市建設(shè)管理職業(yè)技術(shù)學(xué)院,天津 300134)
交通是社會(huì)經(jīng)濟(jì)的“血液循環(huán)系統(tǒng)”,是制約經(jīng)濟(jì)發(fā)展的瓶頸。城市交通問題,是困擾城市發(fā)展、制約城市經(jīng)濟(jì)建設(shè)的重要因素,人們對(duì)交通有效控制的意識(shí)越來越強(qiáng)烈。但由于目前的交通信號(hào)控制機(jī)大多數(shù)是進(jìn)口設(shè)備,價(jià)格昂貴,兼容性差,且維護(hù)不便;另一方面,由于傳統(tǒng)交通控制系統(tǒng)采用有線敷設(shè)的方式,建設(shè)成本偏高,施工困難,建設(shè)周期長,維護(hù)不便,而且網(wǎng)絡(luò)成本、網(wǎng)絡(luò)規(guī)模、信道共享等都存在一定的局限性。如果采取無線技術(shù)取代有線,上述的大部分問題都能夠得到很好的解決。因此,基于GPRS的交通信號(hào)控制系統(tǒng)的研制,具有一定的經(jīng)濟(jì)效益。
系統(tǒng)由交通信號(hào)機(jī)、數(shù)據(jù)中心服務(wù)器/客戶端、GPRS無線數(shù)據(jù)通信模塊(GPRS DTU)、移動(dòng)網(wǎng)絡(luò)以及因特網(wǎng)組成。交通信號(hào)機(jī)安置在交通路口,數(shù)據(jù)中心服務(wù)器設(shè)在交通指揮中心,客戶端可設(shè)在各交通支隊(duì),分別具有不同的權(quán)限。交通信號(hào)機(jī)的控制核心——數(shù)字信號(hào)處理器DSP,集成有RS-232全雙工方式的通訊口,通過與GPRS通信模塊RS232連接,可實(shí)現(xiàn)交通信號(hào)機(jī)與數(shù)據(jù)中心服務(wù)器/客戶端的聯(lián)網(wǎng)通訊。采用RS232串口電路和GPRS模塊,利用移動(dòng)網(wǎng)絡(luò)與因特網(wǎng)實(shí)現(xiàn)無線通信。此方法的益處,是不用破壞路面,連網(wǎng)方便[1]。通訊前,需要協(xié)調(diào)中央控制計(jì)算機(jī)與DSP的通訊格式,采用一致的通訊協(xié)議和組態(tài)數(shù)據(jù)(包括起始位,停止位,波特率,奇偶校驗(yàn)及數(shù)據(jù)長度等數(shù)據(jù))。
信號(hào)機(jī)的硬件,采用模塊化設(shè)計(jì),選擇以TMS320F 2812型DSP為核心控制單元,連接驅(qū)動(dòng)元件、存儲(chǔ)器和電源等組成控制主板,它與信號(hào)燈驅(qū)動(dòng)板、GPRS模塊、LCD屏和按鍵構(gòu)成交通信號(hào)機(jī)的硬件。
本設(shè)計(jì)選用TMS320F281x系列中的TMS320F2812型DSP,其主要特點(diǎn)有:采用高性能靜態(tài)CMOS技術(shù),主頻可達(dá)150 MHz,F(xiàn)LASH編程電壓為3.3 V;片內(nèi)集成128 k×16的Flash和8 k×16單訪問周期的RAM存儲(chǔ)器;支持動(dòng)態(tài)改變鎖相環(huán)的倍頻數(shù),片內(nèi)集成看門狗定時(shí)模塊;支持多種串口通信包括 SCI、SPI、UART 和 e CAN 等[2]。
本設(shè)計(jì)采用串行通信,RS232接口電路用來實(shí)現(xiàn)上位機(jī)和DSP的數(shù)據(jù)傳輸,將預(yù)設(shè)方案從上位機(jī)發(fā)送到DSP,DSP將信號(hào)機(jī)的運(yùn)行狀態(tài)反饋給上位機(jī)。硬件上,DSP的SCI引腳RXA和TXA直接連接到RS232電平轉(zhuǎn)換芯片MAX3232來實(shí)現(xiàn)。兩個(gè)RS232接口,一個(gè)用于有線連接,另一個(gè)用于無線連接。
GPRS是通用分組無線業(yè)務(wù)(General Packet Ra-dio Service)的英文簡稱[3]。本系統(tǒng)選用的無線通信模塊,是結(jié)合西門子工業(yè)級(jí)MC55無線通訊模塊,配有串行通訊接口(RS-232/422/485),通過GPRS自動(dòng)上線接入因特網(wǎng)進(jìn)行撥號(hào),并具有自動(dòng)上線注冊(cè)機(jī)制。因此可以直接與任何帶有串行接口的終端設(shè)備連接,實(shí)現(xiàn)完成透明數(shù)據(jù)傳輸,提供基于互聯(lián)網(wǎng)的完備處理機(jī)制和方便標(biāo)準(zhǔn)的二次開發(fā)能力,為不具備TCP/IP協(xié)議處理功能的終端設(shè)備,提供基于互聯(lián)網(wǎng)的完善無線通信能力。
城市交通控制的目標(biāo),是期求最大的通行效率,該目標(biāo)是通過系統(tǒng)軟件設(shè)計(jì)的實(shí)現(xiàn)。系統(tǒng)采用C語言開發(fā),主要實(shí)現(xiàn)功能是交通信號(hào)機(jī)控制、串口通訊、液晶顯示驅(qū)動(dòng)等,同時(shí)還包括系統(tǒng)初始化、中斷、定時(shí)等與硬件相關(guān)的工作[4]。系統(tǒng)將提供若干套交通控制方案,可通過串口無線發(fā)送方案號(hào)或本地鍵盤控制交通信號(hào)機(jī)執(zhí)行相應(yīng)方案,實(shí)時(shí)返回運(yùn)行方案號(hào),LCD顯示運(yùn)行方案,并且可通過上位機(jī)發(fā)送命令,隨時(shí)監(jiān)聽各路口的交通運(yùn)行情況。
系統(tǒng)程序采用模塊化設(shè)計(jì)。整個(gè)程序分為:初始化程序、主程序、信號(hào)燈控制程序、按鍵程序、串口中斷程序、LCD顯示程序等。主程序流程圖如圖1所示。
圖1 主程序流程圖
首先系統(tǒng)初始化,關(guān)中斷起到對(duì)LCD和RS232初始化程序的保護(hù)作用,之后使能全局中斷,主程序不斷掃描是否有按鍵,如果有鍵盤鍵入,執(zhí)行信號(hào)燈控制程序,全局也可通過串口中斷方式,無線控制交通運(yùn)行方案。方案選擇是通過無線通信發(fā)送方案號(hào)或本地鍵盤控制交通方案,方案包括十字路口的運(yùn)行方案(區(qū)別在于紅綠燈的時(shí)間不同)、主干道通行程序(綠通帶)和黃閃控制程序(4個(gè)路口都有黃燈閃爍表示允許所有的車輛慢速通過)。
串口中斷程序主要功能,是實(shí)現(xiàn)串口的收發(fā)數(shù)據(jù),包括數(shù)據(jù)服務(wù)中心對(duì)交通方案的發(fā)送與接收和鍵盤控制運(yùn)行方案向數(shù)據(jù)服務(wù)中心的發(fā)送。此外,數(shù)據(jù)服務(wù)中心可發(fā)送監(jiān)聽命令0x00,實(shí)時(shí)監(jiān)聽各路口信號(hào)機(jī)當(dāng)前運(yùn)行情況。
串口通信程序采用中斷控制方式,流程圖如圖2所示。
圖2 RS232通信程序流程圖
主要包括串口初始化函數(shù)InitSci(),串口中斷發(fā)送函數(shù)SCITX_ISR(),串口中斷接收函數(shù)SCIRX_ISR()。
本系統(tǒng)實(shí)現(xiàn)的是多路口在線監(jiān)控,上位機(jī)一方面可以通過無線發(fā)送方案號(hào)給交通信號(hào)機(jī),改變交通運(yùn)行方案。對(duì)于方案的改變,無論無線發(fā)送還是鍵盤控制,都可以向數(shù)據(jù)服務(wù)中心即時(shí)反饋;另一方面,可在線監(jiān)聽各路口交通燈運(yùn)行情況,包括動(dòng)態(tài)IP、登陸時(shí)間、最后通訊時(shí)間、當(dāng)前運(yùn)行方案等;并且在服務(wù)器端開發(fā)數(shù)據(jù)庫管理系統(tǒng),包括系統(tǒng)登錄、方案管理、交通控制管理和系統(tǒng)維護(hù)這4個(gè)模塊,對(duì)交通數(shù)據(jù)進(jìn)行維護(hù)。
本系統(tǒng)后臺(tái)采用Microsoft SQL Server 2000數(shù)據(jù)庫,該數(shù)據(jù)庫系統(tǒng)在準(zhǔn)確性、安全性和運(yùn)行速度方面,有絕對(duì)優(yōu)勢(shì),并且效率高,處理數(shù)據(jù)量大;前臺(tái)采用微軟公司的Visual Studio 2005作為主要的開發(fā)工具,實(shí)現(xiàn)與SQL Server 2000數(shù)據(jù)庫無縫鏈接,開發(fā)語言采用C#。系統(tǒng)運(yùn)行平臺(tái)可以是Windows XP(SP2)/2000(SP4)/Windows Server 2003(SP1),運(yùn)行環(huán)境為Microsoft.NET Framework SDK v2.0。
Winsock的接口函數(shù)封裝了TCP/IP協(xié)議的各種功能。.NET Framework Socket類是Winsock32 API提供的套接字服務(wù)的托管代碼版本。在大多數(shù)情況下,Socket類方法只是將數(shù)據(jù)封送到它們的本機(jī)Win32副本中,并處理任何必要的安全檢查。一個(gè)系統(tǒng)的通信,首先要建立服務(wù)器端和客戶端,需要分別創(chuàng)建套接字(socket),然后再綁定通訊地址,建立監(jiān)聽后方可完成通訊。Winsock網(wǎng)絡(luò)編程流程圖如圖3所示。
圖3 Winsock網(wǎng)絡(luò)編程流程圖
本系統(tǒng)采用SQL Server2000作為后臺(tái)數(shù)據(jù)庫,數(shù)據(jù)庫命名為tramagsys。在VS.NET開發(fā)環(huán)境中,C#利用ADO.NET進(jìn)行數(shù)據(jù)庫開發(fā)的基本步驟,總的來說經(jīng)歷了這樣的幾個(gè)過程[5]:
(1)創(chuàng)建和數(shù)據(jù)庫tramagsys連接的Connection對(duì)象;
(2)配置Data Adapter對(duì)象并創(chuàng)建和操作數(shù)據(jù)集Data Set;
(3)把 tramagsys數(shù)據(jù)庫中的表添加到 Data Set中;
(4)把數(shù)據(jù)集Data Set綁定到用戶界面的Data Grid上;
(5)運(yùn)行程序時(shí),利用SqlDataAdapter把數(shù)據(jù)填充到Data Set中,最終的數(shù)據(jù)庫中的數(shù)據(jù)顯示在用戶界面的Data Grid中。
根據(jù)數(shù)據(jù)中心服務(wù)器接入Internet的不同方式,本文提出了4種組網(wǎng)方案:
(1)數(shù)據(jù)中心直接使用合法的固定IP地址;(2)數(shù)據(jù)中心沒有固定的IP地址,通過路由器端口映射獲得固定IP地址;
(3)數(shù)據(jù)中心采用動(dòng)態(tài)IP地址;
(4)用戶數(shù)據(jù)中心通過專線方式直接連接到GPRS網(wǎng)絡(luò)。
本系統(tǒng)選用了方案(3),數(shù)據(jù)中心沒有固定的全局IP地址,通過ADSL調(diào)制解調(diào)器連接到因特網(wǎng)。ADSL Modem上電自動(dòng)撥號(hào)獲得動(dòng)態(tài)IP地址,在數(shù)據(jù)中心安裝動(dòng)態(tài)域名解析服務(wù)程序;GPRS DTU設(shè)備上的服務(wù)端IP和端口號(hào)設(shè)置為數(shù)據(jù)中心服務(wù)器的域名和偵聽端口號(hào),如果是TCP連接方式,則自動(dòng)與ADSL等調(diào)制解調(diào)器建立可靠的TCP連接。
系統(tǒng)通信方式可分為兩種:
(1)服務(wù)器端—DTU終端方式通信;
(2)客戶端—服務(wù)器端—DTU終端方式通信。方式(2)是客戶端和DTU終端均與服務(wù)器聯(lián)網(wǎng),服務(wù)器作為傳輸中介。
一方面,通過服務(wù)器端或客戶端向各路口交通信號(hào)機(jī)發(fā)送方案,控制交通燈運(yùn)行,并向服務(wù)器端和客戶端即時(shí)反饋運(yùn)行情況;
另一方面,現(xiàn)場鍵盤控制交通方案,并向服務(wù)器端即時(shí)反饋運(yùn)行情況,所有記錄出現(xiàn)在界面的報(bào)文監(jiān)視中,并生成log文件存在硬盤。
此外,服務(wù)器端可對(duì)任意路口發(fā)送“0x00”監(jiān)聽命令,交通信號(hào)機(jī)實(shí)時(shí)返回當(dāng)前交通運(yùn)行情況。實(shí)現(xiàn)實(shí)時(shí)監(jiān)聽,提高系統(tǒng)可靠性。
城市交通一直是困擾城市建設(shè)的重要因素,采用有效的交通控制系統(tǒng),可以提高交通車輛通行率,減少交通事故的頻繁發(fā)生,實(shí)現(xiàn)交通的實(shí)時(shí)性、快速性和安全性,具有一定的現(xiàn)實(shí)意義。創(chuàng)新將GPRS無線通信運(yùn)用到交通控制系統(tǒng)中,具有使用成本低、準(zhǔn)確性高、對(duì)環(huán)境適應(yīng)性好、易于安裝、易于維護(hù)等特點(diǎn)。
[1]陳以蒙,王亦軍.一種基于GPRS的DSP與PC機(jī)通信系統(tǒng)[J].浙江科技學(xué)院學(xué)報(bào),2004,16(4):236-238.
[2]蘇奎峰,呂 強(qiáng),耿慶鋒,陳圣儉.TMS320F2812原理與開發(fā)[M].北京:電子工業(yè)出版社,2005.
[3]貝 茨,朱洪波,沈越泓,蔡躍明.通用分組無線業(yè)務(wù)(GPRS)技術(shù)與應(yīng)用[M].北京:人民郵電出版社,2004.
[4]楊鋼鋒,毛漢領(lǐng),黃振峰.交通信號(hào)機(jī)基于DSP的解決方案設(shè)計(jì)[J].交通與計(jì)算機(jī),2008,26(2):79-81.
[5]賽奎春.明日科技.Visual C#開發(fā)技術(shù)大全[M].北京:人民郵電出版社,2007.