Nota

¡Hola, bienvenido a la Comunidad de Entusiastas de Raspberry Pi, Arduino y ESP32 en Facebook! Profundiza en Raspberry Pi, Arduino y ESP32 junto a otros entusiastas.

¿Por qué unirte?

  • Soporte experto: Resuelve problemas postventa y desafíos técnicos con la ayuda de nuestra comunidad y equipo.

  • Aprende y comparte: Intercambia consejos y tutoriales para mejorar tus habilidades.

  • Vistas previas exclusivas: Accede a nuevos anuncios de productos y avances antes que nadie.

  • Descuentos especiales: Disfruta de descuentos exclusivos en nuestros productos más recientes.

  • Promociones festivas y sorteos: Participa en sorteos y promociones de temporada.

👉 ¿Estás listo para explorar y crear con nosotros? Haz clic en [aquí] y únete hoy mismo!

Lección 46: Clima en Tiempo Real Desde @OpenWeatherMap

El proyecto IoT Open Weather Display utiliza la placa ESP32 y un módulo LCD1602 con interfaz I2C para crear una pantalla de información del clima que recupera datos desde la API de OpenWeatherMap.

Este proyecto es una excelente introducción al trabajo con APIs, conectividad Wi-Fi y visualización de datos en un módulo LCD usando la placa ESP32. Con el IoT Open Weather Display, puedes acceder fácilmente a las actualizaciones del clima en tiempo real, lo que lo convierte en una solución ideal para entornos domésticos o de oficina.

Componentes Requeridos

En este proyecto, necesitamos los siguientes componentes.

Es definitivamente conveniente comprar un kit completo, aquí tienes el enlace:

Nombre

ARTÍCULOS EN ESTE KIT

ENLACE

Universal Maker Sensor Kit

94

BUY

También puedes comprarlos por separado desde los enlaces a continuación.

INTRODUCCIÓN AL COMPONENTE

ENLACE DE COMPRA

ESP32 & Development Board (Placa ESP32)

Comprar

I2C LCD 1602

Comprar

Obtener las claves API de OpenWeather

OpenWeather es un servicio en línea, propiedad de OpenWeather Ltd, que proporciona datos meteorológicos globales a través de una API, incluyendo datos meteorológicos actuales, pronósticos, previsiones y datos históricos del clima para cualquier ubicación geográfica.

  1. Visita OpenWeather para iniciar sesión/crear una cuenta.

    ../_images/OWM-1.png
  2. Haz clic en la página de la API desde la barra de navegación.

    ../_images/OWM-2.png
  3. Busca Current Weather Data y haz clic en Suscribirse.

    ../_images/OWM-3.png
  4. Bajo Current weather and forecasts collection, suscríbete al servicio adecuado. En nuestro proyecto, la opción gratuita es suficiente.

    ../_images/OWM-4.png
  5. Copia la clave de la página API keys.

    ../_images/OWM-5.png

Completa tu Dispositivo

  1. Construye el circuito.

  2. Abre el código.

    • Abre el archivo Lesson_46_OpenWeatherMap.ino ubicado en el directorio universal-maker-sensor-kit\esp32\Lesson_46_OpenWeatherMap, o copia el código en el IDE de Arduino.

    • Después de seleccionar la placa (ESP32 Dev Module) y el puerto adecuado, haz clic en el botón Upload.

    • ¿Siempre muestra «Unknown COMxx»?

    • Las bibliotecas LiquidCrystal I2C y Arduino_JSON son utilizadas aquí, puedes instalarlas desde el Administrador de Bibliotecas.

  3. Localiza las siguientes líneas y modifícalas con tu <SSID> y <PASSWORD>.

    // Reemplaza las siguientes variables con tu combinación de SSID/Contraseña
    const char* ssid = "<SSID>";
    const char* password = "<PASSWORD>";
    
  4. Rellena las claves API que copiaste anteriormente en openWeatherMapApiKey.

    // Tu nombre de dominio con ruta URL o dirección IP con ruta
    String openWeatherMapApiKey = "<openWeatherMapApiKey>";
    
  5. Reemplaza con tu código de país y ciudad.

    // Reemplaza con tu código de país y ciudad
    // Encuentra el código de país en https://openweathermap.org/find
    String city = "<CITY>";
    String countryCode = "<COUNTRY CODE>";
    
  6. Después de ejecutar el código, verás la hora y la información del clima de tu ubicación en el LCD I2C1602.

Nota

Cuando el código esté en ejecución, si la pantalla está en blanco, puedes girar el potenciómetro en la parte trasera del módulo para aumentar el contraste.