一種基于射頻網(wǎng)絡(luò)的智能家居電能控制系統(tǒng)
近年來,物聯(lián)網(wǎng)技術(shù)發(fā)展迅速,全社會的信息化水平不斷提升。智能家居是物聯(lián)網(wǎng)的主要應(yīng)用之一,已成為當(dāng)前的熱門研究領(lǐng) 域,也是未來家居生活的發(fā)展方向 。它能夠?yàn)橛脩籼峁┦孢m、便利的生活環(huán)境。但由于市場上的相關(guān)產(chǎn)品大多價格昂貴,普及率依然較低。以往的探索與開發(fā)往往停留在對電器設(shè)備本身的改造上,這 種嘗試使智能家居產(chǎn)品一度成為奢侈品。本文介紹了一種電能控制系統(tǒng),作為智能家居的重要組成部分,它在不改動原有電器設(shè)備的基礎(chǔ)上實(shí)現(xiàn)了遠(yuǎn)程自動控制功能。
1 系統(tǒng)結(jié)構(gòu)
該電能控制系統(tǒng)由遙控器和插座節(jié)點(diǎn)組成,其工作原理如圖1所示。當(dāng)用戶 在家時,通過遙控器以射頻方式對插座進(jìn)行控制。插座節(jié)點(diǎn)收到信號后,由微控制器進(jìn)行解碼,并根據(jù)得出的結(jié)果,對特定編號的插座做通斷電處理,從而使與其連 接的用電器被啟動或者關(guān)閉。當(dāng)用戶離住所較遠(yuǎn)時,可通過GSM網(wǎng)絡(luò)向遙控器發(fā)送手機(jī)短信 ,微控制器讀取信息后,通過射頻芯片,將信息傳遞到室內(nèi)的無線網(wǎng)絡(luò)中,進(jìn)而使相應(yīng)地址上的插座受到控制。由此可見,遙控器在整個智能家居系統(tǒng)中屬于網(wǎng)關(guān)節(jié) 點(diǎn) ,一方面,它與插座節(jié)點(diǎn)組成了室內(nèi)射頻局域網(wǎng),另一方面,它又與GSM網(wǎng)絡(luò)相連,延展了遙控距離。遙控器的內(nèi)部結(jié)構(gòu)如圖2所示,包括溫濕度檢測電路、時鐘 模塊、nRF905射頻收發(fā)模塊、GSM模塊等功能電路,這些模塊均與控制核心LM3S811相連。該微控制器采用ARM Coaex-M3架構(gòu),由于依托高密度的Thumb-2指令集,內(nèi)存開銷大大降低,操作系統(tǒng)的移植也更加方便。
圖1 遙控插座工作原理
圖2 遙控器結(jié)構(gòu)框圖
插 座節(jié)點(diǎn)主要實(shí)現(xiàn)與遙控器的射頻通信以及繼電器的通斷控制,其結(jié)構(gòu)框圖如圖3所示。插座中的煙霧傳感器用于預(yù)防火災(zāi)危險。一旦檢測到煙霧或可燃性氣體,插座 上對應(yīng)的繼電器將斷開,并通過射頻收發(fā)模塊向遙控器匯報(bào),遙控器收到信息后,再通過GSM模塊的短信功能及時提醒用戶采取相應(yīng)的措施,防止危險的發(fā)生或財(cái) 產(chǎn)損失的進(jìn)一步擴(kuò)大。由于插座端工作量較少,從成本和性能兩方面考慮,本系統(tǒng)采用STC12C5620AD微控制器作為插座端的主控芯片。
圖3 插座節(jié)點(diǎn)結(jié)構(gòu)框圖
2 硬件電路設(shè)計(jì)
2.1 溫濕度檢測電路
本系統(tǒng)采用溫度傳感器LM35和濕度測量模塊CHM-02進(jìn)行環(huán)境監(jiān)測。LM35的電壓輸出與攝氏溫度呈線性關(guān)系,無需校準(zhǔn)就可在常溫環(huán)境下達(dá)±l/4℃ 的測量精度。CHM-02模塊可在0~70 ℃的溫度下對20~95%RH范圍內(nèi)的濕度進(jìn)行檢測,室溫下的測量精度為5%RH。溫濕度傳感器與MCU的接口示意圖如圖4所示。由于兩種傳感器輸出的模 擬信號在MCU片內(nèi)A/D采樣電路的檢測范圍內(nèi),所以直接將兩者的輸出端與MCU的兩個ADC引腳連接。模擬式傳感器的使用不但充分利用了控制器的片上資 源,而且提高了子程序的利用率。
圖4 溫濕度傳感器與MCU的接口示意圖
2.2 煙霧檢測電路
煙 霧傳感器MQ一2基于SnO:的電化學(xué)特性,對可燃性氣體及煙塵有良好的檢測靈敏度。煙霧檢測電路原理圖如圖5所示。MQ.2在正常工作前需要對內(nèi)部加熱 絲的H.h兩極通電預(yù)熱 ,為了防止加熱電流過大而導(dǎo)致內(nèi)部信號線溫度過高,此處將加熱絲與100 Q電阻串聯(lián)。當(dāng)環(huán)境中的煙霧或可燃?xì)怏w超過警戒閾值時,傳感器A.B兩極間的電導(dǎo)率迅速增加,與其串聯(lián)的負(fù)載電阻m所獲得的電壓也相應(yīng)增加,該電壓信號經(jīng) 低功耗運(yùn)放TLC27M2放大后,得到與煙霧或可燃?xì)鉂舛认鄬?yīng)的模擬量輸出,最終接人控制器的ADC模塊進(jìn)行量化。
圖5 煙霧檢測電路原理圖
2.3 時鐘模塊
時 鐘模塊除了顯示系統(tǒng)時間以外,還可對單個插座進(jìn)行通斷電定時。時鐘電路原理圖如圖6所示,DS1302通過串行方式與MCU通信,為保證信號傳輸?shù)姆€(wěn)定 性,接口已做上拉處理。芯片采用雙電源供電,主電源正常工作時可以對備用電源進(jìn)行涓細(xì)電流充電;在掉電情況下啟動備用電源,避免因突然停電而造成時鐘停滯 ??紤]到使用的便捷性,遙控器由鋰電池供電。DS1302的主電源引腳VCC2連接到集成穩(wěn)壓器的3.3 V輸出,而備用電源引腳VCC1與4700 μF的電容串接,兩個電源引腳之間通過二極管隔離。由于芯片耗電量很低,在更換電池的過程中,電容的放電作用可以暫時維持芯片運(yùn)行。
圖6 時鐘電路原理圖
2.4 射頻收發(fā)模塊nRF905
射 頻收發(fā)模塊是連接插座與遙控器的橋梁。nRF905集成收發(fā)器能在3個ISM頻段配置使用,且功耗很低。本系統(tǒng)中的所有節(jié)點(diǎn)均設(shè)置在433 MHz頻段工作嘲,射頻收發(fā)電路原理圖如圖7所示,其中的SMA接口用來連接特性阻抗為5O Ω的單端天線,有利于信號的全向輻射。單端天線又被稱為非平衡天線,其主要參考點(diǎn)為信號地,而nRF905的天線接口(引腳ANT1和ANT2)為差分射 頻輸出端口。為了維持信號平衡,保證兩個端口的阻抗匹配,此處在兩者之間增加了balun(平衡月乍平衡)電路,對芯片輸出端的特性進(jìn)行調(diào)節(jié)。
圖7 射頻收發(fā)電路
2.5 GSM通信模塊
將短距射頻網(wǎng)絡(luò)與GSM技術(shù)相結(jié)合,既發(fā)揮了短距射頻網(wǎng)絡(luò)配置靈活的特點(diǎn),又發(fā)揮了GSM技術(shù)在通信距離上的優(yōu)勢。GSM通信電路的核心是SIM300模塊,其外圍電路如圖8所示。
圖8 GSM通信電路原理圖
原 理圖SIM300通過串口與MCU通信,模塊與SIM卡之間串聯(lián)的22 Ω電阻用于阻抗匹配。為保證信號的傳輸質(zhì)量,SIM卡數(shù)據(jù)線作了上拉處理,與引腳并聯(lián)的SMF05C型靜電抑制器用于靜電防護(hù)。電源與地之間并聯(lián)的100 μF鉭電容和1 μF陶瓷電容用于去除低頻毛刺,并在一定程度上兼顧了高頻特性。按下按鍵S1,使PWRKEY引腳的電位拉低約2 s左右,可以完成模塊的上電與掉電,當(dāng)前狀態(tài)由串聯(lián)在VDD_EXT引腳上的發(fā)光二極管指示。為了便于程序控制,在原有按鍵的基礎(chǔ)上增加了一種三極管開關(guān) 電路,當(dāng)模塊工作異常時,可以通過軟件改寫PWR端口的狀態(tài)來實(shí)現(xiàn)SIM300的自動復(fù)位。
3 軟件設(shè)計(jì)
遙控器和插座對于整個射頻無線網(wǎng)絡(luò)而言都是其中的節(jié)點(diǎn),但硬件結(jié)構(gòu)上的差異決定了兩者功能與地位上的不同,也使得兩者在軟件設(shè)計(jì)的方式上有所差別。
3.1 遙控器節(jié)點(diǎn)程序設(shè)計(jì)
遙 控器是系統(tǒng)的控制核心,也是用戶與插座之間聯(lián)系的紐帶,因此程序中的并發(fā)模塊多,任務(wù)繁重??紤]到遙控器中采用的ARM處理器可提供對操作系統(tǒng)的全面支 持,利用μC/OS-Ⅱ操作系統(tǒng)對該節(jié)點(diǎn)中的多個任務(wù)進(jìn)行調(diào)度 ,可有效保證系統(tǒng)的實(shí)時性和穩(wěn)定性,也有利于功能的擴(kuò)展。在進(jìn)行操作系統(tǒng)移植前,需要對任務(wù)進(jìn)行劃分,每個功能對應(yīng)一個系統(tǒng)任務(wù),同時應(yīng)避免劃分過細(xì)而導(dǎo) 致頻繁調(diào)度的問題。遙控器節(jié)點(diǎn)的程序流程如圖9所示,其中包含了7個任務(wù),任務(wù)之間通過信號量、消息隊(duì)列、消息郵箱等方式實(shí)現(xiàn)同步與通信。從用戶的角度來 看,這些任務(wù)是并發(fā)執(zhí)行的。
圖9 遙控器節(jié)點(diǎn)程序流程圖
按 鍵掃描任務(wù)的優(yōu)先級在所有用戶任務(wù)中最高。通過中斷方式讀取用戶輸人的按鍵值,數(shù)據(jù)存人消息郵箱KeyMbox中,若數(shù)字鍵1-6被按下,則通知射頻發(fā)送 任務(wù)處理;若時鐘設(shè)置按鍵被按下,則進(jìn)行時鐘調(diào)整或定時器設(shè)置。時鐘定時任務(wù)用于獲得DS1302的時鐘輸出值,在定時時間到達(dá)后,發(fā)送消息通知射頻發(fā)送 任務(wù)處理,完成后自動掛起。射頻發(fā)送任務(wù)是根據(jù)其他任務(wù)中獲得的控制碼,以射頻方式對相應(yīng)編號的插座發(fā)送通斷電控制信號,隨后等待插座端返回動作信息。若 超時無反饋則重發(fā)1次,重發(fā)3次后任務(wù)掛起。危險報(bào)警任務(wù)需經(jīng)過同頻載波檢測,地址匹配確認(rèn)后,才開始接收射頻信號,進(jìn)而將信息送人郵箱,解碼確認(rèn)危險報(bào) 警標(biāo)識后,通過GSM模塊,以短消息的方式通知用戶。短信接收任務(wù)負(fù)責(zé)接收用戶短信,并將其存放在消息郵箱GSMMbox中。通過AT指令 “AT+CMGR=I”每次只讀取序號為1的短信息,成功提取控制碼(包含插座ID號和開關(guān)動作碼)后,將該條信息刪除,并向射頻發(fā)送任務(wù)傳遞消息。環(huán)境 監(jiān)測任務(wù)負(fù)責(zé)對室內(nèi)溫濕度信息循環(huán)采樣。雖然溫度傳感器的線性度較好,但外界環(huán)境對濕度傳感器的影響較大,需對其輸出電壓值作分段線性化處理。數(shù)據(jù)存放于 消息隊(duì)列中,最終結(jié)果為3次測量值的算術(shù)平均值。液晶顯示任務(wù)優(yōu)先級最低,待以上任務(wù)結(jié)束后,負(fù)責(zé)顯示各插座最終的狀態(tài)、時鐘信息以及室內(nèi)溫濕度測量結(jié)果等。
3.2 插座節(jié)點(diǎn)程序設(shè)計(jì)
插座節(jié)點(diǎn)程序流程如圖10所示,其 中最主要的工作是實(shí)現(xiàn)射頻信號的接收與發(fā)送。當(dāng)沒有煙霧報(bào)警時,nRF905進(jìn)入接收模式,同時偵聽信道;若監(jiān)測到同頻載波且數(shù)據(jù)包地址有效,則啟動接 收;當(dāng)CRC校驗(yàn)結(jié)果正確,硬件會自行去除數(shù)據(jù)包的前導(dǎo)碼、校驗(yàn)碼及地址碼 ,并通知MCU數(shù)據(jù)準(zhǔn)備就緒,進(jìn)而MCU通過SPI串行總線讀取接收到的信息。
圖1O 插座節(jié)點(diǎn)程序流程圖
射 頻信號發(fā)送本質(zhì)上是接收的逆過程。當(dāng)nRF905進(jìn)入待機(jī)模式后,MCU將地址與數(shù)據(jù)信息傳送至射頻芯片的發(fā)送寄存器,同時啟動芯片進(jìn)入射頻發(fā)送模式,隨 后片內(nèi)硬件自動完成對數(shù)據(jù)的打包、編碼、調(diào)制及發(fā)送任務(wù)。一幀數(shù)據(jù)發(fā)送結(jié)束后,射頻芯片轉(zhuǎn)入待機(jī)模式,等待下一次被激活。射頻電路的每一次接收或發(fā)送過程 都伴隨著繼電器的接通或斷開動作。默認(rèn)條件下,煙霧傳感器處于使能狀態(tài),為了防止用戶在室內(nèi)抽煙而導(dǎo)致系統(tǒng)誤判,煙霧檢測功能也可以設(shè)置為失效。
評論