梁劍平
(玉林師范學院 計算機科學與工程學院,廣西 玉林 537000)
紅外遙控設(shè)備具有價格低廉、體積小、功能強、功耗低、抗干擾能力強等優(yōu)點,被廣泛應用于家用電器、玩具、工業(yè)設(shè)備中[1-5]。根據(jù)我校物聯(lián)網(wǎng)工程專業(yè)“傳感器原理及應用”課程實驗的需要,研制了紅外遙控傳感器實驗平臺,設(shè)計了相應的實驗內(nèi)容,讓學生在做中學[6]、理論和實踐相結(jié)合,使學生進一步了解和掌握紅外遙控傳感器的原理及應用。
本文設(shè)計的實驗平臺如圖1所示,以STC89C52單片機為主控芯片,紅外接收傳感器使用HS0038一體化萬能接收傳感器,用于接收并解碼紅外遙控器發(fā)送的信號,其電壓范圍是2.7~5.5 V,引腳間距為2.5 mm,中心頻率為38 kHz,集成光電檢測和放大器、濾波器;采用環(huán)氧樹脂一體成型,抗自然紅外光干擾[7]。對應圖1圈出部分的實物如圖2所示,將其集成在實驗平臺中。圖3是紅外遙控接收傳感器電路原理,STC89C52單片機IO口P3.4通過上拉電阻與紅外接收傳感器的IR輸出引腳連接。選擇紅外遙控器作為紅外發(fā)射電路。圖4是本實驗平臺選擇的紅外遙控器實物,其使用專用集成電路進行編碼,由38 kHz載波調(diào)制脈沖幅度,通過紅外二極管進行紅外信號發(fā)射。紅外遙控系統(tǒng)由發(fā)射和接收兩部分組成,系統(tǒng)框圖如圖5所示[8]。
圖1 紅外遙控傳感器實驗平臺
圖2 紅外接收傳感器HS0038實物
圖3 紅外遙控接收傳感器電路原理
圖4 紅外遙控器
圖5 紅外遙控系統(tǒng)框圖
根據(jù)本文研制的實驗平臺,圍繞紅外遙控傳感器設(shè)計了紅外傳感器通信協(xié)議初探實驗、紅外傳感器解碼基礎(chǔ)實驗、紅外遙控LED燈亮滅進階實驗,三個實驗環(huán)節(jié)難度由淺入深。
本實驗平臺紅外遙控采用NEC通信協(xié)議[9-10],使用邏輯分析儀讀取IR引腳的電平,從而直觀了解NEC通信協(xié)議。NEC通信協(xié)議定義的邏輯“0”和邏輯“1”如下:
(1)邏輯0∶0.56 ms低電平+ 0.56 ms高電平(低高電平比1∶1)。
(2)邏輯1∶0.56 ms低電平+ 1.68 ms高電平(低高電平比1∶3)。
NEC通信協(xié)議中一幀編碼數(shù)據(jù)由前導碼+起始碼+數(shù)據(jù)碼+數(shù)據(jù)反碼組成,本實驗中前導碼由9 ms低電平+4.5 ms高電平組成,起始碼16位(00000000 11111111) = 0x00FF,數(shù)據(jù)碼8位,數(shù)據(jù)反碼8位,數(shù)據(jù)碼+數(shù)據(jù)反碼=0x00FF,前導碼和起始碼對于同一個遙控器不同的按鍵都是一樣的,數(shù)據(jù)碼對應于每個按鍵的編碼,數(shù)據(jù)反碼是數(shù)據(jù)碼按位取反的值。
初探實驗學生不需要編程,將實驗平臺上紅外遙控接收傳感器HS0038的引腳與邏輯分析儀連接如圖6所示,邏輯分析儀的白色探頭接紅外接收頭IR引腳,黑色探頭接紅外接收頭地引腳,接好線路后給實驗平臺上電,按圖4遙控器的某個按鍵,如“1”按鍵,觀察邏輯分析儀上位機的波形并分析記錄。圖7是實驗課程中某組學生按下實驗所用遙控器按鍵“1”的解碼波形,對波形進行放大如圖8所示,對波形進行分析如圖9所示。該波形圖即為按下的遙控器某個按鍵對應的NEC通信協(xié)議解碼數(shù)據(jù)。
圖6 邏輯分析儀測量遙控按鍵波形
圖7 遙控器按鍵“1”解碼波形
圖8 遙控器按鍵“1”解碼放大波形
圖9 遙控器按鍵“1”解碼放大波形分析
根據(jù)圖9分析遙控器的按鍵“1”的編碼,可得按鍵“1”數(shù)據(jù)碼為(10100010)=0XA2,通過下一節(jié)的基礎(chǔ)實驗進一步驗證波形數(shù)據(jù)的正確性。
根據(jù)硬件部分圖3所示的紅外遙控接收傳感器電路原理,利用Keil軟件編程控制單片機通過IO口P3.4讀取紅外接收傳感器HS0038輸出引腳IR的數(shù)據(jù)。為了便于觀察記錄并通過串口助手顯示數(shù)據(jù),同時數(shù)碼管顯示對應的數(shù)字,如按下按鍵“1”,數(shù)碼管顯示單個數(shù)字“1”,要求學生解碼實驗平臺所用的遙控器所有按鍵的編碼,并將數(shù)據(jù)記錄在表1中,其中編碼值采用十六進制記錄,編碼值是學生實驗編程讀取IR引腳記錄的紅外遙控器按鍵對應的編碼,將本節(jié)實驗編程解碼數(shù)據(jù)與上一節(jié)實驗使用邏輯分析儀讀取的數(shù)據(jù)對比,驗證實驗結(jié)果的正確性和一致性。圖10和圖11是實驗課程中某組學生的串口助手數(shù)據(jù)顯示結(jié)果和數(shù)碼管顯示結(jié)果。
表1 紅外遙控器按鍵對應編碼
圖10 串口助手數(shù)據(jù)顯示結(jié)果
圖11 數(shù)碼管顯示結(jié)果
開發(fā)板上有紅色、黃色、綠色三種顏色的LED燈,實驗平臺對應LED燈部分的電路原理如圖12所示。利用Keil軟件編程實現(xiàn)使用紅外遙控信號控制三個LED燈的亮滅,模擬現(xiàn)實情況中遙控電燈的開關(guān)控制。具體功能如下:當按下遙控器按鍵“1”時,紅色LED燈亮;當按下按鍵“2”時,黃色LED燈亮;當按下按鍵“3”時,綠色LED燈亮;當按下按鍵“OK”時,三個燈都熄滅。軟件流程如圖13所示。該實驗能夠使學生更進一步掌握如何使用紅外遙控器的紅外信號進行靈活設(shè)計以實現(xiàn)按鍵的功能。
圖12 LED燈電路原理
圖13 紅外遙控信號控制LED燈亮滅流程
本文針對“傳感器原理及應用”課程中紅外遙控傳感器研制的實驗平臺和實驗內(nèi)容進行設(shè)計,其中實驗內(nèi)容涉及初探實驗、基礎(chǔ)實驗、進階實驗三個環(huán)節(jié),實驗環(huán)節(jié)循序漸進、環(huán)環(huán)緊扣,能夠幫助學生理解并掌握紅外遙控傳感器原理及應用。本實驗平臺外擴了E2PROM存儲器,可以設(shè)計實現(xiàn)紅外遙控器密碼鎖項目式實驗,進一步提高學生的工程實踐能力。