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

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

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

基于Arduino Mega 2560的LDR光強度控制

454398 ? 來源:wv ? 2019-10-12 14:38 ? 次閱讀

步驟1:LDR

代表“光敏電阻”。這是一種電阻,其電阻值隨強度或所照射的光量而變化。隨著落在它上面的光量的增加,其電阻會降低,反之亦然。

我們制作了一個電路,為Arduino開發(fā)板給出1或0的邏輯??梢苑崔D(zhuǎn)電路以更改邏輯。

步驟2:ADC模數(shù)轉(zhuǎn)換器

任何微控制器或數(shù)字操作設(shè)備不能直接在模擬電壓下運行。我們必須將模擬轉(zhuǎn)換為數(shù)字值,為此我們使用ADC。 Arduino內(nèi)置了ADC,因此我們只需插入跨接線即可。

它接受一個模擬值(在本例中為LDR兩端的電壓)并將其轉(zhuǎn)換為10位數(shù)字。由于我們有10位,因此ADC的輸出范圍是0-1023(即1024個值2 ^ 10)。 0 – 5V之間的每個電壓都映射到0-1023之間的值。為什么要到1023年?原因是我們的ADC的分辨率。在這里,我們用10位組合表示每個值。隨著用于表示一個值的位數(shù)的增加,輸出值將變得更加準確。

值位表示形式

0 – 1.25 00

1.25- 2.5 01

2.5-3.75 10

3.75-5 11

步驟3:PWM(脈沖寬度調(diào)制)

脈沖寬度調(diào)制是一種可以根據(jù)消息信號改變脈沖寬度的技術(shù)。在這種情況下,LED連接到arduino板的PWM輸出引腳,并使用AnalogWrite()函數(shù)使該引腳上的脈沖寬度變化。脈沖寬度的變化可以看作是引腳上平均電壓的變化。因此,盡管我們僅更改LED點亮或熄滅的時間,但由于視覺的持久性,好像我們正在改變LED兩端的電壓一樣,導致其褪色和變亮。

第4步:所需的組件

現(xiàn)在是該項目所需的組件。我保證這些都是非常便宜和簡單的物品(除了Arduino開發(fā)板本身:p)

Arduino Mega 2560開發(fā)板

LED(我用了白色和紅色)

LDR或光電二極管(我使用LDR是因為它便宜且容易獲得)

10 K電位計

220歐姆電阻

面包開發(fā)板或性能開發(fā)板(我都進行過測試)

跳線

步驟5:連接/電路

連接如下:

連接電阻的一端(我有一個1k的電阻…如果愿意,可以使用任何其他值。確保它不是太高或太低)到arduino板的5V引腳。將電阻器的另一端連接到LDR的一端。 LDR的另一端應(yīng)連接到地面(GND)。

從電阻器和較早連接的LDR的連接處接一根線,然后將其連接到arduino板上的模擬輸入5。

接下來,從板上的任何PWM引腳上接一根電線,然后將其連接到LED的陽極。將LED的陰極連接到電阻的一端,另一端連接到GND。

步驟6:編程

如果需要幫助,請附加使用arduino軟件制作的文件。

步驟7:面包板測試

我測試了電路板上的電路,并通過稍微移動電位器來找到正確的調(diào)整。令我滿意之后,我制作了一個下面的視頻?,F(xiàn)在是時候制作一個更可靠,更永久的電路板了。

步驟8:最終和完整模型

所以我焊接了一塊更堅固的板進行最終實驗。我在這里使用了紅色LED,因為它顯示的暗淡和亮度比晶體光更好。

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

    關(guān)注

    188

    文章

    6474

    瀏覽量

    187443
  • mega2560
    +關(guān)注

    關(guān)注

    0

    文章

    17

    瀏覽量

    5830
  • LDR
    LDR
    +關(guān)注

    關(guān)注

    0

    文章

    99

    瀏覽量

    7601
