Caso práctico: Control de nivel de tanque de agua

Prototipo de Control de nivel de tanque de agua (Maker Style)

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 VCC y el terminal negativo al nodo 0 (GND).
  • Alimentación del CI: Conecta el pin 14 de U1 a VCC y el pin 7 a 0.
  • Sensor 1 (Entrada A):
    • Conecta S1 entre VCC y el nodo SENSOR_HI.
    • Conecta R1 entre SENSOR_HI y 0 (Pull-down).
    • Conecta el pin 1 de U1 al nodo SENSOR_HI.
  • Sensor 2 (Entrada B):
    • Conecta S2 entre VCC y el nodo SENSOR_SAFE.
    • Conecta R2 entre SENSOR_SAFE y 0 (Pull-down).
    • Conecta el pin 2 de U1 al nodo SENSOR_SAFE.
  • 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_NODE y 0.

Diagrama de bloques conceptual

Conceptual block diagram — 74HC00 NAND gate
Lectura rápida: entradas → bloque principal → salida (actuador o medida). Resume el esquemático ASCII de la siguiente sección.

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)
Esquema Eléctrico

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

  1. 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_CTRL con respecto a GND. Debería leer aproximadamente 5 V. El LED verde debería estar encendido.
  2. 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.
  3. 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.
  4. 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.

🔒 Parte del contenido de esta sección es premium. Con el pase de 7 días o la suscripción mensual tendrás acceso al contenido completo (materiales, conexionado, compilación detallada, validación paso a paso, troubleshooting, mejoras/variantes y checklist) y podrás descargar el pack PDF listo para imprimir.

* 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)

Resultados de Simulación (Transitorio)

Análisis: The simulation successfully cycles through all 4 logic states. When both inputs are High (~5V), the output PUMP_CTRL goes Low (~0V) and the LED voltage drops to ~0V (OFF). In all other states (00, 01, 10), the output is High (~5V) and the LED node is ~3.46V (ON).
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

  1. 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.
  2. 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.
  3. 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

  1. 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.
  2. 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

Ir a 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.

Quiz rápido

Pregunta 1: ¿Qué componente principal se utiliza para construir el circuito digital de seguridad?




Pregunta 2: ¿Qué elemento físico simula la 'bomba de agua' en este circuito?




Pregunta 3: ¿Cuál es la condición lógica de entrada que provoca que la bomba (LED) se apague?




Pregunta 4: ¿Qué voltaje aproximado representa el estado de 'Operación normal' (LED encendido)?




Pregunta 5: ¿Qué ventaja se menciona sobre el uso de este circuito en domótica?




Pregunta 6: ¿Cuál es el propósito de la 'Parada de emergencia' descrita?




Pregunta 7: ¿Qué tipo de lógica se utiliza para gestionar el depósito según el contexto?




Pregunta 8: ¿Qué previene el sistema en el caso de uso de 'Sistemas de bombas de sumidero'?




Pregunta 9: ¿Qué ocurre en 'Operación normal' si el tanque está vacío o parcialmente lleno?




Pregunta 10: ¿Por qué se menciona el 'Llenado de tanques industriales' como caso de uso?




Carlos Núñez Zorrilla
Carlos Núñez Zorrilla
Electronics & Computer Engineer

Ingeniero Superior en Electrónica de Telecomunicaciones e Ingeniero en Informática (titulaciones oficiales en España).

Sígueme:
Scroll to Top