0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

如何使用環(huán)境光傳感器控制燈光

李超 ? 來(lái)源:DevicePlus ? 作者:DevicePlus ? 2023-02-23 09:33 ? 次閱讀

這篇文章來(lái)源于DevicePlus.com英語(yǔ)網(wǎng)站的翻譯稿。

當(dāng)太陽(yáng)落山時(shí),您的房子會(huì)開(kāi)始變暗,您可能需要打開(kāi)幾盞燈才能看清。那么,如果這些燈光可以自動(dòng)打開(kāi)不是更方便嗎?使用光敏電阻傳感器Arduino,您就可以實(shí)現(xiàn)根據(jù)周圍的環(huán)境光線變化對(duì)照明燈、百葉窗或者其他任何物件進(jìn)行控制了。

光敏電阻的工作原理

在本項(xiàng)目中,我們的重點(diǎn)在于介紹光敏電阻以及如何將它們整合到您的項(xiàng)目中。光敏電阻是一種電阻器,它會(huì)根據(jù)照射的光亮來(lái)改變其電阻值。典型的電阻器以恒定的電阻值來(lái)阻止電子在電路中的流通,而光敏電阻會(huì)在受到更多的光線照射時(shí)允許更高的電壓通過(guò)電路。反而言之,當(dāng)受到較少的光線照射時(shí),其電阻值會(huì)增加。

可以通過(guò)Arduino的模擬引腳讀取其電阻值,讀數(shù)范圍在0到1023之間。有了這些信息,您可以使您的項(xiàng)目對(duì)明亮的日光、黃昏或沒(méi)有光亮的夜晚作出不同的響應(yīng),比如在外面很亮的時(shí)候打開(kāi)百葉窗,或者在天黑的時(shí)候打開(kāi)照明燈。
pYYBAGPy0riAXs3vAAAVi-eHsKQ989.jpg

光敏電阻體積小,價(jià)格便宜,而且通常在入門(mén)套件和其他傳感器套件里都包含該組件。如果您買過(guò)電子套件,可能會(huì)發(fā)現(xiàn)其中就有一兩個(gè)光敏電阻。為了演示它們是如何工作的,我們將控制兩個(gè)LED,當(dāng)有光線時(shí)其中一個(gè)亮起,沒(méi)有光線時(shí)另外一個(gè)亮起。

所需組件

在本項(xiàng)目中,不需要很多標(biāo)準(zhǔn)電子套件中以外的東西。但是,如果您想要使用光敏電阻控制大型項(xiàng)目則需要注意準(zhǔn)備一些特殊組件。例如,如果您想控制百葉窗,就需要準(zhǔn)備一些伺服,如果您想要控制一盞燈,那么需要使用一個(gè)繼電器?,F(xiàn)在,我們將僅介紹如何使用該傳感器。

Arduino Uno pYYBAGPy0keAIANsAAA5UDjpMbU093.png
Arduino IDE poYBAGPy0ryAIDUTAAAu1K0ZSy8062.png
兩個(gè)LED
功能完好,具有不同顏色!
poYBAGPy0r6AR_hLAAAbcpN9W8Y982.jpg
光敏電阻 poYBAGPy0sCAVOmsAAAZAW1gRcQ057.jpg
一個(gè)220 歐姆電阻
進(jìn)一步降低通過(guò)光敏電阻的阻值,將其降低到更有效的水平
poYBAGPy0sOABcqwAAANEeXO6C0812.jpg
兩個(gè)100 歐姆 電阻
防止燒壞LED

如果您沒(méi)有一根躺在某個(gè)角落里的USB數(shù)據(jù)線,還需要購(gòu)買USB數(shù)據(jù)線。

在本項(xiàng)目的原型構(gòu)建中使用面包板也會(huì)很有幫助。同樣,所有這些材料通常都可以在任何入門(mén)電子套件中找到,因此請(qǐng)事先查看您是否已經(jīng)具備這些組件。

代碼

