Subiendo Datos del Sensor BME280 a ThingSpeak usando ESP32


Introducción

En este tutorial, te enseñaremos cómo conectar un sensor BME280 a un ESP32 para leer datos de temperatura, humedad y presión atmosférica, y subir estos datos a ThingSpeak en tiempo real. Este tipo de proyectos es ideal para aplicaciones IoT como estaciones meteorológicas caseras o sistemas de monitoreo ambiental.

¿Qué es el BME280?

El BME280 es un sensor avanzado de Bosch que permite medir tres variables ambientales: temperatura, humedad relativa y presión atmosférica. Gracias a su bajo consumo y tamaño compacto, es ampliamente utilizado en proyectos IoT.

Características principales:

  • Rango de temperatura: -40 a 85 °C
  • Rango de humedad: 0% a 100%
  • Rango de presión: 300 a 1100 hPa
  • Comunicación: I2C (utilizado en este tutorial) y SPI

Componentes necesarios

Antes de comenzar, asegúrate de tener los siguientes componentes:

  • ESP32
  • Sensor BME280 (versión I2C)
  • Cables de conexión
  • Cuenta en ThingSpeak

Un Esp32

Características del módulo ESP32-T

Conectividad


El módulo ESP32 dispone de todas las variantes del WiFi:

  • 802.11 b/g/n/e/i/n
  • Wi-Fi Direct (P2P), P2P Discovery, P2P Group Owner mode and P2P Power Management

Esta versión nueva incluye la conectividad mediante Bluethoot de bajo consumo

  • Bluetooth v4.2 BR/EDR and BLE
  • BLE Beacon

Además, puede comunicarse mediante los protocoles SPI, I2C, UART, MAC Ethernet, Host SD

Prestaciones del microcontrolador


La CPU está formado por un SoC modelo Tensilica LX6 con las siguientes características y memoria

  • Doble núcleo de 32 bits con velocidad de 160MHz
  • Memoria ROM de 448 kBytes
  • Memoria SRAM de 520kBytes

Dispne de 48 Pines

  • 18 ADC de 12 bits
  • 2 DAC de 8 bits
  • 10 pines sensores de contacto
  • 16 PWM
  • 20 Entradas/salidas digitales

Alimentación y modos de consumo

Para un correcto funcionamiento del ESP32 es necesario subministrar un voltaje de entre 2,8V y 3,6V. La energía que consume depende del modo de funcionamiento. Contiene un modo, el Ultra Low Power Solution (ULP), en que se continúan realizando tareas básicas (ADC, RTC…) en el modo Sleep.


Pines hembra

Cables dupont hembra macho


PCB

Descargar archivo gerber –> Gerber_esp32


Circuito


Conexión del Sensor BME280 al ESP32

Utilizaremos la interfaz I2C para conectar el BME280 al ESP32. A continuación, te mostramos las conexiones necesarias:

Conexiones I2C:

  • VCC (BME280)3.3V (ESP32)
  • GND (BME280)GND (ESP32)
  • SDA (BME280)GPIO 21 (ESP32)
  • SCL (BME280)GPIO 22 (ESP32)

Tip: Si tu sensor BME280 no tiene resistencias pull-up integradas en las líneas SDA y SCL, añade resistencias externas de 4.7kΩ entre cada línea y el voltaje de 3.3V.

Configuración de ThingSpeak

Antes de subir los datos, necesitamos configurar ThingSpeak:

  1. Crear una cuenta en ThingSpeak si no tienes una.
  2. Crear un nuevo canal con los campos necesarios (por ejemplo, “Temperatura”, “Humedad” y “Presión”).
  3. Una vez creado, copiar la clave de API de escritura del canal, que utilizaremos en el código para enviar los datos.

Código para Subir Datos a ThingSpeak

Aquí tienes el código necesario para leer los datos del sensor BME280 y subirlos a ThingSpeak utilizando un ESP32:

Explicación del Código

  1. Conexión a Wi-Fi: Utilizamos las credenciales Wi-Fi para conectar el ESP32 a Internet.
  2. Lectura de datos: El ESP32 obtiene los valores de temperatura, humedad y presión del sensor BME280.
  3. Envío de datos a ThingSpeak: Los datos se envían utilizando una solicitud HTTP GET. Asegúrate de haber copiado correctamente tu API Key y de actualizar el código con tus credenciales de red Wi-Fi.

Verificando los Datos en ThingSpeak

Una vez que el código esté cargado y funcionando en el ESP32, podrás ver los datos en tiempo real en el dashboard de ThingSpeak. Simplemente ingresa a tu canal y observa cómo se actualizan los gráficos con cada medición.

Ahora sabes cómo configurar un ESP32 para leer datos de un sensor BME280 y subirlos a ThingSpeak. Esta configuración es excelente para proyectos de IoT, como estaciones meteorológicas y sistemas de monitoreo ambiental. A partir de aquí, puedes expandir tu proyecto añadiendo más sensores o conectándolo a otras plataformas IoT.


No te pierdas ningún video más suscríbete a nuestro canal de telegram https://t.me/carlosvolt_electronica_robotica



PROYECTO RECOMENDADO

Deja una respuesta