劉賜恩 石道勝 王 成
(蘇州市職業(yè)大學(xué)電子信息工程學(xué)院,江蘇 蘇州 215100)
本文研究的智能遠(yuǎn)程遙控器的結(jié)構(gòu)框圖如圖1所示。STM32F103R8T6作為控制核心,主設(shè)備由鋰電池供電,經(jīng)ASM1117穩(wěn)壓后連接到STM32的電源上。該遠(yuǎn)程遙控器主要應(yīng)用于家居環(huán)境,主要控制具有紅外接收功能的設(shè)備。四路紅外發(fā)射二極管與STM32具有PWM輸出功能的IO口相連,然后由STM32的IO輸出38KHz的載波信號給紅發(fā)射二極管,遵循紅外NEC協(xié)議,NEC協(xié)議如圖2所示,一幀信號首先是由9ms的載波和4.5ms的空閑作為引導(dǎo)碼開始,然后緊跟的是4段信息,分別是用戶碼、用戶反碼、鍵值碼和鍵值反碼,數(shù)字邏輯“0”是560us的載波+560us的空閑組成,數(shù)字邏輯“1”是560us的載波+1.68ms的空閑組成。在使用時,對于特定的功能需求,輸出特定的編碼信號。最終達(dá)到紅外控制的目的。
圖1 系統(tǒng)結(jié)構(gòu)框圖
在控編碼輸出之前,首先要知道紅外編碼信息。VS1838B是紅外接收一體頭,其頻率是37.90KHz,它能夠?qū)⒓t外光信息轉(zhuǎn)換為數(shù)字信息,然后利用STM32對數(shù)字信息進(jìn)行輸入捕獲,同樣是遵循紅外NEC協(xié)議,最終將紅外編碼轉(zhuǎn)換為數(shù)字信息存儲到STM32的內(nèi)部Flash里面,即對紅外信息進(jìn)行解碼。
遠(yuǎn)程控制的硬件支持是安信可的 wifi模塊ESP12F,它結(jié)構(gòu)小巧,功耗低,并且可以通過簡單的AT指令配置TCP/IP透傳,方便二次開發(fā),接入云端服務(wù)。實現(xiàn)遠(yuǎn)程控制的原理是硬件通過ESP12F連接到固定IP的服務(wù)器,在操控段(android app)建立一個socket連接,也是連接到同一個服務(wù)器,服務(wù)器作為信息提供中轉(zhuǎn),這樣就能達(dá)到遠(yuǎn)程控制的功能。如圖3所示。
圖2 紅外遙控NEC協(xié)議
圖3 遠(yuǎn)程遙控的實現(xiàn)
本文研究的溫度采集系統(tǒng)有幾個突出的特點:(1)結(jié)構(gòu)簡單,(2)智能遠(yuǎn)程控制,(3)擴(kuò)展性強(qiáng)。作為一個輔助遙控裝置,在紅外遙控和普通的遠(yuǎn)程遙控上,本系統(tǒng)都能滿足需求。
在結(jié)構(gòu)設(shè)計上,采用鋰電池的供電方式是為了方便移動,但是也可以采用Mirso USB接頭供電,這樣就更加簡化了結(jié)構(gòu),這是一個主控芯片,4個紅外發(fā)射管(對準(zhǔn)4個方向,無死角遙控),一個紅外一體接收頭和一個ESP12F的wifi芯片,這幾個硬件組合在一起的結(jié)構(gòu)還是非常的簡單的。
我們在android端加入一些條件監(jiān)測,例如監(jiān)測手機(jī)的wifi信息,當(dāng)接入家庭的網(wǎng)絡(luò)時,自動打開空調(diào)、加濕器等一些環(huán)境電器,在打開電視機(jī)時,監(jiān)測用戶常看的頻道,并將其碼值記錄下來,下次用戶打開電視,為其自動打開他喜歡的節(jié)目。實現(xiàn)一個小小的自動化和智能化。
本系統(tǒng)還有一大特點是擴(kuò)展性強(qiáng),主控芯片STM32F103R8T6是一款功能強(qiáng)大的MCU,所以它的功能有著很強(qiáng)的擴(kuò)展性。例如利用一個引腳加一路繼電器就能組成一個遙控開關(guān)大功率電器,控制一些沒有紅外接收的電器或者大功率的電器。STM32F103R8T6自帶兩路硬件SPI,也可以連接一個OLED屏,加一個溫濕度傳感器,就可以實時監(jiān)測環(huán)境溫度。安信可的WIFI模塊是2.4G無線通信,在長時間連接中可能出現(xiàn)通信中斷的可能,所以在硬件電路上,也可以加上一個ENC28J60網(wǎng)口通信芯片,這樣就可以使用網(wǎng)線把本系統(tǒng)接入互聯(lián)網(wǎng)。
圖4 PCB打樣及實物測試
在經(jīng)過不同方案的比較后,我們?yōu)楸鞠到y(tǒng)設(shè)計了PCB,并且打樣出來進(jìn)行測試。如圖4所示。
本系統(tǒng)作為一款遠(yuǎn)程遙控輔助設(shè)備,在日常使用中是完全可以勝任家庭紅外遙控的控制中心。在最為常用的控制電視機(jī)和空調(diào)方面都沒有問題,首先是要把原來的遙控器對準(zhǔn)本設(shè)備,讓本設(shè)備進(jìn)行解碼并學(xué)習(xí)其碼值,然后就可以通過android app對電視機(jī)和空調(diào)進(jìn)行控制了,使用起來也是非常的方便。智能家居的概念早在幾年前就已經(jīng)是一個熱詞了,隨著物聯(lián)網(wǎng)技術(shù)的發(fā)展,智能家居也被再次推上了風(fēng)尖浪口,何為智能家居,就本文而言,遙控家居不是智能家居,智能是非人為的操作,所以達(dá)到遠(yuǎn)程遙控,但并非智能遙控,我們只是結(jié)合硬件,在數(shù)據(jù)上做一些判斷,這樣的遠(yuǎn)程控制,無論是偽智能還是真智能,這只是利用大數(shù)據(jù)對智能化控制的一個小小的嘗試。未來的路還很遠(yuǎn),我們也是在學(xué)習(xí)中去不斷的探索。