Taula de continguts:
- Pas 1: cablejar els mòduls i el circuit NRF24L01
- Pas 2: Codificació del transmissor
- Pas 3: Codificació del receptor
- Pas 4: FET
Vídeo: Làmpada LED sense fils Arduino que combina llum amb fotoresistència: 4 passos
2024 Autora: John Day | [email protected]. Última modificació: 2024-01-30 08:15
Aquest document instructiu detalla els passos necessaris per construir una rudimentària làmpada LED sense fil amb detecció de llum mitjançant Arduino Unos i un fotoresistor. Una possible aplicació d’aquest dispositiu seria il·luminar una habitació que no tingui finestres amb llum solar artificial, que coincideixi amb les condicions reals d’il·luminació a l’exterior en temps real. Comencem!
Llista de subministraments:
Arduino Uno x2
NRF24L01 Transceptor sense fils x2 (Opcional: motxilla NRF24L01 x2)
Transistor Darlington TIP120
Fotoresistor
LEDs de 5 mm x3
Polsador
Resistència de 100 ohmis x3
10k ohm resistència x3
Diversos cables de pont
Pas 1: cablejar els mòduls i el circuit NRF24L01
En aquest projecte, un Arduino actuarà com a transmissor, enviant dades de nivell de llum des del fotoresistor quan es prem el botó. L’altre Arduino servirà de receptor, agafant aquestes dades i transformant-les en el senyal als LED. La primera imatge mostra el diagrama del transmissor i la segona mostra el receptor.
Nota: a les fotos del meu projecte, notareu que els transceptors NRF24L01 estan connectats a un altre PCB. Es tracta d’un mòdul de motxilla per als transceptors, que actua com a regulador de potència. A més de facilitar el cablejat, aquestes motxilles regulen la potència d’entrada del NRF24L01, permetent l’ús d’una font d’alimentació de 5V. Per motius de claredat, he omès aquestes motxilles al meu diagrama.
(Si decidiu utilitzar les motxilles, consulteu aquest enllaç per obtenir un diagrama de les ubicacions dels pins en referència al material NRF24L01).
A continuació s’adjunta una còpia en PDF del circuit, per facilitar el zoom / visualització detallada.
Pas 2: Codificació del transmissor
L’últim pas és la codificació. Haureu d’instal·lar la biblioteca RadioHead o una biblioteca equivalent per utilitzar-la amb els mòduls NRF24L01.
Per a aquest projecte, el transmissor i el receptor Arduinos utilitzen un codi diferent a cadascun. Aquí teniu el codi del transmissor:
També he adjuntat el fitxer.ino (NRF_Send) per comoditat.
#incloure
#incloure
RH_NRF24 nrf24; // Inicialització d'un transceptor com nrf24
botó int = 5; // Configuració de valors de pin per al botó i la fotoresistència
int pResistència = A0; valor int = 0; // Valor de la llum de 0-1023
configuració nul·la ()
{Serial.begin (9600); pinMode (botó, INPUT); pinMode (pResistor, INPUT); if (! nrf24.init ()) // Alerta l'usuari si falla la inicialització del mòdul Serial.println ("init fallit"); // Els valors predeterminats després de l'inici són 2,402 GHz (canal 2), 2 Mbps, 0 dBm si (! Nrf24.setChannel (1)) Serial.println ("setChannel ha fallat"); if (! nrf24.setRF (RH_NRF24:: DataRate2Mbps, RH_NRF24:: TransmitPower0dBm)) Serial.println ("setRF ha fallat"); }
bucle buit ()
{if (digitalRead (button)) {// Envieu un missatge si premeu el botó value = analogRead (pResistor); // Llegiu el valor del fotoresistor (0-1023) uint8_t data = {value}; // Estableix una matriu anomenada "dades " que conté el valor de llum nrf24.send (dades, mida de (dades)); // Envieu la matriu al destinatari nrf24.waitPacketSent (); // Espereu fins que s'hagi enviat el paquet Serial.println ("Valor de llum:" + Cadena (valor)); // Imprimiu el valor de la llum al monitor sèrie}}
Pas 3: Codificació del receptor
Per al receptor, el codi també utilitza la biblioteca RadioHead.
#incloure
#incloure
RH_NRF24 nrf24;
int LEDPin = 3;
valor int = 0; // Valor de la llum de 0-1023
configuració nul·la ()
{Serial.begin (9600); pinMode (LEDPin, OUTPUT); if (! nrf24.init ()) Serial.println ("init ha fallat"); // Els valors predeterminats després de l'inici són 2,402 GHz (canal 2), 2 Mbps, 0 dBm si (! Nrf24.setChannel (1)) Serial.println ("setChannel ha fallat"); if (! nrf24.setRF (RH_NRF24:: DataRate2Mbps, RH_NRF24:: TransmitPower0dBm)) Serial.println ("setRF ha fallat"); }
bucle buit ()
{// Espereu un missatge uint8_t buf [RH_NRF24_MAX_MESSAGE_LEN]; // Emmagatzemeu el missatge rebut com una matriu anomenada "buf " uint8_t len = sizeof (buf); // Emmagatzemeu la mida de buf com a "len" mentre (nrf24.waitAvailableTimeout (200) && nrf24.recv (buf, & len)) // Rep el missatge durant 200 mil·lisegons o fins que es rebi tot el missatge {value = buf [0]; // Estableix el valor en el primer índex de buf , que és l’int del fotoresistor analogWrite (LEDPin, map (valor, 0, 1023, 0, 255)); // Estableix el pin PWM per generar un valor a escala entre 0-255 per a la brillantor del LED Serial.println (Cadena (valor)); } analogWrite (LEDPin, 0); }
Pas 4: FET
Gaudeix jugant amb diferents nivells de llum i veient com els LED coincideixen! De vegades, el fotoresistor pot resultar complicat i funciona millor en una habitació fosca amb una font de llum localitzada (però també pot funcionar amb el sol).
Recomanat:
Sensor de llum (fotoresistència) amb Arduino a Tinkercad: 5 passos (amb imatges)
Sensor de llum (fotoresistència) amb Arduino a Tinkercad: aprenem a llegir un fotoresistor, un tipus de resistència variable sensible a la llum, mitjançant l’entrada analògica d’Arduino. També s’anomena LDR (resistència dependent de la llum). Fins ara ja heu après a controlar els LED amb la sortida analògica d’Arduino i a
Comandament a distància sense fils que utilitza el mòdul NRF24L01 de 2,4 Ghz amb Arduino - Nrf24l01 Receptor transmissor de 4 canals / 6 canals per quadcòpter - Helicòpter Rc - Avió Rc amb Arduino: 5 passos (amb imatges)
Comandament sense fils que utilitza un mòdul NRF24L01 de 2,4 Ghz amb Arduino | Nrf24l01 Receptor transmissor de 4 canals / 6 canals per quadcòpter | Helicòpter Rc | Avió Rc amb Arduino: per fer funcionar un cotxe Rc | Quadcopter | Drone | Avió RC | Vaixell RC, sempre necessitem un receptor i un transmissor, suposem que per RC QUADCOPTER necessitem un transmissor i un receptor de 6 canals i aquest tipus de TX i RX és massa costós, així que en farem un al nostre
Circuit de llum de vela OLED amb fotoresistència per al control de la intensitat (TfCD): 4 passos (amb imatges)
Circuit de llum d’espelmes OLED amb fotoresistència per al control d’intensitat (TfCD): en aquest instructiu us mostrem com fer un circuit que mostri el LED (O) que parpelleja com una espelma i reaccioni a la intensitat de l’entorn. Amb una intensitat de llum més baixa es necessita una sortida de llum més baixa de les fonts de llum. Amb aquesta aplicació
Refredador / suport per a portàtils de cost zero (sense cola, sense perforació, sense femelles i cargols, sense cargols): 3 passos
Refredador / suport per a portàtils de cost zero (sense cola, sense perforació, sense femelles i cargols, sense cargols): ACTUALITZACIÓ: SI US PLAU VOT PER EL MEU INSTRUCTABLE, GRÀCIES ^ _ ^ TAMBÉ POTS AGRADAR-ME ENTRADA A www.instructables.com/id/Zero-Cost-Aluminum-Furnace-No-Propane-No-Glue-/ O POTS VOTAR ELS MEUS MILLORS AMICS
Introduïu un timbre sense fils en un interruptor d'alarma sense fils o un interruptor d'encesa / apagat: 4 passos
Introduïu un timbre sense fils en un interruptor d'alarma sense fils o en un interruptor d'encès / apagat: recentment he construït un sistema d'alarma i l'he instal·lat a casa. Vaig fer servir interruptors magnètics a les portes i els vaig connectar a través de les golfes: les finestres eren una altra història i el cablejat dur no era una opció. Necessitava una solució sense fils i això és