Indholdsfortegnelse:
- Trin 1: Tilslutning af NRF24L01 moduler og kredsløb
- Trin 2: Kodning af senderen
- Trin 3: Kodning af modtageren
- Trin 4: FÆRDIG
Video: Trådløs Arduino lys matchende LED-lampe ved hjælp af fotoresistor: 4 trin
2024 Forfatter: John Day | [email protected]. Sidst ændret: 2024-01-30 08:29
Denne instruktive beskriver de trin, der er nødvendige for at konstruere en rudimentær trådløs lysfølende LED-lampe ved hjælp af Arduino Unos og en fotoresistor. En mulig applikation for denne enhed ville være belysning af et rum, der ikke har vinduer med kunstigt sollys, der matcher de faktiske lysforhold udenfor i realtid. Lad os komme igang!
Udbudsliste:
Arduino Uno x2
NRF24L01 Trådløs transceiver x2 (valgfri - NRF24L01 rygsæk x2)
TIP120 darlington transistor
Fotoresistor
5 mm lysdioder x3
Trykknap
100 ohm modstand x3
10k ohm modstand x3
Forskellige Jumper Wires
Trin 1: Tilslutning af NRF24L01 moduler og kredsløb
I dette projekt vil en Arduino fungere som en sender og sende lysniveaudata fra fotoresistoren, når der trykkes på knappen. Den anden Arduino vil tjene som modtager, tage disse data og omdanne dem til signalet til lysdioderne. Det første billede viser transmitterdiagrammet, og det andet viser modtageren.
Bemærk: På billederne af mit projekt vil du bemærke, at NRF24L01 -transceiverne er tilsluttet et andet printkort. Dette er et rygsækmodul til transceiverne, der fungerer som en effektregulator. Ud over at gøre ledningen lettere, regulerer disse rygsække strømindgangen til NRF24L01, hvilket tillader brug af en 5V strømforsyning. Jeg har for klarhedens skyld udelad disse rygsække i mit diagram.
(Hvis du beslutter dig for at bruge rygsækkene, henvises til dette link for et diagram over nålens placeringer i forhold til lageret NRF24L01).
Vedhæftet nedenfor er en PDF -kopi af kredsløbet for lettere zoom/detaljeret visning.
Trin 2: Kodning af senderen
Det sidste trin er kodning. Du skal installere RadioHead -biblioteket eller et tilsvarende bibliotek til brug med NRF24L01 -modulerne.
Til dette projekt bruger senderen og modtageren Arduinos forskellige koder på hver. Her er koden til senderen:
Jeg har også vedhæftet.ino -filen (NRF_Send) for nemheds skyld.
#omfatte
#omfatte
RH_NRF24 nrf24; // Initialiserer en transceiver som nrf24
int -knap = 5; // Indstilling af pinværdier for knappen og fotoresistor
int pResistor = A0; int værdi = 0; // Værdi af lys fra 0-1023
ugyldig opsætning ()
{Serial.begin (9600); pinMode (knap, INDGANG); pinMode (pResistor, INPUT); if (! nrf24.init ()) // Alarmerer brugeren, hvis initialiseringen af modulet mislykkes Serial.println ("init mislykkedes"); // Standardværdier efter init er 2.402 GHz (kanal 2), 2Mbps, 0dBm hvis (! Nrf24.setChannel (1)) Serial.println ("setChannel mislykkedes"); if (! nrf24.setRF (RH_NRF24:: DataRate2Mbps, RH_NRF24:: TransmitPower0dBm)) Serial.println ("setRF mislykkedes"); }
hulrum ()
{if (digitalRead (button)) {// Send en besked, hvis der trykkes på knappen value = analogRead (pResistor); // Læs værdien af fotoresistoren (0-1023) uint8_t data = {værdi}; // Indstiller en matrix kaldet "data ", der indeholder lysværdien nrf24.send (data, sizeof (data)); // Send matrixen til modtageren nrf24.waitPacketSent (); // Vent, indtil pakken er sendt Serial.println ("Light Value:" +String (value)); // Udskriv lysværdien i den serielle skærm}}
Trin 3: Kodning af modtageren
For modtageren bruger koden også RadioHead -biblioteket.
#omfatte
#omfatte
RH_NRF24 nrf24;
int LEDPin = 3;
int værdi = 0; // Værdi af lys fra 0-1023
ugyldig opsætning ()
{Serial.begin (9600); pinMode (LEDPin, OUTPUT); hvis (! nrf24.init ()) Serial.println ("init mislykkedes"); // Standardværdier efter init er 2.402 GHz (kanal 2), 2Mbps, 0dBm hvis (! Nrf24.setChannel (1)) Serial.println ("setChannel mislykkedes"); if (! nrf24.setRF (RH_NRF24:: DataRate2Mbps, RH_NRF24:: TransmitPower0dBm)) Serial.println ("setRF mislykkedes"); }
hulrum ()
{// Vent på en besked uint8_t buf [RH_NRF24_MAX_MESSAGE_LEN]; // Gem den modtagne besked som en array kaldet "buf " uint8_t len = sizeof (buf); // Gem størrelsen af buf som "len", mens (nrf24.waitAvailableTimeout (200) && nrf24.recv (buf, & len)) // Modtager beskeden i 200 millisekunder, eller indtil hele meddelelsen modtages {value = buf [0]; // Sætter værdi til det første indeks for buf , som er int fra fotoresistor analogWrite (LEDPin, map (værdi, 0, 1023, 0, 255)); // Indstiller PWM-stiften til at udsende en skaleret værdi mellem 0-255 for LED-lysstyrken Serial.println (streng (værdi)); } analogWrite (LEDPin, 0); }
Trin 4: FÆRDIG
Nyd at lege med forskellige lysniveauer og se lysdioderne matche dem! Fotoresistoren kan nogle gange være fin og fungerer bedst i et mørkt rum med en lokaliseret lyskilde (men kan også fungere udenfor med solen).
Anbefalede:
DIY -- Sådan laver du en edderkoprobot, der kan kontrolleres ved hjælp af smartphone ved hjælp af Arduino Uno: 6 trin
DIY || Sådan laver du en edderkoprobot, der kan styres ved hjælp af smartphone Brug af Arduino Uno: Mens du laver en edderkoprobot, kan man lære så mange ting om robotik. Ligesom at lave robotter er underholdende såvel som udfordrende. I denne video vil vi vise dig, hvordan du laver en Spider -robot, som vi kan betjene ved hjælp af vores smartphone (Androi
Kontrol ledt over hele verden ved hjælp af internet ved hjælp af Arduino: 4 trin
Kontrol ledt over hele verden ved hjælp af internet ved hjælp af Arduino: Hej, jeg er Rithik. Vi kommer til at lave en internetstyret LED ved hjælp af din telefon. Vi kommer til at bruge software som Arduino IDE og Blynk.Det er enkelt, og hvis det lykkedes dig, kan du styre så mange elektroniske komponenter, du ønskerTing We Need: Hardware:
Sådan laver du en drone ved hjælp af Arduino UNO - Lav en quadcopter ved hjælp af mikrokontroller: 8 trin (med billeder)
Sådan laver du en drone ved hjælp af Arduino UNO | Lav en Quadcopter ved hjælp af mikrokontroller: Introduktion Besøg min Youtube -kanal En Drone er en meget dyr gadget (produkt) at købe. I dette indlæg vil jeg diskutere, hvordan jeg gør det billigt ?? Og hvordan kan du lave din egen sådan til en billig pris … Nå i Indien alle materialer (motorer, ESC'er
RF 433MHZ radiostyring ved hjælp af HT12D HT12E - Lav en RF -fjernbetjening ved hjælp af HT12E & HT12D med 433mhz: 5 trin
RF 433MHZ radiostyring ved hjælp af HT12D HT12E | Oprettelse af en RF -fjernbetjening ved hjælp af HT12E & HT12D med 433mhz: I denne instruktør vil jeg vise dig, hvordan du laver en RADIO -fjernbetjening ved hjælp af 433mhz sendermodtagermodul med HT12E -kode & HT12D -dekoder IC.I denne instruktive kan du sende og modtage data ved hjælp af meget meget billige KOMPONENTER SOM: HT
Trådløs fjernbetjening ved hjælp af 2,4 GHz NRF24L01 -modul med Arduino - Nrf24l01 4 -kanals / 6 -kanals sender modtager til Quadcopter - Rc Helikopter - Rc -fly ved hjælp af Arduino: 5 trin (med billeder)
Trådløs fjernbetjening ved hjælp af 2,4 GHz NRF24L01 -modul med Arduino | Nrf24l01 4 -kanals / 6 -kanals sender modtager til Quadcopter | Rc Helikopter | Rc -fly ved hjælp af Arduino: At betjene en Rc -bil | Quadcopter | Drone | RC -fly | RC -båd, vi har altid brug for en modtager og sender, antag at vi til RC QUADCOPTER har brug for en 6 -kanals sender og modtager, og den type TX og RX er for dyr, så vi laver en på vores