王 磊,袁 英
(黃河水利職業(yè)技術學院,河南 開封 475004)
根據(jù)不完全統(tǒng)計,家居環(huán)境適宜性是影響人體身心健康的主要因素之一[1]。在人們的生活質(zhì)量不斷提高的今天,家居環(huán)境監(jiān)測也日益受到關注。與此同時,隨著社會群體居住方式、居住理念的改變,人們對家居環(huán)境的智能化需求越來越高。隨著行業(yè)的發(fā)展,信息化、數(shù)字化、智能化、網(wǎng)絡化建設工作已經(jīng)逐步在普通民眾家庭開展,并為人們提供了適宜、高效、便捷的智能化、物聯(lián)網(wǎng)生活空間。為滿足居民的生活需求,家居環(huán)境物聯(lián)網(wǎng)監(jiān)測系統(tǒng)應運而生[2]。在深入市場調(diào)研中發(fā)現(xiàn),大部分傳統(tǒng)家庭居住環(huán)境的安全系數(shù)相對較低,不能及時處理諸如煤氣泄漏、家庭設備失火、敏感報警等危險狀況。因此,傳統(tǒng)的家居環(huán)境監(jiān)測系統(tǒng)在實時、準確地處理各種突發(fā)情況、實時獲得室內(nèi)環(huán)境信息與智能監(jiān)測等方面仍存在著局限性[3]。為解決此方面問題,提高居民居住環(huán)境的適宜性與安全性,本文通過引進Arduino,開發(fā)一種面向家居環(huán)境的物聯(lián)網(wǎng)監(jiān)測系統(tǒng)。旨在通過此次設計,實現(xiàn)將智能化技術與家居生活建立緊密聯(lián)系,提高居民生活的便捷性。
為確保開發(fā)的監(jiān)測系統(tǒng)可以在實際應用中發(fā)揮預期的效果,設計系統(tǒng)前,以物聯(lián)網(wǎng)作為支撐,設計系統(tǒng)友好登錄、展示界面,集成開源電子硬件,設計如圖1 所示的系統(tǒng)架構[4]。
圖1 監(jiān)測系統(tǒng)架構
如圖1 所示,采用Arduino-R3 開源硬件平臺作為該系統(tǒng)的主要控制元件,通過與R3 板相連的三個傳感器,可以實現(xiàn)對家居環(huán)境中溫度、濕度、煙霧、PM2.5等指標的實時監(jiān)測與反饋[5]。在此基礎上,利用LCD 液晶顯示屏,將數(shù)據(jù)在終端展示,配合R3 芯片的以太網(wǎng)模塊,將數(shù)據(jù)上傳到系統(tǒng)終端Yeelink 云平臺,從而實現(xiàn)終端數(shù)據(jù)的采集、控制端的傳輸、云端的顯示。
物聯(lián)網(wǎng)中含有大量的ZigBee 節(jié)點,在云空間內(nèi)將ZigBee 節(jié)點收集到的數(shù)據(jù)轉(zhuǎn)交給Controller,通過串口將數(shù)據(jù)資料傳送到本地網(wǎng)關,再通過Internet 訪問[6]。最后,將所有的數(shù)據(jù)保存到MySQL 數(shù)據(jù)庫中。每隔3 s,客戶機就會發(fā)出一個請求,在數(shù)據(jù)庫中提取感知數(shù)據(jù),再將數(shù)據(jù)轉(zhuǎn)換成JSON 格式,然后發(fā)送到客戶端??蛻魴C收到JSON 數(shù)據(jù)后,在主要接口中顯示不同環(huán)境參數(shù)。
為確保開發(fā)的系統(tǒng)可以實現(xiàn)對家居環(huán)境的實時監(jiān)測與反饋,選擇UNO R3 開源硬件設備,作為系統(tǒng)的主要硬件[7]。技術參數(shù)見表1 所列。
表1 UNO R3 Arduino 開源硬件技術參數(shù)
將UNO R3 Arduino 開源硬件與系統(tǒng)中的以太網(wǎng)擴展板連接,根據(jù)系統(tǒng)運行中的實際需求,調(diào)試硬件設備參數(shù),在網(wǎng)絡協(xié)議的支撐下實現(xiàn)對監(jiān)測數(shù)據(jù)的在線傳輸。
根據(jù)家居環(huán)境監(jiān)測需求,該系統(tǒng)中集成了溫度、煙霧與濕度傳感器,本次研究以溫度傳感器為例,技術參數(shù)見表2所列[8]。
表2 溫度傳感器技術參數(shù)
感溫元件采用進口產(chǎn)品,具有靈敏度高、低功耗、待機電流小于3 μA 等優(yōu)勢;相比一般傳感器,此型號的傳感器壽命更長。應用過程中,根據(jù)家居環(huán)境的整體布局與監(jiān)測重點,在不同的位置布置一個或多個傳感器,將傳感器與通信終端建立連接,實現(xiàn)對家居環(huán)境的實時監(jiān)測。
完成上述設計后,在硬件設備的支撐下,引進Arduino,展開家居環(huán)境的監(jiān)測通信設計。在此過程中,應明確Arduino電子硬件與系統(tǒng)服務器之間的通信方式主要有HTTP通信和Socket通信兩種。前者采用“請求—回應”的通信模式,只有當客戶提出要求時,終端才會建立連接[9]。而Socket 通信則是在數(shù)據(jù)傳送之前將各個終端連接起來,然后再進行數(shù)據(jù)傳送。
開發(fā)該系統(tǒng)的目標是讓客戶端使用者可以在移動APP 上實時地查看家居環(huán)境中的各項環(huán)境參數(shù),并可以實現(xiàn)對監(jiān)測數(shù)據(jù)的快速更新與及時反饋。為確保通信工作可以達到預期效果,采用HTTP 技術進行系統(tǒng)通信,客戶端每隔3 s 向服務器發(fā)送一次“get”請求。如需要對網(wǎng)絡資源進行存取,則根據(jù)通信工作的具體需求,設計對端通信模式。
數(shù)據(jù)采集過程中,由CC2530 芯片進行前端數(shù)據(jù)的初始化處理。激活系統(tǒng)穩(wěn)壓電路后,為CC2530 提供電源,使系統(tǒng)中的AT89S52 芯片處于正常工作狀態(tài)。在此基礎上,激活CC2530 晶體振蕩,設置控制寄存器參數(shù),并選定數(shù)據(jù)通信信道;在CC2530 的晶體振蕩穩(wěn)定后,開啟全局中斷,結(jié)束數(shù)據(jù)發(fā)送初始化程序[10]。CC2530 驅(qū)動程序在IEEE80215.4中進行數(shù)據(jù)的封裝和初始檢查;完成對數(shù)據(jù)幀的檢測后,即可驅(qū)動系統(tǒng)通信程序進行傳感器反饋與監(jiān)測數(shù)據(jù)的接收。數(shù)據(jù)發(fā)送過程中,數(shù)據(jù)中心需要先確定前端傳送的數(shù)據(jù)格式為標準格式,如果數(shù)據(jù)格式不滿足需求,傳送的過程會停止;如果數(shù)據(jù)傳輸信道處于空閑狀態(tài),且數(shù)據(jù)格式標準,數(shù)據(jù)中心會驅(qū)動程序,在TXFIFO 上寫下數(shù)據(jù)幀標題和數(shù)據(jù)體,確保協(xié)議無誤后,開始數(shù)據(jù)傳輸。傳輸過程中,CC2530 可以根據(jù)傳輸需要,單獨設定終端數(shù)據(jù)的接收方式。通常情況下,數(shù)據(jù)接收工作于緩沖區(qū)。在緩存?zhèn)鬏敺绞较?,通常會使?28 位TXFIFO 緩沖區(qū);在此種接收方式下,若要儲存接收資料,需要使用相同尺寸的RXFIFO 緩沖區(qū)進行數(shù)據(jù)接收匹配。按照上述方式,實現(xiàn)基于Arduino 的家居環(huán)境監(jiān)測通信設計。
確保系統(tǒng)對端之間建立通信連接后,采集家居環(huán)境物聯(lián)網(wǎng)監(jiān)測數(shù)據(jù),將數(shù)據(jù)傳輸?shù)较到y(tǒng)處理中心,清空中心環(huán)境變量數(shù)據(jù),設計訓練條件,進行監(jiān)測中心數(shù)據(jù)的初始化設計。完成上述設計后,引進T-S 網(wǎng)絡,對錄入的數(shù)據(jù)進行預處理。在此過程中,應確定網(wǎng)絡的輸入節(jié)點數(shù)量、隱含節(jié)點數(shù)量與循環(huán)訓練次數(shù),使用Map-Min-Max 對數(shù)據(jù)進行歸一化處理。處理過程計算公式為:
式中:y表示訓練后輸出的數(shù)據(jù)集合;G表示數(shù)據(jù)訓練規(guī)則;n表示模糊算子;i表示訓練次數(shù)。根據(jù)數(shù)據(jù)屬性,對其進行分類。在此基礎上,根據(jù)計算結(jié)果,進行家居環(huán)境的適宜度評價。評價過程計算公式為:
式中:Y表示家居環(huán)境的適宜度評價;P表示評價項目;j表示適宜度指標(參照閾值);N表示常數(shù)項。完成上述計算后,設計家居環(huán)境的適宜度評價標準,相關內(nèi)容見表3 所列。
表3 家居環(huán)境的適宜度評價標準
按照上述方式,結(jié)合采集的數(shù)據(jù),進行家居環(huán)境適宜度的評價;根據(jù)評價結(jié)果,劃分家居環(huán)境類別。在此基礎上,用戶(客戶端)可以在其自己的控制終端,進行家居環(huán)境監(jiān)測指標閾值的設定。在監(jiān)測過程中,當某項反饋的指標超出閾值范圍時,終端將自動觸發(fā)系統(tǒng)預警,以此種方式實現(xiàn)家居環(huán)境物聯(lián)網(wǎng)監(jiān)測數(shù)據(jù)評估與預警,完成基于Arduino 的監(jiān)測系統(tǒng)的開發(fā)和研究。
上文以Arduino 作為支撐,從硬件選型與軟件規(guī)劃兩個方面,完成了家居環(huán)境物聯(lián)網(wǎng)監(jiān)測系統(tǒng)的設計與開發(fā)。為實現(xiàn)對開發(fā)系統(tǒng)的測試,以某地區(qū)開發(fā)商承接的智能化居民建筑工程項目為例,將本文開發(fā)的系統(tǒng)集成在智能化建筑主控終端,設計對比實驗,對試驗區(qū)域展開監(jiān)測。
為給系統(tǒng)提供一個相對良好的運行環(huán)境,按照表4 所列的內(nèi)容,設計系統(tǒng)軟件程序的作業(yè)環(huán)境。
表4 家居環(huán)境物聯(lián)網(wǎng)監(jiān)測系統(tǒng)軟件程序作業(yè)環(huán)境
在上述設計基礎上,選擇系統(tǒng)硬件設備,建立監(jiān)測終端傳感器與客戶端之間的通信連接。傳感器反饋的數(shù)據(jù)將通過物聯(lián)網(wǎng)傳輸?shù)教幚碇行模幚碇行闹苯痈鶕?jù)反饋的數(shù)據(jù)進行家居環(huán)境的在線監(jiān)測與評估;當評估后發(fā)現(xiàn)家居環(huán)境內(nèi)某項指標超出安全范圍后,主動觸發(fā)系統(tǒng)預警,預警信息被反饋在客戶端顯示界面,以此實現(xiàn)對家居環(huán)境的監(jiān)測。
為提高實驗結(jié)果的客觀性,選擇基于STC89C52 單片機的監(jiān)測系統(tǒng)、基于多傳感器信息融合的監(jiān)測系統(tǒng),分別作為對照組系統(tǒng)1 和對照組系統(tǒng)2,使用本文系統(tǒng)與對照組系統(tǒng)進行家居環(huán)境的在線監(jiān)測。監(jiān)測過程中,安排技術人員在系統(tǒng)監(jiān)測環(huán)境進行各項指標的人工測量。例如,在系統(tǒng)反饋監(jiān)測數(shù)據(jù)時,由技術人員在現(xiàn)場使用溫度計、濕度計等進行環(huán)境測量。對比系統(tǒng)監(jiān)測結(jié)果與人工測量結(jié)果發(fā)現(xiàn),相比傳統(tǒng)系統(tǒng)而言,本文開發(fā)系統(tǒng)在實際應用中的效果更好。實驗結(jié)果見表5 所列。
表5 系統(tǒng)監(jiān)測結(jié)果對比
根據(jù)表5 所列的實驗結(jié)果可以看出,此次實驗共設置了三個指標,分別為溫度指標、濕度指標與煙霧濃度指標。根據(jù)系統(tǒng)監(jiān)測結(jié)果與人工測量反饋結(jié)果可以看出,本文系統(tǒng)監(jiān)測的家居環(huán)境各項指標具體數(shù)值與人工測量結(jié)果基本一致,而對照組系統(tǒng)監(jiān)測的家居環(huán)境各項指標具體數(shù)值與人工測量結(jié)果偏差較大。因此,相比傳統(tǒng)的監(jiān)測系統(tǒng),本文開發(fā)的基于Arduino 的監(jiān)測系統(tǒng)應用效果良好,可以精準監(jiān)測到家居環(huán)境各項指標的變化,實現(xiàn)環(huán)境狀態(tài)的實時感知。
本文通過引進Arduino,從家居環(huán)境監(jiān)測通信設計、家居環(huán)境物聯(lián)網(wǎng)監(jiān)測數(shù)據(jù)評估與預警兩個方面出發(fā),開發(fā)了面向家居環(huán)境的物聯(lián)網(wǎng)監(jiān)測系統(tǒng)。對開發(fā)的系統(tǒng)經(jīng)過對比測試發(fā)現(xiàn),其可以精準監(jiān)測到家居環(huán)境各項指標的變化,實現(xiàn)環(huán)境狀態(tài)的實時感知。對此次設計成果可以進行領域推廣,但要對設計方法在智能化建筑居民住戶中推廣使用還需要在后續(xù)設計中進一步優(yōu)化。例如,選擇性能更優(yōu)的硬件作為系統(tǒng)硬件,以此實現(xiàn)對系統(tǒng)綜合性能的深化。