⭐⭐ Principiante avanzado
⏱️ 15 minutos
Lamparita de noche
Vas a hacer una lamparita de noche inteligente. Si se oscurece, el anillo LED se enciende suave. Si hay luz, se vuelve a apagar.
🧰 ¿Qué necesitas?
🗺️ Esquema de conexión
Sigue los cables desde el Arduino hasta cada pieza. Puedes elegir tú los colores de los cables.
| Desde | Hasta |
|---|---|
Arduino UNO · A0 |
Sensor de luz (LDR) · S |
Arduino UNO · 5V |
Sensor de luz (LDR) · + |
Arduino UNO · GND |
Sensor de luz (LDR) · - |
Arduino UNO · D6 |
Anillo LED RGB (8 LEDs) · DI |
Arduino UNO · 5V |
Anillo LED RGB (8 LEDs) · 5V |
Arduino UNO · GND |
Anillo LED RGB (8 LEDs) · GND |
🛠️ Así lo construyes
- Conecta el sensor de luz: S a A0, + a 5V y − a GND.
- Conecta el anillo LED: DI al pin 6, 5V a 5V y GND a GND.
- Abre el monitor serie y mira qué número ves con luz y en oscuro. Ajusta
LIMITE_OSCUROcon eso.
💻 El código
// Lamparita de noche
// ¿Se oscurece? Entonces el anillo LED se enciende suave. ¿Hay luz? Entonces se apaga.
#include <Adafruit_NeoPixel.h>
const int LUZ_PIN = A0; // S del sensor de luz en A0
const int ANILLO_PIN = 6; // DI del anillo LED en pin 6
const int NUM_LEDS = 8;
// Con este valor decimos que está "oscuro". Mira en el monitor serie qué número ves
// con luz y en oscuro, y pon aquí un número intermedio.
const int LIMITE_OSCURO = 500;
Adafruit_NeoPixel anillo(NUM_LEDS, ANILLO_PIN, NEO_GRB + NEO_KHZ800);
void setup() {
Serial.begin(9600);
anillo.begin();
anillo.setBrightness(60);
anillo.show();
}
void loop() {
int luz = analogRead(LUZ_PIN); // Un número de 0 a 1023
Serial.print(F("Sensor luz: "));
Serial.println(luz);
// Con este sensor, el número sube cuando se oscurece.
// ¿En tu caso va al revés? Cambia > por <.
bool oscuro = luz > LIMITE_OSCURO;
for (int i = 0; i < NUM_LEDS; i++) {
if (oscuro) {
anillo.setPixelColor(i, anillo.Color(255, 140, 40)); // Luz amarilla cálida
} else {
anillo.setPixelColor(i, 0); // Apagado
}
}
anillo.show();
delay(200);
}
🧠 ¿Qué hace el código?
- El sensor de luz está en A0.
analogRead()da un número de 0 a 1023. - ¿El número es mayor que
LIMITE_OSCURO? Entonces decimos que está oscuro. - En la oscuridad damos a todas las lucecitas un color amarillo cálido. Si no, se apagan.
🎯 Prueba esto…
- Haz que la lamparita brille poco a poco más fuerte cuando se oscurezca
- Haz que el color cambie despacito, como una lámpara tranquila
- Haz que la lamparita se apague sola después de 1 minuto
🚀 Construye este proyecto con Codey: abre codey.online/es/starter-kits/uno/projects/night-light y haz clic en HAZ ESTO. Entonces el código y el esquema de conexión estarán listos enseguida.
Codey Online es un producto de OTRONIC