譚汶易
(武漢理工大學(xué)自動(dòng)化學(xué)院,湖北 武漢 430070)
在現(xiàn)在的智能家居市場(chǎng)中,大部分智能家居系統(tǒng)只能實(shí)現(xiàn)檢測(cè)功能,且檢測(cè)數(shù)據(jù)也有較大的誤差。本系統(tǒng)以NB-IOT為核心,解決數(shù)據(jù)傳輸云端的問(wèn)題,以較低的成本實(shí)現(xiàn)了更加完善的功能。為解決一些安全隱患,本系統(tǒng)配置的報(bào)警系統(tǒng)在檢測(cè)到有害氣體濃度超標(biāo)時(shí),能夠及時(shí)提醒用戶。在最易發(fā)生事故的廚房,配備了檢測(cè)和自動(dòng)關(guān)閉天然氣閥門(mén)的裝置,同時(shí)用戶可以通過(guò)云平臺(tái)下發(fā)指令,遠(yuǎn)程關(guān)閉天然氣閥門(mén),降低火災(zāi)發(fā)生的概率。
本設(shè)計(jì)主要由傳感器采集系統(tǒng)、數(shù)據(jù)處理與傳輸系統(tǒng)、電源控制系統(tǒng)、無(wú)線通信系統(tǒng)、報(bào)警系統(tǒng)、自動(dòng)關(guān)閥系統(tǒng)組成。數(shù)據(jù)處理與傳輸系統(tǒng)主要由Zigbee模塊控制,電源控制系統(tǒng)采用自制的降壓電路控制板,無(wú)線通信系統(tǒng)指NB-IOT模塊和云端互傳數(shù)據(jù),報(bào)警系統(tǒng)主要包括聲光報(bào)警和短信報(bào)警兩部分,自動(dòng)關(guān)閥系統(tǒng)通過(guò)步進(jìn)電機(jī)來(lái)執(zhí)行。
傳感器主要用于實(shí)時(shí)監(jiān)測(cè)室內(nèi)情況,為單片機(jī)提供及時(shí)、準(zhǔn)確的信息,使其做出最優(yōu)判斷。
溫濕度采集部分使用STM8L051F3芯片和SHT20芯片控制的高精度傳感器。溫度測(cè)量精度0.3℃,濕度測(cè)量精度可達(dá)3%RH,單片機(jī)串口采集其輸出的TTL電平,經(jīng)過(guò)內(nèi)部轉(zhuǎn)換處理后可得測(cè)量的溫濕度值。
氣體傳感器部分由DS-HCHO甲醛傳感器、MQ-135傳感器、天然氣檢測(cè)傳感器、煙霧傳感器組成。STM32F4單片機(jī)自帶12位ADC接口,可以檢測(cè)氣體傳感器輸出的電壓信號(hào),氣體濃度的大小與輸出的電壓值成正比關(guān)系,通過(guò)單片機(jī)內(nèi)部計(jì)算后得到氣體濃度。
為提高檢測(cè)速度和精度,使用DMA傳輸方式采集電壓。ADC采集并轉(zhuǎn)換后的數(shù)值被保存到一個(gè)16位的規(guī)則通道數(shù)據(jù)寄存器中,通過(guò)DMA將其值讀取并傳輸?shù)酵ㄐ拍K,無(wú)需通過(guò)CPU進(jìn)行傳輸,極大提高了檢測(cè)效率。
Zigbee模塊相較于藍(lán)牙模塊、wife模塊,傳輸速率更快,價(jià)格更低。因此在本系統(tǒng)中,單片機(jī)通過(guò)串口與Zigbee連接實(shí)現(xiàn)數(shù)據(jù)互傳。
為了避免因斷電而致使設(shè)備無(wú)法使用的情況發(fā)生,本系統(tǒng)采用220 V交流電和12 V備用電池的雙電源方案。通過(guò)開(kāi)關(guān)電源將220 V電壓轉(zhuǎn)換為12 V電壓輸出,將鋰電池供電部分接到備用接口,電源轉(zhuǎn)換通過(guò)繼電器控制,從而實(shí)現(xiàn)24 h不間斷工作,增強(qiáng)了系統(tǒng)的穩(wěn)定性。
由于本系統(tǒng)中所用傳感器核心主控板的供電電壓為3.3V、5 V。設(shè)計(jì)以TPS54360芯片、AMS1117芯片為核心電源控制板。
步進(jìn)電機(jī)具有扭矩大,反應(yīng)快速、精準(zhǔn)的特點(diǎn)。步進(jìn)電機(jī)的轉(zhuǎn)向控制端與單片機(jī)的IO口連接,通過(guò)輸出高低電平來(lái)實(shí)現(xiàn)其正反轉(zhuǎn)。同時(shí)將單片機(jī)的PWM輸出口與步進(jìn)電機(jī)相連,通過(guò)改變輸出的TTL電平來(lái)控制其轉(zhuǎn)動(dòng)的距離。
在本系統(tǒng)中,以移遠(yuǎn)NB-IOT BC26模塊作為通信模塊,其具有超低功耗、安全性強(qiáng)、穩(wěn)定可靠、低成本的優(yōu)勢(shì),使用MQTT協(xié)議與云端互傳數(shù)據(jù)。MQTT是一個(gè)基于客戶端與服務(wù)器的用于發(fā)布和訂閱消息的傳輸協(xié)議。傳輸數(shù)據(jù)穩(wěn)定、快速,能適應(yīng)低寬帶、低開(kāi)銷的情況。
通過(guò)該模塊與阿里云物聯(lián)網(wǎng)平臺(tái)連接,單片機(jī)通過(guò)串口與其互傳數(shù)據(jù)。單片機(jī)通過(guò)發(fā)送AT指令建立和BC26模塊間的通信,同時(shí)將卡號(hào)發(fā)送給模塊,同時(shí)發(fā)送激活網(wǎng)絡(luò)的指令,等待應(yīng)答成功后,查詢并保存當(dāng)前的激活狀態(tài)。等待模塊網(wǎng)絡(luò)激活成功,配置前景場(chǎng)景并激活,此時(shí)單片機(jī)發(fā)送指令控制BC26模塊從MQTT服務(wù)器斷開(kāi)一個(gè)客戶端,并將其網(wǎng)絡(luò)關(guān)閉,同時(shí)將阿里云平臺(tái)上配置的設(shè)備參數(shù)發(fā)送給模塊,完成模塊和云端的連接后,將MQTT客戶端網(wǎng)絡(luò)打開(kāi)。此時(shí),單片機(jī)向BC26模塊發(fā)送傳感器檢測(cè)的數(shù)據(jù),模塊通過(guò)建立的MQTT協(xié)議將數(shù)據(jù)傳輸傳送到云平臺(tái)。
3.5.1 聲光報(bào)警
聲光報(bào)警的設(shè)計(jì)部分主要由LED燈和語(yǔ)音播放模塊兩部分組成。當(dāng)報(bào)警功能啟動(dòng)時(shí),單片機(jī)控制LED快速閃爍,同時(shí)串口發(fā)送指令到語(yǔ)音模塊,播放存放在SD卡中的錄音。
3.5.2 短信報(bào)警
短信報(bào)警的設(shè)計(jì)部分主要由GPRS模塊控制短信的發(fā)送。在本系統(tǒng)中,采用SIM800C模塊,附著GPRS網(wǎng)絡(luò)傳輸數(shù)據(jù),具有傳輸距離遠(yuǎn)、傳輸速度快的特點(diǎn)。單片機(jī)與模塊連接成功后,通過(guò)發(fā)送AT指令來(lái)實(shí)現(xiàn)控制。短信報(bào)警功能啟動(dòng)時(shí),串口發(fā)送AT指令初始化SIM800C模塊的短消息模式,設(shè)置短信為text模式,單片機(jī)將短信內(nèi)容轉(zhuǎn)成Unicode字符串存放到數(shù)組中。此時(shí),單片機(jī)等待SIM800C模塊應(yīng)答,應(yīng)答成功后,串口發(fā)送指令設(shè)置接收方電話號(hào)碼和短信中心號(hào)碼,將設(shè)置的短信發(fā)送出去。
系統(tǒng)以STM32芯片為載體,通過(guò)keil軟件編寫(xiě)程序。每次進(jìn)入主程序時(shí),通過(guò)接收各種傳感器數(shù)據(jù)并進(jìn)行處理,將數(shù)據(jù)通過(guò)MQTT協(xié)議傳到用戶操作的云平臺(tái)。采集的數(shù)據(jù)與設(shè)定值進(jìn)行比對(duì)分析,若檢測(cè)的數(shù)據(jù)超過(guò)設(shè)定值,就會(huì)觸發(fā)系統(tǒng)的兩種報(bào)警方式,提醒用戶。軟件系統(tǒng)工作流程如圖1所示。
圖1 軟件系統(tǒng)工作流程圖
測(cè)試系統(tǒng)工作的穩(wěn)定性。各傳感器正常工作,兩塊單片之間數(shù)據(jù)傳輸穩(wěn)定,NB-IOT模塊成功與阿里云物聯(lián)網(wǎng)平臺(tái)通信,實(shí)時(shí)傳輸數(shù)據(jù)。
本系統(tǒng)以STM32F407、NB-IOT模塊為核心,實(shí)現(xiàn)數(shù)據(jù)與云端的互傳,配置多種傳感器同時(shí)檢測(cè),使用Zigbee模塊實(shí)現(xiàn)單片機(jī)之間近距離傳輸數(shù)據(jù),供電方式采用雙電源供電,實(shí)現(xiàn)24 h不間斷運(yùn)作,同時(shí)配備報(bào)警系統(tǒng),解決用戶居住的一些安全隱患。登錄云平臺(tái),可以遠(yuǎn)程監(jiān)控室內(nèi)環(huán)境,支持查詢歷史數(shù)據(jù)。
隨著智能家居行業(yè)的飛速發(fā)展,本系統(tǒng)成本低、可操作性強(qiáng),可以在其基礎(chǔ)上添加更多的功能,為保障人們生活的舒適、安全和便利提供一些新的發(fā)展方向。