espace_public:arduino_capteur_temp

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
espace_public:arduino_capteur_temp [2020/08/21 12:32]
loickk [Boucle]
— (Version actuelle)
Ligne 1: Ligne 1:
-====== Utilisation du capteur de température et d'​humidité ====== 
  
-Dans le cadre de la construction du chauffage solaire aérothermique,​ un capteur de température et d'​humidité est utilisé pour [[espace_public:​electronique|piloter de manière électronique la ventilation de l'air dans le panneau]]. 
-{{ :​espace_public:​photo_temp.jpg?​600 |}} 
-===== Fonctionnement du capteur ===== 
- 
-Nous allons ici utiliser un capteur de température DHT11(([[https://​www.velleman.eu/​downloads/​29/​vma311_a4v01.pdf|Notice d'​utilisation du capteur de température et d'​humidité DHT 11 de Velleman VMA311]])). Ce offre un bon rapport qualité-performance et est calibrée pour fonctionner sur une carte arduino car **son alimentation est en 5V**. Attention à ne pas alimenter ce capteur avec une tension d'​alimentation de 12V qui détériorerait le capteur. 
- 
-Sa plage de température est d'​environ 0 à 50°C avec une erreur de +/-2°C. La plage de mesure de l'​humidité relative est de 20 à 90% avec une erreur de +/-5%. Il existe un modèle plus précis : le DHT22. Il est de la même marque mais est deux fois plus cher. Sa plage de mesure de température et d'​humidité s'​étend respectivement à (-40 à 80°C +/-0.5°C) et  à 0 à 100% HR (±2%) 
- 
-{{ :​espace_public:​dht11.jpg?​400 |}} 
- 
-Le capteur DHT11 est composé de 3 broches, respectivement de gauche à droite : 
-  * Broche Signal 
-  * Broche + 
-  * Broche - 
- 
-La broche signal doit être reliée à une piste de lecture numérique de la carte arduino (piste 7 sur la figure ci-dessous). La broche + doit être reliée à la masse (ground) de la carte Arduino repérée par les lettres GND. Enfin la broche + est reliée à l'​alimentation 5V de la carte Arduino. 
- 
-{{ :​espace_public:​dht_11_arduino.png?​600 |}} 
- 
-===== Installation de la librairie ===== 
- 
-Pour utiliser le capteur, ouvrez l'​[[espace_public:​arduino|IDE Arduino]] puis : 
- 
-  * Installer ensuite la librairie dans l'IDE en cliquant sur : Croquis/​Inclure une bibliothèque/​Gérer les bibliothèques 
-  * Rechercher la bibliothèque DHT sensor library de Adafruit et installer la. 
-  * Télécharger le [[https://​cloud.ecutsa.fr/​index.php/​s/​qdR3dFkEnJfQype|code Lecture_T_h_final.ino]] écrit pour lire la température 
- 
-Une fois cette étape réalisée, vous pouvez désormais utiliser la libraire DHT. Nous allons voir en détail le programme écrit dans l'IDE. 
- 
-==== Preambule du code ==== 
- 
-Ouverture de la librairie utilisée. Celle-ci comporte des commandes déjà configurées. La commande #include permet de charger la librairie dont le nom est compris entre les symboles <> 
-   #​include <​DHT.h>​ 
-Déclaration du nom attribué au port de lecture numéro 7. Ici, le nom utilisé est DHTPIN_1 mais on aurait pu utiliser toto ou n'​importe quoi d'​autre tant que l'​ensemble du code est cohérent. 
-   #​define DHTPIN_1 7 
-Définition du type de capteur utilisé. Ici c'est un capteur DHT11 mais l'on aurait pu utiliser un capteur DHT22. 
-   #​define DHTTYPE DHT11 
-Commande qui attribue au nom dht_1 un capteur DHT de type DHTTYPE et branché sur le port DHTPIN_1. 
-   DHT dht_1(DHTPIN_1,​ DHTTYPE); 
- 
-==== Setup ==== 
-   void setup() ​ 
-      { 
-La commande Serial.begin définit le débit de données en bits par seconde. Ici, nous utilisons un débit de 9600 bits par secondes. ​     ​ 
-      Serial.begin(9600);​ 
-La commande dht_1.begin() démarre le capteur de température 
-      dht_1.begin();​ 
-      } 
- 
-==== Boucle ==== 
-   void loop() ​ 
-      { 
-On crée une nouvelle variable nommée h_1 de type float (variable réelle avec une réelle dite flottante). On attribue la valeur de l'​humidité lue par le capteur avec la commande dht_1.readHumidity()  ​ 
-     // Capteur #1 
-     float h_1 = dht_1.readHumidity();​ 
-Création d'une variable t_1 qui lit la température avec la commande dht_1.readTemperature();​ 
-     float t_1 = dht_1.readTemperature();​ 
-Affichage des valeurs dans la console avec la commande Serial.print 
-Pour afficher du texte, on utilise les apostrophes ("​Comme ceci") pour afficher **Comme ceci** dans la console. 
-Pour afficher la valeur des variables **t_1** et **h_1**, utiliser les commandes Serial.print(t_1) et Serial.print(h_1) 
-     ​Serial.print("​ Humidity #1: "​); ​ 
-     ​Serial.print(h_1);​ 
-     ​Serial.print("​ %\t"); 
-     ​Serial.print("​Temperature #1: "​); ​ 
-     ​Serial.print(t_1);​ 
-Pour sauter une ligne à la fin de la ligne utiliser la commande Serial.println à la place de Serial.print 
-     ​Serial.println("​ *C "); 
-La commande delay permet de définir un laps de temps de pause permettant de définir la fréquence de mesure entre deux mesures. Ici nous utilisons 1000ms soit 1seconde. 
-     ​delay(1000);​ 
-  } 
- 
- 
- 
- 
- 
- 
- 
- 
- 
-===== Exécution du code ===== 
-  * Vérifier/​Compiler le code 
-  * Téléverser le code 
-  * Afficher les mesures de température dans le Moniteur Série 
- 
-{{ :​espace_public:​t_h.png?​1000 |}} 
  • espace_public/arduino_capteur_temp.1598005953.txt.gz
  • Dernière modification: 2020/08/21 12:32
  • par loickk