Diseño de Hardware - Carvaa-7/Challenge1_IoT GitHub Wiki

Diseño de Hardware

Componentes

Componente Función Alimentación
ESP32 DevKit (30 pines) Controlador principal 5V (USB/VIN)
BME280 Temperatura, humedad, presión atmosférica 3.3V
BH1750 (GY-302) Luz ambiente/solar 3.3V
HC-SR04 Nivel de agua (distancia al espejo de agua) 5V
HX711 + celda de carga (parallel beam, 1kg) Peso del tanque 5V
LCD 16x2 (paralelo, HD44780) Visualización local 5V
4x LED (verde/amarillo/naranja/rojo) Semáforo de riesgo 3.3V (vía GPIO + resistencia)
Buzzer Alarma sonora 3.3V/5V según buzzer
Módulo relé Control de la bomba 5V
Bomba sumergible DC (mini, modelo SIG0833) Recirculación de agua Fuente externa según voltaje de la bomba

Distribución de pines

Los pines se organizaron por zona física de la placa DevKit, agrupando sensores/buzzer/bomba de un lado y LEDs/LCD del otro, para simplificar el cableado y evitar mezclar señales de control y de datos:

Lado izquierdo — sensores, buzzer y bomba

Señal GPIO
I2C SDA (BME280 + BH1750) 25
I2C SCL (BME280 + BH1750) 26
HC-SR04 TRIG 27
HC-SR04 ECHO (vía divisor 1kΩ/2kΩ) 34 (solo-entrada)
HX711 DOUT 35 (solo-entrada)
HX711 SCK 14
Buzzer 12
Relé (bomba) — pin IN 13

Lado derecho — LEDs y LCD

Señal GPIO
LED Verde (Normal) 18
LED Amarillo (Preventivo) 19
LED Naranja (Alto) 21
LED Rojo (Crítico) 22
LCD RS 15
LCD E 2
LCD D4 4
LCD D5 16
LCD D6 17
LCD D7 5

Nota de diseño: el SCK del HX711 se ubicó deliberadamente en GPIO14 (y no en GPIO2, un pin de "strapping" del ESP32) tras identificar en pruebas que un periférico activo en GPIO2 durante el arranque interfiere con la subida de firmware por USB.

Esquemáticos por componente

BME280 / BH1750 (bus I2C compartido)

  • BME280: VCC→3.3V, GND→GND, SDA→GPIO25, SCL→GPIO26, CSB→3.3V (dirección 0x76), SDO→GND
  • BH1750: VCC→3.3V, GND→GND, SDA→GPIO25, SCL→GPIO26, ADDR→GND (dirección 0x23)

HC-SR04

  • VCC→5V, GND→GND, TRIG→GPIO27 (directo), ECHO→divisor 1kΩ/2kΩ→GPIO34

HX711 + celda de carga

  • VCC→5V, GND→GND, DOUT→GPIO35, SCK→GPIO14
  • Celda: Rojo→E+, Negro→E-, Blanco→A-, Verde→A+

Buzzer (driver con transistor 2N2222, alternativa evaluada)