張力塬,吳廣富,周 橫,何金鐘
(重慶郵電大學,重慶400065)
隨著物聯(lián)網(wǎng)的快速普及和發(fā)展,智能家居系統(tǒng)迎來快速發(fā)展的機遇。目前居民家庭基數(shù)大、分布廣,電器設備不斷增多,高層居住建筑林立,消防監(jiān)督力量無法顧及,火災發(fā)生幾率和撲救難度日趨提高,智能家居系統(tǒng)中的火災防控體系也需要逐漸規(guī)范、完善。
目前,國內學者對基于無線傳感器網(wǎng)絡的消防報警系統(tǒng)提供了多種不同的研究方法和思路,如楊軼杰、張軍的基于無線傳感器網(wǎng)絡的高校宿舍消防報警系統(tǒng)的研究,提出了消防安全系統(tǒng)在高校寢室的解決方案[1];闞鳳龍等人提供了智能式、大容量、網(wǎng)絡化的火災報警系統(tǒng)的解決方案,如ZigBee無線傳感器網(wǎng)絡在消防報警系統(tǒng)中的應用,解決了現(xiàn)有消防報警系統(tǒng)設計、施工與維護復雜,抗干擾能力低,故障率和誤報率高等問題[2];李卿提出了基于無線傳感器網(wǎng)絡的消防報警系統(tǒng)的解決方案,實現(xiàn)了節(jié)點通過傳感器全方位地對環(huán)境參數(shù)進行采集,并把采集到的數(shù)據(jù)信息進行相應的處理和傳送,然后通過采集節(jié)點和監(jiān)控平臺同時進行預警[3]。
但是上述火災防控供電體系都是基于市電供電[4],如果停電,家庭火災自動報警系統(tǒng)就完全失效?;诖?,本文提出了基于一種NB-IOT的低功耗消防報警系統(tǒng)。消防傳感器網(wǎng)絡供電系統(tǒng)是通過太陽能電池板對鋰電池進行充電,同時需要實時檢測充電電壓,當電量不足時,能夠減小采樣頻率降低系統(tǒng)功耗[5];利用DC-DC升壓電路輸出穩(wěn)定的5V電壓。該系統(tǒng)能在有效延緩充電電池使用時間的同時,充分利用鋰電池電量,延長了電池使用壽命,可為火災監(jiān)測系統(tǒng)提供持續(xù)穩(wěn)定的電源供給。
本系統(tǒng)由供電系統(tǒng)和監(jiān)測系統(tǒng)兩部分組成。首先,供電系統(tǒng)的主要構成部分有充電電路、監(jiān)測電路和穩(wěn)壓電路;鋰電池充電電路采用CN3722實現(xiàn)對太陽能板的最大功率點追蹤以提高太陽能利用率,將太陽能板輸出電壓轉化為輸出為4.2 V的電壓從而為鋰電池充電,該芯片能量轉換效率為85%;監(jiān)測電路采用DS2762監(jiān)測鋰電池電壓、電量;穩(wěn)壓電路CS5171芯片輸出5 V,最大電流可達1.5 A,從而為火災監(jiān)測系統(tǒng)供電。監(jiān)測系統(tǒng)在室內部署煙霧傳感器以及火焰?zhèn)鞲衅鞴?jié)點,采集室內的煙霧濃度以及監(jiān)測室內是否有火焰,并通過藍牙廣播將數(shù)據(jù)傳輸給協(xié)調器節(jié)點。一方面,協(xié)調器節(jié)點負責接收并解析終端節(jié)點發(fā)送的數(shù)據(jù),再通過NB模塊將數(shù)據(jù)上傳到云平臺,之后通過云平臺傳送至上位機;另一方面,上位機也可以主動發(fā)出指令,實時查詢終端節(jié)點狀態(tài),實現(xiàn)人機交互,如果有異常發(fā)生時,能夠實時預警。本系統(tǒng)總體框架如圖1所示。
圖1 系統(tǒng)總體框架
硬件設計由鋰電池充電電路、鋰電池電壓檢測電路、穩(wěn)壓電路、傳感器終端節(jié)點設計、協(xié)調器節(jié)點設計以及NB-IOT模塊硬件設計組成。本系統(tǒng)采用的太陽能電池是多晶硅的10 W太陽能電池,在測試條件(1 000 W/M2,25℃,AM1.5輸出功率誤差:±5%)下,其最大功率為10 W,峰值電壓為18 V,峰值電流為556 mA,開路電壓為21.6 V,短路電流為630 mA。太陽能電池在陽光充足的情況下可以同時給系統(tǒng)充電并且給鋰電池充電;在陽光不充足的情況下,太陽能電池單獨給系統(tǒng)供電;在下雨天或者晚上,太陽能電池板無法獲取能量,鋰電池則負責給系統(tǒng)供電,實現(xiàn)鋰電池以及太陽能板的供電轉換采用增強型PMOS管SI2307實現(xiàn),最大連續(xù)電流為2.5 A,當鋰電池電壓遠小于太陽能電壓時,SI2307截止,反之,SI2307導通,從而實現(xiàn)太陽能電池以及鋰電池之間的供電電源轉換。
該系統(tǒng)使用的NB-IOT模塊為BC95模塊,該模塊支持電信NB-IOT網(wǎng)絡以及移動NB-IOT網(wǎng)絡;本系統(tǒng)使用移動NB網(wǎng)絡,基于CoAP+LWM2M協(xié)議,實現(xiàn)OneNET與NB模塊的無縫對接,實現(xiàn)了NB-IOT設備快速、穩(wěn)定接入云平臺,該模塊適用于對設備成本敏感以及功耗要求低的應用場景[6];支持發(fā)送注冊包功能;支持超低功耗模式;支持基本指令集。
本系統(tǒng)使用了CN3722充電管理芯片[7],該芯片具有太陽能電池的最大功率點追蹤功能,在工作環(huán)境溫度-40℃~+85℃的條件下,芯片寬輸入電壓范圍為7.5~28 V,開關頻率為300 kHz,能夠對單節(jié)或多節(jié)鋰電池或磷酸鐵鋰電池進行完整的充電管理,充電電流最高可達5 A。
基于CN3722的充電電路如圖2所示,充電過程中由LED1和LED2指示電池充電狀態(tài)和充電結束。鋰電池充電過程分為涓流、恒流、恒壓3個階段進行[8]。當鋰電池兩端電壓低于所設置的恒壓充電電壓的66.7%,充電電路對鋰電池進行涓流充電,充電電流為0.15IREG,IREG是恒定的充電電流。之后進入恒流充電階段,電壓逐漸升高到VREG=4.2 V,VREG是設定的恒定的充電電壓。進入恒壓充電階段之后,電流逐漸減小到0,從而達到保護電池的目的。
圖2 充電過程示意圖
在圖3電路圖中,電阻Rcs決定充電電流大小,電流恒流值為IREG=200 mV/Rcs。充電電感(C1、C2、C3、C4)在20 μH以上即可,在此選擇47 μH從而減少紋波,電容為10 μH鉭電容。在恒壓充電中,恒壓充電電壓值為[9]:
式中,IB為FB管腳的偏置電流,其典型值為50 nA。當VBAT是4.2 V時,電阻R6=68 kΩ,電阻R7=51 kΩ。在充電過程中為了保護電池,在TEMP腳和GND腳之間連接入一個負溫度系數(shù)的10 kΩ熱敏電阻來監(jiān)測電池溫度。當電池溫度超過正常溫度后,芯片停止對電池充電,在電池溫度恢復到正常溫度范圍后繼續(xù)充電。
CN3722采用恒電壓法跟蹤太陽能電池的最大功率點。當使用太陽能電池供電時,即使太陽能電池的輸出功率很小,CN3722也能自動跟蹤太陽能電池的最大功率點。在環(huán)境溫度為25℃時,CN3722太陽能電池最大功率點跟蹤端MPPT管腳的電壓被調制在1.04 V,其配合片外的兩個電阻(圖4中的R3和R8)構成的分壓網(wǎng)絡,可以對太陽能電池最大功率點進行跟蹤。這種最大功率點跟蹤方法非常適合四季溫差比較大或者日溫差比較大的情形。在25℃時,太陽能電池最大功率點電壓由下式?jīng)Q定:VMPPT=1.04×(1+R8/R3)。
圖3 太陽能充電電路
本系統(tǒng)的電壓檢測電路采用MAXIM公司的DS2762新一代智能鋰電池監(jiān)測芯片[10],該芯片可以實時監(jiān)測電池的電壓、電流、剩余電量以及充放電狀況等參數(shù),監(jiān)測電路如圖4所示。該芯片不僅有過流保護、過壓保護、欠壓保護等特性,并且可以將電池監(jiān)測參數(shù)儲存起來,供單片機處理。 該芯片內部有25 mΩ監(jiān)測電阻以及外部監(jiān)測電阻從而實現(xiàn)電流監(jiān)測功能,電流最小分辨率為0.625 mA,動態(tài)范圍是±1.9 A,電流積累運算的最小分辨率為0.25 mAhr;外部監(jiān)測電阻的電流最小分辨率為15.625 μA,動態(tài)范圍是±64 mV。電壓測量的分辨率是4.88 mV。DS2762內部集成了A/D轉換器,因此,通過單片機發(fā)送采集電壓、電流的命令,待其采樣完成后,芯片會將電壓、電流的測量值存入相應的寄存器中,最后單片機可以讀取相應寄存器的電壓和電流值。單片機每一個時間間隔監(jiān)測一次電壓,DS2762的IS1和IS2兩端的壓差Vis=Vis1-Vis2轉換成電流存入電流寄存器。如果Vis是正數(shù),說明電池正在充電。如果Vis是負數(shù),說明電池正在放電。剩余電量的監(jiān)測則是利用電流累加寄存器中的值求得的,在電池充電時,該值增加;在電池放電時,該值減小。這樣,通過單片機讀取該值即可獲得剩余電量。
圖4 鋰電池電壓檢測電路
鋰電池的工作電壓為2.75~4.25 V,而CS5171的工作電壓為2.7~28 V,輸出5 V,最大電流可達1.5 A,可以滿足該消防傳感器系統(tǒng)的工作電壓、工作電流要求,所以該系統(tǒng)采用CS5171作為穩(wěn)壓芯片,CS5171是560 kHz的高效率開關穩(wěn)壓器。該芯片支持2.7~30 V寬輸入電壓。該芯片設計靈活,支持升壓、降壓、反向,穩(wěn)壓電路如圖5所示。
圖5 穩(wěn)壓電路
終端節(jié)點由CC2541模塊、火焰?zhèn)鞲衅骷盁熿F傳感器組成,火焰?zhèn)鞲衅?、煙霧傳感器節(jié)點通過數(shù)字量輸出口DO向CC2541發(fā)送采集數(shù)據(jù),CC2541將數(shù)據(jù)收集后以廣播的形式將數(shù)據(jù)發(fā)送給協(xié)調器節(jié)點。協(xié)調器節(jié)點有STM32F103、NB模塊和CC2541模塊組成,協(xié)調器點的CC2541模塊解析廣播,提取數(shù)據(jù),將數(shù)據(jù)通過NB模塊上傳云平臺,終端節(jié)點以及協(xié)調器節(jié)點的結構框圖如圖6所示。
圖6 傳感器終端節(jié)點及協(xié)調器節(jié)點結構
該設計主要針對火災監(jiān)測的實際需要,室內的火災無線傳感器網(wǎng)絡采用網(wǎng)絡的拓撲結構。系統(tǒng)正常工作時,不同終端節(jié)點的傳感器進行室內環(huán)境監(jiān)測,并且以廣播方式傳遞給無線傳感器網(wǎng)絡的協(xié)調器節(jié)點,協(xié)調器再將傳感器采集的數(shù)據(jù)發(fā)送給NB-IOT模塊[6]。
由于鋰電池晚間不能充電,所以要最大限度地降低系統(tǒng)功耗。無線傳感器在軟件設計時采用動態(tài)設置無線傳感器網(wǎng)絡終端節(jié)點的數(shù)據(jù)采樣間隔以及節(jié)點休眠時間,從而有效降低系統(tǒng)的功耗,終端節(jié)點程序流程如圖7所示。
圖7 終端節(jié)點程序流程
協(xié)調器節(jié)點上運行的主程序流程如圖8所示。
圖8 協(xié)調器節(jié)點主程序流程
協(xié)調器上電后,首先對硬件和軟件配置進行初始化和建立網(wǎng)絡:協(xié)調器通過掃描終端節(jié)點的從機設備廣播數(shù)據(jù)從而知道它是一個可連接的設備。接收到廣播數(shù)據(jù)的協(xié)調器,發(fā)送一個掃描請求(scan request)給終端節(jié)點的從機,從機再返回掃描請求,從而建立新的網(wǎng)絡。協(xié)調器主要負責接收室內的煙霧、是否有火焰等信息,并且自動繪制室內環(huán)境信息的變化曲線,還可以在協(xié)調器端或者云平臺端設置儲運環(huán)境數(shù)據(jù)閥值并實時報警[11]。鋰電池的放電電壓范圍為2.75~4.25 V,放電截止電壓為2.75 V。正常情況下鋰電池電壓是3.6~4.25 V。傳感器正常情況下的采樣間隔是30 s,在協(xié)調器端,為了最大限度內減小系統(tǒng)功耗[12],在電壓比較弱的情況下(3~3.6 V),增大傳感器的采樣間隔為60 s;在電量非常低的情況下(2.75~3 V),再次增大傳感器的采樣間隔為120 s。
本系統(tǒng)后臺服務器采用阿里云服務器Windows Server2008標準版,后臺服務支持基于 apache-tomcat-7.0.42服務器和mysql-5.5.27 數(shù)據(jù)庫,具體實現(xiàn)基于 java servlet(用于服務器,上位機交互式地瀏覽和修改數(shù)據(jù)),JDBC(用于執(zhí)行SQL語句的JavaAPI),另一方面,我們也將數(shù)據(jù)上傳到了中移物聯(lián)網(wǎng)OneNET云平臺,利用OneNET特有的應用界面自定義展示功能,進行數(shù)據(jù)可視化操作。
測試采用火災監(jiān)測無線傳感器節(jié)點以及協(xié)調器節(jié)點,傳感器網(wǎng)絡節(jié)點以CC2541為核心,包括火焰?zhèn)鞲衅饕约癕Q-2煙霧傳感器;協(xié)調器節(jié)點由STM32F103、主控以及NB模塊組成。CC2541低功率藍牙模塊、火焰?zhèn)鞲衅?、NB模塊、STM32F103以及MQ-2煙霧傳感器均為5 V供電;在系統(tǒng)正常工作的情況下,分別在晴天和陰雨天環(huán)境下,對供電系統(tǒng)各輸出、傳感器網(wǎng)絡節(jié)點以及協(xié)調器節(jié)點進行了連續(xù) 72 h 測試[13],測試結果如圖9、圖10、圖11和表1所示。
由圖9、圖10測試結果可知,晴天光照環(huán)境下,太陽電池板在每天8:00~18:00之間,電壓輸出電壓達到14 V以上;鋰電池電壓在晴天光照、測試時間72 h之內,輸出電壓穩(wěn)定在4~4.2 V之間;而在陰雨天環(huán)境下,由于光照強度不足,鋰電池電壓因放電而持續(xù)下降,鋰電池經(jīng)過連續(xù)72 h 放電后,其電壓由初始的4.013 V 下降至3.789 V;由圖11測試結果可知,不管是晴天還是陰雨天測試環(huán)境中,5 V輸出電路的輸出電壓均較為穩(wěn)定,平均偏差小于2.9%,可滿足無線傳感器網(wǎng)絡節(jié)點正常工作的電源要求。
圖9 太陽能電池電壓測試數(shù)據(jù)
圖10 鋰電池電壓測試數(shù)據(jù)
圖11 5V輸出測試數(shù)據(jù)
表1 設備功耗
設備最大電流消耗火焰?zhèn)鞲衅鳌?0 mAMQ-2煙霧傳感器≤150 mA中移物聯(lián)NB模塊(平均電流)3.077 mACC2541低功率藍牙模塊×2180~800 μASTM32F103工作模式10.8 mA總的電流消耗≤184.677 mA
測試發(fā)現(xiàn)總的電流消耗為184.677 mA,每天系統(tǒng)工作24 h。該系統(tǒng)每天最多消耗22.1610 Wh,考慮到充電效率和充電過程中的損耗,其中鋰電池充電電路能量轉換效率為85%,穩(wěn)壓電路能量轉換效率為91%,該系統(tǒng)最多需要鋰電池提供28.6503 Wh的電量,而該系統(tǒng)鋰電池的電量為37 Wh,足以維持該系統(tǒng)的正常工作。
系統(tǒng)將太陽能供電、無線傳感器網(wǎng)絡技術和 NB-IOT 技術進行融合設計了基于NB-IOT的自供電火災監(jiān)測系統(tǒng),該系統(tǒng)實現(xiàn)了系統(tǒng)自供電,室內煙霧、火焰數(shù)據(jù)的采集以及各種設備的遠程無線自動控制。系統(tǒng)通過采用太陽能最大功率點追蹤技術、DC-DC穩(wěn)壓技術、低功耗的 NB-IOT技術以及控制無線傳感器網(wǎng)絡的節(jié)點休眠技術降低了整個系統(tǒng)的實際功耗,延長系統(tǒng)的使用時間。從實驗結果來看,電路滿足設計總體需求,不僅解決了室內傳感器網(wǎng)絡的供電問題,而且還具有供電持久、環(huán)保節(jié)能和便于維護等優(yōu)點。