顧延濤,劉成忠,徐緯芳
(1.甘肅農(nóng)業(yè)大學工學院,甘肅 蘭州 730070;2.甘肅農(nóng)業(yè)大學信息科學技術(shù)學院,甘肅 蘭州 730070)
在農(nóng)產(chǎn)品物流運輸過程中,及時監(jiān)測農(nóng)產(chǎn)品儲運信息十分重要。針對現(xiàn)有車載系統(tǒng)大多局限于運輸車輛的定位監(jiān)測,而很少對封閉式貨倉車的內(nèi)部儲運環(huán)境的參數(shù)實行監(jiān)測的缺點,筆者設計了一種以ARM11高性能微處理器為核心的嵌入式車載信息采集系統(tǒng)。該系統(tǒng)使用ZigBee技術(shù)和GPS定位技術(shù)實現(xiàn)對儲運參數(shù)的采集,采用GSM網(wǎng)絡的短信業(yè)務實現(xiàn)對儲運參數(shù)的傳輸,可以有效的對運輸中的農(nóng)產(chǎn)品進行實時監(jiān)測,在出現(xiàn)問題時能夠及時采取有效措施,保證農(nóng)產(chǎn)品運輸中質(zhì)量,同時對農(nóng)產(chǎn)品的儲運調(diào)配起到指導作用。這為建立一個高效快捷實時準確的農(nóng)產(chǎn)品物流網(wǎng)絡管理系統(tǒng)提供了有效的解決方案,對于降低農(nóng)產(chǎn)品物流成本具有實際意義。
ZigBee技術(shù)是一種近距離、低復雜度、低功耗、低速率、低成本的雙向無線通訊技術(shù),主要工作于免授權(quán)的2.4 GHz頻段,傳輸速率為10~250 kbit/s,傳輸距離可達75 m,底層采用專為短距離通訊制定的IEEE802.15.4協(xié)議[1]。ZigBee無線通訊技術(shù)具有延時短,傳輸數(shù)據(jù)可靠,支持鑒權(quán)和安全認證等特點,使其適用于實時的工程控制應用。
農(nóng)產(chǎn)品物流所需采集的儲運信息分為兩類:一是儲運車輛的地理位置信息,如經(jīng)度、緯度等;二是儲運過程中貨倉環(huán)境參數(shù)信息,如溫度、濕度、氣體成分等。筆者將從軟硬件的綜合考慮來解決儲運信息采集準確性與數(shù)據(jù)傳輸實時性的突出問題。
根據(jù)對儲運信息采集管理的需要,系統(tǒng)由數(shù)據(jù)采集平臺和數(shù)據(jù)管理中心所組成,二者通過GSM網(wǎng)絡相聯(lián)系。數(shù)據(jù)采集平臺由GPS接收模塊、ZigBee收發(fā)模塊(由ZigBee協(xié)調(diào)器模塊和ZigBee終端采集模塊組成)、GSM通信模塊和ARM11處理器組成。GPS接收模塊負責接收從衛(wèi)星傳送過來的儲運車輛的經(jīng)度、緯度等地理位置信息,ZigBee收發(fā)模塊負責對儲運環(huán)境參數(shù)信息的采集,GSM通信模塊負責向數(shù)據(jù)管理中心傳輸采集到的信息。數(shù)據(jù)管理中心由GSM通信模塊和Web服務器組成。GSM通信模塊接收數(shù)據(jù)采集平臺發(fā)送過來的編碼信息,Web服務器通過串口和GSM通信模塊通信,對通信信息進行解譯,并存儲到數(shù)據(jù)庫中,Web用戶通過網(wǎng)頁形式登陸完成以數(shù)據(jù)庫操作為核心的查詢、記錄等功能。
數(shù)據(jù)采集平臺硬件系統(tǒng)主要由ARM11處理器模塊、GPS接收模塊、GSM通信模塊、ZigBee協(xié)調(diào)器模塊、ZigBee終端采集模塊等組成(圖1)。
圖1 平臺硬件結(jié)構(gòu)
數(shù)據(jù)采集平臺需要高傳輸效率的數(shù)據(jù)集成儲存、智能處理、傳輸通訊的能力,所以在平臺的硬件設計時,選擇了一款低功耗、高性價比的ARM11系列處理器,其內(nèi)核型號為ARM1176JZF-S,擁有一條具有獨立的load-store和算術(shù)流水線的8級流水線,在同樣工藝下,ARM11處理器的性能與ARM9相比大約提高了40%[2]。研究采用SAMSUNG S3C6410為微處理器,使用了4 Bit以上的硬件糾錯算法,很好的保證了運行的可靠性,使用線性電源和開關(guān)電源相組合的電源管理方式,在降低功耗的同時保證系統(tǒng)穩(wěn)定性。
GPS接收模塊采用芬蘭FASTRAX公司的i-Trax03-02 GPS_OEM接收機。其具有較小的尺寸,休眠時功耗僅為20μW,連續(xù)導航時不超過95 mW,并且冷啟動時間為35 s,熱啟動時間為4.5 s,具有極快的信號獲取引擎,可接收NMEA0183格式的數(shù)據(jù)和二進制的iTack格式數(shù)據(jù)[3]。OEM接收機帶有串口可直接和開發(fā)板S3C6410的串口連接工作,省時方便。GSM通信模塊采用SIEMENS公司的TC35i模塊。該模塊可以實現(xiàn)語音、短消息服務等傳輸,可工作在900 MHz和1 800 MHz的雙頻段,支持 Text和 PDU格式的 SMS(Short Message Service),可通過AT命令或關(guān)斷信號實現(xiàn)重啟和故障恢復。開發(fā)板S3C6410通過串口與TC35i進行通訊,并通過兩根I/O口控制TC35i的開關(guān)機、復位[4]。
ZigBee收發(fā)模塊采用飛比電子科技有限公司推出的一款符合IEEE802.15.4規(guī)范的CC2530MDK開發(fā)套件。CC2530MDK開發(fā)套件中的節(jié)點都是由FB2530RF射頻模塊和FB2530EB全功能擴展板組成,支持對協(xié)議棧ZStack、協(xié)議棧Freakz等的移植。開發(fā)板S3C6410通過使用用戶IO擴展串口與Zig-Bee協(xié)調(diào)器模塊相連接。
平臺選用Wiondows Embedded CE 6.0構(gòu)建實時操作系統(tǒng)。平臺的系統(tǒng)層開發(fā)使用包含Plat form Builder插件的Visual Studio 2005專業(yè)版作為開發(fā)工具,安裝硬件廠商提供的BSP(Board Support Package)源碼包,通過Plat form Builder將編譯好的滿足系統(tǒng)功能需求的WinCE.NET操作系統(tǒng)下載到設備平臺上。平臺的系統(tǒng)應用層使用Visual Studio 2005作為集成開發(fā)環(huán)境,使用Wiondows CE提供的SDK開發(fā)包開發(fā)應用程序,通過Microsoft ActiveSync4.5實現(xiàn)應用程序從PC機到設備平臺的部署。當系統(tǒng)啟動完成,運行信息采集軟件,首先對系統(tǒng)進行初始化和參數(shù)設置,完成后就開始進入數(shù)據(jù)采集狀態(tài)。Wiondows CE具有多線程和多進程機制,所以主控制進程可以分別調(diào)用ZigBee接收進程、GPS接收進程。當數(shù)據(jù)采集進程完畢后,主控進程對數(shù)據(jù)進行處理和存儲。然后調(diào)用GSM通信進程,向數(shù)據(jù)管理中心發(fā)送本次采集的信息,成功后完成本次采集任務(圖2)。
圖2 信息采集程序流程
在此項目中ZigBee網(wǎng)絡節(jié)點分為ZigBee協(xié)調(diào)器節(jié)點和ZigBee終端節(jié)點兩個部分。ZigBee協(xié)調(diào)器節(jié)點主要負責配置網(wǎng)絡參數(shù)、建立網(wǎng)絡、接收采集數(shù)據(jù)等。ZigBee終端節(jié)點主要通過查找加入網(wǎng)絡,驅(qū)動傳感器進行數(shù)據(jù)采集,將采集的數(shù)據(jù)打包發(fā)送給協(xié)調(diào)器。對于協(xié)調(diào)器節(jié)點和終端節(jié)點的軟件設計,研究利用了德州儀器(TI)公司提供的符合ZigBee規(guī)范的Z-Stack協(xié)議棧,它是一個最基本的輪轉(zhuǎn)查詢式操作系統(tǒng)。筆者采用ZStack-CC2530-2.3.0-1.4.0下的工程演示文件,在IAR公司提供的集成開發(fā)環(huán)境IAR Embedded Workbench For C8051下通過修改和添加任務進行編譯,正確完成編譯后,使用編程器將編譯好的程序下載到對應的節(jié)點板中,并完成對節(jié)點板的設定,便可組網(wǎng)。
GPS_OEM接收機輸出的定位信息符合NMEA-0183通信標準。NMEA-0183通信標準采用ASCII碼,其串行通信默認參數(shù)為:波特率為4 800 bps,8位數(shù)據(jù)位,1位開始位,1位停止位,無奇偶校驗[5]。NMEA-0183協(xié)議定義的語句有$GPGGA、$GPGSA、$GPGSV、$GPRMC、$GPVTG、$GPGLL 等。GPS模塊輸出的所有信息由$(幀命令起始位)開始,以換行結(jié)束,緊跟著$后的5個字符解釋了信息的基本類型,多個參數(shù)之間用逗號隔開。筆者采用RMC語句(具有最小數(shù)據(jù)量的定位信息),它的語句格式參見文獻[6]。當系統(tǒng)調(diào)用GPS采集程序,首先初始化串口并打開GPS,然后開始采集GPS信息。從NMEA-0183通信協(xié)議的幀格式可知,首先判斷緊跟著$后的5個字符,當接收到“$GPRMC”后,才開始接收其后數(shù)據(jù)并判斷數(shù)據(jù)是否有效,數(shù)據(jù)正確接收保存,否則重新接受數(shù)據(jù),完成后關(guān)閉GPS模塊(圖3)。
圖3 GPS數(shù)據(jù)接收程序流程
SMS短消息服務可以實現(xiàn)數(shù)據(jù)采集平臺與數(shù)據(jù)管理中心的數(shù)據(jù)傳輸,具有實現(xiàn)簡單、抗干擾強、成本低廉的特點。TC35i模塊提供了符合GSM07.07規(guī)范的AT命令集接口,處理器模塊通過串口使用AT指令實現(xiàn)對GSM模塊接收和發(fā)送消息的控制。其串口通信協(xié)議:波特率為9 600 bps,8位數(shù)據(jù)位,1位停止位,無校驗位[7]。系統(tǒng)運行本程序后,首先進行初始化串口和GSM模塊,使用AT指令對GSM進行必要設置;然后將要發(fā)送的數(shù)據(jù)統(tǒng)一編碼為UCS2碼,并打包成PDU數(shù)據(jù)包的格式,使用AT命令進行信息發(fā)送;最后通過檢測串口返回信息判斷發(fā)送是否成功(圖4)。
圖4 GSM數(shù)據(jù)發(fā)送流程
數(shù)據(jù)管理中心采用B/S(Browser/Server)結(jié)構(gòu)基于J2EE架構(gòu)的總體開發(fā)方案,使用JSP(Java Server Pages)技術(shù)對串口進行操作,采用SQL Server 2005作為后臺數(shù)據(jù)庫[8]。基于JSP技術(shù)開發(fā)的動態(tài)網(wǎng)頁,具有平臺無關(guān)性、訪問數(shù)據(jù)庫快、安全性高等特點,更適合數(shù)據(jù)管理中心網(wǎng)站建設。
[1] 黃 磊.基于IEEE 802.15.4/ZigBee技術(shù)的智能家居方案研究[D].武漢:武漢科技大學,2009.
[2] ARM Limited.ARM1176JZF-S Technical Reference Manual(rev r0p7)[Z].ARM Corporation,2004.
[3] Fastrax.IT03-02_Datasheet[EB/OL].http://www.fastraxgps.com/products/gpsmodules/03series/it0302/,2007-09-20.
[4] 劉秋艷.基于TC35模塊的無線LED顯示屏的設計 [D].天津:天津工業(yè)大學,2006.
[5] 韓曉新,邢紹邦,沈 琳.基于AT89C52單片機的液晶GPS定位儀設計[J].工礦自動化,2010,(2):38-40.
[6] 王丙祥,李建海.基于89C52的GPS板電路設計與實現(xiàn)[J].西安文理學院學報(自然科學版),2007,10(3):98-101.
[7] 趙立燕,許 亮.基于GSM短信息的溫室環(huán)境監(jiān)測系統(tǒng)[J].電子設計工程,2009,(7):29-31.
[8] 周 桓,王殊宇.JSP項目開發(fā)全程實錄[M].北京:清華大學出版社,2008.