一種基于物聯網的公交車信息查詢系統設計
1 研究背景
隨著城市建設的飛速發展及公交系統的不斷完善,公交車已成為城市居民出行的主要交通工具。但由于城市公交線路四通八達,且隨著城市擴建而快速發展,新的公交線路在不斷延伸和開辟,再加上單行道、禁左等道路交通約束,出現了交通擁堵問題。而且近年來嚴重的交通擁堵問題不僅局限于大城市,在二線甚至三線城市也開始蔓延。根據中國汽車協會2010年發布的數據,2009年中國汽車銷售量達1 364.48萬輛,超過美國成為全球第一,其中乘用車數量為1033.13萬輛,同比增長53%。而去年全國公路增長里程共計9.8萬公里,同比下降33%。二者之間的不均衡發展導致了交通安全事故頻發、城市居民乘車出行不便、上下班時間增加等問題。
隨著現代網絡技術的不斷發展,公交查詢系統因運而生。因此也出現了基于各種技術的公交查詢系統,如基于ASP.NET+XML的公交查詢系統、基于J2ME的公交查詢系統、基于GIS、GPS、RS的公交查詢系統等。這些系統能提供電子地圖、二維數字城市中的地圖和三維城市模型的信息、高精度的GPS定位服務,但是他們無法及時反應出某一時刻某一站點的來車詳細信息。
目前大多數的公交查詢系統,基本具備以下功能:采用車站站點查詢、車次查詢、模糊查詢、站至站查詢4種查詢形式,不僅能夠查詢到各條線路的起停站點,同時還能夠分析出換乘車輛情況。但是由于各個地區公交車數據龐大,無法迅速、準確地查到所需要的目的地以及各個車次所經過站點的信息,導致查詢不便且結果復雜缺少人性化。另外,物聯網作為新一代信息技術的重要組成部分,第一,物聯網的核心和基礎仍然是互聯網,是在互聯網基礎上的延伸和擴展的網絡;第二,其用戶端延伸和擴展到了物體與物體之間,進行信息交換和通信。但其應用方面多是對于一些大型行業,還沒有擴展到民用基礎設施上。
而本系統可以給用戶帶來意想不到的便捷,通過登陸網站即可查到用戶要乘坐的公交車的具體情況,包括距用戶還有多少站以及車上乘客數量,這樣即使正在趕往公交站臺的路上,也不用擔心會誤了最快到達的公交車。同時用戶也可以作出等待還是換乘別的路線的公交車的選擇,這樣不僅節省了時間而且使公交資源最大化利用。
2 系統的總體結構
系統結合物聯網的科學技術理念,利用特定裝置如紅外掃描等對公交車的乘客數量進行統計,將RFID標簽嵌入到公交站牌上,公交車路過站牌時自動提取站點信息,同時實現彎道提醒、線路提醒等功能。車載信息存儲模塊將乘客數量信息、站點信息和車輛上下行信息匯總和儲存,并通過GPRS網絡發送至綜合信息處理平臺,平臺對各班次公交車的信息進行排序整理,作出為每一站點的兩個方向生成各自數據模塊等處理,同時上傳互聯網,并實時更新。
從技術架構上看,基于物聯網的公交信息查詢系統可分為3層:感知層、網絡層和應用層。(1)感知層由各種傳感器以及傳感器網關構成,包括紅外傳感器、RFID等感知終端。感知層主要功能是識別物體和采集信息。(2)網絡層由無線通信、互聯網和網絡管理系統等組成,負責傳遞和處理感知層獲取的信息。系統擬建立公交信息綜合處理平臺,基于互聯網編程實現公交信息數據庫的建立和維護,并對接受信息進行排序、添加、刪除及實時更新,包括整個平臺的維護等。(3)應用層是公交信息查詢系統和用戶的接口,它實現公交信息查詢系統的智能應用。本系統擬采用用戶手機查詢瀏覽公交信息查詢系統網頁的方式實現公交信息查詢系統的用戶應用。
系統總體結構如圖1所示。
3 基于GPRS的信息傳輸方案設計
系統采用GPRS無線數據傳輸方式實現車載終端與監控中心的通信,并以華為公司GTM900-C無線通信模塊為例,具體介紹車輛監控系統中實現GPRS數據傳輸的方法以及關鍵技術。
GPRS專網系統終端上網登錄服務器平臺的流程為:(1)檢查網絡狀態。(2)用戶發出GPRS登錄請求,請求中包括由移動公司為GPRS專網系統專門分配的專網APN;(3)根據請求中的APN,SGSN向DNS服務器發出查詢請求,找到與企業服務器平臺連接的GGSN,并將用戶請求通過GTP隧道 裝送給GGSN;(4)GGSN將用戶認證信息(包括手機號碼、用戶賬號、密碼等)通過專線送至Radius進行認證;(5)Paddius認證服務器看到手機號等認證信息,確認是合法用戶發來的請求,向DHCP服務器請求分配用戶地址;(6)Radius認證通過后,由Radius向GGSN發送攜帶用戶地址的確認信息;(7)用戶得到了IP地址,就可以攜帶數據包,對GPRS專網系統信息查詢和業務處理平臺進行訪問。(8)訪問后關閉鏈路。
下面基于上述流程,并結合實際實驗操作,詳解可能用到的AT指令。
3.1 建立GPRS數據傳輸的調制指令
系統設計的主要思路是單片機通過發送AT指令控制GPRS模塊建立無線信道、完成數據傳輸。GPRS數據傳輸的實現主要有兩種方式:通過域名解析進行GPRS數據傳輸。AT指令實現通過IP地址進行GPRS數據傳輸的調制指令如下:
(1)AT+CSQ查詢網絡質量。實驗中在串口調試助手上返回“+CSQ 31,99”,說明網絡質量好。通常,CSQ為24以上就認為網絡質量良好。
(2)AT+CPIN?查詢SLM是否準備好。實驗中返回“+CPIN READY”說明SIM準備就緒。
(3)AT+CGREG?查詢是否注冊成功。實驗中返回“+CGREG:0,5”說明注冊成功。
以上3步主要是確認當前網絡和模塊的狀態。
(4)AT+CGDCQNT=1,“IP”,“CMNET”設置APN無線接入點。實驗中返回:“OK”,說明接入點設置成功。APN(Access Point Name),即“接入點名稱”,是在通過手機上網時必須配置的一個參數,它決定了手機通過哪種接入方式來訪問網絡,用來標識GPRS的業務種類,目前分為兩大類:CMWAP/UNIWAP/3GWAP和CMNET/UNINET/3GNET。中國聯通2G業務WAP瀏覽器中使用的APN為“UNIWAP”,3G業務WAP瀏覽器使用的APN為"3GWAP";中國聯通的2G上公網使用的APN為“UNINET”,3G業務上網卡及上公網使用的APN為“3GNET”。中國移動上內網的APN為“CMWAP”,上網卡及上公網使用的APN為“CMNET”。實驗中使用移動動感地帶,APN設置為“CMWAP”。
(5)AT%ETCPIP=“”,“”進行PPP撥號。實驗中返回:“OK”,說明撥號成功。
(6)AT%ETCPIP?查詢獲得本地IP地址,以用DNS服務器地址。實驗返回:+ETCPIP:1,“10.73.11.1”,“211.138.24.71”,“211.138.30.66”。其中“10.73.11.1”是本地IP,“211.138.24.71”,“211.138.30.66”是獲得的DNS服務器地址。
(7)AT%IPOPEN=“ICP”,“192.168.1.101”,1234(實驗時改成自己的IP和端口號)。
(8)AT%IPSEND=“616263313233”。發送abc123。此處由于使用華為公司GTM900-C無線通信模塊,數據以16進制發送,所以發送的是abc123的16進制表示。
(9)AT%IPOPEN?查詢鏈路狀態。試驗中返回:“TCP”,”211.252.207.107”,1234,1026。AT%IPOPEN之后,要等待直到出現CONNECT或者CONNECTERROR之類的提示信息才能做下一步的操作。
(10)AT%IPCLOSE和AT%IPCLOSE=5關閉連接。實際中必須等待連接成功后才能關閉
3.2 數傳終端的硬件設計
系統中單片機串口利用MAX232完成TTL/CMOS電平轉換后與GPRS模塊相連接,實現模塊初始化和數據收發。同時擴展串口可與GPS接收機或其他嵌入式系統相連進行數據處理與交換。MCU選用Atmel公司的AT89S51;GPRS模塊選用華為公司GTM900-C無線通信模塊。
3.3 數傳終端的軟件實現
系統軟件設計的核心部分是單片機與GPRS模塊的通信,兩者間需定義通信協議、規定幀格式,通過AT指令實現GPRS網絡的附著、PDP激活、Internet的接入及數傳。系統程序設計采用模塊化設計思想,主要分為系統初始化模塊、建立連接模塊、數據傳輸模塊、斷開連接模塊4部分。
3.3.1 初始化及通信協議
通信協議功能:實現GPS模塊、藍牙模塊、GPRS模塊與單片機間的通信。此處信息由GPS、藍牙采集,經過單片機處理后經GPRS網絡發送。
幀格式說明:1,幀頭。0xff,一幀的起始位置。2,幀類型。0x01,代表命令幀;0x02,代表數據幀。3,區別碼。0x11:模塊發送信息給單片機;0x12:單片機發送信息給模塊。4,設備號。0x20:單片機;0x21:GPS模塊;0x22:藍牙模塊;0x23:GPRS模塊。5,內容長度。
0x(xx),xx為適當的值。6,命令類型。0x31:讀取目標設備的當前狀態;0x32:讀取目標設備的數據。7,內容。在不使用它的命令格式中,它的值無意義,為通信方便,在不使用它的命令格式中,規定其值為0x00。8,校驗碼。從第一個字節開始到Xor的前一字節,共N-1 Byte,作異或運算。
3.3.2 建立連接
為方便程序設計,將建立連接所需的AT命令以字符串形式存放于AT命令緩存區,所需多條AT指令長度不一且發送順序不可改變,為有效控制每條AT指令、提高CPU利用率需將AT指令緩存區設置為指針數組形式,在建立連接時通過循環調用字符串發送函數將AT命令發送,相鄰AT命令間需要2~3 s的延時,每發送完一條AT命令調用一個3 s的延時子程序,然后通過串口中斷接收函數接收AT命令返回值來判斷連接是否成功。注意,AT命令均以回車符作為結束標志,并以字符串形式傳送,因此在定義AT命令緩存區時應注意轉義字符的使用。
3.3.3 數據傳輸
在與上位機連接成功后,通過字符串發送函數發送數據緩存區中的數據,數據緩存區仍需設置為指針數組形式,發送數據的原理與建立連接時的基本相同,但數據的接收是通過串口中斷接收函數完成的,同時將接收到的數據必須先放入接收緩存區以便作顯示處理。需要指出的是,串口中斷程序既要接收指令返回值又要接收上位機傳來的數據,這兩種接收信息的處理方式不同,所以在中斷函數中應通過設置兩個不同的標志來解決這一問題。
3.3.4 斷開連接
數據鏈路的釋放可通過發送數據結束標志“+++”實現,但必須延時一定時間后再發送斷開連接指令:AT#CONNECTIONST;AT+OGATT=0。
4 綜合信息處理平臺的設計
綜合信息處理平臺,包括網絡通信模塊,歷史記錄分析模塊、Web登錄管理界面模塊,該Web登錄管理界面模塊,用于登錄管理公交車查詢系統的綜合信息處理平臺,該網絡通信模塊用于接收移動通信終端傳輸的實時公交車信息,并將其數據傳輸至歷史記錄分析模塊進行存儲和分析,待用戶登錄查看。綜合信息處理平臺結構框圖如圖3所示。
系統中,綜合信息處理平臺當接收到網絡通信模塊發來的公交車數據時,首先對數據進行分類,統計和儲存,當有用戶通過Web界面連接到平臺之后,新建立一個子線程為其服務,之后接收到用戶傳輸過來的查詢數據,按照協議對數據進行分類、統計和分析,并將結果反饋給用戶。
5 結束語
系統完成了一個基于物聯網的公交車信息查詢系統,很好地利用了物聯網的采集處理發送信息等相關理念,是一款使用簡單、操作方便、查詢速度快、目標車輛明確的信息查詢系統。系統基于物聯網是信息科學技術領域內的新興研究方向,既是對物聯網技術的探索和應用,又是對實際問題的解決。
最新產品
- 人臉消費機
- RF-SIM卡消費機
- 啟迪智慧食堂
- 啟迪無線消費機
- 羽毛球館管理軟件(創業版)
- SF-780系列HID卡售飯機
- 美食城管理系統
- 啟迪SF_980 15寸觸摸屏收款機收銀機
- 啟迪SF-920無線手持打印一體機
- 啟迪SF-910手持消費機