Nivel: Básico. Implementa una parada de seguridad lógica para una bomba de agua usando una compuerta NAND.
Objetivo y caso de uso
En esta sesión, construirás un circuito digital de seguridad utilizando una compuerta NAND 74HC00. El circuito monitorea dos sensores de nivel de líquido y corta automáticamente la energía a una «bomba» (simulada por un LED) solo cuando ambos sensores indican que el tanque está peligrosamente lleno.
- Llenado de tanques industriales: Previene derrames químicos asegurando que los sensores redundantes coincidan antes de activar un apagado de emergencia.
- Sistemas de bombas de sumidero: Previene el quemado del motor o desbordamientos gestionando estados lógicos entre las marcas de nivel alto y desbordamiento crítico.
- Domótica: Lógica simple para la gestión de depósitos sin necesidad de un microcontrolador.
Resultado esperado:
* Operación normal: El LED (bomba) permanece ENCENDIDO (Lógica Alta, ~5 V) cuando el tanque está vacío o parcialmente lleno.
* Parada de emergencia: El LED se APAGA (Lógica Baja, ~0 V) inmediatamente cuando ambas entradas de interruptor están en Lógica Alta (simulando detección de agua).
* Validación: Se verificará una Tabla de verdad específica donde solo la condición de entrada 1, 1 resulta en una salida de 0.
Público objetivo: Estudiantes de electrónica de nivel básico y aficionados.
Materiales
- V1: Fuente de alimentación de 5 V CC, función: Alimentación del circuito principal.
- U1: 74HC00, función: CI de cuatro compuertas NAND de 2 entradas.
- S1: Interruptor de palanca SPST, función: Simulador de sensor de nivel alto.
- S2: Interruptor de palanca SPST, función: Simulador de sensor de nivel de seguridad.
- R1: Resistencia de 10 kΩ, función: Pull-down para S1.
- R2: Resistencia de 10 kΩ, función: Pull-down para S2.
- R3: Resistencia de 330 Ω, función: Limitación de corriente para el LED de estado de la bomba.
- D1: LED verde, función: Indicador de estado de la bomba (ENCENDIDO = Funcionando, APAGADO = Detenida).
Pin-out del CI utilizado
Chip: 74HC00 (Cuatro compuertas NAND de 2 entradas)
| Pin | Nombre | Función lógica | Conexión en este caso |
|---|---|---|---|
| 1 | 1 A | Entrada A | Conectado al Sensor S1 |
| 2 | 1B | Entrada B | Conectado al Sensor S2 |
| 3 | 1Y | Salida Y | Conectado al LED (Bomba) |
| 7 | GND | Tierra | Conectado a 0 V |
| 14 | VCC | Alimentación | Conectado a 5 V |
Guía de conexionado
Construye el circuito siguiendo estas conexiones de nodos. Asegúrate de que la fuente de alimentación esté apagada mientras construyes.
- Riel de alimentación: Conecta el terminal positivo de V1 al nodo
VCCy el terminal negativo al nodo0(GND). - Alimentación del CI: Conecta el pin 14 de U1 a
VCCy el pin 7 a0. - Sensor 1 (Entrada A):
- Conecta S1 entre
VCCy el nodoSENSOR_HI. - Conecta R1 entre
SENSOR_HIy0(Pull-down). - Conecta el pin 1 de U1 al nodo
SENSOR_HI.
- Conecta S1 entre
- Sensor 2 (Entrada B):
- Conecta S2 entre
VCCy el nodoSENSOR_SAFE. - Conecta R2 entre
SENSOR_SAFEy0(Pull-down). - Conecta el pin 2 de U1 al nodo
SENSOR_SAFE.
- Conecta S2 entre
- Control de bomba (Salida):
- Conecta el pin 3 de U1 al nodo
PUMP_CTRL. - Conecta D1 (Ánodo) al nodo
PUMP_CTRL. - Conecta D1 (Cátodo) al nodo
LED_NODE. - Conecta R3 entre
LED_NODEy0.
- Conecta el pin 3 de U1 al nodo
Diagrama de bloques conceptual

