智能學習型紅外空調遙控器的設計與實現
發布時間:2015-01-17 責任編輯:echolady
【導讀】本文設計的是一款基於單片機的紅外智能空調遙控器,這種遙控器能采用測量脈衝寬度的方法學習紅外信號,同時使用遊程編碼算法對數據進行壓縮後存儲,並利用單片機內部定時器PWM模式產生紅外載波,成功實現了對紅外遙控的學習與再現。下麵請看詳細設計流程。
係統總體結構與硬件設計
係統采用模塊化設計,各模塊通過接口電路與主控芯片相連。主要模塊有:矩陣鍵盤,液晶顯示,存儲模塊,紅外發送模塊,紅外接收模塊,RS232、RS485 通信模塊,以及溫度檢測模塊。係統結構圖如圖1 所示。
係統以Atmega16 單片機作為主控芯片,Atmega16具有16K 字節的係統內可編程Flash ,512 字節EEPROM,1K 字節SRAM,32 個通用I/O 口線,32 個通用工作寄存器,用於邊界掃描的JTAG 接口,支持片內調試與編程,三個具有比較模式的靈活的定時器/計數器(T/C),片內/外中斷,可編程串行USART,有起始條件檢測器的通用串行接口,8 路10 位具有可選差分輸入級可編程增益的ADC,具有片內振蕩器的可編程看門狗定時器,一個SPI 串行端口,以及六個可以通過軟件進行選擇的省電模式。該芯片功能強大,滿足係統設計需要並提供了充分的擴展空間。主控芯片使用8MHz 的晶振,晶振電路靠近主控芯片,盡量減少輸入噪聲。複位電路采用低電平複位。

圖1 係統結構圖
矩陣鍵盤采用3*3 的設計,設置了8 個功能鍵,方便用戶進行手動操作。其中單獨設計了一顆模式切換鍵,可在學習、發射、通信模式中切換。為了實現學習功能, 紅外接收模塊使用了一體化接收頭NB1838,其光電檢測和前置放大器集成於同一封裝,中心頻率為37.9KHz. NB1838 的環氧樹脂封裝結構為其提供了一個特殊的紅外濾光器,對自然光和電場幹擾有很強的防護性。NB1838 對接收到的紅外信號進行放大、檢波、整形,並調製出紅外編碼,得到TTL 波形,反相後輸入單片機,再由單片機進行進一步的處理,存儲到EEPROM 中,接收電路如圖2 所示。

圖2 接收硬件電路圖。
考慮到係統需要的存儲空間比較大,設計了單獨的存儲模塊,選用的EEPROM 是AT24C64,它提供了8KB 的容量,通過IIC 協議與Atmega16 TWI 接口通信,將學習到的紅外指令存儲在此,掉電不丟失。
在發射模式下,係統從EEPROM 讀取相應數據信息,利用三極管9013 組成的放大電路,通過大功率紅外發射管將調製好的紅外信號發射出去。發射電路如圖3所suo示shi,非fei發fa送song狀zhuang態tai時shi,三san極ji管guan工gong作zuo在zai截jie止zhi狀zhuang態tai,紅hong外wai發fa射she管guan不bu工gong作zuo,有you利li於yu降jiang低di功gong耗hao以yi及ji延yan長chang紅hong外wai發fa射she管guan的de使shi用yong壽shou命ming。經jing實shi際ji測ce試shi,發fa射she距ju離li可ke達da到dao10m 左右。

