Arduino UNO R4 - Sensor de temperatura

Este tutorial te enseña a usar el sensor de temperatura DS18B20 1-Wire con el Arduino UNO R4. En detalle, aprenderemos:

sensor de temperatura del Arduino UNO R4

Hardware Requerido

1×Arduino UNO R4 WiFi or Arduino UNO R4 Minima
1×Alternatively, DIYables STEM V4 IoT, Compatible with Arduino Uno R4 WiFi
1×Cable USB Tipo-A a Tipo-C (para PC USB-A)
1×Cable USB Tipo-C a Tipo-C (para PC USB-C)
1×Sensor de Temperatura DS18B20 (con Adaptador)
1×Sensor de Temperatura DS18B20 (sin Adaptador)
1×Cables Puente
1×(Recomendado) Shield de Bloque de Terminales de Tornillo para Arduino Uno R4
1×(Recomendado) Shield de Protoboard para Arduino Uno R4
1×(Recomendado) Carcasa para Arduino Uno R4
1×(Recomendado) Divisor de Alimentación para Arduino Uno R4
1×(Recomendado) Placa Base de Prototipado y Kit de Protoboard para Arduino Uno

Or you can buy the following kits:

1×DIYables STEM V4 IoT Starter Kit (Arduino included)
1×DIYables Sensor Kit (30 sensors/displays)
1×DIYables Sensor Kit (18 sensors/displays)
Divulgación: Algunos de los enlaces proporcionados en esta sección son enlaces de afiliado de Amazon. Podemos recibir una comisión por las compras realizadas a través de estos enlaces sin costo adicional para usted. Apreciamos su apoyo.

Buy Note: Many DS18B20 sensors available in the market are unreliable. We strongly recommend buying the sensor from the DIYables brand using the link provided above. We tested it, and it worked reliably.

Acerca del sensor de temperatura 1-Wire DS18B20

Diagrama de pines

El sensor de temperatura DS18B20 viene con tres pines.

  • Pin GND: Conéctalo a GND (0 V).
  • Pin VCC: Conéctalo a VCC (5 V o 3,3 V).
  • Pin DATA: Este es el bus de datos 1-Wire. Conéctalo a un pin digital en el Arduino UNO R4.

El sensor viene en dos tipos: el encapsulado TO-92, que parece un transistor, y la sonda impermeable. En este tutorial, usaremos el tipo de sonda impermeable.

Diagrama de pines del sensor de temperatura DS18B20

Para conectar un sensor de temperatura DS18B20 a un Arduino UNO R4, necesitas una resistencia pull-up, lo que puede resultar complicado. Algunos fabricantes proporcionan un adaptador de cableado con una resistencia pull-up y un bloque de terminales con tornillos ya incluidos, lo que simplifica la configuración.

Diagrama de Cableado

  • Diagrama de cableado de protoboard
Diagrama de cableado del sensor de temperatura de Arduino UNO R4

This image is created using Fritzing. Click to enlarge image

  • Diagrama de cableado con el adaptador de cableado
Diagrama de cableado Arduino UNO R4 DS18B20

This image is created using Fritzing. Click to enlarge image

Ver La mejor forma de alimentar Arduino Uno R4 y otros componentes.

Recomendamos comprar un sensor DS18B20 con un adaptador de cableado. Este adaptador facilita la conexión porque ya incluye una resistencia, por lo que no necesitas una resistencia adicional.

Cómo programar para el sensor de temperatura DS18B20

  • Incluir la biblioteca:
#include <OneWire.h> #include <DallasTemperature.h>
  • Crear un objeto OneWire y un objeto DallasTemperature para el pin conectado al pin DATA del sensor.
OneWire oneWire(SENSOR_PIN); // Initialize a new OneWire instance on the sensor pin DallasTemperature DS18B20(&oneWire); // Create a DallasTemperature object linked to the OneWire instance
  • Configurar el sensor:
DS18B20.begin(); // Start the sensor initialization process
  • Envía el comando para comprobar las temperaturas:
DS18B20.requestTemperatures();
  • Verifica la temperatura en grados Celsius.
temperature_C = DS18B20.getTempCByIndex(0);
  • (Opcional) Cambiar la temperatura de Celsius a Fahrenheit.
