趙東升,劉忠富,張笑彤
(大連民族大學(xué)信息與通信工程學(xué)院,遼寧 大連 116600)
近些年來(lái),隨著物聯(lián)網(wǎng)技術(shù)的發(fā)展,智能化家電產(chǎn)品成為大多數(shù)家庭的必需品。萬(wàn)物互聯(lián)已經(jīng)成為未來(lái)社會(huì)發(fā)展的趨勢(shì),智能交通、人工智能、工業(yè)自動(dòng)化及某些公共服務(wù)設(shè)備都可以通過(guò)網(wǎng)絡(luò)成為有機(jī)的整體。物聯(lián)網(wǎng)正在改變?nèi)藗兊纳詈驼麄€(gè)世界[1]。同時(shí),合理用電,安全用電的需求也越來(lái)越迫切。近些年來(lái)國(guó)內(nèi)外的科研技術(shù)人員對(duì)家庭用電管理系統(tǒng)的設(shè)計(jì)進(jìn)行了較多的研究。傳統(tǒng)家用插座功能單一,不能遠(yuǎn)程進(jìn)行控制,無(wú)法統(tǒng)計(jì)用電量?;诖?,本文設(shè)計(jì)了一種方便管理,可以直觀地統(tǒng)計(jì)用電量,并且可以遠(yuǎn)程控制的智能家庭電控系統(tǒng)。
智能家庭電控系統(tǒng)為家庭智能用電的節(jié)點(diǎn),用于實(shí)現(xiàn)對(duì)家用電器的溫度檢測(cè)、電量測(cè)量、狀態(tài)監(jiān)控、過(guò)壓過(guò)流保護(hù)以及定時(shí)開(kāi)、關(guān)控制。系統(tǒng)化硬件電路框圖如圖1所示。
圖1 智能家庭電控系統(tǒng)硬件設(shè)計(jì)框圖
圖中,STM32F103微處理器為系統(tǒng)的核心,負(fù)責(zé)協(xié)調(diào)各個(gè)模塊之間的運(yùn)行,8266通信模塊負(fù)責(zé)完成無(wú)線通信功能。外圍電路主要由電流采樣電路、電源電路、繼電器電路、LCD顯示電路等構(gòu)成。其中電流采樣電路使用霍爾電流檢測(cè)模塊用于采集電路中的電流,為數(shù)/模轉(zhuǎn)換提供數(shù)值;電源電路主要負(fù)責(zé)將交流市電轉(zhuǎn)化為穩(wěn)定的直流電壓,為單片機(jī)和其他模塊供電;繼電器電路用于對(duì)插座進(jìn)行供斷電的控制,并且在電流大于額定電流一定時(shí)間時(shí)切斷受控插座的電源,對(duì)外設(shè)起到保護(hù)作用;LCD顯示電路顯示插座當(dāng)前的運(yùn)行狀態(tài)以及傳感器數(shù)值顯示。紅外模塊使用的是紅外避障模塊,可以檢測(cè)有無(wú)用電器使用。
本次設(shè)計(jì)采用STM32F103單片機(jī)作為主控制器件。這款單片機(jī)具有高效能、低功耗、實(shí)時(shí)應(yīng)用、具有競(jìng)爭(zhēng)性?xún)r(jià)格于一體的特點(diǎn),滿(mǎn)足嵌入式領(lǐng)域的要求。
穩(wěn)壓電源是本次設(shè)計(jì)部分中不可或缺的一部分。本設(shè)計(jì)硬件電路需要兩種電源供電,單片機(jī)和繼電器模塊供電需要5V電源,無(wú)線收發(fā)模塊需要3.3V電源[2]。由于智能家庭電控系統(tǒng)連接的電源是家用220V交流電,然而單片機(jī)和其他傳感器模塊均要使用低壓直流電對(duì)其供電,為了實(shí)現(xiàn)將高電壓轉(zhuǎn)換為低電壓的目的,本文加入了AC-DC電壓轉(zhuǎn)換模塊,并在220V本機(jī)電源電路分為兩路,一路是將交流220V經(jīng)過(guò)AC-DC降壓穩(wěn)壓電源模塊轉(zhuǎn)換成5V電源給單片機(jī)和一些傳感器供電,采用開(kāi)關(guān)電源。繼電器選用5V的繼電器,成本要低一些。由于一些傳感器及主控制器件需要3.3V的電源供電,所以我們采用DC-DC芯片(AMS1117_3.3V功能模塊),將5V轉(zhuǎn)為3.3V給單片機(jī)和一些傳感器供電。
使用紅外檢測(cè)模塊,目的是節(jié)約用電防止小孩觸電,在沒(méi)有用電器使用的時(shí)候保證繼電器處在斷開(kāi)的狀態(tài)。選用HJ-IR2抗干擾型高性能紅外避障模塊,該模塊是一種一體化反射型光電探測(cè)器,其所受光線的影響非常小,與光敏電阻相比,穩(wěn)定性高、準(zhǔn)確度非常高。該電路采用一個(gè)紅外模塊,其電源都接了VCC-5V,OUT接了單片機(jī)的PD0口。
HJ-IR2相當(dāng)于一個(gè)紅外電子開(kāi)關(guān),檢測(cè)到有用電器插在插口處時(shí)輸出低電平,平時(shí)高電平。VCC為電源+5V,OUT為信號(hào)輸出端,GND接電源負(fù)極。
霍爾電流傳感器的電路相對(duì)來(lái)說(shuō)比較簡(jiǎn)單,并且使用器件較少,功率損耗也低,測(cè)量精度高,并且其響應(yīng)速度快,響應(yīng)時(shí)間小于1μs,工作的頻帶較寬,從性能方面來(lái)講具備優(yōu)勢(shì)[3]。
霍爾電流檢測(cè)模塊采用兩位數(shù)碼管來(lái)顯示當(dāng)前所檢測(cè)到的電流值,量程為0~30A。外部提供標(biāo)準(zhǔn)輸入電壓然后與電流采樣值模塊進(jìn)行比較,以判斷當(dāng)前電流是否在允許范圍內(nèi),如果采集值超出測(cè)量范圍,則該模塊會(huì)發(fā)出提示信號(hào)。電量計(jì)量電路如圖2所示。
圖2 模塊原理圖
圖中,AD22515芯片是電路核心芯片,芯片的引腳1是連接外部基準(zhǔn)電壓的外部輸入端口,引腳2是比較輸出端口,通過(guò)比較外部基準(zhǔn)電壓和采樣電流模塊的電壓來(lái)判斷我們所采集的電流是否超出范圍,如果超出范圍,引腳2將會(huì)輸出高電平,可作為報(bào)警信號(hào)。引腳4是GND,與單片機(jī)共地。引腳5是串行輸出端口。引腳6是+5V輸入端,接單片機(jī)5VI/O口。將霍爾電流檢測(cè)模塊正確連入火線與零線,可以在數(shù)碼管上看到實(shí)時(shí)的電流值,并且使用該模塊的數(shù)據(jù)通信功能,將數(shù)據(jù)共享給單片機(jī),再由無(wú)線通信系統(tǒng)共享給上位機(jī),實(shí)現(xiàn)遠(yuǎn)程檢測(cè)功能。
ATK-ESP8266模塊采用串口(LVTTL)與MCU(或其他串口設(shè)備)通信,內(nèi)置TCP/IP協(xié)議棧,能夠?qū)崿F(xiàn)串口與WIFI之間的轉(zhuǎn)換。通過(guò)ATK-ESP8266模塊,傳統(tǒng)的串口設(shè)備只是需要簡(jiǎn)單的串口配置,即可通過(guò)網(wǎng)絡(luò)(WIFI)傳輸自己的數(shù)據(jù)。
本次設(shè)計(jì)將設(shè)置單片機(jī)串口3與ATK-ESP8266 WIFI模塊連接,同時(shí)將ATK-ESP8266 WIFI模塊設(shè)置為AP模式進(jìn)行無(wú)線通信[4]。
系統(tǒng)把STM32作為服務(wù)器,手機(jī)通過(guò)連接ESP8266,控制STM32開(kāi)發(fā)板上的繼電器進(jìn)而控制插座的斷電。
圖3 無(wú)線通信模塊電路圖
采用TFT觸摸屏模塊,它是一款TFTLCD模塊觸摸屏,具有320*240的分辨率,2.8寸的大小,工作電壓為3.3V或5V,是電阻式觸摸屏,它的原理是人從觸摸點(diǎn)檢測(cè)裝置上接收觸摸信息,并將它轉(zhuǎn)換為觸點(diǎn)坐標(biāo),再送給微控制器,它同時(shí)能接收微控制器發(fā)來(lái)的命令并加以執(zhí)行。這樣它就可以顯示電量計(jì)量,環(huán)境溫濕度,以及當(dāng)前狀態(tài)等信息,并且用戶(hù)還能在其上進(jìn)行定時(shí)操作以及其它操作。
系統(tǒng)設(shè)計(jì)采用繼電器控制電路,我們通過(guò)兩個(gè)繼電器開(kāi)關(guān)對(duì)總開(kāi)關(guān)進(jìn)行控制,繼電器1接收PD0的信號(hào),而PD0的信號(hào)是由單片機(jī)處理紅外傳感器的信號(hào)得到的;繼電器2接收PB5的信號(hào),PB5的信號(hào)為ESP8266控制得到。當(dāng)兩個(gè)繼電器所控制的電路同時(shí)為通路的時(shí)候,即插排是工作的狀態(tài),否則電路為短路狀態(tài)[5]。
本設(shè)計(jì)的軟件部分采用C語(yǔ)言進(jìn)行編寫(xiě),C語(yǔ)言結(jié)構(gòu)簡(jiǎn)單,運(yùn)行穩(wěn)定,可移植性高,兼容多平臺(tái)使用。大大提高了本設(shè)計(jì)的可行性。
系統(tǒng)上電之后,進(jìn)行硬件和時(shí)鐘初始化,MCU和操作系統(tǒng)的工作方式及工作狀態(tài)進(jìn)入準(zhǔn)備階段。根據(jù)智能家庭電控系統(tǒng)的需要,本文共定義4個(gè)任務(wù):電量數(shù)據(jù)采集處理任務(wù)、溫濕度檢測(cè)任務(wù),UART通信任務(wù)、LCD顯示任務(wù)。
1) 初始狀態(tài),電流數(shù)據(jù)采集處理任務(wù)優(yōu)先級(jí)最高,先執(zhí)行該任務(wù),霍爾電流模塊采集當(dāng)前電流電壓并計(jì)算電流有效值、功率。
2) 當(dāng)進(jìn)行無(wú)線數(shù)據(jù)收發(fā)時(shí),觸發(fā)任務(wù)中斷,系統(tǒng)調(diào)用通信任務(wù),MCU將數(shù)據(jù)通過(guò)串口發(fā)送到8266無(wú)線芯片,并通過(guò)無(wú)線傳輸數(shù)據(jù)和發(fā)送命令。
3) 接著調(diào)用LCD顯示任務(wù),將處理好的電流有效值,有功功率和溫濕度在LCD上依次循環(huán)顯示。
4)當(dāng)用戶(hù)需要對(duì)用電設(shè)備進(jìn)行控制時(shí),觸發(fā)任務(wù)中斷,系統(tǒng)調(diào)用繼電器任務(wù)。在該任務(wù)中,用戶(hù)通過(guò)手機(jī)端發(fā)送斷電或者打開(kāi)電源指令,單片機(jī)接收指令后控制繼電器的通斷。本設(shè)計(jì)中,繼電器處于常閉狀態(tài),斷電按鍵可以開(kāi)啟繼電器,同理供電按鍵可以關(guān)閉繼電器。
本設(shè)計(jì)調(diào)試主要兩個(gè)方面,第一個(gè)方面是調(diào)試傳感器的數(shù)據(jù)準(zhǔn)確度;第二個(gè)是遠(yuǎn)程通信以及控制功能。
在調(diào)試傳感器的數(shù)據(jù)準(zhǔn)確度時(shí)用常見(jiàn)的電烙鐵和手機(jī)充電器進(jìn)行用電調(diào)試。在系統(tǒng)上電以后,將手機(jī)充電器連接好,觀察電流數(shù)值,計(jì)算實(shí)際功率,對(duì)比充電器的額定功率,確保誤差在可接受范圍內(nèi)。
圖4 系統(tǒng)主函數(shù)流程圖
表1 使用手機(jī)對(duì)計(jì)電精準(zhǔn)度調(diào)試結(jié)果
表2 使用電烙鐵對(duì)控制功能調(diào)試
在測(cè)試遠(yuǎn)程通信以及控制功能時(shí),在設(shè)定好AP通信相關(guān)參數(shù)后,使用手機(jī)上的APP連接好ESP8266熱點(diǎn),實(shí)現(xiàn)手機(jī)與ESP8266之間的通訊,即實(shí)現(xiàn)遠(yuǎn)程通信的功能。在手機(jī)端,按下手機(jī)上開(kāi)關(guān)按鈕,可以向單片機(jī)發(fā)送“ON”來(lái)控制繼電器的閉合,以實(shí)現(xiàn)遠(yuǎn)程控制功能。
本產(chǎn)品的設(shè)計(jì)是基于STM32單片機(jī),結(jié)合功能模塊。本產(chǎn)品適用于家庭用電控制,相對(duì)于傳統(tǒng)家庭用電,本產(chǎn)品增加了電量統(tǒng)計(jì)功能、遠(yuǎn)程控制和通信功能。符合現(xiàn)代化發(fā)展理念,提供了更安全的家庭用電環(huán)境。本產(chǎn)品設(shè)計(jì)在保證功能完整可靠的前提下,盡量降低成本,所以本產(chǎn)品有一定的市場(chǎng)價(jià)值和應(yīng)用價(jià)值。