收藏 人收藏

    評論

    相關(guān)推薦

    如何使用Arduino實現(xiàn)CAN總線通信呢

    CAN(Controller Area Network)總線是一種常用于汽車和工業(yè)控制系統(tǒng)的串行通信協(xié)議,以其高可靠性和實時性而聞名。Arduino,作為一種流行的開源微控制器平臺,可以通過附加
    的頭像 發(fā)表于 12-23 09:06 ?357次閱讀

    基于Arduino的串口通信項目

    、Arduino Mega等。 USB數(shù)據(jù)線 :用于將Arduino開發(fā)板連接到計算機。 串口設(shè)備 :可以是另一個Arduino開發(fā)板、傳感器模塊、執(zhí)行器等,只要它支持串口通信。 連接
    的頭像 發(fā)表于 11-22 09:24 ?757次閱讀

    如何使用Arduino實現(xiàn)CAN總線通信

    CAN總線(Controller Area Network)是一種多主控制的串行通信協(xié)議,廣泛應(yīng)用于汽車電子、工業(yè)自動化等領(lǐng)域。它以其高可靠性、實時性和靈活性而受到青睞。Arduino作為一個
    的頭像 發(fā)表于 11-12 10:09 ?1191次閱讀

    光纖光強影響因素都有哪些

    光纖光強即光纖中傳輸?shù)墓庑盘柕?b class='flag-5'>強度,受到多種因素的影響。以下是對光纖光強影響因素的詳細分析: 一、光纖本身的特性 光纖類型:不同類型的光纖(如單模光纖和多模光纖)具有不同的傳輸特性,這會影響光信號
    的頭像 發(fā)表于 11-01 09:39 ?490次閱讀

    一種基于光強度相關(guān)反饋的波前整形方法

    。在這里,課題組提出了一種基于光強度相關(guān)反饋的波前整形方法,該方法使用遺傳算法在比傳統(tǒng)方法更短的時間和更少的迭代次數(shù)內(nèi)實現(xiàn)所需的波前整形。在該方法中,相位掩模被劃分為幾個區(qū)域,每個區(qū)域根據(jù)光強分布分配
    的頭像 發(fā)表于 10-27 16:28 ?270次閱讀
    一種基于<b class='flag-5'>光強度</b>相關(guān)反饋的波前整形方法

    16位數(shù)字輸出型環(huán)境光強度傳感器集成電路bh1750FVI中文數(shù)據(jù)手冊

    電子發(fā)燒友網(wǎng)站提供《16位數(shù)字輸出型環(huán)境光強度傳感器集成電路bh1750FVI中文數(shù)據(jù)手冊.pdf》資料免費下載
    發(fā)表于 09-11 14:26 ?4次下載

    為什么無法在nodemcu和arduino mega之間交換數(shù)據(jù)?

    您好,我正在嘗試通過 UART 在 arduino mega 和 nodemcu 之間交換數(shù)據(jù)(使用 arduino IDE 對兩者進行編程)。 我將 arduino 的電壓降低到
    發(fā)表于 07-19 12:15

    如何將ESP2866更新到正確的AT Command固件?

    /mega-wifi-r3-atmega2560-esp8266-flash-32mb-usb-ttl-ch340g-micro-usb.html 在通電時,它會創(chuàng)建一個 WiFi AP,而不會被告知這樣做(Arduino 草圖什么都不做)。 我猜它在ESP8266上安
    發(fā)表于 07-19 08:37

    使用ESP8266板和AT命令集構(gòu)建一個多客戶端HTTP服務(wù)器遇到的疑問求解

    我們正在嘗試使用ESP8266板和 AT 命令集構(gòu)建一個多客戶端 HTTP 服務(wù)器,通過串行端口連接到 Arduino 板。我們正在使用 Arduino Mega 2560 板。它有更
    發(fā)表于 07-18 08:03

    ESP8266為什么不響應(yīng)Arduino?

    我是這個 wifi 芯片的新手。我的問題是,當我將其與 arduino mega 連接時,我無法從 esp8266 獲得響應(yīng)。 像許多在線教程一樣,我按照說明進行操作,但仍然無法得到任何回應(yīng)
    發(fā)表于 07-16 06:39

    ESP8266干擾arduino的ADC采樣怎么解決?

    我用安可信的ESP01與Arduino Mega256設(shè)計了一個系統(tǒng)。系統(tǒng)中,Mega256直接給ESP01供3.3v。Mega2560的A0接了信號發(fā)生器,輸入直流3V。硬件連接如下
    發(fā)表于 07-08 07:25

    adr和ldr什么區(qū)別?

    adr 和ldr什么區(qū)別 還有為啥arm 匯編能反匯編不都已經(jīng)是匯編了?
    發(fā)表于 05-17 06:27

    關(guān)于鐳神智能M10系列激光雷達抗環(huán)境光強度參數(shù)的嚴正聲明

    近日,我公司接到合作客戶反饋,某公司在線上某平臺銷售單線激光雷達產(chǎn)品時,為強調(diào)自產(chǎn)的激光雷達產(chǎn)品性能參數(shù),惡意篡改我司激光雷達M10與M10P的抗環(huán)境光強度參數(shù),以致于客戶對我司產(chǎn)品性能產(chǎn)生質(zhì)疑,并
    的頭像 發(fā)表于 02-19 13:24 ?1249次閱讀
    關(guān)于鐳神智能M10系列激光雷達抗環(huán)境<b class='flag-5'>光強度</b>參數(shù)的嚴正聲明

    arduino控制步進電機代碼

    Arduino是一種開放源代碼的電路板平臺,它可以用于控制各種不同的電子設(shè)備,包括步進電機。步進電機是一種電動機,可以通過下達特定的指令來控制每個步進的角度,從而使電機旋轉(zhuǎn)到指定的位置。在本文
    的頭像 發(fā)表于 02-14 16:29 ?2106次閱讀

    如何使用Arduino控制RGB LED

    在本指南中,您將學習如何使用Arduino控制RGB LED。RGB(紅-綠-藍)LED可以通過混合不同強度的紅、綠、藍光來產(chǎn)生多種顏色。您將學習創(chuàng)建一個基本Arduino RGB L
    的頭像 發(fā)表于 02-11 10:28 ?5093次閱讀
    如何使用<b class='flag-5'>Arduino</b><b class='flag-5'>控制</b>RGB LED