圖3 發射硬件電路圖。
通信模式中,係統通過RS232 電路與上位機通信,在與上位機通信時使用DS18B20 反饋溫度信息,DS18B20 一線總線設計大大提高了係統的抗幹擾性,獨特而且經濟。係統還增加了RS485 模塊,便於組網,以實現對多個紅外設備進行控製。RS485 在組網時隻需要用一對雙絞線將子設備的"A"、"B"端連接起來,這種接線方式為總線式拓撲結構,在同一總線上可掛接多個結點,連接方便。
為了增加設備的實用性,係統設計了兩個電源方案,一個是直接接入5V 直流電源,一個是接入12V直流電源,然後通過L7805 構成的變壓電路降壓為5V使用。
[page]
係統軟件設計與實現
係統程序主要分為三個部分:學習模式,發送模式以及通信模式。當第一次進入係統時,初始化設置設備地址,然後設置通信的波特率,提供1200、9600 以及19200 三san種zhong選xuan擇ze。係xi統tong主zhu程cheng序xu即ji在zai三san個ge模mo式shi間jian切qie換huan,默mo認ren進jin入ru通tong信xin模mo式shi,可ke以yi通tong過guo模mo式shi切qie換huan按an鍵jian改gai變bian模mo式shi,也ye可ke以yi通tong過guo上shang位wei機ji直zhi接jie更geng改gai。出chu於yu係xi統tong的de穩wen定ding性xing需xu要yao,在zai程cheng序xu中zhong加jia入ru了le軟ruan件jian看kan門men狗gou,防fang止zhi程cheng序xu"跑飛".
學習功能設計
學習模式
紅外遙控器的碼型多樣,編碼一般包括:幀頭、係統碼、操作碼、同步碼、幀間隔碼、幀尾,且同步碼與幀間隔碼出現的位置不固定,因此碼型格式靈活多變,很難區分各種碼型的編碼含義;各個紅外遙控的編碼長度不盡相同,發送方式也多種多樣,最常用的有三種:完整幀隻發送一次、完整幀重複發送兩次、先xian發fa送song一yi個ge完wan整zheng幀zhen,後hou重zhong複fu發fa送song幀zhen頭tou和he一yi個ge脈mai衝chong。麵mian對dui如ru此ci多duo樣yang化hua的de編bian碼ma方fang式shi,如ru果guo區qu分fen每mei種zhong編bian碼ma的de含han義yi進jin行xing學xue習xi,學xue習xi的de複fu雜za度du將jiang會hui很hen高gao,並bing且qie通tong用yong性xing也ye會hui受shou到dao影ying響xiang。所suo以yi,為wei了le避bi開kai各ge色se碼ma型xing的de幹gan擾rao,係xi統tong在zai學xue習xi時shi並bing不bu關guan心xin碼ma型xing數shu據ju的de實shi際ji意yi義yi,隻zhi記ji錄lu脈mai衝chong的de時shi間jian寬kuan度du。係xi統tong主zhu要yao針zhen對dui載zai波bo頻pin率lv為wei38KHz(周期為26us)的紅外遙控器,利用變量IR_time 記錄接收到的脈衝寬度。學習程序流程如圖4 所示。

圖4 學習程序流程圖。
壓縮存儲youyubukaolvjutidemaxingshujuyiyi,zhijilumaichongdekuandu,xitongdexuexigongnengtongyongxingdedaoletigao,danzhezhongfangshixuexidaodeshujulianghenda,duicunchudeyaoqiujiubiandehengao。
jinguanxitongzhenduicunchudedarongliangxuqiushejiledandudecunchumokuai,dankaolvdaoyingzaibuzengjiayingjiankaixiaodeqingkuangxiabaozhengzugoudecunchurongliang,yijimanzuweilaikuozhandexuyao,zaijinxingshujucunchushi,caiquleshujuyasuojishu。
從學習到的電平數據可以發現,無論數據是1 還是0,douyouxiangtongshichangdedianpingchuxian,zhefuheyouchengbianmadetedian。youchengbianmashiyizhongjiandandefeipohuaixingziliaoyasuofa,qihaochushijiayasuohejieyasuodoufeichangkuai,qifangfashijisuanlianxuchuxiandeziliaochangduyasuozhi。biru:一張二值圖像的數據為:
WWWWWWWWBWWWWBBBWWWWWWWBWWWWW
使用遊程編碼壓縮可得:8W1B4W3B7W1B 5W.
可見,壓縮效率極高,且可避免複雜的編碼和解碼運算。所以,在存儲時,係統對學習到的數據進行遊程編碼壓縮[7,8].例如,學習到的一組空調遙控器的數據為[157 153 23 53 … 23 53 23 180 156 152 23 53 …53 23],如圖5 所示,對重複的電平數據采用遊程編碼壓縮後,原本需要199 字節的空調遙控碼,隻需要106個字節即可存儲,壓縮率達53.27%.因此,在存儲時針對學習到的數據特點采取遊程編碼壓縮,可以有效節約存儲空間。

