基於單片機的智能學習型紅外空調遙控器

2020-12-04 新硬體

本文設計了一款針對空調設備的智能學習型紅外遙控器,採用記錄脈衝寬度的方法,成功實現了對多種紅外空調遙控信號的學習與再現,真正實現了"萬能"。本文在闡述了系統的總體結構及硬體設計的基礎上,詳細研究了系統學習,發送及通信功能的軟體設計與實現。

2 系統總體結構與硬體設計

系統採用模塊化設計,各模塊通過接口電路與主控晶片相連。主要模塊有:矩陣鍵盤,液晶顯示,存儲模塊,紅外發送模塊,紅外接收模塊,RS232、RS485 通信模塊,以及溫度檢測模塊。

系統以Atmega16 單片機作為主控晶片,Atmega16具有16K 字節的系統內可編程Flash ,512 字節EEPROM,1K 字節SRAM,32 個通用I/O 口線,32 個通用工作寄存器,用於邊界掃描的JTAG 接口,支持片內調試與編程,三個具有比較模式的靈活的定時器/計數器(T/C),片內/外中斷,可編程串行USART,有起始條件檢測器的通用串行接口,8 路10 位具有可選差分輸入級可編程增益的ADC,具有片內振蕩器的可編程看門狗定時器,一個SPI 串行埠,以及六個可以通過軟體進行選擇的省電模式。該晶片功能強大,滿足系統設計需要並提供了充分的擴展空間。主控晶片使用8MHz 的晶振,晶振電路靠近主控晶片,儘量減少輸入噪聲。復位電路採用低電平復位。

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

考慮到系統需要的存儲空間比較大,設計了單獨的存儲模塊,選用的EEPROM 是AT24C64,它提供了8KB 的容量,通過IIC 協議與Atmega16 TWI 接口通信,將學習到的紅外指令存儲在此,掉電不丟失。

在發射模式下,系統從EEPROM 讀取相應數據信息,利用三極體9013 組成的放大電路,通過大功率紅外發射管將調製好的紅外信號發射出去。發射電路如圖3所示,非發送狀態時,三極體工作在截止狀態,紅外發射管不工作,有利於降低功耗以及延長紅外發射管的使用壽命。經實際測試,發射距離可達到10m 左右。

通信模式中,系統通過RS232 電路與上位機通信,在與上位機通信時使用DS18B20 反饋溫度信息,DS18B20 一線總線設計大大提高了系統的抗幹擾性,獨特而且經濟。系統還增加了RS485 模塊,便於組網,以實現對多個紅外設備進行控制。RS485 在組網時只需要用一對雙絞線將子設備的"A"、"B"端連接起來,這種接線方式為總線式拓撲結構,在同一總線上可掛接多個結點,連接方便。

為了增加設備的實用性,系統設計了兩個電源方案,一個是直接接入5V 直流電源,一個是接入12V直流電源,然後通過L7805 構成的變壓電路降壓為5V使用。

3 系統軟體設計與實現

系統程序主要分為三個部分:學習模式,發送模式以及通信模式。當第一次進入系統時,初始化設置設備地址,然後設置通信的波特率,提供1200、9600 以及19200 三種選擇。系統主程序即在三個模式間切換,默認進入通信模式,可以通過模式切換按鍵改變模式,也可以通過上位機直接更改。出於系統的穩定性需要,在程序中加入了軟體看門狗,防止程序"跑飛".

3.1 學習功能設計

3.1.1 學習模式

紅外遙控器的碼型多樣,編碼一般包括:幀頭、系統碼、操作碼、同步碼、幀間隔碼、幀尾,且同步碼與幀間隔碼出現的位置不固定,因此碼型格式靈活多變,很難區分各種碼型的編碼含義;各個紅外遙控的編碼長度不盡相同,發送方式也多種多樣,最常用的有三種:完整幀只發送一次、完整幀重複發送兩次、先發送一個完整幀,後重複發送幀頭和一個脈衝。面對如此多樣化的編碼方式,如果區分每種編碼的含義進行學習,學習的複雜度將會很高,並且通用性也會受到影響。所以,為了避開各色碼型的幹擾,系統在學習時並不關心碼型數據的實際意義,只記錄脈衝的時間寬度。系統主要針對載波頻率為38KHz(周期為26us)的紅外遙控器,利用變量IR_time 記錄接收到的脈衝寬度。

3.1.2 壓縮存儲

