基于單片機(jī)的紅外遙控智能調(diào)光調(diào)速器的設(shè)計
摘要:設(shè)計了一種可以對普通電燈(風(fēng)扇)進(jìn)行無級調(diào)光(調(diào)速)的系統(tǒng)。常用的電視機(jī)萬能紅外遙控器進(jìn)行操作。通過搖控器上的兩個按鍵進(jìn)行控制,一個控制設(shè)備負(fù)載的開與關(guān),一個控制調(diào)光(調(diào)速)。系統(tǒng)還有自動記憶功能。同時,系統(tǒng)還設(shè)有手動按鍵調(diào)節(jié)與觸摸調(diào)節(jié)功能。
關(guān)鍵詞:無級調(diào)光(調(diào)速);紅外搖控;記憶
0 引言
電子遙控技術(shù)已經(jīng)十分成熟了,它能為我們的生活帶來方便。在我們?nèi)粘I钪?,處處都可以見到它的影子。比如:在小汽車上,有遙控電子鎖。遙控玩具、空調(diào)與電視機(jī)也用到了遙控。常見的遙控,一是無線遙控,二是紅外遙控。紅外是一種不可見光,它介于可見光和微波之間,既有可見光的性質(zhì),如:直線傳播、反射、折射等,又具有微波的一些特性,如穿透力強(qiáng)。紅外線遙控是目前使用最廣泛的一種遙控手段。由于紅外線遙控裝置具有體積小、功耗低、功能強(qiáng)、成本低等特點(diǎn),因而,繼彩電、錄像機(jī)之后,在錄音機(jī)、音響設(shè)備、空調(diào)機(jī)以及玩具等其它小型電器裝置上也紛紛采用紅外線遙控。工業(yè)設(shè)備中,在高壓、輻射、有毒氣體、粉塵等環(huán)境下,采用紅外線遙控不僅安全可靠而且能有效地隔離電氣干擾。
借助于紅外線具有的上述特性。利用紅外傳感器具有靈敏度高、響應(yīng)速度快和光譜范圍窄的特點(diǎn),同時利用單片機(jī)結(jié)構(gòu)緊湊、可靠性高、數(shù)據(jù)處理能力強(qiáng)、速度快、功耗小、成本低的特點(diǎn)、可以制作靈敏度高、抗干擾能力強(qiáng)、性能優(yōu)良的紅外遙控裝置。
1 紅外遙控原理
通用的紅外遙控系統(tǒng)由發(fā)射和接收兩大部分組成。應(yīng)用編/解碼專用集成電路芯片來進(jìn)行控制操作,如圖1所示。發(fā)射部分包括鍵盤矩陣、編碼調(diào)制、LED紅外發(fā)送器:接收部分包括光、電轉(zhuǎn)換放大器、解調(diào)、解碼電路。發(fā)射電路采用普通電視機(jī)上所使用的萬能遙控器,在其上選擇兩個電視機(jī)不用的按鍵即可。
由電視機(jī)萬能遙控器發(fā)射紅外編碼,利用一體化紅外接收頭接收到紅外編碼經(jīng)放大、解調(diào)后,再經(jīng)過單片機(jī)軟件解碼后,驅(qū)動相應(yīng)的I/O口工作,即可完成相應(yīng)的控制功能。
2 單元模塊設(shè)計
本系統(tǒng)主要部件包括一體化紅外接收傳感器、STC89C52單片機(jī)系統(tǒng)、調(diào)光調(diào)速系統(tǒng),電源電路。
2.1 一體化紅外接收傳感器電路設(shè)計
HS0038是一種應(yīng)用于遙控接收或其它方面的小型一體化接收頭,中心頻率為38.0kHz,可改善自然光的反射干擾,獨(dú)立的PIN二極管前置放大器集成在同一封裝上,內(nèi)部原理見圖2。
HS0038環(huán)氧樹脂封裝提供一個特殊的紅外濾光器,可防止自然光的干擾,HS0038有著極好的抗自然光的性能,可防止無用脈沖的輸出。
將HS0038一體化接收頭輸出端接在單片機(jī)的P3.2口上。一體化紅外接收頭接收到紅外編碼經(jīng)放大、解調(diào)后,再經(jīng)過單片機(jī)外部中斷0 P3.2口,利用軟件對P3.2口上的電平信號進(jìn)行分析解碼即可。
2.2 STC89C52單片機(jī)系統(tǒng)
單片機(jī)系統(tǒng)為最小應(yīng)用系統(tǒng),包括電源電路、晶振電路、復(fù)位電路。這里不再作詳細(xì)介紹。
2.3 調(diào)光調(diào)速系統(tǒng)
電路由輸入緩沖器、鎖相環(huán)、控制邏輯、亮度記憶、相角指針、數(shù)字比較器和輸出驅(qū)動器組成,見圖3。電路的基本工作原理為(以調(diào)光為例):人體帶電與市電同頻,當(dāng)人體接觸觸摸片時,經(jīng)輸入緩沖級的削波、放大、整形,成為標(biāo)準(zhǔn)的MOS電平。觸摸持續(xù)時間大于32ms小于332ms時,控制邏輯部分控制電路呈開關(guān)工作狀態(tài)。當(dāng)觸摸持續(xù)時間大于332ms時,控制邏輯部分控制電路呈調(diào)光工作狀態(tài),輸出觸發(fā)脈沖相位角在41°至159°之間連續(xù)周期變化,并根據(jù)人眼的感受力,分為快、慢和暫歇三個過程。當(dāng)觸摸結(jié)束時,亮度記憶對該時相位角進(jìn)行記憶,若再施與大于32ms,小于332ms的觸摸,電路呈關(guān)狀態(tài)時,相位角仍由該部分記憶,保證電路在下一次開狀態(tài)時,保持原選定相位角,光源保持原亮度。觸發(fā)脈沖與市電的同步,由鎖相環(huán)保證,電路的工作時鐘,也均由其產(chǎn)生。同時,電路還具有遙控(即遠(yuǎn)端觸發(fā))功能,和漸睡(即由亮至暗,最后關(guān)閉)功能,其延續(xù)時間由外電路設(shè)置。
利用單片機(jī)可對上述電路進(jìn)行遙控。以調(diào)光為例:將上述電路中的開關(guān)AN1并聯(lián)在一個繼電器K1常閉觸頭的兩端。利用紅外遙控器中的一個按鍵控制單片機(jī)對該繼電器進(jìn)行操作,每按一次該按鍵,繼電器K1接通與關(guān)斷(時間30ms左右)一次,即可實現(xiàn)對燈的開與關(guān)。將AN1兩端再并聯(lián)在另一個繼電器K常閉的兩端,利用紅外遙控器中另一個按鍵控制單片機(jī)對該繼電器進(jìn)行操作,按一下該按鍵,繼電器K2接通(調(diào)光中)。再按一下該按鍵,控制繼電器K2關(guān)斷(調(diào)光結(jié)束)。這樣,就實現(xiàn)了紅外遙控調(diào)光功能。調(diào)速原理與此一致,這里不作贅述。
2.4 電源電路
電源可采用阻容降壓法,電路如圖4所示,注意電容C5要選擇高壓電容,電阻R4也需要一定的功率,可選0.5W的碳膜電阻。
3 程序設(shè)置
軟件設(shè)計主要分為主程序、遙控接收解碼子程序、繼電器驅(qū)動程序。利用單片機(jī)對紅外信號進(jìn)行快速解碼的時候,采用外部中斷的方式,中斷的觸發(fā)方式為低電平觸發(fā)方式,具體的算法為:在外部中斷服務(wù)程序中,如果起始碼和結(jié)果碼正確,進(jìn)行解碼,否則退出。在解碼的時候,等待第一個高電平的到來,即紅外遙控引導(dǎo)信號(一個9ms的低電平和一個4.5ms的高電平),然后收集用戶碼高8位和8位鍵值反碼數(shù)據(jù),并存入一個數(shù)組中。解碼的關(guān)鍵是如何識別“0”和“1”。程序中設(shè)計一個0.14ms的延時函數(shù),作為單位時間,對脈沖維持高電平的時間進(jìn)行計數(shù),并把此計數(shù)值存入一個變量中??锤唠娖奖3值臅r間是幾個0.14ms。高電平保持時間必須比0.56ms長些,但又不能超過1.12 ms,否則如果該位為“0”,讀到的已是下一位的高電平,因此,在程序中,取0.14×6=0.84ms左右比較合理。
“0”和“1”的具體要求判斷由程序中的以下語句判斷:
IRCOM[j]=IRCOM[j]>>1;∥計數(shù)小于6,收到的是0,數(shù)據(jù)最高位補(bǔ)0。
if(N>=8){IRCOM[j]=IRCOM[j]|0x80;}∥計數(shù)大于等于6,收到的是1,數(shù)據(jù)最高位補(bǔ)1。
另外當(dāng)高電平計數(shù)為30時(0.14×30=4.2ms),說明有錯誤,程序退出。
評論