在本項(xiàng)目中,我們將使用Arduino上的一個(gè)引腳讀取光敏電阻阻值,并使用兩個(gè)引腳來(lái)控制兩個(gè)獨(dú)立的LED。當(dāng)光敏電阻檢測(cè)到高于某個(gè)閾值的光線強(qiáng)度時(shí),其中一個(gè)LED將會(huì)亮起。當(dāng)光線強(qiáng)度低于該閾值時(shí),另一個(gè)LED將會(huì)亮起。實(shí)現(xiàn)以上功能的全部代碼如下所示:

int redLED = 7;
int blueLED = 8;
int photoresistorPIN = A0;
int lightValue = 0;

void setup() {
pinMode(redLED, OUTPUT);
pinMode(blueLED,OUTPUT);
Serial.begin(9600);
}

void loop(){
lightValue = analogRead(photoresistorPIN);
Serial.println(“Light value: “);
Serial.println(lightValue);
if(lightValue < 50){
digitalWrite(redLED, HIGH);
}
else{
digitalWrite(blueLED, HIGH);
}
delay(200);
digitalWrite(redLED, LOW);
digitalWrite(blueLED, LOW);
}

這段代碼中有幾個(gè)部分需要解釋,我們從要設(shè)置的變量開(kāi)始。

int redLED = 7;
int blueLED = 8;
int photoresistorPIN = A0;
int lightValue = 0;

在這里,我們將紅色LED分配給引腳7,藍(lán)色LED分配給引腳8。這些可以分配給Arduino上的任何數(shù)字引腳。接下來(lái),我們將光敏電阻分配給A0。該引腳必須分配給六個(gè)模擬引腳之一,因?yàn)樗枰x取來(lái)自光敏電阻的模擬值。

最后,我們將創(chuàng)建一個(gè)名為lightValue的變量來(lái)存儲(chǔ)光敏電阻返回的值。

void setup() {
pinMode(redLED, OUTPUT);
pinMode(blueLED,OUTPUT);
Serial.begin(9600);
}

在setup()部分中,前兩行用于將紅色和藍(lán)色LED 引腳分配為輸出引腳。

我們還將初始化串行監(jiān)視器,這樣就可以查看光敏電阻的返回值。這在設(shè)定用于切換兩個(gè)LED開(kāi)關(guān)的閾值時(shí)會(huì)很有用。

根據(jù)設(shè)置項(xiàng)目時(shí)所在房間的環(huán)境光強(qiáng)度,您可以基于自己的需要對(duì)閾值進(jìn)行調(diào)整。

void loop(){
lightValue = analogRead(photoresistorPIN);
Serial.println(“Light value: “);
Serial.println(lightValue);
if(lightValue < 50){
digitalWrite(redLED, HIGH);
}
else{
digitalWrite(blueLED, HIGH);
}
delay(200);
digitalWrite(redLED, LOW);
digitalWrite(blueLED, LOW);
}

在loop()部分中,第一行用于讀取光敏電阻的模擬值,并將其分配給lightValue變量。然后該值將會(huì)被立即打印到串行監(jiān)視器上。

接下來(lái),如果光傳感器讀取的值低于50,循環(huán)代碼中的一部分代碼將會(huì)被啟用,紅色LED燈將會(huì)亮起,如果值高于50,則藍(lán)色LED將會(huì)亮起。如果50對(duì)您的環(huán)境光線來(lái)說(shuō)太低,紅燈一直亮起,那么請(qǐng)使用串行監(jiān)視器為您的項(xiàng)目設(shè)定一個(gè)合適的值。

接線

現(xiàn)在您已經(jīng)理解了代碼,接下來(lái)請(qǐng)將其上傳到您的Arduino。然后,我們將開(kāi)始設(shè)置接線—幸運(yùn)的是,這非常簡(jiǎn)單,并且很容易將其添加到您的其他項(xiàng)目中。要完成接線設(shè)置,請(qǐng)按照下列步驟操作:

