Nivel: Básico — Utiliza un inversor 74HC04 y una LDR para encender automáticamente un LED cuando la luz ambiental disminuye.
Objetivo y caso de uso
Construirás un circuito de control de luz automático que detecta la oscuridad utilizando una fotorresistencia (LDR) y activa un LED usando un inversor digital 74HC04.
- Por qué es útil:
- Automatizar farolas para que se enciendan solo por la noche y ahorrar energía.
- Activar la iluminación de emergencia en pasillos durante cortes de energía u oscuridad.
- Controlar luces solares de jardín automáticamente.
- Ajustar el brillo de la pantalla en dispositivos móviles según la luz ambiental.
- Resultado esperado:
- Cuando la LDR está expuesta a luz brillante, el LED permanece APAGADO.
- Cuando la LDR está cubierta (oscuridad), el LED se ENCIENDE.
- El voltaje en la entrada de la puerta lógica transiciona de Nivel Alto (5V) a Nivel Bajo (0V) a medida que oscurece.
- Público objetivo y nivel: Estudiantes y aficionados familiarizados con el uso básico de placas de pruebas (breadboards).
Materiales
V1: Fuente de 5 V CC, función: Fuente de alimentación principal.R1: LDR (GL5528 o similar), función: Sensor de luz (Resistencia variable).R2: Potenciómetro de 10 kΩ, función: Calibración de sensibilidad (Pull-down).U1: 74HC04, función: Inversor séxtuple (Puerta NOT).R3: Resistencia de 330 Ω, función: Limitación de corriente del LED.D1: LED rojo, función: Indicador de salida visual.
Pin-out del CI utilizado
Chip: 74HC04 (Inversor séxtuple)
| Pin | Nombre | Función lógica | Conexión en este caso |
|---|---|---|---|
| 14 | VCC | Alimentación (+) | Conectar a VCC (5V) |
| 7 | GND | Tierra (-) | Conectar a 0 (GND) |
| 1 | 1A | Entrada | Conectar al nodo del sensor VSENSE |
| 2 | 1Y | Salida | Conectar al nodo del LED VOUT |
(Nota: Los pines 3, 5, 9, 11 y 13 son entradas no utilizadas e idealmente deberían conectarse a GND en circuitos permanentes para evitar ruido, aunque no es estrictamente necesario para esta prueba rápida.)
Guía de conexionado
Usa las siguientes conexiones de nodos explícitas para construir el circuito en tu placa de pruebas:
- Fuente de alimentación:
- El terminal positivo de
V1se conecta al nodoVCC. - El terminal negativo de
V1se conecta al nodo0(GND).
- El terminal positivo de
- Etapa de sensor (Divisor de voltaje):
R1(LDR) se conecta entreVCCy el nodoVSENSE.R2(Potenciómetro) se conecta entre el nodoVSENSEy0(GND).- Nota: Ajusta
R2para que el voltaje enVSENSEvaríe cuando cambie la luz.
- Etapa lógica (Inversor):
U1Pin 14 se conecta aVCC.U1Pin 7 se conecta a0.U1Pin 1 (Entrada) se conecta al nodoVSENSE.U1Pin 2 (Salida) se conecta al nodoVOUT.
- Etapa de salida:
R3se conecta entre el nodoVOUTy el nodoLED_ANODE.D1se conecta entre el nodoLED_ANODE(Ánodo/Pata larga) y0(Cátodo/Pata corta).
Diagrama de bloques conceptual

