Sisukord:
- Samm: ühendage NRF24L01 moodulid ja vooluring
- 2. samm: saatja kodeerimine
- 3. samm: vastuvõtja kodeerimine
- 4. samm: VALMIS
Video: Juhtmevaba Arduino valgusele vastav LED-lamp, kasutades fototakistit: 4 sammu
2024 Autor: John Day | [email protected]. Viimati modifitseeritud: 2024-01-30 08:49
See juhend annab üksikasjalikud sammud, mis on vajalikud algse juhtmevaba valgustundliku LED-lampi ehitamiseks, kasutades Arduino Unos ja fototakistit. Selle seadme võimalik rakendus oleks ruumi, millel ei ole aknaid, valgustamine kunstliku päikesevalgusega, mis vastaks tegelikule valgustingimusele väljas reaalajas. Alustame!
Tarnekiri:
Arduino Uno x2
NRF24L01 juhtmeta transiiver x2 (valikuline - seljakott NRF24L01 x2)
TIP120 darlingtoni transistor
Fototakisti
5 mm LED -id x3
Nupp
100 oomi takisti x3
10k oomi takisti x3
Erinevad hüppajajuhtmed
Samm: ühendage NRF24L01 moodulid ja vooluring
Selles projektis tegutseb saatjana üks Arduino, mis saadab fototakistilt valgusnumbri andmeid, kui vajutada nuppu. Teine Arduino toimib vastuvõtjana, võtab need andmed ja muudab need LED -ide signaaliks. Esimene pilt näitab saatja skeemi ja teine vastuvõtjat.
Märkus: minu projekti fotodel märkate, et transiiverid NRF24L01 on ühendatud teise trükkplaadiga. See on transiiverite jaoks mõeldud seljakoti moodul, mis toimib võimsuse regulaatorina. Lisaks juhtmete lihtsustamisele reguleerivad need seljakotid NRF24L01 sisendvõimsust, võimaldades kasutada 5 V toiteallikat. Olen need seljakotid selguse huvides oma skeemist välja jätnud.
(Kui otsustate seljakotte kasutada, vaadake seda linki, et näha tihvtide asukohtade skeemi, viidates varudele NRF24L01).
Allpool on ahela PDF -koopia suumimise hõlbustamiseks/üksikasjalikuks vaatamiseks.
2. samm: saatja kodeerimine
Viimane samm on kodeerimine. NRF24L01 moodulitega kasutamiseks peate installima RadioHeadi raamatukogu või samaväärse kogu.
Selle projekti jaoks kasutavad saatja ja vastuvõtja Arduinos mõlemat erinevat koodi. Siin on saatja kood:
Lisasin mugavuse huvides ka.ino faili (NRF_Send).
#kaasake
#kaasake
RH_NRF24 nrf24; // Transiiveri vormindamine nrf24 -ks
int nupp = 5; // Nupu ja fototakisti pin -väärtuste seadmine
int pTakisti = A0; int väärtus = 0; // Valguse väärtus vahemikus 0-1023
tühine seadistus ()
{Serial.begin (9600); pinMode (nupp, INPUT); pinMode (pResistor, INPUT); if (! nrf24.init ()) // Hoiatab kasutajat, kui mooduli initsialiseerimine ebaõnnestub Serial.println ("init ebaõnnestus"); // Vaikeväärtused pärast init on 2,402 GHz (kanal 2), 2Mbps, 0dBm if (! Nrf24.setChannel (1)) Serial.println ("setChannel ebaõnnestus"); if (! nrf24.setRF (RH_NRF24:: DataRate2Mbps, RH_NRF24:: TransmitPower0dBm)) Serial.println ("setRF ebaõnnestus"); }
tühine tsükkel ()
{if (digitalRead (nupp)) {// Saada sõnum nupule vajutamisel value = analogRead (pResistor); // Loe fototakisti väärtust (0-1023) uint8_t data = {value}; // Määrab massiivi nimega "data ", mis sisaldab valgusväärtust nrf24.send (data, sizeof (data)); // Saada massiiv vastuvõtjale nrf24.waitPacketSent (); // Oodake, kuni pakett on saadetud Serial.println ("Valgusväärtus:" +String (väärtus)); // Valgusväärtuse printimine jadamonitorile}}
3. samm: vastuvõtja kodeerimine
Vastuvõtja jaoks kasutab kood ka RadioHeadi raamatukogu.
#kaasake
#kaasake
RH_NRF24 nrf24;
int LEDPin = 3;
int väärtus = 0; // Valguse väärtus vahemikus 0-1023
tühine seadistus ()
{Serial.begin (9600); pinMode (LEDPin, OUTPUT); if (! nrf24.init ()) Serial.println ("init ebaõnnestus"); // Vaikeväärtused pärast init on 2,402 GHz (kanal 2), 2Mbps, 0dBm if (! Nrf24.setChannel (1)) Serial.println ("setChannel ebaõnnestus"); if (! nrf24.setRF (RH_NRF24:: DataRate2Mbps, RH_NRF24:: TransmitPower0dBm)) Serial.println ("setRF ebaõnnestus"); }
tühine tsükkel ()
{// Oota sõnumit uint8_t buf [RH_NRF24_MAX_MESSAGE_LEN]; // Salvesta saadud teade massiivina nimega "buf " uint8_t len = sizeof (buf); // Salvestage bufi suurus "len", samal ajal (nrf24.waitAvailableTimeout (200) && nrf24.recv (buf, & len)) // Saab sõnumi 200 millisekundi jooksul või kuni kogu sõnum on kätte saadud {value = buf [0]; // Määrab väärtuseks buf esimese indeksi, mis on fotoresistori analogWrite int (LEDPin, kaart (väärtus, 0, 1023, 0, 255)); // Seadistab PWM-i tihvti väljastama skaleeritud väärtuse vahemikus 0-255 LED-heleduse jaoks Serial.println (String (väärtus)); } analogWrite (LEDPin, 0); }
4. samm: VALMIS
Nautige mängimist erinevate valgustustasemetega ja vaadake, kuidas LED -id neile sobivad! Fototakisti võib mõnikord olla peen ja see toimib kõige paremini pimedas ruumis, kus on lokaalne valgusallikas (kuid võib töötada ka päikese käes).
Soovitan:
Kuidas kasutada fototakistit LED -i valgustamiseks Aurduinoga: 12 sammu
Kuidas kasutada fototakistit LED-i valgustamiseks Aurduinoga: tere hommikust/pärastlõunast/õhtust kõigile Arduino-entusiastidele! Täna demonstreerin, kuidas kasutada valgusdioodi valgustamiseks fototakistit (fotoelementi). Selle juhendiga kaasas olev kood laseb LED -il normaalselt tuhmuda, kuid hakkab vilkuma
Juhtmevaba RGB LED -riba Bluetoothi ja Wifi abil ESP8266: 3 sammu
Juhtmevaba RGB LED -riba Bluetoothi ja Wifi abil ESP8266: RGB LED -riba Bluetoothi ja WIFI abil Vaadake üksikasjalikku teavet YouTube'i videost
Praktiline Arduino ESP32 juhtmevaba seinakontakti LED -riba kontroller: 6 sammu
Praktiline Arduino ESP32 juhtmevaba seinakontakti LED -ribakontroller: See on väga praktiline DIY traadita seinakontakti kontroller odavate LED -ribade jaoks. See asendab odavaid wifi -kontrollereid, mida müüakse eBays. Need sobivad hästi RGB Led ribadega. EBay Wifi kontroller ei ole hästi ehitatud ja puruneb kergesti. Ka
DIY juhtmevaba edastus IR -LED -i ja päikesepaneeli abil: 4 sammu
DIY juhtmevaba ülekanne IR -LED -i ja päikesepaneeli abil: Nagu me kõik teame päikesepaneelide kohta, neelavad fotogalvaanilised päikesepaneelid päikesevalgust elektrienergia tootmiseks. See on suurepärane kingitus tasuta jõuallikast. Kuid siiski ei kasutata seda laialdaselt. Selle peamine põhjus on see, et see on kallis
Juhtmevaba Wii Nunchucki juhitav Arduino: 7 sammu
Traadita Wii Nunchucki juhitav Arduino: kasutage mis tahes Arduino -põhiste projektide juhtimissüsteemina täiesti modifitseerimata traadita Wii & Nbsucki. Ei ole lisatud raadiosaatja/vastuvõtjapaare jne. See juhend sisaldab eeldusi Arduino mikrokontrolleriga. Raadio