Arduino Mega - Capteur de température

Ce guide vous montre comment utiliser le capteur de température DS18B20 1-Wire avec la carte Arduino Mega. Nous allons apprendre en détail :

Arduino Mega capteur de température

Matériel requis

1×Arduino Mega
1×Câble USB 2.0 type A/B
1×Capteur de température DS18B20 (AVEC Adaptateur)
1×Capteur de température DS18B20 (SANS Adaptateur)
1×Câbles de connexion
1×Recommandé: Screw Terminal Block Shield for Arduino Uno/Mega
1×Recommandé: Breadboard Shield for Arduino Mega
1×Recommandé: Enclosure for Arduino Mega

Ou vous pouvez acheter les kits suivants:

1×Kit de Capteurs DIYables (30 capteurs/écrans)
1×Kit de Capteurs DIYables (18 capteurs/écrans)
Divulgation : Certains des liens fournis dans cette section sont des liens affiliés Amazon. Nous pouvons recevoir une commission pour tout achat effectué via ces liens, sans coût supplémentaire pour vous. Nous vous remercions de votre soutien.

Note d'achat: De nombreux capteurs DS18B20 sur le marché sont de faible qualité. Nous recommandons vivement d'acheter le capteur de la marque DIYables en utilisant le lien ci-dessus. Nous l'avons testé et il a bien fonctionné.

À propos du capteur de température One Wire DS18B20

Brochage

Le capteur de température DS18B20 possède trois broches.

  • Broche GND : connecter à la masse (0 V).
  • Broche VCC : connecter à VCC (5 V ou 3,3 V).
  • Broche DATA : il s'agit de la ligne de données 1-Wire. Connectez-la à une broche numérique de l'Arduino Mega.

Le capteur existe en deux types : un boîtier TO-92 qui ressemble à un transistor, et une sonde étanche. Dans ce tutoriel, nous utiliserons la sonde étanche.

DS18B20 brochage capteur de température

Pour connecter un capteur de température DS18B20 à un Arduino Mega, vous avez besoin d'une résistance de pull-up, et cela peut être délicat. Certains fabricants proposent un adaptateur de câblage qui inclut déjà une résistance de pull-up et un bloc de bornes à vis, ce qui facilite l'installation.

Schéma de câblage

  • Comment câbler une breadboard (plaque d'essai)
Arduino Mega schéma de câblage capteur de température

Cette image a été créée avec Fritzing. Cliquez pour agrandir l'image.

  • Schéma montrant comment connecter les fils et l'adaptateur
Arduino Mega schéma de câblage DS18B20

Cette image a été créée avec Fritzing. Cliquez pour agrandir l'image.

Nous suggérons d'obtenir un capteur de température DS18B20 avec un adaptateur de câblage. Cet adaptateur est facile à connecter car il a une résistance intégrée, donc vous n'avez pas besoin d'en ajouter une autre.

Comment programmer pour le capteur de température DS18B20

  • Ajoutez la bibliothèque :
#include <OneWire.h> #include <DallasTemperature.h>
  • Créez un objet OneWire et un objet DallasTemperature pour la broche qui se connecte à la broche DATA du capteur.
OneWire oneWire(SENSOR_PIN); // Set up a OneWire bus on the sensor pin DallasTemperature DS18B20(&oneWire); // Link DallasTemperature to the OneWire bus
  • Initialisez le capteur
DS18B20.begin(); // Initialize DS18B20 temperature sensor
  • Lancez la commande pour vérifier les températures :
DS18B20.requestTemperatures();
  • Découvrez quelle est la température en Celsius.
temperature_C = DS18B20.getTempCByIndex(0);
  • (Optionnel) Convertissez la température Celsius en Fahrenheit.
temperature_F = temperature_C * 9 / 5 + 32;

Code Arduino Mega

/* * Ce code Arduino Mega a été développé par newbiely.fr * Ce code Arduino Mega est mis à disposition du public sans aucune restriction. * Pour des instructions complètes et des schémas de câblage, veuillez visiter: * https://newbiely.fr/tutorials/arduino-mega/arduino-mega-temperature-sensor */ #include <OneWire.h> #include <DallasTemperature.h> #define SENSOR_PIN 4 // The Arduino Mega 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); }

Étapes rapides

Suivez ces instructions étape par étape.

  • Connectez le capteur de température DS18B20 1-wire à l'Arduino Mega comme indiqué dans le schéma.
  • Connectez l'Arduino Mega à votre ordinateur avec un câble USB.
  • Ouvrez l'IDE Arduino sur votre ordinateur.
  • Choisissez Arduino Mega comme carte et le port COM correct.
  • Cliquez sur l'icône Bibliothèques sur le côté gauche de l'IDE Arduino.
  • Recherchez DallasTemperature et sélectionnez la bibliothèque par Miles Burton.
  • Cliquez sur le bouton Install pour ajouter la bibliothèque DallasTemperature.
Arduino Mega bibliothèque Dallas Temperature
  • Vous devez installer une bibliothèque dont le programme a besoin.
  • Cliquez sur le bouton Install All pour installer la bibliothèque OneWire.
Arduino Mega bibliothèque onewire
  • Copiez le code et ouvrez-le dans l'IDE Arduino.
  • Cliquez sur le bouton Upload dans l'IDE Arduino pour envoyer le code à l'Arduino Mega.
  • Mettez le capteur dans l'eau chaude et dans l'eau froide, ou tenez-le simplement dans votre main.
  • Voyez les résultats sur le moniteur série.
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  

Vidéo

※ NOS MESSAGES

  • N'hésitez pas à partager le lien de ce tutoriel. Cependant, veuillez ne pas utiliser notre contenu sur d'autres sites web. Nous avons investi beaucoup d'efforts et de temps pour créer ce contenu, veuillez respecter notre travail !