由於不考慮具體的碼型數據意義,只記錄脈衝的寬度,系統的學習功能通用性得到了提高,但這種方式學習到的數據量很大,對存儲的要求就變得很高。

儘管系統針對存儲的大容量需求設計了單獨的存儲模塊,但考慮到應在不增加硬體開銷的情況下保證足夠的存儲容量,以及滿足未來擴展的需要,在進行數據存儲時,採取了數據壓縮技術。

從學習到的電平數據可以發現,無論數據是1 還是0,都有相同時長的電平出現,這符合遊程編碼的特點。遊程編碼是一種簡單的非破壞性資料壓縮法,其好處是加壓縮和解壓縮都非常快,其方法是計算連續出現的資料長度壓縮之。比如:一張二值圖像的數據為:

WWWWWWWWBWWWWBBBWWWWWWWBWWWWW

使用遊程編碼壓縮可得:8W1B4W3B7W1B 5W.

可見,壓縮效率極高,且可避免複雜的編碼和解碼運算。所以,在存儲時,系統對學習到的數據進行遊程編碼壓縮[7,8].例如,學習到的一組空調遙控器的數據為[157 153 23 53 … 23 53 23 180 156 152 23 53 …53 23],如圖5 所示,對重複的電平數據採用遊程編碼壓縮後,原本需要199 字節的空調遙控碼,只需要106個字節即可存儲,壓縮率達53.27%.因此,在存儲時針對學習到的數據特點採取遊程編碼壓縮,可以有效節約存儲空間。

3.2 發射功能設計

現有的紅外遙控器很多都是採用外部電路產生載波信號,例如使用NEC555 振蕩器產生載波信號。為了減少硬體開銷,本系統使用單片機內部的定時器產生載波。系統使用的是Atmega16 單片機,其定時器功能強大,具有普通模式、CTC 模式、快速PWM 模式、相位修正PWM 模式等工作模式,系統利用定時器1,使其工作在快速PWM 模式,產生佔空比為1:3 的38KHz 的PWM 波。當發送某條指令時,單片機從對應的EEPROM 中提取指令信息,然後調製到生成的載波上,再通過發射電路即可完成紅外信號的發射。

3.3 通信功能設計

3.3.1 上位機通信

本遙控器除了能通過功能按鍵實現手動操作外,還可以通過上位機軟體對遙控器進行控制。遙控器與上位機通過RS232 模塊進行通信,首先配置上位機軟體,確定串口號,選擇與設備相同的波特率及主從設備地址,然後根據需要選擇相應的指令,點擊發送即可通過上位機對設備進行控制。由於本遙控器是基於空調遙控器進行研究的,在與上位機通信時,系統中的溫度檢測模塊會上傳實時溫度,便於用戶進行調整。

3.3.2 組網控制

為了實現對多個設備的聯網控制,還設計了RS485 模塊。各子遙控器通過RS485 模塊的"A"、"B"端連接在一起,組成控制網絡,如圖7 所示,其中一個作為主遙控器,與上位機通過RS232 模塊進行串口通信。當上位機需要對某個子設備進行控制時,選擇相應的子設備地址號,發送指令即可,主遙控器收到指令信息後,會將指令發給對應的子設備。與主遙控器相連的上位機PC 連接Internet,作為本地伺服器,可實現遠程控制。

用戶登錄遠程客戶端,經身份驗證後與伺服器建立連接,可發送指令給本地伺服器,本地伺服器再經過串口通信對遙控器進行相應操作。如果遙控器主機與上位機距離較遠,RS232 不能滿足通信需要,也可不使用遙控器主機,在上位機PC 上使用RS232-485 轉接頭,通過RS485 直接將遙控器網絡與PC 機485 接口相連,利用上位機對遙控器網絡直接進行控制。

4 結語

本文設計了一款智能空調遙控器。該系統採用只記錄紅外信號脈衝寬度,不考慮紅外編碼格式的方式,通過遊程編碼算法將紅外信號壓縮後保存到EEPROM 中,並直接利用主控晶片定時器的PWM 模式產生38KHz 的載波,節約了硬體成本,除手動操作外還可以通過上位機對遙控器進行控制,使用方便。

系統成功實現了對多種空調遙控器的學習與功能再現,操作靈活,性能穩定。本系統還可用於智能家居中,對不同的紅外設備進行控制,也可用於遠程網絡控制,為智能家居及遠程監控提供了一種實現方法。

