ESP32 - Capteur de température TMP36

Dans ce guide, nous allons apprendre à programmer l'ESP32 pour lire la température à partir du capteur TMP36.

Préparation du matériel

1×ESP-WROOM-32 Dev Module
1×USB Cable Type-C
1×TMP36 Temperature Sensor
1×Breadboard
1×Jumper Wires
1×(Recommended) ESP32 Screw Terminal Adapter

Or you can buy the following sensor kits:

1×DIYables Sensor Kit (30 sensors/displays)
1×DIYables Sensor Kit (18 sensors/displays)
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.

À propos du capteur de température TMP36

Brochage

Le capteur de température TMP36 possède trois broches :

  • Broche GND : doit être connectée à GND (0V)
  • Broche VCC : doit être connectée à VCC (5V)
  • Broche +Vs : est l'alimentation pour le capteur qui peut varier entre 2,7V et 5,5V.
  • Broche Vout : broche de signal donnant une tension de sortie qui est proportionnelle linéairement à la température, doit être connectée à une broche analogique sur ESP32.
Brochage du capteur de température TMP36

Comment ça marche

Le TMP36 délivre une tension linéairement proportionnelle à la température en degrés Celsius. Le facteur d'échelle de sortie du TMP36 est de 10 mV/°C. Cela signifie que la température est calculée en divisant la tension (en mV) sur la broche de sortie par 10.

Diagramme de câblage

Schéma de câblage du capteur de température ESP32 TMP36

This image is created using Fritzing. Click to enlarge image

Si vous ne savez pas comment alimenter l'ESP32 et d'autres composants, vous pouvez trouver des conseils dans le tutoriel suivant : Comment alimenter l'ESP32.

Comment programmer pour le capteur de température TMP36

  • Obtenez la valeur ADC du capteur de température en utilisant la fonction analogRead().
int adcVal = analogRead(PIN_TMP36);
  • Convertir la valeur ADC en tension en volts.
float voltage = adcVal * (3.3 / 4095.0);
  • Convertir la tension en température en Celsius
float tempC = (voltage - 0.5) * 100;
  • (Facultatif) Convertir les degrés Celsius en degrés Fahrenheit
float tempF = tempC * 9 / 5 + 32;

Code ESP32

/* * Ce code ESP32 a été développé par newbiely.fr * Ce code ESP32 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/esp32/esp32-tmp36-temperature-sensor */ #define ADC_VREF 3.3 // 3.3V #define ADC_RESOLUTION 4095.0 #define PIN_TMP36 36 // ESP32 pin GPIO36 (ADC0) connected to LM35 void setup() { Serial.begin(9600); } void loop() { // get the ADC value from the TMP36 temperature sensor int adcVal = analogRead(PIN_TMP36); // convert the ADC value to voltage float voltage = adcVal * (ADC_VREF / ADC_RESOLUTION); // convert the voltage to the temperature in Celsius float tempC = (voltage - 0.5) * 100; // convert the Celsius to Fahrenheit float tempF = tempC * 9 / 5 + 32; // print the temperature in the Serial Monitor: Serial.print("TMP36 Temperature: "); Serial.print(tempC); // print the temperature in Celsius Serial.print("°C"); Serial.print(" ~ "); // separator between Celsius and Fahrenheit Serial.print(tempF); // print the temperature in Fahrenheit Serial.println("°F"); delay(1000); }

Étapes rapides

  • Si c'est la première fois que vous utilisez un ESP32, consultez comment configurer l'environnement pour ESP32 sur Arduino IDE.
  • Faites le câblage comme sur l'image ci-dessus.
  • Connectez la carte ESP32 à votre PC via un câble micro USB
  • Ouvrez Arduino IDE sur votre PC.
  • Sélectionnez la bonne carte ESP32 (par exemple, Module de développement ESP32) et le port COM.
  • Copiez le code ci-dessus et ouvrez-le avec Arduino IDE
  • Cliquez sur le bouton Upload de l'Arduino IDE pour téléverser le code sur l'ESP32
  • Saisissez le capteur avec votre main
  • Consultez le résultat sur le moniteur série.
COM6
Send
TMP36 Temperature: 26.31°C ~ 79.36°F TMP36 Temperature: 26.44°C ~ 79.59°F TMP36 Temperature: 26.50°C ~ 79.70°F TMP36 Temperature: 26.56°C ~ 79.81°F TMP36 Temperature: 27.06°C ~ 80.71°F TMP36 Temperature: 27.75°C ~ 81.95°F TMP36 Temperature: 28.37°C ~ 83.07°F TMP36 Temperature: 29.00°C ~ 84.20°F TMP36 Temperature: 29.56°C ~ 85.21°F TMP36 Temperature: 30.00°C ~ 86.00°F TMP36 Temperature: 30.31°C ~ 86.56°F TMP36 Temperature: 30.62°C ~ 87.12°F TMP36 Temperature: 30.87°C ~ 87.57°F
Autoscroll Show timestamp
Clear output
9600 baud  
Newline  

Vidéo

Références de fonction

※ OUR MESSAGES

  • Please feel free to share the link of this tutorial. However, Please do not use our content on any other websites. We invested a lot of effort and time to create the content, please respect our work!