temperature_F = temperature_C * 9 / 5 + 32;

Código Arduino UNO R4

/* * Este código de Arduino UNO R4 fue desarrollado por es.newbiely.com * Este código de Arduino UNO R4 se proporciona al público sin ninguna restricción. * Para tutoriales completos y diagramas de cableado, visite: * https://es.newbiely.com/tutorials/arduino-uno-r4/arduino-uno-r4-temperature-sensor */ #include <OneWire.h> #include <DallasTemperature.h> #define SENSOR_PIN 4 // The Arduino UNO R4 pin connected to DS18B20 sensor's DQ pin OneWire oneWire(SENSOR_PIN); // setup a oneWire instance DallasTemperature DS18B20(&oneWire); // pass oneWire to DallasTemperature library void setup() { Serial.begin(9600); // initialize serial DS18B20.begin(); // initialize the sensor } void loop() { DS18B20.requestTemperatures(); // send the command to get temperatures float temperature_C = DS18B20.getTempCByIndex(0); // read temperature in Celsius float temperature_F = temperature_C * 9 / 5 + 32; // convert Celsius to Fahrenheit Serial.print("Temperature: "); Serial.print(temperature_C); // print the temperature in Celsius Serial.print("°C"); Serial.print(" ~ "); // separator between Celsius and Fahrenheit Serial.print(temperature_F); // print the temperature in Fahrenheit Serial.println("°F"); delay(500); }

Pasos R\u00e1pidos

Siga estas instrucciones paso a paso:

  • Si es la primera vez que usa el Arduino Uno R4 WiFi/Minima, consulte el tutorial sobre configurar el entorno para Arduino Uno R4 WiFi/Minima en el IDE de Arduino.
  • Conecte el sensor de temperatura DS18B20 de 1-Wire al Arduino Uno R4 de acuerdo con el diagrama proporcionado.
  • Conecte la placa Arduino Uno R4 a su computadora mediante un cable USB.
  • Abra el IDE de Arduino en su computadora.
  • Seleccione la placa Arduino Uno R4 adecuada (p. ej., Arduino Uno R4 WiFi) y el puerto COM.
  • Haga clic en el icono Bibliotecas en el lado izquierdo del IDE de Arduino.
  • Busque DallasTemperature y encuentre la biblioteca de Miles Burton.
  • Haga clic en el botón Instalar para agregar la biblioteca DallasTemperature.
Biblioteca Dallas Temperature para Arduino UNO R4
  • Necesitas instalar una dependencia de la biblioteca
  • Haz clic en el botón Instalar todo para instalar la biblioteca OneWire.
Biblioteca OneWire para Arduino UNO R4
  • Copia el código y ábrelo en el IDE de Arduino.
  • Haz clic en el botón Subir en el IDE de Arduino para enviar el código a Arduino UNO R4.
  • Coloca el sensor en agua caliente y fría, o sosténlo en tu mano.
  • Verifica los resultados en el Monitor Serial.
COM6
Send
Temperature: 26.31°C ~ 79.36°F Temperature: 26.44°C ~ 79.59°F Temperature: 26.50°C ~ 79.70°F Temperature: 26.56°C ~ 79.81°F Temperature: 27.06°C ~ 80.71°F Temperature: 27.75°C ~ 81.95°F Temperature: 28.37°C ~ 83.07°F Temperature: 29.00°C ~ 84.20°F Temperature: 29.56°C ~ 85.21°F Temperature: 30.00°C ~ 86.00°F Temperature: 30.31°C ~ 86.56°F Temperature: 30.62°C ~ 87.12°F Temperature: 30.87°C ~ 87.57°F
Autoscroll Show timestamp
Clear output
9600 baud  
Newline  

Video Tutorial

Estamos considerando crear tutoriales en video. Si considera que los tutoriales en video son importantes, suscríbase a nuestro canal de YouTube para motivarnos a crear los videos.

※ NUESTROS MENSAJES

  • No dude en compartir el enlace de este tutorial. Sin embargo, por favor no use nuestro contenido en otros sitios web. Hemos invertido mucho esfuerzo y tiempo en crear el contenido, ¡por favor respete nuestro trabajo!