Arduino的紅外傳感器控制LED燈實(shí)驗(yàn)

【小組成員】

五組:王韻淇 馮怡 吳瑤 褚冉 王澍 宋格格



一、實(shí)驗(yàn)?zāi)康?/h1>

本次實(shí)驗(yàn)旨在通過(guò)Arduino Uno板和紅外接收模塊(Infrared-Receiver)實(shí)現(xiàn)對(duì)LED燈的控制。具體目標(biāo)是通過(guò)遙控器的按鍵操作,控制連接在Arduino板上的LED燈的亮滅。通過(guò)本實(shí)驗(yàn),可以加深對(duì)紅外傳感器工作原理和Arduino編程的理解。


二、實(shí)驗(yàn)器材

- Arduino Uno開(kāi)發(fā)板

- 紅外接收模塊(Infrared-Receiver)

- 雙色LED燈模塊

- 9V電池

- 面包板

- 連接導(dǎo)線若干

- 遙控器


三、實(shí)驗(yàn)原理

紅外傳感器通過(guò)接收紅外信號(hào)來(lái)識(shí)別遙控器的按鍵操作。Arduino Uno板通過(guò)編程解析接收到的紅外信號(hào),并根據(jù)信號(hào)的值控制LED燈的亮滅。實(shí)驗(yàn)中,當(dāng)接收到特定的紅外信號(hào)(0xFFA25D)時(shí),LED燈亮起;接收到其他信號(hào)時(shí),LED燈熄滅。


四、實(shí)驗(yàn)步驟

1. 硬件連接:

將紅外接收模塊的SIG引腳連接到Arduino Uno板的數(shù)字引腳7。

將雙色LED燈模塊的正極連接到Arduino Uno板的數(shù)字引腳13,負(fù)極接地。

使用9V電池為Arduino Uno板供電。

將所有元件按照電路圖連接到面包板上。


2. 編寫(xiě)程序:

打開(kāi)Arduino IDE,編寫(xiě)如下代碼:

```cpp

? ? #include <IRremote.h>

? ? const int irReceiverPin = 7; // the SIG of receiver module attach to pin7

? ? const int ledPin = 13; // pin 13 built-in led

? ? IRrecv irrecv(irReceiverPin); // Creates a variable of type IRrecv

? ? decode_results results;

? ? void setup()

? ? {

? ? ? pinMode(ledPin, OUTPUT); // set ledpin as OUTPUT

? ? ? Serial.begin(9600); // initialize serial

? ? ? irrecv.enableIRIn(); // enable ir receiver module

? ? }

? ? void loop()

? ? {

? ? ? if (irrecv.decode(&results)) // if the ir receiver module receiver data

? ? ? {

? ? ? ? Serial.print("irCode: "); // print"irCode:

? ? ? ? Serial.print(results.value, HEX); // print the value in hexadecimal

? ? ? ? Serial.print(", bits: "); // print", bits:

? ? ? ? Serial.println(results.bits); // print the bits

? ? ? ? irrecv.resume(); // Receive the next value

? ? ? }

? ? ? delay(600); // delay 600ms

? ? ? if(results.value == 0xFFA25D) // if receiver module receive

? ? ? {

? ? ? ? digitalWrite(ledPin, HIGH); // turn on the led

? ? ? }

? ? ? else

? ? ? {

? ? ? ? digitalWrite(ledPin, LOW); // turn off the led

? ? ? }

? ? }

```

3. 上傳程序:

將編寫(xiě)好的程序上傳到Arduino Uno板。

4. 測(cè)試驗(yàn)證:

使用遙控器按下CH-鍵,觀察LED燈是否亮起。

按下其他鍵,觀察LED燈是否熄滅。


五、實(shí)驗(yàn)結(jié)果

實(shí)驗(yàn)結(jié)果表明,當(dāng)按下遙控器的CH-鍵時(shí),LED燈能夠正常亮起;按下其他鍵時(shí),LED燈熄滅。這說(shuō)明紅外接收模塊和Arduino Uno板能夠正確解析紅外信號(hào),并根據(jù)信號(hào)值控制LED燈的亮滅。


六、實(shí)驗(yàn)總結(jié)

通過(guò)本次實(shí)驗(yàn),我們成功實(shí)現(xiàn)了基于Arduino的紅外傳感器控制LED燈的功能。實(shí)驗(yàn)過(guò)程中,我們學(xué)習(xí)了紅外傳感器的工作原理、Arduino編程的基本方法以及硬件連接技巧。實(shí)驗(yàn)結(jié)果驗(yàn)證了設(shè)計(jì)的正確性和可行性,為進(jìn)一步學(xué)習(xí)和應(yīng)用Arduino打下了堅(jiān)實(shí)的基礎(chǔ)。


七、實(shí)驗(yàn)體會(huì)

本次實(shí)驗(yàn)讓我深刻理解了紅外傳感器的工作原理和Arduino編程的基本方法。通過(guò)實(shí)際操作,我掌握了硬件連接和程序編寫(xiě)的基本技能,增強(qiáng)了動(dòng)手能力和解決問(wèn)題的能力。在實(shí)驗(yàn)過(guò)程中,我也遇到了一些問(wèn)題,如信號(hào)解析不準(zhǔn)確等,通過(guò)查閱資料和調(diào)試程序,最終解決了問(wèn)題,這讓我更加堅(jiān)定了學(xué)習(xí)的信心和決心。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容