● 將藍(lán)色LED的長(zhǎng)端連接到Arduino的引腳8。將LED的短端連接到一個(gè)100歐姆的電阻上,然后將該電阻的另一端連接到GND。
● 對(duì)紅色LED重復(fù)上一步驟,LED連接到Arduino上的引腳7。
● 將光敏電阻的一端連接到5V引腳,另一端連接到引腳A0。此外,在光敏電阻的第二個(gè)端口連接一個(gè)220歐姆的電阻,并將該電阻連接到GND。
● 如果需要,將之前的電路與面包板上的正負(fù)軌連接。

完成所有接線后,您可以將Arduino插入電源以啟動(dòng)項(xiàng)目。在光敏電阻上揮動(dòng)您的手,將會(huì)從藍(lán)色LED亮起切換到紅色LED亮起。如果只有其中一個(gè)LED保持亮起的狀態(tài),請(qǐng)嘗試調(diào)整草圖中if()語(yǔ)句中的值,直到傳感器按照預(yù)期方式進(jìn)行工作。當(dāng)您對(duì)結(jié)果感到滿意的時(shí)候,項(xiàng)目就完成了!

pYYBAGPbhjqAbi1JAAAGd6_rQT0867.png

DevicePlus 編輯團(tuán)隊(duì)

設(shè)備升級(jí)版適用于所有熱愛(ài)電子和機(jī)電一體化的人。

