吳軍
摘要:針對家庭用電線路斷電后不及時供電而造成重大損失,提出了一種滿足家庭斷電報警需求的控制器設計方案,采用了光電隔離、斷電檢測、NB-IOT通信等關鍵技術,介紹了系統的工作原理和設計方案,經測試驗證該報警器滿足家庭用電智能化監測要求。
關鍵詞:斷電報警? 光電隔離? 斷電檢測? NB-IOT
引言
在一些家用場合,例如家用制氧機、呼吸機等需要24小時不間斷供電的設備必須保證不間斷地供電,或停電后必須通知操作者,使其知道已經停電,采取相應的措施。家庭用電線路不帶有斷電提醒裝置,當使用需要24小時不間斷電源供電的電器時,存在極大的安全隱患。目前的家庭用電線路在實際應用中存在如下問題:(1)市電斷電沒有提醒,不易及時發現;(2)市電斷電如不及時恢復供電,其引發的衍生危害,隨電器的不同導致的后果不盡相同;(3)目前市場上的斷電報警器安裝配置復雜,不適合家庭供電環境。
針對上述技術問題,本文提出了一種基于物聯網技術的家用市電斷電報警器設計方案,市電正常供電時,報警器處于監測狀態,當市電停電時,立即通過網絡發送信息給用戶,提醒用戶采取相應的措施。系統采用了物聯網技術傳輸狀態及報警信息,物聯網通信通常采用的是Zigbee、WiFi、藍牙、等短距離通信技術,其通信距離短、功耗高制約了其發展前景,而新興的NB-IoT(窄帶物聯網)技術,具有低功耗、連接穩定、廣域連接、強穿透、低資費等優點,NB-IoT模組利用CoAP協議將采集的狀態信息周期性上報給云端服務器,云端服務器將數據信息推送至微信小程序,用戶通過微信小程序可以隨時了解家庭供電情況,因此,基于NB-IoT技術的家庭斷電報警器具有良好的應用前景。
1 系統結構及原理
家用市電斷電報警器包括斷電檢測模塊、主控制器、NB-IOT模塊、電源管理模塊和電池模塊。系統結構如圖1所示,斷電檢測模塊的一端與被家庭插座連接,斷電檢測模塊的另一端與主控制器連接,NB-IOT模塊連接到主控制器上;主控制器及NB-IOT模塊由供電模塊供電,供電模塊選用市電和蓄電池切換供電。實際運行時,當斷電檢測模塊檢測到市電斷電時,會及時向主控制器反饋開關量信號,主控制器接收到上述開關量信號后可以通過NB-IOT模塊發送消息到未在家中的用戶,以便于戶主及時獲知斷電信息并采取相應措施。報警器也可以定時將電路狀態信息發送到云端服務器,便于住戶對家庭供電情況的遠程監控。由于NB-IOT模塊具有低頻次,低傳輸字節的特性,可以實現超低功耗,保證斷電報警模塊采用蓄電池供電也能維持很長的工作時間。
2 系統硬件設計
2.1電源模塊設計
電源模塊提供兩種供電方式,對于外部適配器供電情況,220V市電通過開關電源Buck 電路和 LDO 芯片降壓到系統各模塊需要的電壓值,分別給MCU和NB-IOT模組供電,電源模塊供電電流大于500mA,電源瞬態 1A 時確保系統不掉電,由于本電路功耗較少,所以選用10W的小型變壓器。電源模塊提供防反接、短路保護、過流保護、大動態切換等功能。
對于使用電池供電情況,當前NB模組的輸入電源為3.1~4.2V,由于電池工作電壓會隨工作時間逐漸降低,電源模塊通過增加升壓 Boost 器件來保證電壓低于3.1V 時NB模組正常的工作。
2.2斷電檢測及電子開關切換電路
斷電檢測電路主要由電壓比較器構成,正常情況下,繼電器的常閉觸點和市電相連;當市電斷開,電壓比較器輸出高電平,檢測電路中的達林頓管將電路中繼電器開啟,將其常開觸點將蓄電池和電路相連,實現市電和蓄電池供電的切換,保證正常工作。斷電檢測電路采用光電隔離技術,防止雷擊浪涌引入檢測器及設備。為了延長蓄電池工作時間,設計了蓄電池自動充電電路,它在電池充滿后自動停止充電,通過電壓檢測電路,蓄電池電壓低時實現對其充電;充滿后停止充電。
2.3 主控制器設計
主控制器主要由單片機及其外圍電路組成,本系統控制功能相對簡單,選擇8位單片機即可滿足控制需求。考慮到超低功耗要求,主控制器選擇STM8L050微控制器,STM8L050在低成本的SO-8封裝基礎上,集成了多達6個用戶I/O接口的豐富的模擬外設、DMA控制器和獨立的數據EEPROM。片上集成的DMA控制器可以簡化外圍設備和內存或內存與內存之間的數據傳輸,從而提高微控制器的處理性能,降低功耗。256字節的獨立EEPROM可在MCU關閉時存儲重要的程序數據,同時還可以最大限度地使用閃存保存程序代碼。除兩個比較器外,STM8L050還有帶可編程鬧鐘和定期喚醒功能的低功耗實時時鐘(RTC),可以最大限度地減少外部模擬元件數量。其它功能包括8KB閃存、1KB RAM、兩個16位定時器、一個8位定時器,以及常用通信接口和調試接口,包括SPl、12C、UART和SWIM。STM8L050具有最低功耗350nA的省電模式,以及3.6V-1.8V的寬工作電壓,確保微控制器在苛刻應用中的工作穩定性和可靠性。
2.4無線通信模塊
無線通信模塊選擇WH-NB73模塊,WH-NB73是一款低功耗NB-IoT模塊模塊,開放的接口包括:電源輸入、復位重啟控制、恢復出廠設置控制、UART、SIM、射頻接口。電源輸入范圍為3.1V-4.2V,電壓典型值為3.8V,要求供電能力至少達到500mA。主控制器通過UART接口控制NB-IoT模塊連接網絡及數據收發。
3 軟件設計
3.1下位機軟件設計
斷電報警器軟件系統分為下位機軟件和上層應用軟件。下位機軟件為單片機程序,由主程序、初始化程序、信號檢測程序、狀態上報程序、中斷處理程序、延時程序等組成。單片機大致應用程序的架構有三種:一是簡單的前后臺順序執行程序,這類寫法是大多數人使用的方法,不需要考慮程序的具體架構,直接通過執行順序編寫應用程序即可。二是時間片輪詢法,此方法是介于順序執行與操作系統之間的一種方法。三是操作系統,此法適合硬件資源充足的硬件系統。其中,順序執行法對于應用程序比較簡單,實時性,并行性要求不太高的情況下是不錯的方法,程序設計簡單,思路比較清晰,但是當應用程序比較復雜的時候,如果沒有一個完整的流程圖,隨著程序功能的增加,程序會越來越復雜,既不利于升級維護,也不利于代碼優化。鑒于單片機資源有限,程序采用時間片輪詢法架構。