基于ZigBee和GSM網(wǎng)絡(luò)的倉庫環(huán)境監(jiān)控系統(tǒng)設(shè)計
引 言
我國不僅是一個農(nóng)業(yè)大國,更是工業(yè)大國,倉庫成為了眾多企業(yè)和公司不可缺少的一部分。糧食、工業(yè)產(chǎn)品在儲存過程中易受溫濕度等因素的影響,可能會霉變、生銹甚至引起火災(zāi)等,而無人看管的倉庫則會出現(xiàn)無關(guān)人員隨意進入、偷盜等情況[1]。企業(yè)和公司的傳統(tǒng)做法是安裝有線監(jiān)控或者采用人工值守等方式,但有線監(jiān)控在多個監(jiān)測點或者布線困難的情況下顯得繁瑣,且成本高,不靈活;而人工值守的方式不僅費時、費力且隨機性大,數(shù)據(jù)測量不準(zhǔn)確。針對這些問題,本文基于ZigBee 和GSM 網(wǎng)絡(luò)設(shè)計了一種以 STM32F103ZET6 為主控芯片,成本低,靈活性好,可靠程度高的倉庫環(huán)境監(jiān)控系統(tǒng) [2]。
1 系統(tǒng)總體設(shè)計
該系統(tǒng)主要由ZigBee 模塊、主控芯片、GPRS 無線發(fā)射模塊組成。
ZigBee 模塊分為終端和協(xié)調(diào)器兩部分,終端負責(zé)接收并處理傳感器采集的溫濕度、煙霧等倉庫環(huán)境數(shù)據(jù),并將處理好的數(shù)據(jù)通過無線網(wǎng)絡(luò)發(fā)送給協(xié)調(diào)器。
協(xié)調(diào)器負責(zé)接收終端發(fā)送的數(shù)據(jù),然后通過串口將數(shù)據(jù)發(fā)送給主控芯片。
主控芯片負責(zé)接收協(xié)調(diào)器發(fā)送的數(shù)據(jù)??刂埔壕溜@示溫濕度信息,并等待用戶以短信形式發(fā)送指令,當(dāng)接收到查詢指令時,主控芯片通過 GPRS 無線發(fā)射模塊及時將倉庫的溫濕度信息發(fā)送給用戶;接收到命令指令后,主控芯片將命令發(fā)送給協(xié)調(diào)器,進而控制各個終端,終端依照接收的指令控制繼電器的開閉,最終實現(xiàn)打開或關(guān)閉通風(fēng)窗口和除濕設(shè)備的目的。系統(tǒng)總體設(shè)計框圖如圖 1 所示。
2 系統(tǒng)硬件選型與設(shè)計
系統(tǒng)終端和協(xié)調(diào)器均采用TI公司生產(chǎn)的 ZigBeeSOC CC2530F256芯片,該芯片基于 IEEE 802.15.4規(guī)范標(biāo)準(zhǔn)[3],能夠以非常低的材料成本建立強大的網(wǎng)絡(luò)節(jié)點[4]。CC2530芯片集成了RF收發(fā)器、增強工業(yè)標(biāo)準(zhǔn)的 8051MCU、可編程 Flash 存儲器、8KBRAM和許多其他強大功能[5]。此外,ZigBee 模塊安裝了 3dB的 2.4GHz 膠棒天線,使得輸出功率達到22dBm,終端與協(xié)調(diào)器之間的有效傳輸距離長達 500m,可滿足大型倉庫的通信要求。
主控芯片采用STM32F103ZET6 處理器。該處理器不僅功耗低,還帶有 512 KB Flash 和 64 KB SRAM 存儲器[6]。工作電壓范圍為 2.0 ~3.6 V,具有多種省電模式,可完全滿足低功耗的要求。無線發(fā)射模塊采用具有緊湊型、高可靠性特點的無線模塊 SIM900A,它采用SMT 封裝的雙頻GSM/GPRS 模塊解決方案,擁有強大功能的處理器ARM9216EJ-S 內(nèi)核, 能夠滿足低成本,緊湊尺寸的要求。
2.1 終端節(jié)點設(shè)計
系統(tǒng)由四個終端組成,其中兩個終端分別監(jiān)測倉庫中的溫濕度和氣味濃度,另外兩個負責(zé)紅外報警和繼電器控制。采用DHT11 溫濕度傳感器監(jiān)測倉庫中的溫濕度,該傳感器是一款含有已校準(zhǔn)數(shù)字信號輸出的溫濕度復(fù)合傳感器 [7],具有極高的可靠性和優(yōu)秀的穩(wěn)定性,適合長期監(jiān)測環(huán)境的溫濕度。采用MQ2 煙霧傳感器監(jiān)測氣味濃度,該傳感器對可燃性氣體有較高的靈敏度,完全契合倉庫預(yù)防火災(zāi)的要求。該終端采用紅外熱釋電傳感器HC-SR501 進行紅外報警,是一款基于紅外技術(shù)的自動控制產(chǎn)品,具有靈敏度高,可靠性好,超低功耗等優(yōu)點,能夠在超低電壓下工作,采用一款 5 V 或兼容 3.3 V 的繼電器連接到ZigBee 終端模塊即可。圖 2 中從左到右依次是溫濕度傳感器、煙霧傳感器和紅外傳感器。
圖 2 傳感器實物
2.2 協(xié)調(diào)器設(shè)計
協(xié)調(diào)器主要負責(zé)啟動、配置網(wǎng)絡(luò)和收發(fā)數(shù)據(jù),無需連接任何傳感器和繼電器。協(xié)調(diào)器通過串口與主控芯片連接,可實現(xiàn)串口通信。因ZigBee 模塊、主控芯片和無線發(fā)射模塊擁有相同的通信協(xié)議,因此僅需注意各模塊串口的正確連接即可。通訊協(xié)議的格式見表 1 所列。
2.3 主控電路設(shè)計
主控電路芯片采用 STM32F103ZET6 處理器,由主控芯 片作為系統(tǒng)中樞,起到承上啟下的作用。主控芯片通過串口 連接 SIM900A 模塊、液晶顯示模塊和協(xié)調(diào)器。各模塊連接 方式如圖 3 所示。圖中從左到右依次是協(xié)調(diào)器、主控電路、 SIM900A 無線發(fā)射模塊,主控電路連接電源,為協(xié)調(diào)器和無 線發(fā)射模塊供電。
圖 3 模塊連接圖
3 系統(tǒng)軟件設(shè)計
系統(tǒng)軟件由主控芯片的系統(tǒng)軟件和 ZigBee 模塊部分的系 統(tǒng)軟件組成。
3.1 主控芯片的系統(tǒng)軟件
主控芯片既要負責(zé)接收各種傳感器發(fā)送的數(shù)據(jù),又要接 收用戶發(fā)送的指令,經(jīng)常需要處理多個任務(wù),因此在主控芯 片中植入一個實時多任務(wù)的操作系統(tǒng)很有必要。系統(tǒng)采用μC/ OS-II 操作系統(tǒng),該系統(tǒng)可基于 ROM 運行,可裁剪,含實時 多任務(wù)內(nèi)核,具有高度的可移植性,適用于微處理器和控制 器 [8]。待操作系統(tǒng)移植好后,根據(jù)需要確定各任務(wù)的優(yōu)先級, 安排各任務(wù)的執(zhí)行順序并設(shè)計相應(yīng)的程序。將設(shè)計好的程序 燒到主控芯片,使芯片具有運行協(xié)調(diào)任務(wù)的能力,從而確保任 務(wù)之間可無沖突、流暢地同步運行。
3.2 ZigBee 模塊的系統(tǒng)軟件
為了讓用戶更方便地使用 ZigBee 技術(shù),TI 公司向用戶免 費提供了 Z-Stack,即 CC2530 開發(fā)板的配套程序。Z-Stack 包 含了協(xié)調(diào)器和終端程序設(shè)計的例程,用戶可根據(jù)自身需要在相 應(yīng)的例程基礎(chǔ)上修改協(xié)議棧規(guī)范、網(wǎng)絡(luò)拓撲結(jié)構(gòu)、PANID、信 道和數(shù)據(jù)收發(fā)函數(shù)等網(wǎng)絡(luò)參數(shù)及與系統(tǒng)工程相關(guān)的應(yīng)用層和與 硬件部分相關(guān)的程序。本文所設(shè)計的系統(tǒng)中,系統(tǒng)協(xié)調(diào)器和終 端程序設(shè)計都通過在 IAR Embedded Workbench for 8051 開發(fā) 環(huán)境下修改 Z-Stack-CC230-2.5.1 的 SampleApp 例程來完成。
3.3 系統(tǒng)軟件執(zhí)行過程
操作系統(tǒng)啟動后首先初始化硬件設(shè)備,從配置文件中讀 取相關(guān)配置信息,之后初始化串口,接收協(xié)調(diào)器從串口發(fā)送的 數(shù)據(jù),等待用戶發(fā)送命令指令,如果接收到指令則發(fā)送實時數(shù) 據(jù)給用戶,或者將用戶的指令發(fā)送給協(xié)調(diào)器。ZigBee 內(nèi)網(wǎng)的建 立和維護由 ZigBee 協(xié)調(diào)器承擔(dān),接收主控芯片傳送的控制指 令并轉(zhuǎn)發(fā)到各個終端 [9]。在本系統(tǒng)采用星形網(wǎng)絡(luò),星形網(wǎng)絡(luò)是 數(shù)據(jù)和網(wǎng)絡(luò)命令都通過中心節(jié)點傳輸?shù)囊粋€輻射狀系統(tǒng),具有 結(jié)構(gòu)簡單,設(shè)備成本低等優(yōu)點。網(wǎng)絡(luò)組建主要包括系統(tǒng)初始化、 網(wǎng)絡(luò)拓撲更新和節(jié)點通信幾方面 [10]。協(xié)調(diào)器網(wǎng)絡(luò)通信流程如 圖 4 所示。
4 系統(tǒng)測試
本系統(tǒng)設(shè)計的模塊包括傳感器終端模塊、主控電路模塊,與主控電路連接的協(xié)調(diào)器模塊以及 GPRS 無線發(fā)射模塊。系 統(tǒng)連接如圖 5 所示。
將制作好的系統(tǒng)終端節(jié)點模塊和主控電路等模塊放在模 擬倉庫中進行測試,將不同類別的傳感器模塊等間隔放置在 倉庫內(nèi)的不同位置。系統(tǒng)上電后,液晶屏開始顯示倉庫的溫濕 度。當(dāng)用戶手機發(fā)送短信查詢倉庫環(huán)境信息時,可以收到系 統(tǒng)發(fā)送的倉庫溫濕度數(shù)據(jù)信息。當(dāng)紅外傳感器檢測到有人時, 系統(tǒng)主動將報警信息以短信形式發(fā)送到手機。用打火機在煙 霧傳感器周圍釋放可燃氣體,當(dāng)可燃氣體濃度超過程序中預(yù)設(shè) 的上限時,系統(tǒng)會主動發(fā)送報警信息給手機,如圖 6 所示。
經(jīng)測試,該系統(tǒng)對溫度的檢測誤差為 0.1℃,濕度誤差為 1%RH,煙霧濃度分辨率為 0.3,可滿足對倉庫環(huán)境參數(shù)的檢 測精度要求。該系統(tǒng)對可燃性氣體反應(yīng)靈敏,當(dāng)檢測到可燃性 氣體時會迅速向用戶發(fā)送報警短信,并準(zhǔn)確控制繼電器的開閉。
5 結(jié) 語
本文所設(shè)計的倉庫環(huán)境監(jiān)控系統(tǒng)采用 ZigBee 無線通信 方式,用戶無需布線,只需將終端設(shè)備放置到需要監(jiān)測的位置 即可,便于安裝。系統(tǒng)使用的主控芯片功能強大,具有良好的 擴展性,可以根據(jù)客戶的不同需要在原來的基礎(chǔ)上增加新的 功能。用戶可以短信方式查詢倉庫環(huán)境信息并控制倉庫通風(fēng)窗 口,非常人性化。本文設(shè)計的系統(tǒng)具有耗能少,成本低,穩(wěn)定 性好等特點,具有一定的推廣價值。