基于無線通信技術(shù)的智能公交系統(tǒng)設(shè)計
圖3 XBee Pro模塊的引腳排列圖
圖4 XBee Pro模塊的UART內(nèi)部數(shù)據(jù)控制流程
當(dāng)串行數(shù)據(jù)通過DIN引腳進(jìn)入XBee Pro 模塊后, 數(shù)據(jù)會存儲在DI緩沖器中, 直到被發(fā)送器通過天線發(fā)送出去; 當(dāng)RF數(shù)據(jù)由天線接收后, 接收數(shù)據(jù)進(jìn)人DO緩沖器, 直到被處理。在一定條件下, 模塊可能無法立即處理在串位接收緩沖中的數(shù)據(jù)。如果大量的串行數(shù)據(jù)發(fā)送到模塊, 可能需要使用CTS流控以避免串行接收緩沖溢出。XBeePro 模塊可以通過UART 接口直接與控制器的UART接口相連, 硬件接口簡單實用。
2.3 電子站牌終端的硬件組成
電子站牌終端的硬件組成與公交車車載終端相比, 主要是把公交車上的GPS定位模塊替換成了GPRS -DTU 數(shù)據(jù)傳輸單元。GF -2008AWGPRS-DTU是北京嘉復(fù)欣科技有限公司研制生產(chǎn)的GPRS無線數(shù)據(jù)通信產(chǎn)品, 該產(chǎn)品內(nèi)置西門子MC39i GPRS模塊, 具有準(zhǔn)確性高、環(huán)境適應(yīng)性好、易于安裝和維護(hù)等特點, 能夠為用戶提供高速、可靠、永遠(yuǎn)在線的數(shù)據(jù)傳輸服務(wù)和虛擬專用數(shù)據(jù)通信網(wǎng)絡(luò)服務(wù), 可廣泛用于遠(yuǎn)程抄表、環(huán)保數(shù)據(jù)采集、交通信息發(fā)布等方面。以下是GF-2008AW GPRS-DTU的主要特點:
可實現(xiàn)串口透明的無線數(shù)據(jù)傳輸, 而且穩(wěn)定可靠;
高度集成GPRS和TCP/IP 技術(shù), 可將互連網(wǎng)和無線網(wǎng)絡(luò)有機(jī)的結(jié)合起來;
支持多種TCP/IP 協(xié)議, 如TCP、UDP、DNS、PPP、RAS 等;
按流量計費(fèi), 沒有流量不計費(fèi);
在標(biāo)準(zhǔn)RS232接口產(chǎn)品中體積最小, 適合嵌入式集成;
支持點對點、點對多點、中心對多點的對等數(shù)據(jù)傳輸;
基于串口通訊的AT+i指令接口, 可節(jié)省開發(fā)時間和開發(fā)成本;
持ALWAYS ONLINE (永遠(yuǎn)在線) 模式,斷線可自動重?fù)?
采用5~24 V / 1 A供電, 并具有節(jié)能模式。
3 ZigBee通信程序設(shè)計
3.1 ZigBee組網(wǎng)方案
由于站牌處通常會有多輛公交車同時到達(dá),一個站牌對應(yīng)多輛公交車。鑒于網(wǎng)絡(luò)節(jié)點較少、網(wǎng)絡(luò)結(jié)構(gòu)比較簡單, 本系統(tǒng)采用星形模型組網(wǎng)。
即把分布在公交線路上的電子站牌配置為ZigBee協(xié)調(diào)器, 而將到達(dá)的公交車配置為ZigBee終端設(shè)備。圖5所示是公交車與站牌的組網(wǎng)方式。當(dāng)站牌上ZigBee網(wǎng)絡(luò)協(xié)調(diào)器選擇一個信道和PAN ID并啟動時, 便建立了一個ZigBee個人局網(wǎng)(PAN)。
而一旦協(xié)調(diào)器啟動PAN, 便允許路由器和終端設(shè)備結(jié)點加入PAN.作為ZigBee終端設(shè)備的車載終端加入PAN時, 系統(tǒng)將收到一個16位的網(wǎng)絡(luò)地址, 同時發(fā)送和接收來自作為ZigBee協(xié)調(diào)器的電子站牌終端的數(shù)據(jù)。PAN協(xié)調(diào)器的網(wǎng)絡(luò)地址總是0.由于站牌上ZigBee模塊的網(wǎng)絡(luò)物理地址是唯一的, 故可通過物理地址向站牌發(fā)送信息。
圖5 公交車與站牌組網(wǎng)方式
3.2 ZigBee模塊的API操作
XBee Pro具有空模式、接收模式、發(fā)送模式、睡眠模式和命令模式等5種操作模式。對于每一種操作模式, 還有透明方式和應(yīng)用程序接口(API) 方式兩種操作方式。當(dāng)工作在透明方式時,模塊可替代串口線的作用, 并以字節(jié)為單位操作各種信息; 而當(dāng)工作在API 方式時, 所有進(jìn)出模塊的數(shù)據(jù)均被包含在定義模塊的操作和事件的幀結(jié)構(gòu)中。本文采用API操作方式。
API操作要求模塊之間通過一種結(jié)構(gòu)化的接口進(jìn)行通信(數(shù)據(jù)通過一種定義好序列的幀來交互通信)。API對通過串口數(shù)據(jù)幀進(jìn)行命令發(fā)送、命令響應(yīng), 以及模塊狀態(tài)信息的傳送與接收作了規(guī)定。
(1) ZigBee發(fā)送請求
公交車到達(dá)站牌后, 應(yīng)根據(jù)站牌的MAC地址將日期、時間、車號、公交線路、車內(nèi)人數(shù)、行駛方向等信息發(fā)送到電子站牌。公交車ZigBee模塊發(fā)送模式的API幀結(jié)構(gòu)定義如圖6所示。其中的Bytes6-13為站牌的MAC地址。
圖6 公交車TX請求API幀結(jié)構(gòu)圖
(2) ZigBee發(fā)送狀態(tài)
為實現(xiàn)可靠傳輸, 當(dāng)公交車傳送信息給電子站牌的請求完成后, 必須得到電子站牌的確認(rèn)信息, 因此還必須得到電子站牌回饋給公交車的發(fā)送狀態(tài)信息。這個信息將指出數(shù)據(jù)包是否被成功發(fā)送, 或者發(fā)送失敗。如果發(fā)送失敗必須重新發(fā)送公交車的信息, 直至發(fā)送成功。
電子站牌根據(jù)公交車的MAC地址, 不斷的向PAN內(nèi)發(fā)送信息, 并通過回讀發(fā)送狀態(tài)來確定是否有公交車加入網(wǎng)絡(luò), 如果有, 則根據(jù)網(wǎng)絡(luò)地址識別公交車, 并將公交車的定位信息發(fā)送到監(jiān)控中心, 從而實現(xiàn)對GPS定位方式的補(bǔ)充。
圖7為公交車ZigBee模塊的TX狀態(tài)幀結(jié)構(gòu)
其中的Bytes 9為傳送狀態(tài)信息, Bytes6、7為接收模塊的16位網(wǎng)絡(luò)地址。
(3) ZigBee接收包。
電子站牌收到公交車發(fā)來的狀態(tài)信息數(shù)據(jù)包后便進(jìn)行解析, 并通過站牌的GPRS模塊發(fā)送到監(jiān)控中心。電子站牌ZigBee模塊接收模式的API幀結(jié)構(gòu)定義如圖8所示。圖中的Bytes5-12為公交車的MAC地址。
評論