審核編輯黃宇

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 光傳感器
    +關(guān)注

    關(guān)注

    3

    文章

    171

    瀏覽量

    29958
  • Arduino
    +關(guān)注

    關(guān)注

    188

    文章

    6474

    瀏覽量

    187442
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    近似人眼感知的傳感器——環(huán)境傳感器

    近似人眼感知的傳感器——環(huán)境傳感器 ? 電子發(fā)燒友網(wǎng)報(bào)道(文/李誠(chéng))環(huán)境
    的頭像 發(fā)表于 10-29 09:33 ?8543次閱讀

    環(huán)境傳感器的介紹

    會(huì)從被照射物體上發(fā)射回來(lái)。反射回來(lái)的紅外被紅外傳感器探測(cè)到,與物體的接近程度與探測(cè)到的紅外的量級(jí)成正比。應(yīng)用包括接近探測(cè);反射物體感測(cè),環(huán)境
    發(fā)表于 11-05 16:11

    光電式傳感器的識(shí)別與檢測(cè)

    的特性如圖2所示。它的特性是,當(dāng)周圍較暗時(shí),其電阻值變大;而當(dāng)周圍較亮?xí)r,它的電阻值又變小?! 」怆娛?b class='flag-5'>光傳感器在汽車燈光控制器上的應(yīng)用如圖3所示。
    發(fā)表于 11-15 15:02

    你是我的眼:環(huán)境傳感器

    傳感器? 用環(huán)境傳感器實(shí)現(xiàn)車載屏幕亮度自動(dòng)化調(diào)節(jié) TI官網(wǎng)上的參考設(shè)計(jì): 汽車自動(dòng)調(diào)光鏡參考設(shè)計(jì) 光學(xué)傳感器
    發(fā)表于 08-07 04:45

    Maxim推出環(huán)境傳感器

    Maxim Integrated Products, Inc.推出Santa Cruz (MAXREFDES23#)環(huán)境傳感器(ALS),能夠在工廠快速配置和監(jiān)測(cè)多路紅、綠、藍(lán)(RGB)可見(jiàn)光和紅外(IR)信號(hào)
    發(fā)表于 05-06 06:55

    如何選擇一款環(huán)境傳感器?環(huán)境傳感器有哪些應(yīng)用?

    環(huán)境傳感器的基本原理是什么?如何選擇一款環(huán)境傳感器?環(huán)境
    發(fā)表于 05-12 07:24

    環(huán)境傳感器是如何工作的

    當(dāng)夜幕降臨,汽車儀表盤(pán)上有一雙“眼睛”默默地感知周圍的光線,從而自動(dòng)調(diào)節(jié)背光亮度,以保證用戶最佳的駕駛體驗(yàn)且降低功耗。這雙神奇的 “眼睛”便是今天的主角---環(huán)境傳感器。為什么要使用環(huán)境
    發(fā)表于 11-10 07:16

    MAX44007環(huán)境傳感器

    MAX44007環(huán)境傳感器提供I2C數(shù)字輸出,理想用于智能手機(jī)、筆記本電腦、工業(yè)傳感器等便攜產(chǎn)品。器件工作電流小于1μA,是業(yè)內(nèi)功耗最低的環(huán)境
    發(fā)表于 07-08 11:59 ?1546次閱讀
    MAX44007<b class='flag-5'>環(huán)境</b><b class='flag-5'>光</b><b class='flag-5'>傳感器</b>

    環(huán)境傳感器封裝近距離傳感器的優(yōu)點(diǎn)

    本文檔內(nèi)容用環(huán)境傳感器封裝近距離傳感器的優(yōu)點(diǎn),供網(wǎng)友參考。
    發(fā)表于 09-14 18:50 ?29次下載
    用<b class='flag-5'>環(huán)境</b><b class='flag-5'>光</b><b class='flag-5'>傳感器</b>封裝近距離<b class='flag-5'>傳感器</b>的優(yōu)點(diǎn)

    環(huán)境傳感器有什么用_環(huán)境傳感器的作用

    環(huán)境傳感器可以感知周圍光線情況,并告知處理芯片自動(dòng)調(diào)節(jié)顯示背光亮度,降低產(chǎn)品的功耗。例如,在手機(jī)、筆記本,GPS等移動(dòng)等手持設(shè)備應(yīng)用中,顯示
    發(fā)表于 09-17 10:50 ?1.2w次閱讀

    digilentPmodALS:環(huán)境傳感器介紹

    作為一個(gè)環(huán)境傳感器,DigilentPmodALS可以用來(lái)演示到數(shù)字的傳感
    的頭像 發(fā)表于 12-02 11:25 ?2824次閱讀
    digilentPmodALS:<b class='flag-5'>環(huán)境</b><b class='flag-5'>光</b><b class='flag-5'>傳感器</b>介紹

    環(huán)境傳感器發(fā)展趨勢(shì)

    環(huán)境傳感器是一種通過(guò)感知周圍光照強(qiáng)度,實(shí)時(shí)輸出電信號(hào)的一種傳感器環(huán)境
    的頭像 發(fā)表于 11-01 09:38 ?3138次閱讀

    為什么要使用環(huán)境傳感器

    的駕駛體驗(yàn)且降低功耗。這雙神奇的 “眼睛”便是今天的主角---環(huán)境傳感器。 為什么要使用環(huán)境傳感器
    的頭像 發(fā)表于 01-14 10:22 ?3226次閱讀
    為什么要使用<b class='flag-5'>環(huán)境</b><b class='flag-5'>光</b><b class='flag-5'>傳感器</b>

    你是我的眼:環(huán)境傳感器

    你是我的眼:環(huán)境傳感器
    發(fā)表于 11-01 08:26 ?1次下載
    你是我的眼:<b class='flag-5'>環(huán)境</b><b class='flag-5'>光</b><b class='flag-5'>傳感器</b>

    紅外水位傳感器能否用于黑暗環(huán)境中,燈光環(huán)境光是否受影響?

    紅外傳感器的工作原理根據(jù)反射情況判斷傳感器處于水里還是空氣中。 因此置于密閉類、黑暗的環(huán)境中使用都不會(huì)受到任何影響。常規(guī)的LED燈光、環(huán)境
    的頭像 發(fā)表于 08-31 09:00 ?1900次閱讀
    紅外水位<b class='flag-5'>傳感器</b>能否用于黑暗<b class='flag-5'>環(huán)境</b>中,<b class='flag-5'>燈光環(huán)境</b>光是否受影響?