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