王叢叢
(山東工程職業(yè)技術(shù)大學(xué),山東 濟(jì)南)
在智能家居中,對(duì)窗戶的控制正在走向智能化,智能窗戶則設(shè)立了遙控、警報(bào)等元件,更好地改善了人們的生活。目前,智能窗戶開關(guān)系統(tǒng)仍不完善,CPU占用率相對(duì)較高,無(wú)法滿足窗戶同時(shí)開/關(guān)的需求。針對(duì)此類問(wèn)題,研究人員設(shè)計(jì)了多種解決方案。
基于樹莓派和云平臺(tái)的智能窗戶開關(guān)系統(tǒng),主要是利用云平臺(tái)監(jiān)測(cè)外部環(huán)境因素,并做到平移窗間的聯(lián)合控制,更加便于智能窗戶開關(guān)操作[1]?;谖锫?lián)網(wǎng)技術(shù)的智能窗戶開關(guān)系統(tǒng),則是利用物聯(lián)網(wǎng)技術(shù),將系統(tǒng)內(nèi)各個(gè)元件連接成一個(gè)網(wǎng)絡(luò),實(shí)時(shí)、遠(yuǎn)程操控窗戶[2],以上兩種系統(tǒng)均無(wú)法滿足居住人的使用需求[3]。STM32 單片機(jī)是一種集成芯片,能夠更加高速地處理系統(tǒng)數(shù)據(jù),減輕系統(tǒng)使用負(fù)擔(dān)[4]。因此,本文結(jié)合了STM32 單片機(jī)的優(yōu)勢(shì),設(shè)計(jì)了智能窗戶開關(guān)系統(tǒng)。
根據(jù)系統(tǒng)的實(shí)際需求,本文選用了STM32 主控芯片作為系統(tǒng)的控制核心,主要由STM32 單片機(jī)、時(shí)鐘電路、復(fù)位電路、電源等元件構(gòu)成[5]。與系統(tǒng)的DS18B20 傳感器搭配使用,能夠?qū)鞲衅鞑杉降臄?shù)據(jù)轉(zhuǎn)換成系統(tǒng)能夠識(shí)別與處理的數(shù)據(jù),最終實(shí)現(xiàn)智能窗戶監(jiān)測(cè)、顯示、控制的功能。
本文結(jié)合了STM32 單片機(jī)的優(yōu)勢(shì),基于ARM Cortex-M內(nèi)核,功能十分強(qiáng)大的32bit 微控制器設(shè)計(jì)了STM32 主控芯片。該芯片具有16KB~1MB Flash、多種外設(shè)控制元件,能夠全速加載系統(tǒng)上傳的數(shù)據(jù),并將處理完成的數(shù)據(jù)全速回傳到系統(tǒng)中,完成系統(tǒng)內(nèi)部的數(shù)據(jù)快速處理[6]。
本文選用的DS18B20 傳感器,主要是為STM32主控芯片提供數(shù)據(jù)支撐,滿足系統(tǒng)的整體需求。因此,在DS18B20 傳感器的結(jié)構(gòu)設(shè)計(jì)方面,以溫度、煙霧、雨量、風(fēng)速、感光等傳感模塊為主,提升窗戶開關(guān)系統(tǒng)的智能性[7]。DS18B20 傳感器的結(jié)構(gòu)設(shè)計(jì)如圖1 所示。
圖1 DS18B20 傳感器結(jié)構(gòu)設(shè)計(jì)
對(duì)于不同類型的智能窗戶,采用了兩種傳感模塊適應(yīng)傳感需求。其一,溫度濕度傳感、煙霧傳感、紅外傳感、雨量傳感、風(fēng)速傳感、感光傳感;其二,OLED 顯示、警報(bào)、控制、通信[8]。
本文在硬件設(shè)計(jì)完成之后,建立了智能窗戶開關(guān)系統(tǒng)的通信協(xié)議,輔助DS18B20 傳感器的通信模塊,完成系統(tǒng)的數(shù)據(jù)傳輸。本文設(shè)計(jì)的通信協(xié)議在數(shù)據(jù)傳輸?shù)倪^(guò)程中,僅需要很小的數(shù)據(jù)流量,能夠在系統(tǒng)出現(xiàn)異常斷開時(shí),通知發(fā)送端與接收端,確保系統(tǒng)的服務(wù)質(zhì)量[9]。本文在通信協(xié)議中建立了發(fā)布/訂閱消息模式,系統(tǒng)能夠向多個(gè)元件發(fā)布通信信息,也能訂閱不同元件的主題,確保每個(gè)數(shù)據(jù)的有效傳輸。通信報(bào)文類型如表1 所示。
表1 通信報(bào)文類型
如表1 所示,消息發(fā)布受到確認(rèn)的控制報(bào)文為QoS1,訂閱請(qǐng)求報(bào)文確認(rèn)的控制報(bào)文為QoS2,取消訂閱報(bào)文確認(rèn)的控制報(bào)文為QoS3。
在通信協(xié)議開始之后,本文利用傳感器監(jiān)測(cè)室內(nèi)外環(huán)境狀態(tài),當(dāng)室外處于風(fēng)雨環(huán)境時(shí),發(fā)出關(guān)窗控制指令;當(dāng)室內(nèi)處于煙霧、煤氣等危險(xiǎn)環(huán)境時(shí),發(fā)出開窗控制指令,確保室內(nèi)人員的舒適感與安全性。在智能窗戶關(guān)閉的過(guò)程中,如果沒(méi)有接收到煙霧、煤氣、風(fēng)雨等信號(hào)時(shí),可以在任意位置停止智能窗戶關(guān)閉。智能窗戶任意停止控制流程如圖2 所示。
圖2 任意停止控制指令流程
本文在開啟開/關(guān)窗停止指令之后,對(duì)應(yīng)的繼電線圈通信推桿相應(yīng)伸長(zhǎng)或縮短。此時(shí),設(shè)置風(fēng)速傳感數(shù)據(jù)、雨量傳感數(shù)據(jù)、光感傳感數(shù)據(jù)為聯(lián)動(dòng)狀態(tài),以上外部數(shù)據(jù)傳感默認(rèn)聯(lián)動(dòng)開啟。當(dāng)自動(dòng)關(guān)窗時(shí),向系統(tǒng)發(fā)出警報(bào)報(bào)文幀,利用通信協(xié)議發(fā)出警報(bào)提示。主控芯片在接收到報(bào)文提示之后,判斷各個(gè)傳感監(jiān)測(cè)值是否與設(shè)定閾值偏離過(guò)大,較大的偏離則停止窗戶開關(guān);并未偏離則繼續(xù)開/關(guān)窗[10]。
針對(duì)上述的控制指令流程圖,要想明確室內(nèi)外的溫濕度,最大程度上平衡空氣溫濕度,確保室內(nèi)人員的舒適度,需要進(jìn)一步進(jìn)行節(jié)點(diǎn)反饋信息數(shù)據(jù)幀解析,已知節(jié)點(diǎn)反饋的不同信息具有不同的數(shù)據(jù)含義,可以根據(jù)該特點(diǎn)獲取內(nèi)外溫差,實(shí)現(xiàn)室內(nèi)濕度平衡,本文假設(shè)了大氣水飽和點(diǎn),根據(jù)線性變化關(guān)系計(jì)算此時(shí)的智能窗戶開關(guān)飽和水汽動(dòng)態(tài)變化量BT,如下(1)所示。
公式(1)中:Bint代表飽和水汽系數(shù),b 代表相對(duì)反饋濕度,若想對(duì)上述的動(dòng)態(tài)變化量進(jìn)行取整,需要應(yīng)用取整函數(shù)RH,如下(2)所示。
公式(2)中:Bt2代表平衡系數(shù),R 代表智能控制參數(shù),當(dāng)室內(nèi)外溫度發(fā)生相對(duì)改變時(shí),智能窗戶開關(guān)系統(tǒng)可以立即進(jìn)行感應(yīng),生成室內(nèi)外環(huán)境平衡指令,此時(shí)可以假定節(jié)點(diǎn)智能反饋數(shù)據(jù)幀區(qū)間,生成線性變化目標(biāo)函數(shù)W,如下(3)所示。
公式(3)中:A 代表解析線性變化系數(shù),結(jié)合上述的線性變化目標(biāo)函數(shù),可以對(duì)任意狀態(tài)下顯示節(jié)點(diǎn)反饋的信息數(shù)據(jù)幀進(jìn)行解析,進(jìn)一步進(jìn)行均值計(jì)算,獲取最終的信息反饋控制指令,從而提高智能窗戶開關(guān)系統(tǒng)的控制效果。
為了驗(yàn)證本文設(shè)計(jì)的系統(tǒng)是否具有實(shí)用效能,本文對(duì)上述系統(tǒng)進(jìn)行了測(cè)試。將硬件安裝調(diào)試、軟件調(diào)試完畢之后,使系統(tǒng)處于正常運(yùn)行狀態(tài)。此時(shí),對(duì)系統(tǒng)的性能進(jìn)行分析。具體的測(cè)試過(guò)程以及最終的測(cè)試結(jié)果如下所示。
在進(jìn)行系統(tǒng)測(cè)試之前,本文將STM32 主控芯片與DS18B20 傳感器等硬件進(jìn)行安裝與調(diào)試。按照使用說(shuō)明將STM32 主控芯片安裝完成之后,測(cè)試主控芯片各個(gè)電路的電壓范圍在3.0 V~3.3 V 之內(nèi),可以確保STM32 主控芯片的正常運(yùn)行。DS18B20 傳感器的調(diào)試較為復(fù)雜,在其安裝完畢之后通電,黃色指示燈亮起5 s 后熄滅,與其相近的電路電壓達(dá)到了10 V,將此電路重新安裝之后,紅色指示燈亮起,此時(shí)傳感器的OLED 顯示模塊未顯示,對(duì)該模塊電路重新安裝。電路重新安裝完成之后通電,黃色、紅色、綠色指示燈同時(shí)亮起,1 s 后熄滅,綠色指示燈亮起,1 min 未熄滅,此時(shí)可以確保DS18B20 傳感器為正常運(yùn)行的狀態(tài)。硬件安裝調(diào)試完成之后,本文對(duì)軟件串口進(jìn)行調(diào)試,如圖3所示。
圖3 串口調(diào)試界面
如圖3 所示,單條發(fā)送:0106000020008C,選擇COM4:USB Serial Port 串口,波特率為9600bit,停止位為1,數(shù)據(jù)位為8,無(wú)奇偶校驗(yàn),以16 進(jìn)制顯示串口數(shù)據(jù)。出現(xiàn)圖中界面之后,完成軟件調(diào)試。硬件與軟件均調(diào)試完成之后,出現(xiàn)系統(tǒng)登錄界面。點(diǎn)擊系統(tǒng)信息,在信息界面輸入正確的用戶名稱與密碼之后,登入到系統(tǒng)信息界面,點(diǎn)擊基本信息查看系統(tǒng)信息,點(diǎn)擊添加服務(wù)進(jìn)入智能窗戶開關(guān)服務(wù)。由此可見(jiàn),系統(tǒng)可以正常運(yùn)行。
在上述測(cè)試條件下,本文隨機(jī)選取出cnt_1、cnt_2、cnt_3 等三種開窗器類型,并將鏈條式智能窗戶與隱藏式智能天窗的關(guān)窗電流進(jìn)行分析。本次測(cè)試主要以最大電流為測(cè)試對(duì)象,而開窗電流普遍低于關(guān)窗電流,因此選擇關(guān)窗電流作為電流指標(biāo),確保測(cè)試的有效性。在其他條件均一致的情況下,本文將開窗狀態(tài)下與關(guān)窗狀態(tài)下的系統(tǒng)CPU 占用率進(jìn)行測(cè)試。并將文獻(xiàn)[1]基于樹莓派和云平臺(tái)的智能窗戶開關(guān)系統(tǒng)、文獻(xiàn)[2]基于物聯(lián)網(wǎng)技術(shù)的智能窗戶開關(guān)系統(tǒng),以及本文設(shè)計(jì)的基于STM32 單片機(jī)的智能窗戶開關(guān)系統(tǒng)的CPU 占用率進(jìn)行對(duì)比,占用率越低,系統(tǒng)的實(shí)用效能越佳。測(cè)試結(jié)果如表2 所示。
表2 測(cè)試結(jié)果
如表2 所示,使用文獻(xiàn)[1]基于樹莓派和云平臺(tái)的智能窗戶開關(guān)系統(tǒng)之后,系統(tǒng)在開窗狀態(tài)下的CPU 平均占用率為71.68%;在關(guān)窗狀態(tài)下的CPU 平均占用率為81.65%。使用文獻(xiàn)[2]基于物聯(lián)網(wǎng)技術(shù)的智能窗戶開關(guān)系統(tǒng)之后,系統(tǒng)在開窗狀態(tài)下的CPU 平均占用率為53.38%;在關(guān)窗狀態(tài)下的CPU 平均占用率為67.50%。而使用本文設(shè)計(jì)的基于STM32 單片機(jī)的智能窗戶開關(guān)系統(tǒng)之后,系統(tǒng)在開窗狀態(tài)下的CPU 平均占用率為23.25%;在關(guān)窗狀態(tài)下的CPU 平均占用率為33.26%。由此可見(jiàn),使用該系統(tǒng)之后,CPU 占用率更低,鏈條式智能窗戶與隱藏式智能天窗的關(guān)窗電流更低,能夠同時(shí)滿足4 扇窗戶的開啟,3 扇窗戶的關(guān)閉,更符合智能窗戶開關(guān)需求,確保室內(nèi)人員的舒適性。
大多數(shù)人群受到繁重的工作影響,無(wú)暇顧及家庭環(huán)境,家中無(wú)人時(shí)無(wú)法開窗通風(fēng),惡劣天氣無(wú)法回家關(guān)窗,影響人們對(duì)家庭環(huán)境的體驗(yàn)。智能窗戶的出現(xiàn)則解決了這一問(wèn)題,通過(guò)遠(yuǎn)程控制的方式,省去很多麻煩與時(shí)間。為了滿足智能窗戶的開/關(guān)窗需求,本文在STM32 單片機(jī)的條件下,設(shè)計(jì)了智能窗戶開關(guān)系統(tǒng)。并從通信協(xié)議、控制指令、解析數(shù)據(jù)幀等方面,提升系統(tǒng)的實(shí)用性能,為智能窗戶的普及提供相應(yīng)的建議。