Proyecto 05
Estación Meteorológica
Diseño, construcción y programación de una estación meteorológica automatizada: un sistema que solo mide y muestra las condiciones del clima. Con un sensor DHT11 (temperatura y humedad del aire) y un sensor de lluvia informa el estado del tiempo en un display LCD; luego suma la presión atmosférica con un sensor BMP180 y, por último, monitorea todos esos datos de forma remota por Internet de las Cosas (IoT).
- Dificultad:
- Nivel educativo:
- Secundario. Ciclo Básico.
- Plataformas:
- Arduino UNO R3 ESP32 DevKit
Así funciona
Mirá el comportamiento del proyecto funcionando. Más abajo tenés la guía paso a paso para construirlo y programarlo.
La simulación arranca sola cuando llegás. Podés pausarla cuando quieras.
Empezá el proyecto
Elegí un nivel para arrancar. Cada uno retoma el anterior y sube la complejidad: si es tu primera vez, empezá por el inicial — ahí se arma la base del circuito.
Objetivos
- Aproximarse al conocimiento y al manejo de distintos componentes electrónicos construyendo una estación meteorológica automatizada.
- Familiarizarse con el uso de diferentes sensores que miden las condiciones climáticas —temperatura, humedad, lluvia y presión atmosférica— y analizar los datos que entregan.
- Armar un circuito con una placa Arduino (o ESP32), varios sensores y un display LCD, y programar la lectura y visualización de los datos medidos.
- Aproximarse al funcionamiento de las impresoras y los programas de impresión 3D para fabricar los soportes de los sensores.
- Utilizar Internet de las Cosas (IoT) para registrar y monitorear de forma remota los datos medidos por la estación (nivel avanzado).
Antes de empezar
- Arduino IDE 2.x instalado en la computadora
Insumos
La lista se ajusta a la plataforma elegida en el selector del encabezado.
-
Sensor DHT11 (humedad y temperatura) × 1Sensor digital: mide temperatura y humedad del aire y entrega los datos por un pin digital (no analógico, no va a A0). En el esquema original se conecta al pin 2 del UNO; en el ESP32, al GPIO 4. No admite más de una lectura por segundo.
-
Sensor de lluvia (módulo colector + comparador, tipo YL-83) × 1Detecta la presencia de lluvia. La placa colectora se moja y, junto al comparador, entrega una salida DIGITAL (llueve / no llueve) que va a un pin digital (el 3 en el original). Se calibra el umbral con su potenciómetro. Usamos la salida digital (DO), no la analógica (AO).
-
Sensor de presión BMP180 × 1Mide la presión atmosférica (en hPa) y también temperatura. Se comunica por el bus I2C: en el UNO por A4 (SDA) y A5 (SCL); en el ESP32 por GPIO 21 (SDA) y GPIO 22 (SCL). Requiere la librería Adafruit BMP085 (compatible con el BMP180).
-
Cable dupont macho-hembra × 20 -
Cable dupont hembra-hembra × 20Los módulos de sensores y el LCD I2C traen pines macho; para llegar a la protoboard o a la placa suelen usarse cables con punta hembra.
-
Protoboard × 1 -
Arduino UNO R3 × 1Solo Arduino UNO R3El original de 2019 sumaba un módulo IoT OBLOQ para el nivel avanzado; ese módulo está discontinuado. Con UNO, el nivel IoT se sigue de manera conceptual y la práctica se realiza con la variante ESP32.
-
Cable USB tipo B × 1Solo Arduino UNO R3 -
Display LCD Keypad Shield × 1Solo Arduino UNO R3Pantalla de 16x2 con formato de shield: se apila sobre el UNO y se maneja en modo paralelo (6 pines). Por su formato Arduino UNO, NO se enchufa en un ESP32.
-
Fuente de 9 V 1 A (plug centro positivo, 5,5 x 2,1 mm) × 1Opcional Solo Arduino UNO R3Para alimentar el sistema sin la computadora. El ESP32 se alimenta directamente por USB con una fuente de 5 V.
-
Placa ESP32 DevKit v1 × 1Solo ESP32 DevKitReemplaza al conjunto Arduino UNO + módulo OBLOQ del original: el ESP32 trae WiFi integrado, necesario para el nivel avanzado (IoT). Trabaja a 3,3 V (no 5 V como el UNO).
-
Display LCD 1602 con módulo I2C × 1Solo ESP32 DevKitLa alternativa del shield para el ESP32: la misma pantalla de 16x2, pero con un módulo I2C que se conecta con solo dos cables de señal (SDA y SCL) y la librería LiquidCrystal_I2C, en lugar de los 6 pines del shield paralelo del UNO. Comparte el bus I2C con el BMP180.
-
Cable micro USB (con línea de datos) × 1Solo ESP32 DevKit - Filamento PLA para impresora 3D × 1Opcional
Para imprimir los soportes de los sensores de la estación, cuando esté disponible el paquete de fabricación.
Equipamiento del taller
- Computadora
- Soldador
- Estaño
- Alicate
- Pinza de punta
- Pinza brusela
Fabricación digital
- Impresión 3D Archivos en preparación
PLA · stl, 3mf
Soportes para los sensores (DHT11, sensor de lluvia y BMP180) y una caja para la electrónica de la estación (a diseñar para esta reedición; el original solo listaba filamento PLA, sin modelo descargable).
- Corte láser CNC Archivos en preparación
MDF 3 mm · dxf, svg
Estructura de soporte de la estación —mástil o gabinete que aloje los sensores y el display— para corte láser en MDF 3 mm (a diseñar; el original no incluía modelo descargable).
Presentación
El Servicio Meteorológico Nacional realiza pronósticos y anuncia las condiciones climáticas para las distintas regiones del país. Esos datos se obtienen en muchos lugares y se promedian para anunciar el pronóstico de áreas extensas. Por eso, si quisiéramos conocer el clima de un lugar puntual —una casa, una escuela—, habría que buscar una forma propia de medir las condiciones del ambiente. Los alumnos de una escuela de Santa Rosa, en La Pampa, se propusieron justamente eso: armar una estación meteorológica en su escuela para registrar la temperatura, la humedad y la presencia de lluvia.
En este proyecto se propone diseñar, construir y programar el prototipo de una estación meteorológica automatizada: un sistema que solo mide y muestra las condiciones del clima —no acciona nada—. Con una placa ArduinoArduinoPlaca electrónica con un microcontrolador programable y comunicación USB/serial. Desde la computadora, un IDE permite escribir el código, compilarlo y cargarlo en la placa. Tiene entradas y salidas digitales (0 a 13) y entradas analógicas (A0 a A5). (o su equivalente ESP32ESP32Placa con un microcontrolador de Espressif que trae WiFi (y Bluetooth) integrados. Se programa desde el Arduino IDE igual que un Arduino, con pines llamados GPIO. En este proyecto reemplaza al conjunto Arduino UNO + módulo OBLOQ para el nivel IoT.) leemos varios sensores y mostramos sus valores en un display LCDDisplay LCDPantalla de cristal líquido que muestra texto en filas y columnas; el clásico es de 16 columnas por 2 filas. Se puede conectar en modo paralelo (muchos pines) o por I2C (solo dos cables, SDA y SCL). No representa bien las tildes ni la letra Ñ.. En el nivel inicial medimos temperatura y humedad del aire con un sensor DHT11Sensor DHT11Sensor digital que mide temperatura y humedad del aire en un mismo integrado. Digitaliza la lectura internamente y la entrega por un pin digital (no es analógico: no va a A0). Necesita una librería para leerlo y no admite más de una lectura por segundo. y la presencia de lluvia con un sensor de lluviaSensor de lluviaMódulo que detecta la presencia de lluvia. Una placa colectora con pistas conductoras se moja y, junto a un comparador, entrega una salida digital que indica «llueve / no llueve». Se conecta a un pin digital y su umbral de detección se ajusta con un potenciómetro.; en el intermedio sumamos la presión atmosféricaSensor de presión BMP180Sensor barométrico que mide la presión atmosférica (y también temperatura). Digitaliza la lectura y se comunica por el bus I2C (pines SDA y SCL). La presión se expresa en hectopascales (hPa) y necesita una librería que gestione el protocolo.; y en el avanzado monitoreamos todos esos datos de forma remota a través de Internet de las Cosas (IoT)IoT (Internet de las Cosas)Interconexión digital de objetos cotidianos con internet. Permite, por ejemplo, enviar los datos de un sensor a una central y visualizarlos desde un dispositivo móvil. Requiere un dispositivo capaz de conectarse a internet y un servidor que reciba y aloje los datos..
A lo largo de toda la guía vas a encontrar términos técnicos resaltados: al tocarlos se despliega su definición, tomada del glosario original del proyecto. Allí está la información técnica necesaria para poner el proyecto en funcionamiento, con aclaraciones sobre los distintos elementos electrónicos involucrados así como también conceptos clave.
Cómo está organizado
- Nivel inicial: instalar, con una placa Arduino, un sensor DHT11 y un sensor de lluvia, y mostrar en un display LCDDisplay LCDPantalla de cristal líquido que muestra texto en filas y columnas; el clásico es de 16 columnas por 2 filas. Se puede conectar en modo paralelo (muchos pines) o por I2C (solo dos cables, SDA y SCL). No representa bien las tildes ni la letra Ñ. la temperatura, la humedad y si llueve o no.
- Nivel intermedio: agregar un sensor BMP180Sensor de presión BMP180Sensor barométrico que mide la presión atmosférica (y también temperatura). Digitaliza la lectura y se comunica por el bus I2C (pines SDA y SCL). La presión se expresa en hectopascales (hPa) y necesita una librería que gestione el protocolo. para medir también la presión atmosférica y sumarla a la pantalla.
- Nivel avanzado: informar los datos obtenidos a un dispositivo móvil a través de Internet de las Cosas (IoT), para monitorear la estación a distancia.
Esta reedición web conserva la estructura y la propuesta didáctica del material original de 2019, con las actualizaciones registradas en la ficha del proyecto: se programa directamente en C++ (mBlock3 fue discontinuado), el nivel IoT se resuelve con el WiFi nativo del ESP32 (el módulo OBLOQ fue discontinuado), el Arduino IDE se presenta en su versión 2.x actual, el display se adapta a cada plataforma (el LCD Keypad Shield paralelo del original en el UNO, un LCD por I2C en el ESP32) y la publicación IoT se hace por cambios, para respetar el límite de la cuenta gratuita de Adafruit IO.
Cierre y extensiones
Una vez finalizado este proyecto, si se quiere continuar, es posible extenderlo. Algunas opciones sugeridas por el material original son:
- Agregar una veleta para monitorear la dirección del viento.
- Agregar un anemómetro para medir la velocidad del viento.
- Agregar un LDR (sensor lumínico) para medir la intensidad de la luz del Sol.
El proceso de resolución de problemas como los que se han planteado aquí permite la movilización y la integración de distintos saberes, en la búsqueda de soluciones posibles a una situación dada. Si bien la información fue presentada a modo de instructivo, se espera que sean los estudiantes, organizados en pequeños grupos, quienes vayan encontrando las mejores formas para construir los dispositivos. Esto implica preparar los materiales para que cada grupo cuente con todo lo necesario para la construcción del proyecto. Además, en el interior de cada grupo, los estudiantes deben distribuirse los roles y las tareas de acuerdo a las demandas que van teniendo en las actividades.
Basado en la obra original Saberes Digitales — INET / EDUCAR, Ministerio de Educación, Cultura, Ciencia y Tecnología de la Nación Argentina (2019).