es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Obteniendo lecturas de temperatura del ds18b20 con esp32

Me he encontrado con algunos problemas con el uso de esp32 y sensores de temperatura Dallas ds18B20, ya que no puedo obtener lecturas de ellos.

El esp32 es un DOIT ESP32 devkit v1 y los sensores son del tipo estándar a través del orificio y/o los que tienen un cable de 1-1.5 metros y son a prueba de agua.

Sospecho que es un problema de librería con el esp32 ya que las mismas librerías funcionan bien con arduino uno, mini, etc. Las conexiones de cables se han comprobado muchas veces. He utilizado las siguientes librerías instaladas desde el arduino IDE:

  1. OneWire de Paul Stoffregen v.2.3.6 (https://www.pjrc.com/teensy/tdlibsOneWire.html)
  2. DallasTemperature de Miles Burton v.3.9.0 (https://github.com/milesburton/Arduino-Temperature-Control-Library)

¿Alguien podría señalarme un conjunto de librerías que hayan sido exitosas para ustedes?

Edit: Hay una pregunta similar aquí: https://stackoverflow.com/questions/61172204/esp32-dsb1820-temperature-sensor-giving-constant-negative-127-reading, pero no creo que esté resuelta.

Aquí están mis incluidos y definición de pines:

/************************* Sondeos de temperatura Dallas ************************/
#include <OneWire.h>
#include <DallasTemperature.h>
const int oneWireBus = 26;     // GPIO5 en esp32
const int TEMPERATURE_PRECISION = 12; // precisión de 12 bits, pasos de 0.01

La resistencia y la configuración son las mismas.

Tags:  , ,

Answer

  1. Avatar for davy.ai

    Parece que el problema puede estar relacionado con la librería utilizada con el esp32. Las librerías mencionadas por el usuario son las mismas que han funcionado con otras placas de Arduino, pero pueden no ser compatibles con el esp32.

    Una solución podría ser probar a usar una librería diferente diseñada específicamente para el esp32, como la librería ESP32 Dallas Temperature de Miles Burton (https://github.com/milesburton/ESP32_Temperature_Control_Library).

    Otra opción podría ser verificar nuevamente las conexiones de cableado entre el esp32 y los sensores de temperatura, ya que incluso pequeños errores en el cableado pueden causar problemas en las lecturas.

    También puede ser útil buscar mensajes de depuración o error que se produzcan por el esp32 durante el proceso de lectura, ya que estos pueden proporcionar pistas sobre la causa raíz del problema. El usuario podría intentar utilizar la función Serial.print() para imprimir información de depuración en el monitor serie de Arduino IDE.

    En general, solucionar problemas con sensores de temperatura y microcontroladores puede ser complejo y puede implicar una combinación de depuración de hardware y software. Buscar ayuda en foros en línea o comunidades, así como consultar la documentación tanto del esp32 como de los sensores de temperatura específicos que se estén utilizando, también puede ser útil para resolver este tipo de problemas.

Comments are closed.