譚明 胡廷煬 徐永昌 侯云龍
摘 要:萬能空調(diào)遙控器的核心是學(xué)習(xí)模式,即利用紅外模塊接收、識別、存儲信號,再調(diào)用發(fā)射信號。學(xué)習(xí)的實質(zhì)就是記錄下學(xué)習(xí)對象的紅外編碼,記錄高低電平各自持續(xù)的時間長度,需要時將其發(fā)射出來。識別記錄紅外編碼信號可使用直接記錄下的高低電平時間以調(diào)用,也可采用代碼將高低電平代表的意義識別出來,用邏輯0與1記錄。
關(guān)鍵詞:萬能遙控器;學(xué)習(xí)算法;紅外遙控;單片機;紅外編碼;PWM;PPM
中圖分類號:TP301文獻(xiàn)標(biāo)識碼:A文章編號:2095-1302(2019)10-00-03
0 引 言
隨著社會的進(jìn)步與科技的發(fā)展,人們的生活水平有了很大提升,空調(diào)日益普及??照{(diào)有多種型號,不同型號的遙控器不得串用,因此設(shè)計一款萬能空調(diào)遙控器很有必要。萬能空調(diào)遙控器最重要的一個功能就是學(xué)習(xí)模式,使之能夠?qū)W習(xí)各個空調(diào)的編碼,以便遙控對應(yīng)的空調(diào)。
1 學(xué)習(xí)模式總體說明
萬能空調(diào)遙控器的學(xué)習(xí)模式主要分為三個步驟:
(1)利用紅外模塊捕捉空調(diào)遙控器的遙控信號;
(2)利用單片機識別紅外信號并暫時存儲;
(3)將捕捉到的信號進(jìn)行確認(rèn)后存在存儲芯片中,以備調(diào)用。
學(xué)習(xí)模式流程如圖1所示。
利用單片機識別紅外信號有兩種方案,具體如下。
方案一:當(dāng)單片機自身的運算速度極快時,直接使用定時器計時,外部使用I/O輸入模式,使用上升與下降沿中斷捕捉并記錄每個間隔時間及高低電平以備用,每識別一段波便存儲下來備用,分別使用對應(yīng)的按鈕調(diào)用對應(yīng)的指令段。對應(yīng)的流程如圖2所示。
方案二:當(dāng)單片機自身的運算速度不夠快,即計時器不夠快、精度不夠時,只采集對應(yīng)的高低電平及其模糊時間,其模糊時間必須達(dá)到足夠的辨識度,能夠識別其中的邏輯0與1,由于不同的空調(diào)有不同的邏輯脈寬時間,因此只要獲得信號輸出高低電平的模糊時間,將其固定在某個脈沖時間的周圍,逐一試用即可找到。流程如圖3所示。
2 空調(diào)遙控紅外信號說明
現(xiàn)有的紅外遙控包括PWM(脈沖寬度調(diào)制)和PPM(脈沖位置調(diào)制)兩種方式,兩種方式編碼的代表分別為NEC和PHILIPS的RC-5,RC-6以及RC-7。本文主要介紹NEC與RC-5。
NEC格式的特征如下:
(1)使用38 kHz載波頻率;
(2)引導(dǎo)碼間隔為(9+4.5)ms;
(3)使用16位客戶代碼;
(4)使用8位數(shù)據(jù)代碼和8位取反的數(shù)據(jù)代碼。
NEC協(xié)議通過脈沖串之間的時間間隔實現(xiàn)信號調(diào)制。邏輯0由0.56 ms的38 kHz載波和0.56 ms的無載波間隔組成;邏輯1由0.56 ms的38 kHz載波和1.68 ms的無載波間隔組成;結(jié)束位是0.56 ms的38 kHz載波。邏輯0與1如圖4所示。
RC-5的編碼相對簡單,使用雙相編碼規(guī)則。雙相編碼字的位如圖5所示。
空調(diào)遙控的指令固定,通過邏輯0與1發(fā)送信息,并通過脈沖表達(dá),其實質(zhì)為電平的高低變換。
3 學(xué)習(xí)模式紅外接收識別
學(xué)習(xí)模式紅外接收識別是學(xué)習(xí)模式的第一步,當(dāng)控制器進(jìn)入學(xué)習(xí)模式后,根據(jù)提示按下對應(yīng)的按鍵,控制器進(jìn)行學(xué)習(xí)記錄,其實現(xiàn)方式主要有兩種:
(1)當(dāng)按下對應(yīng)的按鍵時,遙控器發(fā)出紅外信號,萬能遙控器通過紅外接收模塊接收信號,并將信號傳輸?shù)絾纹瑱C的I/O口用以處理,其信號的實質(zhì)為電平的高低變換,只是持續(xù)的時間不同,紅外信號的存儲實質(zhì)是存儲其高電平時間及低電平時間,因此識別記錄信號時必須獲得每個電平變換的時間,此方法簡單有效,但消耗容量;
(2)紅外遙控的邏輯0與1實質(zhì)是一個固定脈沖的不同占空比,可使用雙相編碼,因此可將每個指令識別為邏輯0與1后再存儲。
4 學(xué)習(xí)模式紅外編碼存儲
為防止遙控器斷電,需將指令存儲到專門的存儲芯片上。每個存儲位置都有固定的位置信息,因此可將學(xué)習(xí)到的信息存儲到固定的位置以備讀取。例如,位置1可直接存儲調(diào)節(jié)模式的紅外指令信息,在需要調(diào)節(jié)模式指令時,直接從位置1獲得。
5 學(xué)習(xí)模式紅外遙控
對學(xué)習(xí)到的指令進(jìn)行檢驗,若不正確,則重新學(xué)習(xí)。由于對單片機進(jìn)行內(nèi)部調(diào)用較快,因此為了減少時間消耗,每次重啟都將指令信息從存儲芯片復(fù)制到單片機中。
紅外信號的發(fā)射包括以下兩種方式:
(1)對應(yīng)于學(xué)習(xí)模式紅外接收識別方案一,將對應(yīng)指令復(fù)制到單片機后,獲得電平翻轉(zhuǎn)時間,將每個電平的翻轉(zhuǎn)時間放入數(shù)組,進(jìn)行定時器定時,每到一定的時間,控制紅外發(fā)射模塊翻轉(zhuǎn)電平即可控制空調(diào)。紅外遙控流程如圖6所示。
(2)對應(yīng)于學(xué)習(xí)模式紅外接收識別方案二,此處獲得的指令是識別后的十六進(jìn)制數(shù),將其還原(有引導(dǎo)碼及間隔時間等),在其邏輯0與1之間加入間隔,將引導(dǎo)時間放入數(shù)組,并將邏輯0與1分別打出一個子程序,根據(jù)數(shù)組中的數(shù)分別調(diào)用對應(yīng)的子程序,對應(yīng)流程如圖7所示。
6 結(jié) 語
本文對萬能空調(diào)遙控器的學(xué)習(xí)模式進(jìn)行了論述,通過紅外接收模塊接收信號、單片機處理信號、存儲芯片存儲信號、紅外發(fā)射模塊發(fā)射信號,采用不同的方式對信號進(jìn)行處理、保存及發(fā)射,從而達(dá)到學(xué)習(xí)的目的,使得萬能空調(diào)遙控器可針對所有空調(diào)進(jìn)行遙控。
參 考 文 獻(xiàn)
[1]張遠(yuǎn)念,邱達(dá),黃碩,等.智能新風(fēng)系統(tǒng)算法設(shè)計[J].電子世界,2016(22):197-198.
[2]董亞楠,許欽濤,張克廷,等.紅外遙控功能在車載空調(diào)控制器中的應(yīng)用[J].汽車電器,2019(3):61-63.
[3]李紅冰.基于STC11L04E的紅外空調(diào)遙控系統(tǒng)的設(shè)計[J].電子世界,2018(11):197-198.
[4]朱恒軍,劉真海.基于Android系統(tǒng)智能家居紅外遙控器的設(shè)計[J].信息通信,2018(12):119-122.
[5]李亞龍.淺析紅外遙控技術(shù)的有效應(yīng)用[J].科技風(fēng),2018(33):73.
[6]王晨陽,唐景華,傅全權(quán),等.Freedom萬能遙控器[J].物聯(lián)網(wǎng)技術(shù),2014,4(1):16-17.
[7]楊連池,林春婷.自動適配多種設(shè)備的智能遙控器設(shè)計與實現(xiàn)[J].物聯(lián)網(wǎng)技術(shù),2017,7(12):53-55.
[8]李博韞.環(huán)境自適應(yīng)無線射頻遙控器設(shè)計[J].信息記錄材料,2017,18(12):89-91.
[9]李慧靜,劉慧文,李東敬.基于網(wǎng)絡(luò)的通用型遠(yuǎn)程空調(diào)遙控器的設(shè)計與實現(xiàn)[J].內(nèi)蒙古科技大學(xué)學(xué)報,2017,36(3):262-266.
[10]吳瓊.基于單片機的空調(diào)紅外遙控器設(shè)計[J].電子世界,2018(16):157.