陳子杰 黃雄華 郭啟麟
摘要:有線燈具在安裝上需要布置電線、安裝開關(guān),還要進(jìn)行線槽安裝等施工采用紅外傳感器進(jìn)行數(shù)據(jù)傳輸,利用ATMEGA328P-PU處理器實(shí)現(xiàn)數(shù)據(jù)處理和智能控制。實(shí)驗(yàn)表明,設(shè)計(jì)的無線燈具系統(tǒng),能很好地實(shí)現(xiàn)無線遙控功能。
關(guān)鍵詞:無線遙控?zé)簦籄rduino;紅外傳感器
中圖分類號:TP18 文獻(xiàn)標(biāo)識(shí)碼:A
文章編號:1009-3044(2019)08-0227-02
Design of Wireless Remote Control Lamp based on Arduino
CHEN Zi-jie, HUANG Xiong-hua, GUO Qi-lin
(School of Information Science and Engineering, Shaoguan College, Shaoguan 512005, China)
Abstract: Wired luminaires need to be equipped with wires, installation switches, Based on the Arduino system, this paper designs an intelligent remote control luminaire processor to realize data processing and intelligent control. Experiments show that the
Key word:Wireless remote control light; Arduino; Infared sensor
1 概述
紅外通訊是以紅外光線為通訊載體,通過紅外發(fā)射模塊與紅外接收模塊來傳輸數(shù)據(jù)從而完成通訊功能完成通訊功能。在紅外發(fā)射模塊,紅外發(fā)射二極管通過數(shù)字編碼的調(diào)制,將電信號轉(zhuǎn)化為光信號發(fā)射到空氣中。在紅外接收模塊,紅外接收器接收到光信號后,通過電路的譯碼器解碼譯碼,從而把光信號轉(zhuǎn)化為電信號并做出下一步操作。
傳統(tǒng)的燈具開關(guān),基本上是有線開關(guān),需要安裝在墻體上,通過電線連接在燈具系統(tǒng)上,實(shí)現(xiàn)燈具的控制,使用者需要付出的成本包括開關(guān)自身、連接電線、相關(guān)的線槽等材料以及人工安裝費(fèi),成本高,從開關(guān)、線路到燈具,鏈條長,損毀后檢修等大多需要專業(yè)人員,維護(hù)成本高。為降低成本,提高使用的便利,本文基于Arduino系統(tǒng),使用紅外通訊設(shè)計(jì)一款無線燈具控制系統(tǒng),遙控開關(guān)具有通用性,燈具控制部分也模塊化設(shè)計(jì),損壞后拔插即可更換,降低維護(hù)難度。
2 基于arduino的無線遙控?zé)粼O(shè)計(jì)
2.1 無線遙控?zé)艄δ芙榻B
基于arduino的無線遙控?zé)艟呦到y(tǒng)分遙控信號發(fā)送部分和信號接收控制部分。信號發(fā)送部分利用ATMEGA328P-PU處理器以及紅外傳感器進(jìn)行數(shù)據(jù)采集,處理。當(dāng)按下遙控器上的按鈕時(shí),紅外發(fā)射管發(fā)射該按鍵對應(yīng)的紅外脈沖,與燈具連接的紅外接收器接收到信號時(shí),燈具開啟。
2.2 遙控信號傳輸機(jī)理
制作本產(chǎn)品所使用的紅外傳感器分為紅外發(fā)射頭以及紅外接收頭。紅外接收頭型號有很多,例如HS0038 VS838等,功能大致相同只是引腳封裝不同。本次用到的紅外傳感器為VS838,紅外發(fā)射管所發(fā)射的編碼是通過單片機(jī)快速不斷變化高低電頻所發(fā)出的,高低電平變化的速度會(huì)改變紅外發(fā)射管所發(fā)射的信號。現(xiàn)有的紅外遙控大部分使用的方式為脈沖位置調(diào)制(PPM)和脈沖寬度調(diào)制(PWW),這兩種形式的編碼的代表分別是NEC和PHLIPS的RC.5。其余的還有PHLIPS的RC.6以及SONY。無線燈具使用標(biāo)準(zhǔn)為NEC標(biāo)準(zhǔn)。
NEC標(biāo)準(zhǔn):遙控載波的頻率為38KHz(占空比1:3)當(dāng)某個(gè)鍵按下時(shí),系統(tǒng)首先發(fā)射一個(gè)完整的全碼,如果按鍵超過108ms仍未松開,接下來發(fā)射的代碼(連發(fā)代碼)將由起始碼(9ms)和結(jié)束碼(2.5ms)組成。
全碼 = 引導(dǎo)碼 +用戶碼 + 數(shù)據(jù)碼 + 數(shù)據(jù)反碼,其結(jié)構(gòu)如圖1所示。
紅外發(fā)射管為紅外發(fā)光二極管,能夠根據(jù)需求通過改變電壓頻率發(fā)出不同的紅外線。
3 電路設(shè)計(jì)
3.1 無線遙控?zé)艚邮针娐?/p>
在電路設(shè)計(jì)中燈具控制部分ATMEGA328P-PU處理器對紅外線接受后對繼電器的處理電路,原理圖如圖2所示。
3.2 無線遙控?zé)暨b控電路實(shí)現(xiàn)
在電路設(shè)計(jì)中燈具遙控部分,一個(gè)遙控器可以控制4個(gè)無線燈具的開啟與關(guān)閉,在紅外發(fā)射電路中,使用自鎖開關(guān)來代替?zhèn)鹘y(tǒng)的按鈕,按下按鈕時(shí),通過不斷向外發(fā)出該按鈕所對應(yīng)頻率的紅外線,來減少發(fā)射的紅外線不被紅外接收器識(shí)別的情況。
4 代碼實(shí)現(xiàn)
4.1 無線遙控?zé)艚邮漳K關(guān)鍵代碼
digitalWrite(led_state,HIGH);//將pin8上的發(fā)光二極管關(guān)閉
if (irrecv.decode(&results)) { //判斷是否接收到了紅外信號
if(results.value ==0xFF7A85)//判斷紅外信號是否匹配
{
digitalWrite(led_state,HIGH);//開啟發(fā)光二極管
digitalWrite(led_pin, HIGH);//開啟無線遙控?zé)簦?/p>
}
irrecv.resume();//接受下一個(gè)紅外信號
}
4.2 無線遙控?zé)舭l(fā)射模塊關(guān)鍵代碼
if(digitalRead(button1)==LOW)//判斷按鍵是否被按下
{
irsend.sendNEC(0xFF7A85, 32);//發(fā)送對應(yīng)頻率的紅外線
delay(2000);//延時(shí)
}
5 結(jié)語
本文講述了在物聯(lián)網(wǎng)浪潮中智能遙控?zé)舻脑O(shè)計(jì)總體流程方案,其中重點(diǎn)闡述了該智能系統(tǒng)實(shí)例的框架構(gòu)建、技術(shù)選型以及功能實(shí)現(xiàn)。產(chǎn)品目前可完成基本智能化電燈控制功能,后期將擴(kuò)展更多市場需求功能,逐步實(shí)現(xiàn)系統(tǒng)優(yōu)化,進(jìn)而投入市場。
參考文獻(xiàn):
[1]Micbael Margolis. Arduino權(quán)威指南[M].第2版,楊昆云譯,人民郵電出版社,2015(3):305-316.
[2]蔣俊峰.基于單片機(jī)的紅外通訊設(shè)計(jì)[J].電子設(shè)計(jì)應(yīng)用,2003(11):60-62.
[3] 劉西洋.信號燈紅外無線遙控系統(tǒng)設(shè)計(jì)[J].機(jī)器視覺,2018:73-76.
【通聯(lián)編輯:梁書】