Esquemático
Title: Practical case: Water tank level control
INPUTS (Sensors) PROCESSING (U1: 74HC00) OUTPUT (Pump Indicator)
====================== =========================== ===========================
[ VCC ]
|
[ S1: High Sensor ]
|
+--(Node: SENSOR_HI)---------------> [ U1: Pin 1 (Input A) ]
| |
[ R1: 10k Pull-Down ] |
| v
[ GND ] [ NAND Gate ] --(Node: PUMP_CTRL)--> [ D1: Green LED ]
^ |
| (Node: LED_NODE)
[ VCC ] | |
| | [ R3: 330R ]
[ S2: Safe Sensor ] | |
| | [ GND ]
+--(Node: SENSOR_SAFE)-------------> [ U1: Pin 2 (Input B) ]
|
[ R2: 10k Pull-Down ]
|
[ GND ]
(Note: U1 Power Connections -> Pin 14: VCC, Pin 7: GND)
Tabla de verdad
El 74HC00 actúa como un bloqueo de seguridad. La bomba funciona (Salida 1) por defecto y solo se detiene (Salida 0) cuando se cumple la condición de peligro específica (1, 1).
| S1 (Nivel alto) | S2 (Nivel de seguridad) | Voltaje en Pin 3 | Estado de bomba (LED) | Estado lógico |
|---|---|---|---|---|
| 0 (Seco) | 0 (Seco) | Alto (~5 V) | ENCENDIDO | Seguro |
| 0 (Seco) | 1 (Húmedo) | Alto (~5 V) | ENCENDIDO | Error de sensor/Seguro |
| 1 (Húmedo) | 0 (Seco) | Alto (~5 V) | ENCENDIDO | Nivel de advertencia |
| 1 (Húmedo) | 1 (Húmedo) | Bajo (~0 V) | APAGADO | PARADA (Peligro) |
Mediciones y pruebas
- Comprobación del estado por defecto: Asegúrate de que S1 y S2 estén abiertos (OFF). Enciende el circuito. Mide el voltaje en el nodo
PUMP_CTRLcon respecto a GND. Debería leer aproximadamente 5 V. El LED verde debería estar encendido. - Prueba de un solo sensor: Cierra solo S1. El LED debería permanecer ENCENDIDO. Abre S1 y cierra solo S2. El LED debería permanecer ENCENDIDO.
- Prueba de parada de seguridad: Cierra ambos S1 y S2 simultáneamente.
- Mide el voltaje en el nodo
PUMP_CTRL. Debería caer a cerca de 0 V (< 0.1 V). - Confirma que el LED se APAGA inmediatamente.
- Mide el voltaje en el nodo
- Recuperación: Abre cualquiera de los interruptores; el LED debería volver a ENCENDERSE.
Netlist SPICE y simulación
Netlist SPICE de referencia (ngspice) — extractoNetlist SPICE completo (ngspice)
* Practical case: Water tank level control
.width out=256
* --- Models ---
* Generic Green LED Model
.model DLED D(IS=1e-14 N=2 RS=10 BV=5 IBV=10u CJO=10p)
* Ideal Voltage-Controlled Switch Model
.model SW_IDEAL sw(vt=2.5 vh=0 ron=1 roff=10Meg)
* --- Power Supply ---
* V1: 5 V DC power supply
V1 VCC 0 DC 5
* --- Input Sensors (Switches + Pull-downs) ---
* S1: High Level Sensor simulator
* Modeled as a switch connected to VCC, controlled by a pulse source (V_ACT1)
* Timing: Period 100us, covers logic states quickly
V_ACT1 ACT1 0 PULSE(0 5 0 1u 1u 50u 100u)
S1 VCC SENSOR_HI ACT1 0 SW_IDEAL
R1 SENSOR_HI 0 10k
* ... (truncated in public view) ...
Copia este contenido en un archivo .cir y ejecútalo con ngspice.
* Practical case: Water tank level control
.width out=256
* --- Models ---
* Generic Green LED Model
.model DLED D(IS=1e-14 N=2 RS=10 BV=5 IBV=10u CJO=10p)
* Ideal Voltage-Controlled Switch Model
.model SW_IDEAL sw(vt=2.5 vh=0 ron=1 roff=10Meg)
* --- Power Supply ---
* V1: 5 V DC power supply
V1 VCC 0 DC 5
* --- Input Sensors (Switches + Pull-downs) ---
* S1: High Level Sensor simulator
* Modeled as a switch connected to VCC, controlled by a pulse source (V_ACT1)
* Timing: Period 100us, covers logic states quickly
V_ACT1 ACT1 0 PULSE(0 5 0 1u 1u 50u 100u)
S1 VCC SENSOR_HI ACT1 0 SW_IDEAL
R1 SENSOR_HI 0 10k
* S2: Safety Level Sensor simulator
* Modeled as a switch connected to VCC, controlled by a pulse source (V_ACT2)
* Timing: Period 200us, provides different state combinations with S1
V_ACT2 ACT2 0 PULSE(0 5 0 1u 1u 100u 200u)
S2 VCC SENSOR_SAFE ACT2 0 SW_IDEAL
R2 SENSOR_SAFE 0 10k
* --- Logic IC: U1 (74HC00 Quad 2-Input NAND Gate) ---
* Wiring Guide connections:
* Pin 1 (Input A) -> SENSOR_HI
* Pin 2 (Input B) -> SENSOR_SAFE
* Pin 3 (Output) -> PUMP_CTRL
* Pin 7 (GND) -> 0
* Pin 14 (VCC) -> VCC
.subckt 74HC00 1 2 3 7 14
* Behavioral NAND implementation using continuous sigmoid functions for convergence
* V(3) = VCC * (1 - (Sigmoid(In1) * Sigmoid(In2)))
* Threshold is set to VCC/2 (approx 2.5V)
B_NAND 3 7 V = V(14) * (1 - ( (1/(1+exp(-50*(V(1)-0.5*V(14))))) * (1/(1+exp(-50*(V(2)-0.5*V(14))))) ))
.ends
XU1 SENSOR_HI SENSOR_SAFE PUMP_CTRL 0 VCC 74HC00
* --- Output Stage ---
* D1: Pump Status LED (Green)
* R3: Current limiting resistor
D1 PUMP_CTRL LED_NODE DLED
R3 LED_NODE 0 330
* --- Simulation Directives ---
.op
* Transient analysis for 500us to capture full truth table sequence
.tran 1u 500u
* --- Output Printing ---
* Required to generate simulation log
.print tran V(SENSOR_HI) V(SENSOR_SAFE) V(PUMP_CTRL) V(LED_NODE)
Resultados de Simulación (Transitorio)
Show raw data table (810 rows)
Index time v(sensor_hi) v(sensor_safe) v(pump_ctrl) v(led_node) 0 0.000000e+00 4.995005e-03 4.995005e-03 5.000000e+00 3.463208e+00 1 1.000000e-08 4.995005e-03 4.995005e-03 5.000000e+00 3.463209e+00 2 2.000000e-08 4.995005e-03 4.995005e-03 5.000000e+00 3.463209e+00 3 4.000000e-08 4.995005e-03 4.995005e-03 5.000000e+00 3.463209e+00 4 8.000000e-08 4.995005e-03 4.995005e-03 5.000000e+00 3.463209e+00 5 1.600000e-07 4.995005e-03 4.995005e-03 5.000000e+00 3.463209e+00 6 3.200000e-07 4.995005e-03 4.995005e-03 5.000000e+00 3.463209e+00 7 3.562500e-07 4.995005e-03 4.995005e-03 5.000000e+00 3.463209e+00 8 4.196875e-07 4.995005e-03 4.995005e-03 5.000000e+00 3.463209e+00 9 4.372461e-07 4.995005e-03 4.995005e-03 5.000000e+00 3.463209e+00 10 4.679736e-07 4.995005e-03 4.995005e-03 5.000000e+00 3.463209e+00 11 4.795524e-07 4.995005e-03 4.995005e-03 5.000000e+00 3.463209e+00 12 4.902290e-07 4.995005e-03 4.995005e-03 5.000000e+00 3.463209e+00 13 5.023412e-07 4.999500e+00 4.999500e+00 4.417025e-69 -7.81556e-01 14 5.138120e-07 4.999500e+00 4.999500e+00 4.417025e-69 1.002344e-01 15 5.170059e-07 4.999500e+00 4.999500e+00 4.417025e-69 3.466376e-02 16 5.182905e-07 4.999500e+00 4.999500e+00 4.417025e-69 2.349502e-02 17 5.201200e-07 4.999500e+00 4.999500e+00 4.417025e-69 1.345184e-02 18 5.222326e-07 4.999500e+00 4.999500e+00 4.417025e-69 7.036188e-03 19 5.244685e-07 4.999500e+00 4.999500e+00 4.417025e-69 3.539225e-03 20 5.268938e-07 4.999500e+00 4.999500e+00 4.417025e-69 1.673565e-03 21 5.291278e-07 4.999500e+00 4.999500e+00 4.417025e-69 8.446489e-04 22 5.313933e-07 4.999500e+00 4.999500e+00 4.417025e-69 4.221950e-04 23 5.337647e-07 4.999500e+00 4.999500e+00 4.417025e-69 2.037947e-04 ... (786 more rows) ...
Errores comunes y cómo evitarlos
- Entradas flotantes: Olvidar R1 o R2 resulta en conmutaciones erráticas porque las entradas CMOS captan ruido eléctrico cuando los interruptores están abiertos. Solución: Asegúrate siempre de que las entradas estén conectadas a Tierra a través de resistencias cuando el interruptor esté abierto.
- Polaridad del LED: Conectar el LED al revés evita que se encienda incluso cuando la lógica es Alta. Solución: Asegúrate de que la pata más larga (Ánodo) mire hacia el pin de salida del CI.
- Cortocircuitar la salida a Tierra: Conectar el Pin 3 directamente a Tierra para «probarlo» dañará el CI cuando intente emitir una salida Alta. Solución: Mide siempre el voltaje con un multímetro en paralelo, nunca fuerces un nodo a tierra con un cable.
Solución de problemas
- Síntoma: El LED siempre está ENCENDIDO, incluso cuando ambos interruptores están cerrados.
- Causa: Las resistencias R1/R2 podrían estar conectadas a VCC en lugar de GND, o el CI está puenteado.
- Solución: Verifica que R1 y R2 se conecten al riel negativo (0) y los interruptores se conecten a VCC.
- Síntoma: El LED nunca se ENCIENDE.
- Causa: LED invertido o R3 tiene un valor demasiado alto/abierto.
- Solución: Verifica la orientación de D1 y la continuidad de R3.
- Síntoma: El circuito se comporta de manera errática al tocar los cables.
- Causa: Entradas flotantes (Faltan resistencias pull-down).
- Solución: Verifica que R1 y R2 estén conectados firmemente al nodo
0.
Posibles mejoras y extensiones
- Alarma visual y sonora: Conecta un zumbador activo adicional (a través de un controlador de transistor) a la salida, pero invierte la señal primero para que el zumbador suene cuando la bomba se detenga.
- Accionamiento de motor: Reemplaza el LED con un transistor NPN (como el 2N2222) y un relé para controlar un motor de bomba de agua de CC real, añadiendo un diodo flyback para protección.
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.




