鮮活農產品物流實時監控系統設計
3.1 數據包收發和處理模塊
數據包收發和處理模塊主要負責從Internet上獲取來自無線終端的信息數據。設計時必須考慮的是車輛的移動性,以及如何能實時地將數據傳送到監控中心服務器等問題。
車載終端需要傳送數據時,首先將所收集到的信息數據進行基于TCP/IP的打包處理,打包過后的數據通過GSM網絡將數據傳送給最近的BSS(基站子系統),BSS會和最近的SGSN通信,其后SGSN通過GPRS網絡將數據發送到GGSN,在GGSN對該數據包進行相關處理后,將該數據發送到Internet或X.25網絡。進入到Internet上的IP數據包可以很容易地傳輸到物流過程監控中心。因此,監控中心數據包的收發和處理模塊只需考慮接收和處理來自Intenet的IP數據包。
3.1.1 數據幀格式設計
本系統主要功能是記錄農副產品的狀態,每次傳輸的數據量小而且突發性強,因此采用UDP協議傳輸數據。同時,由于UDP協議為不可靠的傳輸協議,其并不提供數據傳送的保障機制,因此實現時必須添加保障信息傳輸可靠性的確認機制。在本系統中,當監控中心向終端發送數據時,要求終端返回接收正確或錯誤的確認信息,監控中心收到正確的確認信息后數據下傳進程才完畢。否則,監控中心將在規定的時間內重發,直到收到正確的確認信息或發送次數標志溢出才終止。
在數據包收發和處理模塊設計實現過程中最主要的就是對數據包進行操作,車載終端和物流過程監控中心在交互通信過程中,所涉及的主要數據幀類型包括:
GPS數據包:GPS數據包是由車載終端上的GPS模塊獲得的GPS信息交給車載終端后,由車載終端上的程序進行封裝的。
車載終端注冊信息幀:車載終端開機后需要首先在監控中心進行注冊,只有注冊通過才能通過監控中心對車載終端進行實時地跟蹤和管理,車載注冊信息就是由車載終端發送給監控中心請求注冊的報文。
車載終端客戶登錄幀:車載終端登錄后,操作人員需要使用自己的用戶ID通過車載終端登錄到監控中心系統,監控中心根據這一信息來實現車載終端和客戶的關聯。
車載終端發送登記商品信息幀:在物流起點需要將運輸貨物的信息通過車載終端傳送到監控中心。這一信息主要是將運輸貨物和車載終端進行關聯。信息中會包含貨物運輸所需要的溫度和濕度限制,監控中心根據這一信息來判斷貨物的實時運輸條件是否滿足要求,如果越界則會發出警報。
車載終端發送地理位置幀:車載終端可以實時地查詢自己所在的位置信息,這一信息通過車載終端向監控中心上報GPS信息獲得,監控中心根據GPS信息查詢GIS地圖數據庫獲得車載終端所在位置的名稱,再傳遞給車載終端。這樣車載終端就可以知道運輸車輛當時所在地理位置的名稱。
各類數據幀設置的數據格式統一采用ASCII字符,同時在GPRS/CDMA網絡無信號的情況下使用短信方式傳輸,短信格式與數據幀的格式定義保持一致。數據幀定義示例如圖4所示。本文引用地址:http://www.104case.com/article/162030.htm
3.1.2 數據包的收發
移動終端通過GPRS網絡向監控中心發送數據時,終端應用程序要先對數據封裝,再通過AT命令控制GPRS模塊發送。具體實現時的步驟如下:
(1)對數據進行UDP封裝,將采集到的待發送的信息數據放到UDP格式的數據段中,對此幀UDP數據和8字節首部信息一起按規則計算,生成UDP校驗和,完成UDP數據封裝。
(2)根據IP協議為此幀UDP建立20字節的IP頭,對IP頭進行校驗計算,得出IP頭的校驗值,完成IP封裝。
(3)完成PPP封裝,PPP格式的標志字符為0x7E,在進行PPP封裝前先要檢查數據中是否有標志字符,當遇到字符0x7E時,連續傳送2個字符0x7D和0x5E,以實現標志字符的轉義,當遇到轉義字符0x7D時,連續傳送2個字符0x7D和0x5D,以實現轉義字符的轉義。
(4)將數據放入PPP幀格式的信息段中,生成CRC校驗,完成PPP封裝。
(5)終端通過AT命令控制GPRS模塊向網絡發PPP呼叫,建立PPP通信鏈路連接,并發送封裝好的數據。
3.1.3 數據包的處理
在接收到數據包之后,根據數據包類型的不同,選取相應的處理流程。如ACK包是屬于接收方在自己正確無誤接收到發送方發的數據包后,所反饋回的一個確認數據包;而對于正常的數據包,將調用相關的解包過程函數。根據收到的包的類型轉而進入相關處理模塊,對于整個物流過程中所采集到的各項信息數據將實時存儲在數據庫當中。
如果有要發送的報文,可經過監控中心上層程序,按照幀格式封裝好后直接調用發送接口函數發送。當然監控中心也可以主動發出請求,這樣就可直接調用發送處理進行報文的封裝,然后調用發送函數進行發送。
3.2 數據存儲模塊
數據存儲模塊將讀取的數據包進行解析校驗,若校驗正確將實時存入后臺數據庫,并發送反饋信息給GPRS終端,可用于實時溫濕度曲線圖顯示、實時數據顯示和溫濕度報警指示。
3.3 軟件界面模塊
軟件界面模塊分為多個功能模塊,其中實時溫濕度曲線顯示、數據的統計分析、數據庫查詢與數據管理和用戶管理等人機操作是基于SQL Servet數據庫事件觸發機制來完成的。軟件的通信啟動、關閉服務以及車載終端及溫濕度采集模塊參數設置等界面操作是調用通信動態鏈接庫的發送函數來完成的。
4 結語
本系統依托國家發改委國債項目“全國大中型農產品批發市場信息化建設項目”擴展部分的關鍵系統研發,針對的主要對象是全國大中型農產品批發市場鮮活農產品物流過程,開發成型的監控系統,通過該信息系統對從產地到全國各大批發市場運輸過程中產品的狀態進行監測。
從系統測試及使用結果看,本系統基本滿足了設計需求。但是也存在一些不足,如無線數據傳輸時間延遲的存在,導致監控中心收到的車輛監控數據不能真實反映移動車輛的實時狀態;車輛定位的實時性與通信費用的矛盾;系統功能上,可進一步增強傳統車輛監控平臺的GIS功能,如規劃功能、緊急援助等。系統構架上,可進一步利用Web Service技術改良鮮活農副產品物流過程監控系統的架構模式。
評論