夜晚起身時(shí),在黑暗中迷迷糊糊地摸索電燈開關(guān)是一件惱人的事,本期介紹制作的這個(gè)揮手感應(yīng)燈也許可以幫你解決這個(gè)煩惱。你只需用手在燈光盒前面輕輕一揮,就能輕松地把燈打開或是關(guān)上了。此外,這款揮手感應(yīng)燈還是一個(gè)營(yíng)造氛圍的小能手,每一次揮手,燈光都會(huì)變換一種顏色,你也可以根據(jù)自己的喜好選擇某一種顏色的燈光。有沒(méi)有覺(jué)得自己現(xiàn)在也可以成為一位智能家居的締造者了?
準(zhǔn) 備 材 料
Arduino控制板,4個(gè)環(huán)形LED燈盤,紅外測(cè)距傳感器SEN0143,電源適配器,杜邦線。
揮手感應(yīng)燈選用了環(huán)形LED燈盤作為發(fā)光元件,燈光的視覺(jué)效果比普通的LED更加炫目美觀。每個(gè)燈盤上有12顆RGB LED,單顆RGB LED芯片共有256個(gè)紅色亮度,256個(gè)綠色亮度,256個(gè)藍(lán)色亮度,理論上可以混合成2563種顏色。LED燈盤背面有4個(gè)接線端,分別是5V電源端、GND接地端、信號(hào)輸入端和信號(hào)輸出端。
揮手感應(yīng)燈之所以能實(shí)現(xiàn)揮手即可開關(guān)的智能效果,紅外測(cè)距傳感器SEN0143功不可沒(méi)。這是一種主動(dòng)紅外器件,它會(huì)主動(dòng)發(fā)射紅外線,并由與之相對(duì)應(yīng)的接收器來(lái)接收。與之相對(duì)應(yīng),被動(dòng)紅外則是指本身不發(fā)射任何信號(hào)而只是被動(dòng)接收、探測(cè)來(lái)自環(huán)境的紅外信號(hào)。
SEN0143紅外測(cè)距傳感器共有兩個(gè)信號(hào)窗口,一個(gè)是紅外信號(hào)發(fā)射端,一個(gè)是紅外信號(hào)接收端。工作時(shí),信號(hào)發(fā)射端發(fā)射紅外信號(hào),當(dāng)前方探測(cè)范圍內(nèi)有東西遮擋時(shí),則接收端接收反射回來(lái)的信號(hào)。SEN0143紅外測(cè)距傳感器的輸出信號(hào)為模擬信號(hào),信號(hào)輸出電壓范圍為0~5V,工作電壓范圍為4.5~5.5V,工作電流33mA,探測(cè)距離為4~30cm。
制 作 過(guò) 程
在4個(gè)環(huán)形LED燈盤的4個(gè)接線端上分別焊上杜邦線。這里選用公頭杜邦線。
然后取兩組3根母頭杜邦線,各自從中間剪斷后,將其焊接在一起,形成兩組6頭互聯(lián)的杜邦線。
取一個(gè)廢棄的盒子用作揮手感應(yīng)燈的外殼,這里選用了一個(gè)單面透光的盒子,并在盒子的背面開一個(gè)小孔,用于接入電源適配器。
用熱熔膠將4個(gè)焊好杜邦線的環(huán)形LED燈盤固定在外殼的透光面上。
把紅外測(cè)距傳感器也用熱熔膠固定在透光面上。
根據(jù)下面的實(shí)物線路圖,用杜邦線將4個(gè)LED燈盤、紅外測(cè)距傳感器和Arduino控制板連接起來(lái)。將4個(gè)燈盤的5V電源端、傳感器5V電源端和Arduino的5V輸出端采用一組6頭互聯(lián)的杜邦線連在一起。將4個(gè)燈盤的GND接地端、傳感器的GND接地端和Arduino的GND接地端采用一組6頭互聯(lián)的杜邦線連在一起。同時(shí)將4個(gè)LED燈盤信號(hào)線串聯(lián)在一起:4個(gè)燈盤的控制信號(hào)由第一個(gè)燈盤的信號(hào)輸入端接入,然后從第一個(gè)燈盤的信號(hào)輸出端連接到第二個(gè)燈盤的信號(hào)輸入端,以此類推。
將Arduino控制板以及固定好的LED燈盤和紅外測(cè)距傳感器置于盒子中,并給Arduino控制板接上電源適配器,揮手感應(yīng)燈的制作就完成了。
要想讓揮手感應(yīng)燈正常工作,還需要給Arduino控制板提前置入相關(guān)的控制程序。首先,從以下地址下載Adafruit_NeoPixel Library庫(kù)文件:
https://learn.adafruit.com/adafruit- neopixel- uberguide/arduino- library- installation,并將其解壓縮在C:\Program Files (x86)\Arduino\libraries。
運(yùn)行Arduino軟件,寫入揮手感應(yīng)燈程序(程序下載地址:http://pan.baidu.com/s/1jIDJdQI)。然后打開菜單欄中的“工具”選項(xiàng),點(diǎn)擊“板”選項(xiàng),選擇Arduino控制板的型號(hào)(這里是Arduino Duemilanove)。
選擇Arduino控制板與電腦的連接端口(連接Arduino與電腦時(shí),新增的COM3口即為Arduino的通信端口)。
點(diǎn)擊“文件”→“上傳”,將揮手感應(yīng)燈程序上傳到Arduino控制板,上傳后Arduino控制板即可脫離電腦運(yùn)行。
接上電源,當(dāng)手置于傳感器前方10cm之內(nèi),停留時(shí)間2s時(shí),揮手感應(yīng)燈開啟,隨機(jī)產(chǎn)生一組RGB數(shù)據(jù),并以此亮度點(diǎn)亮4個(gè)LED燈盤;當(dāng)手再次置于傳感器前方10cm之內(nèi),停留時(shí)間少于2s時(shí),則又隨機(jī)產(chǎn)生一組RGB數(shù)據(jù),并以此亮度點(diǎn)亮4個(gè)LED燈盤;當(dāng)手位于傳感器前方10cm之內(nèi),停留時(shí)間大于2s時(shí),則熄滅4個(gè)LED燈盤。
掃一掃下面的二維碼,可以觀看揮手感應(yīng)燈工作的動(dòng)態(tài)效果。