干旱缺水歷來(lái)是制約我國(guó)農(nóng)業(yè)生產(chǎn)發(fā)展的主要因素,南方省份如廣東,盡管年降雨量充足,但季節(jié)性缺水仍然嚴(yán)重,粵北、粵西地區(qū)尤為突出。茶樹(shù)對(duì)土壤含水量的要求較高,水分不足或過(guò)多均不利于茶樹(shù)生育,因而建立茶園旱情監(jiān)測(cè)系統(tǒng),將為解決茶園合理灌溉的問(wèn)題提供了科學(xué)依據(jù)。
近年來(lái),無(wú)線傳感器網(wǎng)絡(luò)(WSN)技術(shù)迅速興起,成為國(guó)內(nèi)外研究的熱點(diǎn)領(lǐng)域之一。WSN中的網(wǎng)關(guān)負(fù)責(zé)接收來(lái)自節(jié)點(diǎn)發(fā)送的數(shù)據(jù),并將數(shù)據(jù)進(jìn)行修正、融合等處理,然后通過(guò)以太網(wǎng)或GPRS等網(wǎng)絡(luò)基礎(chǔ)設(shè)施將數(shù)據(jù)接入Internet網(wǎng)絡(luò),傳送至遠(yuǎn)程終端,同時(shí)對(duì)遠(yuǎn)程終端所發(fā)出的指令進(jìn)行及時(shí)處理和反應(yīng)。目前,國(guó)內(nèi)外對(duì)于信息遠(yuǎn)距離傳輸?shù)腤SN網(wǎng)關(guān)技術(shù)已進(jìn)行了初步的研究。美國(guó)的Crossbow公司曾推出具有以太網(wǎng)通信功能的匯聚節(jié)點(diǎn)產(chǎn)品并得到應(yīng)用。哈佛大學(xué)的科研人員曾經(jīng)在位于厄瓜多爾爾境內(nèi)的唐古拉瓦火山(volean thngnrahua)附近部署了小范圍的無(wú)線傳感器網(wǎng)絡(luò),采集次聲波信號(hào)并傳送至匯聚節(jié)點(diǎn),通過(guò)接入無(wú)線Modem將數(shù)據(jù)轉(zhuǎn)發(fā)到9 km外火山監(jiān)測(cè)站的PC機(jī)上。國(guó)內(nèi)一些大學(xué)和科研機(jī)構(gòu)也提出了有關(guān)解決方案,比較典型的是基于有線通信方式的以太網(wǎng)和無(wú)線通信方式的GPRS,CDMA等WSN網(wǎng)關(guān),也有利用公共電話網(wǎng)(PSTN),采用撥號(hào)方式建立臨時(shí)連接方式實(shí)現(xiàn)遠(yuǎn)程數(shù)據(jù)傳輸?shù)木W(wǎng)關(guān)。
這里的目的是設(shè)計(jì)、開(kāi)發(fā)一種適合于山地茶園旱情的WSN網(wǎng)關(guān)。
1 網(wǎng)關(guān)系統(tǒng)的硬件設(shè)計(jì)
系統(tǒng)的硬件組成框圖如圖1所示。由CPU、存儲(chǔ)模塊、本地連接模塊、簇內(nèi)網(wǎng)絡(luò)連接模塊以及簇外網(wǎng)絡(luò)連接模塊組成。
系統(tǒng)采用三星公司的S3C2410作為CPU。S3C2410是一款基于ARM920T內(nèi)核的16/32位RISC嵌入式處理器,內(nèi)部有內(nèi)存管理單元(memory managerunit,MMU),可以穩(wěn)定運(yùn)行在266 MHz。
存儲(chǔ)模塊由FLASH存儲(chǔ)器、SDRAM以及SD卡組成。其中,F(xiàn)LASH 7存儲(chǔ)器采用三星公司的K9F1208UDM NAND FLASH;內(nèi)存SDRAM部分采用Hynix Semiconductor公司的HY57V561620芯片;S3C2410帶有SD卡接口,系統(tǒng)擴(kuò)展出SD卡插槽,用SD卡擴(kuò)展數(shù)據(jù)存儲(chǔ)空間。
本地連接模塊由串口電路、USB接口電路以及JTAG接口電路3部分組成。串口電路用于系統(tǒng)調(diào)試以及連接(自身)匯聚節(jié)點(diǎn)的DB51針擴(kuò)展接口。USB接口用來(lái)連接USB設(shè)備,以及實(shí)現(xiàn)與工作站連接、下載Linux內(nèi)核等功能。該模塊還提供了JTAG接口,方便用戶進(jìn)行JTAG調(diào)試。
簇內(nèi)網(wǎng)絡(luò)連接模塊主要負(fù)責(zé)網(wǎng)關(guān)與匯聚節(jié)點(diǎn)的連接,匯聚節(jié)點(diǎn)通過(guò)DB51針連接器與網(wǎng)關(guān)本地連接模塊中DB9串口連接,實(shí)現(xiàn)了網(wǎng)關(guān)與匯聚節(jié)點(diǎn)的連接功能。
簇外網(wǎng)絡(luò)連接模塊的功能是實(shí)現(xiàn)網(wǎng)關(guān)系統(tǒng)利用以太網(wǎng)或GPRS網(wǎng)絡(luò)接入Internet進(jìn)行數(shù)據(jù)傳輸,供遠(yuǎn)程終端進(jìn)行數(shù)據(jù)查詢以及遠(yuǎn)程監(jiān)控。簇外連接模塊由以太網(wǎng)接口電路以及GPRS接口電路組成。
2 網(wǎng)關(guān)系統(tǒng)軟件平臺(tái)搭建
Linux是內(nèi)核可裁剪、重新配置的操作系統(tǒng)。在ARM平臺(tái)上移植Linux嵌入式操作系統(tǒng)的工作分為建立交叉編譯環(huán)境、Bootloader移植、Linux內(nèi)核(kernel)移植、文件系統(tǒng)移植和系統(tǒng)驅(qū)動(dòng)程序設(shè)計(jì)等。Linux系統(tǒng)移植示意圖如圖2所示。
交叉編譯環(huán)境是由編譯器、連接器和解釋器組成的綜合開(kāi)發(fā)環(huán)境,可以將應(yīng)用程序轉(zhuǎn)換成能在目標(biāo)機(jī)上運(yùn)行的二進(jìn)制代碼。
Bootloader是嵌入式系統(tǒng)上電后執(zhí)行的第一個(gè)軟件代碼。它的主要運(yùn)行任務(wù)就是將內(nèi)核映像從硬盤上讀到RAM中,然后跳轉(zhuǎn)到內(nèi)核的入口點(diǎn)去運(yùn)行,即開(kāi)始啟動(dòng)操作系統(tǒng)。
文件系統(tǒng)是指在物理設(shè)備上的任何文件組織和目錄,它構(gòu)成了Linux系統(tǒng)上所有數(shù)據(jù)的基礎(chǔ)。該系統(tǒng)選用JFFS2作為文件系統(tǒng)。
在Linux中,設(shè)備驅(qū)動(dòng)程序的設(shè)計(jì)和使用一般有兩種方式可供選擇。第一種方式是將設(shè)備驅(qū)動(dòng)程序作為可加載的模塊,動(dòng)態(tài)地加載到內(nèi)核,模塊是內(nèi)核的一部分,但以獨(dú)立的個(gè)體形式存在;第二種方式是將設(shè)備驅(qū)動(dòng)程序作為內(nèi)核代碼的一部分編譯到內(nèi)核中去,是以內(nèi)核模式運(yùn)行的。本文選用了第二種方式。
3 遠(yuǎn)程數(shù)據(jù)傳輸方式設(shè)計(jì)與實(shí)現(xiàn)
在無(wú)線傳感器網(wǎng)絡(luò)與外部網(wǎng)絡(luò)進(jìn)行遠(yuǎn)程數(shù)據(jù)傳輸?shù)倪^(guò)程中,網(wǎng)關(guān)處于承上啟下的地位,是數(shù)據(jù)傳輸?shù)闹袠泄?jié)點(diǎn)。本文的通信軟件包括網(wǎng)關(guān)與匯聚節(jié)點(diǎn)通信模塊和網(wǎng)關(guān)與遠(yuǎn)程終端通信模塊。
網(wǎng)關(guān)與匯聚節(jié)點(diǎn)之間的通信主要是指網(wǎng)關(guān)接收匯聚節(jié)點(diǎn)數(shù)據(jù)的過(guò)程,一般采用串口通信方式。由于Linux內(nèi)核中已嵌入了串口驅(qū)動(dòng)程序,對(duì)串口的操作可通過(guò)設(shè)備文件來(lái)實(shí)現(xiàn)。
網(wǎng)關(guān)與遠(yuǎn)程終端進(jìn)行數(shù)據(jù)傳輸則分別通過(guò)開(kāi)發(fā)以太網(wǎng)應(yīng)用程序和利用PPP協(xié)議,實(shí)現(xiàn)了以太網(wǎng)的有線通信和GPRS的無(wú)線通信。采用面向連接的客戶機(jī)/服務(wù)器模型,其通信過(guò)程見(jiàn)圖3。考慮到對(duì)數(shù)據(jù)傳輸?shù)目煽啃砸筝^高,故采用基于TCP的流式套接字(socket)通信機(jī)制。利用Sierra Wireless公司的Aircard750上網(wǎng)卡連接移動(dòng)GPRS網(wǎng)絡(luò)接入Internet,從而實(shí)現(xiàn)網(wǎng)卡與遠(yuǎn)程監(jiān)控中心的數(shù)據(jù)交換。利用PPP協(xié)議棧把數(shù)據(jù)包封裝成IP包的格式,發(fā)送給無(wú)線模塊。完成從撥號(hào)到最終邏輯通信鏈路的建立需要經(jīng)過(guò):網(wǎng)關(guān)首先通過(guò)撥號(hào)呼叫ISP,在得到ISP應(yīng)答后,建立起初始的物理連接,此時(shí)可以檢測(cè)到載波信號(hào);然后終端與ISP之間開(kāi)始傳送一系列經(jīng)過(guò)PPP封裝的LCP分組,用于協(xié)商選擇將要采用的PPP參數(shù),參數(shù)協(xié)商完成后開(kāi)始認(rèn)證過(guò)程;認(rèn)證成功后,通信雙方開(kāi)始交換一系列的NCP分組來(lái)配置網(wǎng)絡(luò)層。對(duì)于上層使用IP協(xié)議的情況而言,此過(guò)程是由IPCP完成的;當(dāng)NCP配置完成后,邏輯通信鏈路就建立好了,雙方可以開(kāi)始在此鏈路上交換上層數(shù)據(jù)。該過(guò)程中PPP狀態(tài)轉(zhuǎn)換如圖4所示。
4 試驗(yàn)分析
網(wǎng)關(guān)系統(tǒng)要完成的主要任務(wù)包括采集傳感器節(jié)點(diǎn)旱情監(jiān)測(cè)的相關(guān)數(shù)據(jù),對(duì)數(shù)據(jù)進(jìn)行處理和封裝后通過(guò)以太網(wǎng)或GPRS網(wǎng)絡(luò)發(fā)送到遠(yuǎn)端具有固定公網(wǎng)IP的PC機(jī)。為了驗(yàn)證該網(wǎng)關(guān)系統(tǒng)數(shù)據(jù)傳輸?shù)膶?shí)時(shí)性、可靠性和適應(yīng)性,分別對(duì)以太網(wǎng)連接和GPRS遠(yuǎn)程傳輸可靠性進(jìn)行了測(cè)試試驗(yàn)。
試驗(yàn)條件:
(1)Ethernet Switch交換機(jī)1個(gè),EIA/TIA 568B標(biāo)準(zhǔn)網(wǎng)線(直連網(wǎng)線)2根;
(2)網(wǎng)關(guān)系統(tǒng)1套,采用嵌入式Linux操作系統(tǒng)、以太網(wǎng)口驅(qū)動(dòng)程序、串口數(shù)據(jù)采集程序、socket套接字聯(lián)接程序;
(3)利用10Base-T接至網(wǎng)絡(luò)的PC機(jī)1臺(tái),采用Windows XP操作系統(tǒng);
(4)Crossbow公司MICAz節(jié)點(diǎn)和MTS310傳感器6套,采用Crossbow公司的Moteview監(jiān)控軟件。
以太網(wǎng)的連接試驗(yàn)主要是針對(duì)網(wǎng)關(guān)連接、網(wǎng)關(guān)接收匯聚節(jié)點(diǎn)數(shù)據(jù)以及遠(yuǎn)程數(shù)據(jù)傳輸進(jìn)行測(cè)試。網(wǎng)關(guān)連接測(cè)試是驗(yàn)證網(wǎng)關(guān)嵌入式Linux操作系統(tǒng)、CS8900網(wǎng)卡初始化和驅(qū)動(dòng)程序的運(yùn)行正常與否,以及網(wǎng)關(guān)與監(jiān)測(cè)中心能否通過(guò)以太網(wǎng)進(jìn)行正常的網(wǎng)絡(luò)連接。測(cè)試網(wǎng)關(guān)接收匯聚節(jié)點(diǎn)數(shù)據(jù)的目的主要是驗(yàn)證SD卡的初始化、驅(qū)動(dòng)程序正常與否,網(wǎng)關(guān)能否通過(guò)串口讀取匯聚節(jié)點(diǎn)所接收的WSN節(jié)點(diǎn)數(shù)據(jù)。試驗(yàn)證明,網(wǎng)關(guān)系統(tǒng)能夠?qū)崟r(shí)采集WSN節(jié)點(diǎn)數(shù)據(jù),并通過(guò)以太網(wǎng)遠(yuǎn)程傳輸?shù)奖O(jiān)控中心,系統(tǒng)運(yùn)行穩(wěn)定可靠。
GPRS數(shù)據(jù)傳輸可靠性可以由誤碼率和丟包率來(lái)衡量。為了節(jié)省網(wǎng)絡(luò)帶寬,該實(shí)驗(yàn)以丟包率作為分析的主要依據(jù)。由于GPRS傳輸延遲的不確定性,數(shù)據(jù)傳輸?shù)目煽啃耘c數(shù)據(jù)包的發(fā)送時(shí)間間隔相關(guān),間隔時(shí)間越大,數(shù)據(jù)傳輸?shù)目煽啃跃蜁?huì)降低。分別對(duì)TCP/IP傳輸和UDP傳輸兩種通信方式進(jìn)行了測(cè)試丟包率試驗(yàn),發(fā)送間隔時(shí)間為1~10 s,每種間隔時(shí)間進(jìn)行500次數(shù)據(jù)傳輸試驗(yàn),計(jì)算的丟包率如圖5所示。可以看出,在2種傳輸模式中,4~5 s是1個(gè)分界點(diǎn),自此以后丟包率基本趨于穩(wěn)定,這時(shí)的丟包狀況來(lái)源于網(wǎng)絡(luò)的不可控因素。由于茶園旱情監(jiān)測(cè)對(duì)數(shù)據(jù)傳輸?shù)膶?shí)時(shí)性沒(méi)有過(guò)高的要求,因此,網(wǎng)關(guān)GPRS遠(yuǎn)程傳輸采用TCP方式,間隔時(shí)間選為5 s。
5 結(jié) 語(yǔ)
針對(duì)目前無(wú)線傳感器網(wǎng)絡(luò)的應(yīng)用特點(diǎn)及發(fā)展趨勢(shì),結(jié)合現(xiàn)今網(wǎng)絡(luò)技術(shù)、嵌入式系統(tǒng)技術(shù)的發(fā)展,設(shè)計(jì)采用嵌入式系統(tǒng)平臺(tái)實(shí)現(xiàn)多種遠(yuǎn)程數(shù)據(jù)傳輸技術(shù)的WSN網(wǎng)關(guān),用于茶園旱情監(jiān)測(cè)系統(tǒng)。網(wǎng)關(guān)通過(guò)串行口與匯聚節(jié)點(diǎn)通信,可以通過(guò)以太網(wǎng)或GPRS兩種可選方式監(jiān)測(cè)數(shù)據(jù)發(fā)到遠(yuǎn)程監(jiān)控中心。開(kāi)發(fā)了功能完善的WSN網(wǎng)關(guān)應(yīng)用軟件,在實(shí)際應(yīng)用中取得了良好的效果。隨著3G時(shí)代的到來(lái)以及工業(yè)級(jí)3G通信模塊的推出,如何利用網(wǎng)關(guān)系統(tǒng)實(shí)現(xiàn)WSN與3G的互聯(lián)是今后擬研究解決的問(wèn)題。
-
嵌入式
+關(guān)注
關(guān)注
5068文章
19021瀏覽量
303321 -
Linux
+關(guān)注
關(guān)注
87文章
11230瀏覽量
208932 -
操作系統(tǒng)
+關(guān)注
關(guān)注
37文章
6740瀏覽量
123192
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論