圖5 一組典型的空調數據幀。
發射功能設計現有的紅外遙控器很多都是采用外部電路產生載波信號,例如使用NEC555 振蕩器產生載波信號。為了減少硬件開銷,本係統使用單片機內部的定時器產生載波。係統使用的是Atmega16 單片機,其定時器功能強大,具有普通模式、CTC 模式、快速PWM 模式、相位修正PWM 模式等工作模式,係統利用定時器1,使其工作在快速PWM 模式,產生占空比為1:3 的38KHz 的PWM 波。當發送某條指令時,單片機從對應的EEPROM 中提取指令信息,然後調製到生成的載波上,再通過發射電路即可完成紅外信號的發射。
[page]
通信功能設計
上位機通信
本遙控器除了能通過功能按鍵實現手動操作外,還可以通過上位機軟件對遙控器進行控製。遙控器與上位機通過RS232 mokuaijinxingtongxin,shouxianpeizhishangweijiruanjian,quedingchuankouhao,xuanzeyushebeixiangtongdebotelvjizhucongshebeidizhi,ranhougenjuxuyaoxuanzexiangyingdezhiling,dianjifasongjiketongguoshangweijiduishebeijinxingkongzhi。youyubenyaokongqishijiyukongtiaoyaokongqijinxingyanjiude,zaiyushangweijitongxinshi,xitongzhongdewendujiancemokuaihuishangchuanshishiwendu,bianyuyonghujinxingtiaozheng。tu6 為上位機軟件流程圖。

圖6 上位機軟件流程圖。
組網控製
為了實現對多個設備的聯網控製,還設計了RS485 模塊。各子遙控器通過RS485 模塊的"A"、"B"端連接在一起,組成控製網絡,如圖7 所示,其中一個作為主遙控器,與上位機通過RS232 模(mo)塊(kuai)進(jin)行(xing)串(chuan)口(kou)通(tong)信(xin)。當(dang)上(shang)位(wei)機(ji)需(xu)要(yao)對(dui)某(mou)個(ge)子(zi)設(she)備(bei)進(jin)行(xing)控(kong)製(zhi)時(shi),選(xuan)擇(ze)相(xiang)應(ying)的(de)子(zi)設(she)備(bei)地(di)址(zhi)號(hao),發(fa)送(song)指(zhi)令(ling)即(ji)可(ke),主(zhu)遙(yao)控(kong)器(qi)收(shou)到(dao)指(zhi)令(ling)信(xin)息(xi)後(hou),會(hui)將(jiang)指(zhi)令(ling)發(fa)給(gei)對(dui)應(ying)的(de)子(zi)設(she)備(bei)。與(yu)主(zhu)遙(yao)控(kong)器(qi)相(xiang)連(lian)的(de)上(shang)位(wei)機(ji)PC 連接Internet,作為本地服務器,可實現遠程控製。
yonghudengluyuanchengkehuduan,jingshenfenyanzhenghouyufuwuqijianlilianjie,kefasongzhilinggeibendifuwuqi,bendifuwuqizaijingguochuankoutongxinduiyaokongqijinxingxiangyingcaozuo。ruguoyaokongqizhujiyushangweijijulijiaoyuan,RS232 不能滿足通信需要,也可不使用遙控器主機,在上位機PC 上使用RS232-485 轉接頭,通過RS485 直接將遙控器網絡與PC 機485 接口相連,利用上位機對遙控器網絡直接進行控製。

