高貝貝,崔金龍,白鋅,姚愛芬,郭寶軍
(滄州交通學院,河北黃驊,061199)
隨著中國經(jīng)濟的不斷發(fā)展以及人們物質生活水平的不斷提高,人們的安全防患意識也在逐漸增強,快節(jié)奏生活下的人們對家庭的安全問題越來越重視。一方面,火災、煤氣泄露等安全隱患問題是社會重點關注的對象,每年因為意外火災造成的人員傷亡和財產(chǎn)損失仍然很嚴重;另一方面,小區(qū)和單位防盜設施簡陋匱乏、治安防范力不足等因素,給入室盜竊者以可乘之機。為了更好地保護家庭的安全人們需要一種功能完善的安防系統(tǒng)。本文在傳統(tǒng)安防系統(tǒng)的基礎嵌入機器視覺傳感器,可實現(xiàn)多傳感器融合技術的智能家居環(huán)境的安防保障。下面對基于視覺物聯(lián)網(wǎng)技術的智能家居安防平臺的軟件系統(tǒng)設計進行介紹。
基于視覺物聯(lián)網(wǎng)的智能安防系統(tǒng)由三部分構成,第一部分為采集家居環(huán)境參數(shù)的前端監(jiān)測節(jié)點設備(從機設備),主要實現(xiàn)采集環(huán)境溫度、煙霧濃度、可燃氣體濃度,監(jiān)測非法入侵事件、異常事件發(fā)生等功能;第二部分為互聯(lián)前端監(jiān)測節(jié)點的網(wǎng)關設備,網(wǎng)關設備使用ModBus 擴展協(xié)議組建一主多從無線通信網(wǎng)絡,將前端節(jié)點傳回的數(shù)據(jù)經(jīng)由網(wǎng)關設備上傳至物聯(lián)網(wǎng)云平臺。第三部分為Tlink 物聯(lián)網(wǎng)云平臺,該平臺免費提供PC 端和手機端的云組態(tài),可快速開發(fā)物聯(lián)網(wǎng)云臺及數(shù)字化系統(tǒng)產(chǎn)品。本文使用Tlink 物聯(lián)網(wǎng)云平臺實現(xiàn)與網(wǎng)關設備間的數(shù)據(jù)傳輸,通過自定義云組態(tài)實現(xiàn)PC 端或手機端與用戶間的信息交互。系統(tǒng)方案設計架構圖如圖1所示。
圖1 系統(tǒng)架構圖
顯示屏選用0.96O 寸LED 屏,屏幕通過I2C 接口與主控芯片相連。顯示屏驅動程序設計如下。首先,主函數(shù)調用OLED 屏初始化函數(shù),完成相關屏幕參數(shù)設置;然后,簡單對屏幕做下清屏處理;最后,使用單字符顯示函數(shù)showChar()實現(xiàn)顯示字符串、整型數(shù)值復合函數(shù)功能,完成網(wǎng)關及子設備的相關參數(shù)顯示功能。圖2 是單字符顯示函數(shù)showChar()子程序設計流程圖。
圖2 單字符顯示函數(shù)程序設計流程圖
利用AT 指令控制 ESP8266 WiFi 模塊實現(xiàn)聯(lián)網(wǎng),WiFi模塊通過主控芯片的串口2 相連。WiFi 模塊聯(lián)網(wǎng)驅動程序設計如下。首先,初始化ESP8266 實現(xiàn)退出透傳、重啟、檢查模塊是否存在、關閉回顯、檢查設置是否成功等操作;然后發(fā)送WiFi 名和密碼連接目標AP;最后通過TCP 協(xié)議到連接TLink 云平臺。圖3 為WiFi 模塊聯(lián)網(wǎng)驅動程序設計流程圖。
圖3 WiFi 模塊聯(lián)網(wǎng)驅動程序設計流程圖
使用SPI 通信協(xié)議來驅動LoRa SX1278 無線模塊,LoRa 模塊驅動程序設計如下。首先,完成SPI 引腳及工作狀態(tài)設置和SX1278 工作參數(shù)配制;然后,如果設備為網(wǎng)關則通過LoRa 模塊每3 秒收集從機數(shù)據(jù),如果設備為從機則通過LoRa 模塊時刻監(jiān)聽“網(wǎng)關詢問”指令任務。圖4 為LoRa 模塊驅動程序設計流程圖。
圖4 LoRa 模塊驅動程序設計流程圖
使用OpenMV 機器視覺模塊的幀差異算法進行運動物體檢測,然后通過OpenMV 模塊的串口通信接口將數(shù)字量信號輸送給主控芯片,主控芯片使用串口1 與OpenMV 模塊相連,在串口1 的中斷服務函數(shù)中添加異常事件累計語句。OpenMV 嵌入式視覺模塊安裝到二自由度平臺上,通過水平和垂直方向的PWM 控制信號實現(xiàn)視覺模塊的寬視野異常事件檢測。圖5 為主控器串口2 接收異常事件監(jiān)測信號的程序設計流程圖。
圖5 常事件監(jiān)測信號采集程序設計流程圖
門窗非法入侵監(jiān)測信號傳輸選用“凌承芯電子公司”的蜂鳥無線模塊,無線接收端為靈-R1 模塊,該模塊的4 路開關量輸出給主控芯片的外部中斷模式引腳。開關量為低電平時會觸發(fā)外部中斷服務函數(shù),在中斷服務函數(shù)中添加非法入侵事件累計語句。圖6 為非法入侵事件監(jiān)測B 通道開關量信號采集程序設計流程圖。
圖6 非法入侵數(shù)字量信號采集程序設計流程圖
煙霧傳感器及可燃氣體傳感器輸出的信號為模擬信號,使用主控芯片自帶的AD 轉換器將傳感器信號轉為數(shù)字量,方便后期數(shù)據(jù)的運算及儲存。圖7 為AD 轉換器程序設計流程圖。
圖7 煙霧及可燃氣體信號ADC 轉換程序設計流程圖
DHT11 采用單總線雙向串行通信協(xié)議,每次采集信息都要由主控器發(fā)起開始信號,如果傳感器正常且存在則DHT11 將起始信號拉低一段時間,然后 DHT11 會向單片機發(fā)送響應并開始傳輸40 位數(shù)據(jù)幀,并且數(shù)據(jù)幀的高位在前。圖8 為DHT11 傳感器驅動程序設計流程圖。
圖8 DHT11 模塊連接電路原理圖
本文選用的是TLink 物聯(lián)網(wǎng)云平臺。首先,登錄TLink云平臺創(chuàng)建設備,并完成頁面參數(shù)設置(設備名稱、鏈接協(xié)議、掉線延時、傳感器)等操作。然后,配制設備的協(xié)議標簽,協(xié)議標簽是傳輸一幀數(shù)據(jù)的格式,包括數(shù)據(jù)頭、分隔、數(shù)據(jù)、結束符四部分構成。最后,設置網(wǎng)關程序關鍵參數(shù),包括TLink 云平臺的IP 地址、設備端口號、設備ID 地址。網(wǎng)關設備發(fā)送的第一幀數(shù)據(jù)為設備序列號以便與TLink 云平臺建立連接,接著定期發(fā)送傳感器數(shù)據(jù)即可。
為了提高用戶使用系統(tǒng)的便捷性,增強設備與用戶間的交互性,本文使用TLink 云平臺的云組態(tài)功能設計搭建了“基于視覺物聯(lián)網(wǎng)的智能家居安防系統(tǒng)”云組態(tài),圖9 為“基于視覺物聯(lián)網(wǎng)的智能家居安防系統(tǒng)”云組態(tài)界面,云組態(tài)可發(fā)布成PC 端版和手機端版。云組態(tài)可實現(xiàn)顯示前端節(jié)點采集的溫度值、可燃氣體濃度、煙霧濃度、非法入侵事件累計次數(shù)、異常事件累計次數(shù)等信息。同時可通過下發(fā)數(shù)據(jù)操作實現(xiàn)前端節(jié)點的OpenMV 二組自由度平臺旋轉角度控制。如指令:1-X50-Y65,即為設備1 的OpenMV 機器視覺模塊X 軸轉動50PWM 值,Y 軸旋轉65PWM 值。
圖9 “視覺物聯(lián)網(wǎng)家居安防系統(tǒng)”云組態(tài)界面
系統(tǒng)上電后網(wǎng)關通過WiFi 模塊連接到Tlink 云服務器,此次測試網(wǎng)關設備通過無線局域網(wǎng)與三臺前端節(jié)點設備(從機)相連,網(wǎng)關設備每隔3 秒鐘廣播監(jiān)聽前端節(jié)點采集的溫度值、煙霧濃度值、非法入侵次數(shù)、事件異常次數(shù)等信息。聯(lián)網(wǎng)測試效果如圖9 所示,到此已完成“監(jiān)測端+云傳輸+智能端”三維一體的智能家居安防平臺的軟件系統(tǒng)設計。
本文主要針對基于視覺物聯(lián)網(wǎng)技術的智能家居安防平臺的軟件系統(tǒng)進行了設計與實現(xiàn),包括顯示屏驅動程序設計、WiFi 模塊聯(lián)網(wǎng)驅動程序設計、LoRa 無線局網(wǎng)關模塊驅動程序設計、非法入侵事件監(jiān)測程序設計、視覺異常事件監(jiān)測程序設計、煙霧及可燃氣體監(jiān)測程序設計、DHT11 傳感器驅動程序設計及“基于視覺物聯(lián)網(wǎng)的安防系統(tǒng)”云組態(tài)界面搭建。經(jīng)過聯(lián)網(wǎng)測試,嵌入視覺檢測技術的智能家居安防系統(tǒng)能夠準確實時的監(jiān)測家居環(huán)境,良好的云組態(tài)交互界面提高了用戶操作的便捷性和實用性。