Système de chauffage Arduino Nano

Ce tutoriel vous explique comment utiliser un Arduino Nano pour contrôler la température d'une pièce à l'aide d'un élément chauffant et d'un capteur de température DS18B20.

Préparation du matériel

1×Arduino Nano
1×USB A to Mini-B USB cable
1×DS18B20 Temperature Sensor (WITH Adapter)
1×DS18B20 Temperature Sensor (WITHOUT Adapter)
1×4.7 kΩ resistor
1×Relay
1×Heating Element
1×12V Power Adapter
1×DC Power Jack
1×Jumper Wires
1×(Optional) 9V Power Adapter for Arduino Nano
1×(Recommended) Screw Terminal Adapter for Arduino Nano

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.

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.

À propos de l'élément chauffant et du capteur de température DS18B20

L'élément chauffant utilisé dans ce tutoriel nécessite une alimentation de 12v. Lorsque le courant est fourni à l'élément chauffant, il émettra de la chaleur. Pour contrôler l'élément chauffant avec un Arduino Nano, il faut utiliser un relais comme intermédiaire.

Si vous n'êtes pas familier avec le capteur de température et l'élément chauffant (brochage, fonctionnalités, programmation...), les tutoriels suivants peuvent vous aider :

Diagramme de câblage

  • Schéma de câblage utilisant une planche à pain.
Schéma de câblage de l'élément chauffant Arduino Nano

This image is created using Fritzing. Click to enlarge image

  • Schéma de câblage utilisant un adaptateur de borne (recommandé).
Schéma de câblage de l'élément chauffant contrôlé par Arduino Nano

This image is created using Fritzing. Click to enlarge image

Nous recommandons l'achat d'un capteur DS18B20 avec son adaptateur de câblage associé pour une installation sans souci. Cet adaptateur comprend une résistance intégrée, éliminant le besoin d'une résistance supplémentaire dans le câblage.

Fonctionnement du système

  • Arduino Nano obtient la température du capteur de température.
  • Si la température descend en dessous d'une certaine limite inférieure, Arduino Nano active les éléments chauffants.
  • Lorsque la température dépasse une limite supérieure, Arduino Nano désactive l'élément chauffant.

La boucle est répétée en continu.

Code Arduino Nano pour le système de refroidissement avec capteur DS18B20

/* * Ce code Arduino Nano a été développé par newbiely.fr * Ce code Arduino Nano 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-nano/arduino-nano-heating-system */ #include <OneWire.h> #include <DallasTemperature.h> #define RELAY_PIN A5 // The Arduino Nano pin connected to the IN pin of relay module #define DS18B20_PIN 2 // The Arduino Nano pin connected to DS18B20 sensor's DQ pin const int THRESHOLD_OFF = 20; // upper threshold of temperature, change to your desire value const int THRESHOLD_ON = 15; // lower threshold of temperature, change to your desire value OneWire oneWire(DS18B20_PIN); // setup a oneWire instance DallasTemperature DS18B20(&oneWire); // pass oneWire to DallasTemperature library float temperature; // temperature in Celsius void setup() { Serial.begin(9600); // Initialize the Serial to communicate with the Serial Monitor. DS18B20.begin(); // initialize the sensor pinMode(RELAY_PIN, OUTPUT); // initialize digital pin as an output } void loop() { DS18B20.requestTemperatures(); // send the command to get temperatures temperature = DS18B20.getTempCByIndex(0); // read temperature in Celsius if (temperature > THRESHOLD_OFF) { Serial.println("The heating element is turned off"); digitalWrite(RELAY_PIN, LOW); // turn off } else if (temperature < THRESHOLD_ON) { Serial.println("The heating element is turned on"); digitalWrite(RELAY_PIN, HIGH); // turn on } delay(500); }

Dans le code mentionné ci-dessus, l'Arduino Nano activera l'élément chauffant lorsque la température sera inférieure à 15°C et le maintiendra activé jusqu'à ce que la température dépasse 20°C.

Étapes rapides

  • Connectez l'Arduino Nano à un ordinateur via un câble USB
  • Lancez l'IDE Arduino, sélectionnez la carte et le port corrects
  • Cliquez sur l'icône Libraries dans la barre latérale gauche de l'IDE Arduino.
  • Recherchez "Dallas", puis trouvez la bibliothèque DallasTemperature créée par Miles Burton.
  • Cliquez sur le bouton Install pour ajouter la bibliothèque.
Bibliothèque de température Dallas pour Arduino Nano
  • Vous serez invité à installer la dépendance. Cliquez sur le bouton Install All pour installer la bibliothèque OneWire.
Bibliothèque onewire Arduino Nano
  • Copiez le code et ouvrez-le avec l'IDE Arduino.
  • Cliquez sur le bouton Upload de l'IDE Arduino pour compiler et téléverser le code vers l'Arduino Nano.
  • Changez la température de l'environnement autour du capteur.
  • Vérifiez la température de l'élément chauffant et la température de la pièce.

Connaissances avancées

La technique de contrôle mentionnée ci-dessus est appelée régulateur tout ou rien, qui est également connu sous le nom de signaleur ou régulateur "bang-bang". Elle est très facile à mettre en pratique.

Une approche alternative connue sous le nom de régulateur PID existe. Cette méthode de contrôle de température est plus stable, cependant elle est compliquée à comprendre et à mettre en pratique. En conséquence, le régulateur PID n'est pas largement utilisé.

※ 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!