王宇楠+黃繼偉
摘 要:文中設(shè)計(jì)了一種基于物聯(lián)網(wǎng)技術(shù)的倉(cāng)庫(kù)監(jiān)控系統(tǒng)。該系統(tǒng)以ZigBee和ARM嵌入式系統(tǒng)技術(shù)為核心,可實(shí)現(xiàn)對(duì)庫(kù)房?jī)?nèi)環(huán)境參量和圖像信息的采集、分析、貯存及顯示。本系統(tǒng)部署有多重報(bào)警模塊,可提高貨物存儲(chǔ)的安全性。經(jīng)測(cè)試,該系統(tǒng)具有安裝簡(jiǎn)單、功耗低、成本低、運(yùn)行穩(wěn)定的特點(diǎn),在物流倉(cāng)庫(kù)監(jiān)控中具有很好的應(yīng)用前景。
關(guān)鍵詞:物聯(lián)網(wǎng);ZigBee;ARM;監(jiān)控系統(tǒng)
中圖分類(lèi)號(hào):TP277 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):2095-1302(2016)06-00-03
0 引 言
隨著經(jīng)濟(jì)的飛速發(fā)展,倉(cāng)儲(chǔ)規(guī)模越來(lái)越大,物資種類(lèi)也越來(lái)越多。傳統(tǒng)的以人為主導(dǎo)的倉(cāng)庫(kù)監(jiān)控系統(tǒng)變得十分笨重,不僅耗財(cái)耗力,還容易出現(xiàn)監(jiān)控盲區(qū)。正因?yàn)槿绱耍N類(lèi)繁多的倉(cāng)庫(kù)監(jiān)控設(shè)備也應(yīng)運(yùn)而生。近年來(lái),由于物聯(lián)網(wǎng)技術(shù)日漸受到開(kāi)發(fā)者的青睞,基于物聯(lián)網(wǎng)技術(shù)的嵌入式系統(tǒng)也因此為倉(cāng)庫(kù)監(jiān)控系統(tǒng)注入了新鮮的“血液”[1]。
本文結(jié)合ZigBee和ARM嵌入式系統(tǒng)技術(shù)[2,3],設(shè)計(jì)出一套低功耗、功能齊全、性能穩(wěn)定的無(wú)線倉(cāng)庫(kù)監(jiān)控系統(tǒng),實(shí)現(xiàn)對(duì)庫(kù)房?jī)?nèi)溫濕度、煙霧、水浸等環(huán)境參量和圖像的采集,并根據(jù)分析結(jié)果做出相應(yīng)處理。該系統(tǒng)在節(jié)省倉(cāng)庫(kù)監(jiān)控費(fèi)用和人力資源、提供安全的倉(cāng)儲(chǔ)環(huán)境方面有著十分重要的意義。
1 系統(tǒng)總體方案設(shè)計(jì)
該系統(tǒng)主要由參量采集前端、中控中心和監(jiān)測(cè)中心三部分組成。倉(cāng)庫(kù)參量采集前端主要負(fù)責(zé)采集庫(kù)房?jī)?nèi)的環(huán)境參量。環(huán)境參量的采集主要包括溫度、濕度、煙感、水浸、氣體、市電等。通過(guò)各類(lèi)傳感器或變送器將環(huán)境參量轉(zhuǎn)換成特定的信號(hào)后由采集前端進(jìn)行采集和初步處理??紤]到倉(cāng)庫(kù)中復(fù)雜的布局和環(huán)境,因此選用無(wú)線傳感節(jié)點(diǎn)對(duì)數(shù)據(jù)進(jìn)行采集。針對(duì)不同的倉(cāng)庫(kù)格局,無(wú)線的方式對(duì)于倉(cāng)庫(kù)監(jiān)控系統(tǒng)的部署有更大的靈活性。目前常用的短距離無(wú)線通信技術(shù)有紅外通信技術(shù)、WiFi無(wú)線網(wǎng)絡(luò)通信、UWB無(wú)載波通信技術(shù)、藍(lán)牙通信技術(shù)、ZigBee技術(shù)[4]。充分考慮了無(wú)線傳輸?shù)某杀?、功耗、通信距離、穩(wěn)定性、安全及組網(wǎng)方式,本系統(tǒng)采用ZigBee技術(shù)對(duì)倉(cāng)庫(kù)的參量進(jìn)行采集和傳輸。
中控中心是整個(gè)倉(cāng)庫(kù)監(jiān)控系統(tǒng)的核心模塊,該系統(tǒng)選用三星公司的S5PV210處理器作為中控中心的控制器核心。該處理器搭載了嵌入式Web服務(wù)器和數(shù)據(jù)庫(kù)。其中,嵌入式Web服務(wù)器負(fù)責(zé)響應(yīng)客戶(hù)端的請(qǐng)求,可實(shí)現(xiàn)與PC客戶(hù)端的實(shí)時(shí)通信[5]。嵌入式數(shù)據(jù)庫(kù)主要用來(lái)實(shí)時(shí)存儲(chǔ)采集到的參量,以便進(jìn)行分析和處理。當(dāng)檢測(cè)到參量異常時(shí)可以通過(guò)短信報(bào)警、現(xiàn)場(chǎng)聲光報(bào)警和網(wǎng)絡(luò)報(bào)警等多種報(bào)警模式,使異常和故障得到及時(shí)處理。此外,該中控中心還可以搭載門(mén)禁系統(tǒng)和視頻圖像采集系統(tǒng),加強(qiáng)對(duì)倉(cāng)庫(kù)進(jìn)出人員和現(xiàn)場(chǎng)實(shí)時(shí)情況的監(jiān)控。監(jiān)控中心主要負(fù)責(zé)處理并顯示從中控中心發(fā)回的數(shù)據(jù),是主要的人機(jī)交互界面。系統(tǒng)的整體框架如圖1所示。
2 系統(tǒng)硬件設(shè)計(jì)
系統(tǒng)硬件包括ZigBee網(wǎng)絡(luò)模塊和ARM中控中心的硬件設(shè)計(jì)。ZigBee網(wǎng)絡(luò)有終端節(jié)點(diǎn)、路由器、協(xié)調(diào)器三種網(wǎng)絡(luò)設(shè)備類(lèi)型,實(shí)現(xiàn)對(duì)庫(kù)房?jī)?nèi)環(huán)境參量的采集和傳輸。
(1)協(xié)調(diào)器主要用來(lái)協(xié)調(diào)建立網(wǎng)絡(luò)、管理網(wǎng)絡(luò)節(jié)點(diǎn),是整個(gè)網(wǎng)絡(luò)的發(fā)起者和維護(hù)者;
(2)路由器將終端節(jié)點(diǎn)、其他路由節(jié)點(diǎn)和協(xié)調(diào)器節(jié)點(diǎn)連接起來(lái),讓更多的設(shè)備加入到網(wǎng)絡(luò)中;
(3)終端節(jié)點(diǎn)上搭載各類(lèi)傳感器來(lái)完成最終的信息采集和設(shè)備控制。本系統(tǒng)應(yīng)用的傳感器有溫濕度傳感器、煙霧傳感器、火焰?zhèn)鞲衅?、光敏傳感器等。ARM中控中心與ZigBee協(xié)調(diào)器相連,搭載視頻采集、聲光報(bào)警、短信報(bào)警、門(mén)禁等系統(tǒng),實(shí)現(xiàn)對(duì)環(huán)境參量數(shù)據(jù)的處理和現(xiàn)場(chǎng)圖像的采集傳輸。
2.1 ZigBee網(wǎng)絡(luò)模塊硬件設(shè)計(jì)
該模塊以TI公司的CC2530芯片為核心,在此基礎(chǔ)上構(gòu)建無(wú)線傳感器網(wǎng)絡(luò)。CC2530是TI公司推出的新一代適合ZigBee通信片上系統(tǒng)解決方案,用于實(shí)現(xiàn)無(wú)線傳感網(wǎng)絡(luò)技術(shù)。它有著極高的集成化水平,集成了符合IEEE802.15.4標(biāo)準(zhǔn)的無(wú)線射頻收發(fā)器件、增強(qiáng)版的8051內(nèi)核、可編程存儲(chǔ)器以及8 KB的SRAM等。CC2530有優(yōu)良的射頻特性和低功耗特性,網(wǎng)絡(luò)節(jié)點(diǎn)功能強(qiáng)大,而且工作在免執(zhí)照頻段;具有出色的接收靈敏度,輸出功率最高可以達(dá)到4.5 dBm;在無(wú)外加功放且電路完全匹配的情況下,通信距離可達(dá)百米以上;電源電壓范圍為1.8~3.6 V,最低工作電壓僅需1.8 V,且有4種電源模式,轉(zhuǎn)換時(shí)間極短,非常適合需要超低功耗運(yùn)行的系統(tǒng)。
為了便于設(shè)備的維護(hù)及應(yīng)用擴(kuò)展,將ZigBee模塊分為CC2530核心板和底板兩個(gè)模塊。不同網(wǎng)絡(luò)設(shè)備對(duì)象的核心板是一樣的,底板可以根據(jù)需求做適當(dāng)修改。底板主要由電源模塊、外擴(kuò)存儲(chǔ)模塊、JTAG接口、RS 232接口、按鍵及傳感器接口等部分組成。在設(shè)計(jì)核心板時(shí),引腳30需要連接提供基準(zhǔn)電流的56 kΩ外部精密偏置電阻器,引腳40需要外接1μF的退耦電容。圖2所示是CC2530核心板的設(shè)計(jì)原理圖。
2.2 ARM中控中心硬件設(shè)計(jì)
中控中心采用三星公司基于ARM Cortex-A8內(nèi)核架構(gòu)的S5PV210處理器。該處理器有32位的精簡(jiǎn)指令集,具有32/64位內(nèi)部總線結(jié)構(gòu);CPU內(nèi)部有兩級(jí)分布為16/32 KB和512 KB的數(shù)據(jù)/指令緩存,具有出色的運(yùn)算能力;為了可靠安全的系統(tǒng)引導(dǎo)啟動(dòng),內(nèi)部集成了64 KB ROM和128 KB RAM;多媒體Codec支持實(shí)現(xiàn)H.264視頻格式的編解碼;有豐富的外設(shè)接口資源。中控中心采用了如下的嵌入式模塊:存儲(chǔ)器模塊、串口模塊、以太網(wǎng)模塊、電源管理和復(fù)位電路模塊、調(diào)試電路模塊、USB接口模塊等。攝像頭、報(bào)警系統(tǒng)、ZigBee協(xié)調(diào)器等模塊通過(guò)USB接口和串口模塊來(lái)擴(kuò)展。圖3所示是中控中心硬件平臺(tái)的硬件框架圖。
3 系統(tǒng)軟件設(shè)計(jì)與實(shí)現(xiàn)
本監(jiān)控系統(tǒng)中軟件主要有ZigBee網(wǎng)絡(luò)的軟件設(shè)計(jì)、視頻采集、Boa嵌入式Web服務(wù)器的搭建、嵌入式數(shù)據(jù)庫(kù)SQLite3及操作系統(tǒng)的移植和底層硬件驅(qū)動(dòng)的移植和編寫(xiě)等。
3.1 ZigBee網(wǎng)絡(luò)軟件設(shè)計(jì)
3.1.1 ZigBee協(xié)調(diào)器軟件設(shè)計(jì)
ZigBee協(xié)調(diào)器所承擔(dān)的角色是組建和維護(hù)網(wǎng)絡(luò), 并且把從終端節(jié)點(diǎn)接受到的數(shù)據(jù)通過(guò)串口轉(zhuǎn)發(fā)給中控中心,中控中心也可以通過(guò)協(xié)調(diào)器向整個(gè)網(wǎng)絡(luò)發(fā)送控制信息。協(xié)調(diào)器的主要任務(wù)有以下兩項(xiàng):
(1)檢測(cè)串口接收緩沖區(qū),將接收到的命令發(fā)送到相應(yīng)的終端節(jié)點(diǎn);
(2)檢測(cè)無(wú)線數(shù)據(jù)接收緩沖區(qū),將終端節(jié)點(diǎn)發(fā)送的數(shù)據(jù)轉(zhuǎn)發(fā)給中控中心。ZigBee協(xié)調(diào)器的工作流程如圖4所示。
3.1.2 ZigBee終端節(jié)點(diǎn)軟件設(shè)計(jì)
ZigBee終端節(jié)點(diǎn)上搭載各種傳感器,加入網(wǎng)絡(luò)后周期性的采集和發(fā)送數(shù)據(jù),對(duì)協(xié)調(diào)器發(fā)送過(guò)來(lái)的命令進(jìn)行響應(yīng)。為了降低整個(gè)網(wǎng)絡(luò)的功耗,并保證全網(wǎng)節(jié)點(diǎn)同步的效果,終端節(jié)點(diǎn)的休眠采用同步和異步休眠混合的方式。終端節(jié)點(diǎn)在發(fā)送環(huán)境參量信息后,若收到協(xié)調(diào)器發(fā)過(guò)來(lái)的休眠指令,則進(jìn)入同步休眠模式;否則進(jìn)入異步休眠模式。異步模式下在監(jiān)聽(tīng)時(shí)間片內(nèi)收到喚醒指令,等待協(xié)調(diào)器的休眠指令進(jìn)入同步休眠模式。ZigBee終端節(jié)點(diǎn)的工作流程如圖5所示。
3.2 視頻采集軟件設(shè)計(jì)
視頻采集選用USB接口的攝像頭,完成Linux內(nèi)核部分的移植。Video4Linux2是Linux系統(tǒng)里關(guān)于視頻設(shè)備的驅(qū)動(dòng)和函數(shù)庫(kù),這個(gè)函數(shù)庫(kù)給應(yīng)用軟件的編程用戶(hù)提供接口函數(shù)以實(shí)現(xiàn)圖像的采集。在Linux中,包括攝像頭在內(nèi)的所有設(shè)備都被看作是一個(gè)文件,通過(guò)Open()和Close()函數(shù)進(jìn)行打開(kāi)和關(guān)閉操作,這樣可以方便地對(duì)設(shè)備進(jìn)行讀寫(xiě)操作。打開(kāi)視頻采集設(shè)備文件后,獲得設(shè)備屬性的參數(shù)并設(shè)置視頻采集的格式。將從內(nèi)核申請(qǐng)到的幀緩存內(nèi)存映射到用戶(hù)空間后,開(kāi)始進(jìn)行采集。由于采集到的數(shù)據(jù)幀比較大,所以采用H.264壓縮編碼技術(shù)[6]對(duì)視頻數(shù)據(jù)進(jìn)行壓縮。最后利用無(wú)線網(wǎng)卡對(duì)視頻數(shù)據(jù)進(jìn)行傳輸。視頻采集流程如圖6所示。
3.3 遠(yuǎn)程監(jiān)控功能軟件設(shè)計(jì)
該系統(tǒng)采用B/S(瀏覽器/服務(wù)器)結(jié)構(gòu)實(shí)現(xiàn)遠(yuǎn)程監(jiān)控的功能。Boa是專(zhuān)門(mén)為嵌入式Linux系統(tǒng)設(shè)計(jì)的Web服務(wù)器,它十分精巧且源碼開(kāi)放,支持CGI功能[7]。Boa服務(wù)器以超文本傳輸協(xié)議(http)為基礎(chǔ),利用網(wǎng)絡(luò)對(duì)嵌入式設(shè)備進(jìn)行信息交互。我們首先在中控中心上移植Boa服務(wù)器,然后對(duì)Boa進(jìn)行配置,使它支持網(wǎng)關(guān)接口程序的執(zhí)行。監(jiān)控中心要先向Boa服務(wù)器發(fā)起連接,然后通過(guò)Socket套接字向服務(wù)器端提出請(qǐng)求,經(jīng)過(guò)超文本傳輸協(xié)議傳給Boa服務(wù)器。服務(wù)器端收到瀏覽器端的請(qǐng)求信息后,將信息傳輸給指定的CGI程序訪問(wèn)本地?cái)?shù)據(jù)庫(kù),并把數(shù)據(jù)回傳給監(jiān)控中心,通過(guò)瀏覽器顯示出來(lái)。遠(yuǎn)程監(jiān)控實(shí)現(xiàn)流程如圖7所示。
4 結(jié) 語(yǔ)
經(jīng)過(guò)系統(tǒng)設(shè)計(jì)、軟硬件聯(lián)合調(diào)試和系統(tǒng)功能測(cè)試,本系統(tǒng)較好地實(shí)現(xiàn)了庫(kù)房環(huán)境參量和視頻圖像的采集和傳輸、異?,F(xiàn)象的及時(shí)報(bào)警等功能;登錄如圖8所示的監(jiān)控界面后,可以對(duì)現(xiàn)場(chǎng)圖像和環(huán)境參量進(jìn)行實(shí)時(shí)查看,還可以實(shí)時(shí)接收?qǐng)?bào)警信息和瀏覽歷史數(shù)據(jù)。系統(tǒng)的能耗較低,且數(shù)據(jù)采集的準(zhǔn)確率高。以溫度參量為例,采集的溫度與實(shí)際溫度的誤差在5%以?xún)?nèi);當(dāng)ZigBee終端節(jié)點(diǎn)與協(xié)調(diào)器間的傳輸距離低于60 m時(shí),終端節(jié)點(diǎn)的平均待機(jī)功耗低于2 μA。本系統(tǒng)運(yùn)行穩(wěn)定,布局方便,安裝成本低,監(jiān)控類(lèi)目齊全且功耗較低,可以推廣到智能家居或智能農(nóng)業(yè)等領(lǐng)域,在監(jiān)控領(lǐng)域有較大的前景和市場(chǎng)。
參考文獻(xiàn)
[1]呂延杰.物聯(lián)網(wǎng)的由來(lái)與發(fā)展趨勢(shì)[J].信息通信技術(shù),2010(2):4-8.
[2]梁華軍.基于ARM9與ZigBee無(wú)線監(jiān)測(cè)系統(tǒng)的開(kāi)發(fā)研究[D].廣州:華南理工大學(xué),2012.
[3]王小強(qiáng). ZigBee無(wú)線傳感器網(wǎng)絡(luò)設(shè)計(jì)與實(shí)現(xiàn)[M].北京:化學(xué)工業(yè)出版社,2012.
[4]張娜.無(wú)線通信技術(shù)發(fā)展應(yīng)用[J].數(shù)字化用戶(hù),2014(2):55-57.
[5]張軍衛(wèi),韓佩富,矯春海.基于嵌入式WEB服務(wù)器的視頻監(jiān)控系統(tǒng)設(shè)計(jì)[J].計(jì)算機(jī)安全,2011(2):5-8.
[6]鄧中亮.基于H.264的視頻編/解碼與控制技術(shù)[M].北京:北京郵電大學(xué)出版社,2010.
[7]王寶忠,馬成.基于CGI技術(shù)的嵌入式動(dòng)態(tài)Web的研究與實(shí)現(xiàn)[J].電子設(shè)計(jì)工程,2012,20(18):161-163.