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