Esquemático
[ INPUT / SENSOR STAGE ] [ LOGIC STAGE ] [ OUTPUT STAGE ]
[ VCC ] --> [ R1: LDR (Sensor) ] --+
|
v
[ VSENSE ] --(Pin 1)--> [ U1: 74HC04 ] --(Pin 2)--> [ R3: 330 Ohm ] --> [ D1: LED ] --> GND
^ [ NOT Gate ]
|
[ GND ] --> [ R2: Pot (Calib) ] ---+
Tabla de verdad
El 74HC04 invierte la señal de entrada. Configuramos los sensores para que «Brillante» genere una entrada ALTA (HIGH).
| Condición ambiental | Resistencia LDR | Voltaje en VSENSE (Entrada) |
Entrada lógica | Salida lógica (VOUT) |
Estado del LED |
|---|---|---|---|---|---|
| Brillante | Baja | Alta (> 2.5V) | 1 | 0 (GND) | APAGADO |
| Oscuro | Alta | Baja (< 1.5V) | 0 | 1 (5V) | ENCENDIDO |
Mediciones y pruebas
- Calibración: Exponer la LDR a la luz normal de la habitación. Ajustar el potenciómetro
R2hasta que el LED se APAGUE. - Verificación de voltaje (Brillante): Medir el voltaje entre
VSENSEy GND. Debería estar cerca de 5V (Lógica 1). La salida enVOUTdebería estar cerca de 0V. - Activación: Cubrir la LDR con la mano para simular oscuridad.
- Verificación de voltaje (Oscuro): Medir
VSENSEnuevamente. Debería caer hacia 0V (Lógica 0). La salidaVOUTdebería saltar a aprox. 5V, encendiendo el LED.
Netlist SPICE y simulación
Netlist SPICE de referencia (ngspice) — extractoNetlist SPICE completo (ngspice)
* Practical case: Automatic darkness sensor
* --- Models ---
* Generic Red LED Model
.model DLED D (IS=1e-22 N=1.5 RS=5 BV=5 IBV=10u CJO=10p)
* --- Subcircuits ---
* 74HC04 Hex Inverter Model (Behavioral)
* Pins: 1=Input, 2=Output, 7=GND, 14=VCC
* Maps to subckt args: In Out GND VCC
.subckt 74HC04 In Out GND VCC
* Robust Sigmoid Transfer Function for Inverter
* Threshold is VCC/2. Output swings between GND and VCC.
* Formula: Vout = VCC * (1 / (1 + exp(50 * (V(In) - V(VCC)/2))))
B_INV Out GND V = V(VCC) * (1 / (1 + exp(50 * (V(In) - V(VCC)/2))))
.ends
* --- Main Circuit Components ---
* 1. Power Supply
* ... (truncated in public view) ...
Copia este contenido en un archivo .cir y ejecútalo con ngspice.
* Practical case: Automatic darkness sensor
* --- Models ---
* Generic Red LED Model
.model DLED D (IS=1e-22 N=1.5 RS=5 BV=5 IBV=10u CJO=10p)
* --- Subcircuits ---
* 74HC04 Hex Inverter Model (Behavioral)
* Pins: 1=Input, 2=Output, 7=GND, 14=VCC
* Maps to subckt args: In Out GND VCC
.subckt 74HC04 In Out GND VCC
* Robust Sigmoid Transfer Function for Inverter
* Threshold is VCC/2. Output swings between GND and VCC.
* Formula: Vout = VCC * (1 / (1 + exp(50 * (V(In) - V(VCC)/2))))
B_INV Out GND V = V(VCC) * (1 / (1 + exp(50 * (V(In) - V(VCC)/2))))
.ends
* --- Main Circuit Components ---
* 1. Power Supply
* V1: 5V DC supply
V1 VCC 0 DC 5
* 2. Sensor Stage (Voltage Divider)
* R1: LDR (Light Dependent Resistor)
* Implementation: A dummy R1 is placed to satisfy the BOM.
* A parallel behavioral source (B_LDR) implements the dynamic resistance change.
R1 VCC VSENSE 100Meg
B_LDR VCC VSENSE I = V(VCC, VSENSE) / V(RES_CTRL)
* R2: 10k Potentiometer (Sensitivity Calibration)
R2 VSENSE 0 10k
* Dynamic Stimulus for LDR (Simulates Light Conditions)
* Generates a control voltage representing Ohms.
* Pulse sweeps from 1k (Light) to 100k (Dark).
* Logic: Light(1k) -> VSENSE High -> LED OFF. Dark(100k) -> VSENSE Low -> LED ON.
V_LDR_CTRL RES_CTRL 0 PULSE(1k 100k 0 200u 200u 400u 2ms)
* 3. Logic Stage
* U1: 74HC04 Hex Inverter
* Connections: Pin 1 (In)=VSENSE, Pin 2 (Out)=VOUT, Pin 7=0, Pin 14=VCC
XU1 VSENSE VOUT 0 VCC 74HC04
* 4. Output Stage
* R3: LED Current Limiting Resistor (330 Ohm)
R3 VOUT LED_ANODE 330
* D1: Red LED
D1 LED_ANODE 0 DLED
* --- Analysis Directives ---
* Transient analysis to capture the Light/Dark transition
.tran 10u 2ms
* Print specific node voltages for validation
.print tran V(VSENSE) V(VOUT) V(LED_ANODE)
* Compute DC operating point
.op
.end
Resultados de Simulación (Transitorio)
Show raw data table (224 rows)
Index time v(vsense) v(vout) v(led_anode) 0 0.000000e+00 4.545459e+00 1.916016e-44 6.555013e-37 1 1.000000e-07 4.525005e+00 3.875543e-44 2.124754e-38 2 2.000000e-07 4.504821e+00 1.070470e-43 -1.98700e-38 3 4.000000e-07 4.464726e+00 4.391831e-43 -3.30922e-39 4 8.000000e-07 4.386087e+00 5.351931e-42 4.963938e-40 5 1.600000e-06 4.240174e+00 7.789996e-38 7.726704e-38 6 3.200000e-06 3.973321e+00 1.292803e-32 1.287493e-32 7 6.400000e-06 3.529123e+00 -6.61237e-21 -6.59876e-21 8 1.280000e-05 2.884261e+00 2.263832e-08 2.262430e-08 9 1.905731e-05 2.447108e+00 4.668386e+00 1.823995e+00 10 2.344117e-05 2.212214e+00 4.999997e+00 1.833723e+00 11 2.751655e-05 2.030989e+00 5.000000e+00 1.833029e+00 12 3.266976e-05 1.840361e+00 5.000000e+00 1.833116e+00 13 4.266976e-05 1.556825e+00 5.000000e+00 1.833028e+00 14 5.266976e-05 1.349010e+00 5.000000e+00 1.833116e+00 15 6.266976e-05 1.190157e+00 5.000000e+00 1.833028e+00 16 7.266976e-05 1.064784e+00 5.000000e+00 1.833116e+00 17 8.266976e-05 9.633175e-01 5.000000e+00 1.833028e+00 18 9.266976e-05 8.795141e-01 5.000000e+00 1.833116e+00 19 1.026698e-04 8.091310e-01 5.000000e+00 1.833028e+00 20 1.126698e-04 7.491835e-01 5.000000e+00 1.833116e+00 21 1.226698e-04 6.975110e-01 5.000000e+00 1.833028e+00 22 1.326698e-04 6.525106e-01 5.000000e+00 1.833116e+00 23 1.426698e-04 6.129684e-01 5.000000e+00 1.833028e+00 ... (200 more rows) ...
Errores comunes y cómo evitarlos
- Intercambiar LDR y potenciómetro: Si intercambias
R1yR2, la lógica se invierte: la luz se ENCENDERÁ cuando haya claridad y se APAGARÁ cuando esté oscuro. Asegúrate de que la LDR esté conectada a VCC y el potenciómetro a GND. - LED insertado al revés: Si
D1no se enciende cuandoVOUTestá alto, verifica la polaridad. La pata más larga (ánodo) debe mirar hacia la resistenciaR3. - Sensibilidad demasiado baja: Si el LED nunca se apaga, es posible que
R2esté ajustado a una resistencia demasiado alta, manteniendo el voltaje enVSENSEsiempre alto. Gira la perilla para reducir la resistencia.
Solución de problemas
- El LED está siempre ENCENDIDO:
- Causa: La resistencia del potenciómetro es demasiado alta o la LDR está rota (circuito abierto).
- Solución: Disminuye el valor de
R2girando la perilla. Revisa las conexiones de la LDR.
- El LED está siempre APAGADO:
- Causa: La resistencia del potenciómetro es demasiado baja (cortocircuitando la entrada a tierra) o
U1no tiene alimentación. - Solución: Verifica que el Pin 14 tenga 5V. Aumenta ligeramente la resistencia de
R2.
- Causa: La resistencia del potenciómetro es demasiado baja (cortocircuitando la entrada a tierra) o
- El LED parpadea:
- Causa: El nivel de luz está justo en el umbral de conmutación del 74HC04.
- Solución: Ajusta
R2ligeramente para alejarte del umbral o sombrea la LDR de manera más decisiva.
Posibles mejoras y extensiones
- Añadir histéresis: Reemplaza el 74HC04 con un 74HC14 (Inversor Schmitt Trigger). Esto evita el parpadeo cuando la luz transiciona lentamente (atardecer/amanecer).
- Carga de alta potencia: Conecta el pin de salida a un transistor (como un 2N2222) y un módulo de relé para conmutar una lámpara de escritorio de 110V/220V en lugar de un pequeño LED.
Más Casos Prácticos en Prometeo.blog
Encuentra este producto y/o libros sobre este tema en Amazon
Como afiliado de Amazon, gano con las compras que cumplan los requisitos. Si compras a través de este enlace, ayudas a mantener este proyecto.