圖7 控製網絡示意圖。
本ben文wen設she計ji了le一yi款kuan智zhi能neng空kong調tiao遙yao控kong器qi。該gai係xi統tong采cai用yong隻zhi記ji錄lu紅hong外wai信xin號hao脈mai衝chong寬kuan度du,不bu考kao慮lv紅hong外wai編bian碼ma格ge式shi的de方fang式shi,通tong過guo遊you程cheng編bian碼ma算suan法fa將jiang紅hong外wai信xin號hao壓ya縮suo後hou保bao存cun到daoEEPROM 中,並直接利用主控芯片定時器的PWM 模式產生38KHz 的載波,節約了硬件成本,除手動操作外還可以通過上位機對遙控器進行控製,使用方便。
係(xi)統(tong)成(cheng)功(gong)實(shi)現(xian)了(le)對(dui)多(duo)種(zhong)空(kong)調(tiao)遙(yao)控(kong)器(qi)的(de)學(xue)習(xi)與(yu)功(gong)能(neng)再(zai)現(xian),操(cao)作(zuo)靈(ling)活(huo),性(xing)能(neng)穩(wen)定(ding)。本(ben)係(xi)統(tong)還(hai)可(ke)用(yong)於(yu)智(zhi)能(neng)家(jia)居(ju)中(zhong),對(dui)不(bu)同(tong)的(de)紅(hong)外(wai)設(she)備(bei)進(jin)行(xing)控(kong)製(zhi),也(ye)可(ke)用(yong)於(yu)遠(yuan)程(cheng)網(wang)絡(luo)控(kong)製(zhi),為(wei)智(zhi)能(neng)家(jia)居(ju)及(ji)遠(yuan)程(cheng)監(jian)控(kong)提(ti)供(gong)了(le)一(yi)種(zhong)實(shi)現(xian)方(fang)法(fa)。
相關閱讀:
技術帝教你DIY紅外遙控LED電子鍾
一款單線紅外遙控開關電路設計
萬能紅外遙控開關DIY,讓你實現隨時開關
特別推薦
- 噪聲中提取真值!瑞盟科技推出MSA2240電流檢測芯片賦能多元高端測量場景
- 10MHz高頻運行!氮矽科技發布集成驅動GaN芯片,助力電源能效再攀新高
- 失真度僅0.002%!力芯微推出超低內阻、超低失真4PST模擬開關
- 一“芯”雙電!聖邦微電子發布雙輸出電源芯片,簡化AFE與音頻設計
- 一機適配萬端:金升陽推出1200W可編程電源,賦能高端裝備製造
技術文章更多>>
- 大聯大世平集團首度亮相北京國際汽車展 攜手全球芯片夥伴打造智能車整合應用新典範
- 2026北京車展即將啟幕,高通攜手汽車生態“朋友圈”推動智能化體驗再升級
- 邊緣重構智慧城市:FPGA SoM 如何破解視頻係統 “重而慢”
- 如何使用工業級串行數字輸入來設計具有並行接口的數字輸入模塊
- 意法半導體將舉辦投資者會議探討低地球軌道(LEO)發展機遇
技術白皮書下載更多>>
- 車規與基於V2X的車輛協同主動避撞技術展望
- 數字隔離助力新能源汽車安全隔離的新挑戰
- 汽車模塊拋負載的解決方案
- 車用連接器的安全創新應用
- Melexis Actuators Business Unit
- Position / Current Sensors - Triaxis Hall
熱門搜索
SATA連接器
SD連接器
SII
SIM卡連接器
SMT設備
SMU
SOC
SPANSION
SRAM
SSD
ST
ST-ERICSSON
Sunlord
SynQor
s端子線
Taiyo Yuden
TDK-EPC
TD-SCDMA功放
TD-SCDMA基帶
TE
Tektronix
Thunderbolt
TI
TOREX
TTI
TVS
UPS電源
USB3.0
USB 3.0主控芯片
USB傳輸速度