相關焦點

  • 智能型紅外遙控器的設計
    目前,對學習型智能遙控器的研製開展了大量的工作,旨在提高遙控器的智能化和通用性,取得了較大的進展,並有部分產品進入市場。當前研製開發的學習型智能遙控器主要採用38KHz固定載波頻率,遙控器編碼不壓縮或簡單壓縮。空調遙控器不同於其它家電遙控器(如彩電),空調遙控器發出的編碼包含當前狀態的多種信息,而彩電遙控器的編碼是一鍵一碼。
  • 51單片機製作紅外遙控器
    越來越多的電器為了讓操作更簡便,更方便人們使用而採用了遙控的技術,以一般的家庭為例,一臺電視就有一個遙控器、機頂盒一個遙控器,空調也是一個房間一個,也有三個遙控器、DVD也有一個遙控器。如果再加上客廳的電燈、風扇、音響等等那就更多了。常用的就由5,6個。許多的市民都面臨著遙控器太多的煩惱。迫切需要有一個能代替家裡遙控器的裝置。用單片機模擬遙控器發射紅外線。
  • 基於LPC1114的學習型紅外遙控器
    在此對婷婷的表示衷心的感謝,感謝黨,感謝人民給我這次學習機會。閒話少說,進入正題。  LPC11XX我就不介紹了。學習型紅外遙控器也不介紹了。有不懂的地方大家可以baidu一下。  本設計就是採用LPC1114+OLED+紅外接收頭構成一個學習型紅外遙控器,  安裝LPCxpress,後插入LPC-Link 自動識別,  系統多出一個
  • 機頂盒通用可學習型紅外遙控器的電路剖析
    家中電信寬帶的機頂盒配套遙控器基本上都有遙控學習功能。經常使用一段時間後發現,遙控器會經常出現時靈時不靈的現象。現對該遙控器進行一番拆解和電路剖析,藉此機會也順便對該遙控器的電視遙控學習功能探一究竟。
  • 紅外遙控器在單片機控制系統中的應用
    業界領先的TEMPO評估服務 高分段能力,高性能貼片保險絲 專為OEM設計師和工程師而設計的產品 Samtec連接器 完整的信號來源 每天新產品 時刻新體驗 完整的15A開關模式電源   摘 要 文章介紹了一種用紅外遙控器作控制器的單片機控制系統, 具體說明了其軟
  • 紅外智能遙控器讓你的iPhone秒變遙控器
    在日常生活中,我們每天都要和各式各樣的家電接觸,當然就少不了使用各種遙控器,把電視遙控器對著空調這種事一定不止小編一個人經歷過,那麼假如這些遙控器都集合在一個遙控器身上,不僅便利了生活,還節省了空間。倍思生產的這一款iPhone紅外智能遙控器可以免除很多人因家裡遙控器太多從而分不清的煩惱,一個iPhone就可以集成所有家裡的遙控器,一鍵遙控,讓生活更加簡單。
  • 智能遙控器的未來:紅外還是Wi-Fi?
    現階段,國內市場上的智能電視遙控器形式主要分為基於和Peel類似的紅外技術以及基於Wi-Fi遙控兩大類,在使用上,二者也有不同的特點。紅外遙控:便捷但有局限性紅外與藍牙等技術相比,無需配對,很容易控制。時下在各大應用商店提供的紅外遙控器應用可以控制電視機、機頂盒、DVD、空調等家用電器。便捷且兼容度高是紅外的一個優勢。
  • 老遙控器都可以扔掉了 天貓精靈萬能紅外遙控器測評
    最近幾年,智能家居市場發展的越來越快,各種產品五花八門種類繁多,但要麼價格昂貴,要麼實用性不強。但就在最近,天貓精靈在雙11前推出的一款智能硬體新品——天貓精靈萬能紅外遙控器(下稱紅外遙控器)卻格外火爆。具體介紹戳這動動嘴就能指揮家電?
  • 智能紅外遙控開關工作原理和電路設計
    紅外遙控是當前使用最為廣泛的通信和控制手段之一,由於其結構簡單、體積小、功耗低、抗幹擾能力強、可靠性高及成本低等優點而廣泛應用於家電產品、工業控制和智能儀器系統中。然而市場上的絕大部分遙控器都是針對各自特定的遙控對象設計的,不能直接應用於通用的智能儀器研發及其更一般的控制場合。
  • 這幾種無線技術為家電智能保駕護航
    例如,用戶能夠透過網絡對家中的電飯煲、空調、微波爐、溫溼度調節器、洗衣機等智能家電設備實現遠程控制。家電製造商能夠根據智能家電中的Wi-Fi模塊,基於網絡環境對產品的使用情況進行售後跟蹤,一旦智能家電出現故障,Wi-Fi模塊就能夠自動向廠家發送信息,家電製造商根據故障原因及時制定處理措施,並主動聯繫用戶進行問題的解決。
  • 智能萬能遙控器
    智能萬能遙控器 生活工具
  • 紅外遙控器原理
    導讀:本文主要講述的是紅外遙控器的原理,感興趣的童鞋們快來學習一下吧~~~很漲姿勢的哦~~~本文引用地址:http://www.eepw.com.cn/article/277558.htm  紅外遙控器是一種可遙控多臺家用電器的遙控器,為人們解決了大多數的家用電器都有各自不同的遙控器
  • 空調遙控器怎麼調製冷
    使用空調遙控器製冷的方法很簡單,把空調的模式和溫度設置好就可以製冷了。下面用美的空調為例詳細說明:   1、使用遙控器製冷:在空調遙控器上選擇【製冷】模式(在模式按鈕上連續按動直到屏幕上切換到製冷(雪花圖標);在空調遙控器上按動向上或者向下的箭頭按鈕調節溫度
  • 智能電視遙控器
    智能電視遙控器是一款手機遙控App,沒有網絡也可以配置電視和空調遙控. 智能電視遙控器適配多種品牌旗下的紅外手機;安裝智能電視遙控器即可變身手機家電遙控器,用手機遙控電視、機頂盒、空調等.把空調、電視、機頂盒遙控器統統裝進手機. 功能特點:請將手機對準家電設備,點擊APP的電源按鈕,您會聽到滴的一聲,設備打開,如果設備沒有反應,請點擊「否」,為您切換另一個型號,繼續測試,一定有一個型號可以適配成功哦.
  • 有了這款智能感知遙控器 關空調都變得新潮
    也許,我們曾經暢想過這樣的智能家居生活:早上起床,窗簾拉起,客廳的電視機能跟隨你的意願,自動播放你想要的頻道;出門上班,簡單發號施令,電視空調自動關閉,啟動全面安防,讓你沒有後顧之憂;下班回家,一聲令下,各類家電各司其職,室內調整到最舒適的溫溼度,無需我們操勞費心。這也許就是早些年我們腦海裡所描繪的智能家居場景。
  • 天貓精靈萬能紅外遙控器評測 不動手讓家電聽你號令
    但就在最近,天貓精靈在雙11前推出的一款智能硬體新品——天貓精靈萬能紅外遙控器(下稱紅外遙控器)卻格外火爆。天貓精靈雙11推全能語音紅外遙控器 有了它就可以用語音控制電視空調?聽起來很誘人,筆者為此也第一時間入手體驗。
  • 空調沒有遙控器怎麼開 空調沒有遙控器怎麼辦
    最苦惱的事情就是熱的不行,空調就在你面前,但是遙控器壞了或者掉了。看的到不能用到,其實沒有遙控器我們一樣可以開家裡的空調,教大家三個沒有遙控器怎麼開空調,第一個方法是直接按空調上的應急開關,第二個方法是找你附近的人借一下遙控器,最後一個辦法更簡單,在手機上安裝一個空調遙控器APP,不過這要你手機有紅外才行。
  • 紅外遙控器通信原理_紅外遙控器協議_紅外通信對比無線通信的優勢
    紅外遙控器通信原理_紅外遙控器協議_紅外通信對比無線通信的優勢 佚名 發表於 2017-08-03 17:50:56   紅外通訊,顧名思義,就是通過紅外線傳輸數據
  • 空調遙控器丟了怎麼辦?這裡有三個應對辦法
    空調遙控器丟了怎麼辦?,如果用的是智能空調倒也好辦,因為手機也能扮演遙控器的角色,通過APP就能控制空調的運行,而對於那些非智能的空調來說,遙控器丟了也不用慌,下面咱們就來看看有哪些應對的辦法。
  • 智能遙控器,改變你的遙控方式
    傳統遙控器一個遙控器只能控制一種設備,對於現在充斥著電視、空調、機頂盒、電風扇和各種電子產品的居家環境來說,無疑是需要很多的遙控器來分別控制,找遙控器這件事幾乎從電視機普及開始,就令人倍感頭疼。尤其是對老年人來說如何使用遙控器也是一件比較麻煩的事情。