Raspberry Pi - Élément chauffant

Ce tutoriel vous explique comment utiliser un Raspberry Pi pour contrôler un élément chauffant. De plus, nous utiliserons ces connaissances pour créer un système de chauffage dans un tutoriel ultérieur.

Vous pouvez piloter l'élément chauffant avec un relais ou avec un module MOSFET. Le relais ne donne que deux états : chauffage ON ou chauffage OFF. Le module MOSFET donne aussi ces deux états, et il vous permet en plus de régler le niveau de chaleur, de légèrement tiède à pleine puissance. Il commute en silence, et il ne s'use pas quand il commute très souvent. Ce tutoriel vous montre les deux méthodes.

Préparation du matériel

1×Raspberry Pi 5
1×Relais
1×Alternativement: MOSFET Module (AOD4184, LR7843 or FR120N)
1×Élément chauffant
1×Adaptateur secteur 12V
1×Connecteur d'alimentation DC
1×Fils de connexion
1×Recommandé: Shield à bornier à vis pour Raspberry Pi
1×Recommandé: Kit plaque de base prototypage et plaque d'essai pour Raspberry Pi

Ou vous pouvez acheter les kits suivants:

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.

À propos de l'élément chauffant

Le brochage de l'élément chauffant

Brochage de l'élément chauffant Raspberry Pi

L'élément chauffant a généralement deux broches :

  • La broche Positive (+) (rouge) doit être connectée au 12V d'une alimentation DC.
  • La broche Négative (-) (noire) doit être connectée à la masse (GND) d'une alimentation DC.

Comment contrôler un élément chauffant avec un Raspberry Pi

Si un élément chauffant de 12V est alimenté avec une puissance de 12V, il produira de la chaleur. Pour gérer l'élément chauffant, un relais doit être utilisé entre le Raspberry Pi et l'élément chauffant. Le Raspberry Pi pourra alors contrôler l'élément chauffant via le relais.

Si vous n'êtes pas familier avec les relais (brochage, fonctionnement, programmation, etc.), vous pouvez en savoir plus dans le Raspberry Pi - Relais..

Pour le brochage et l'intérieur du module MOSFET, lisez d'abord le tutoriel Raspberry Pi - Module MOSFET.

Relais ou module MOSFET pour un élément chauffant

Relais Module MOSFET
Contrôle de la chaleur pleine chaleur ou aucune chaleur pleine chaleur, aucune chaleur, ou n'importe quel niveau entre les deux (PWM)
Bruit fait des clics à la commutation complètement silencieux
Usure les contacts s'usent, plus vite si vous commutez souvent rien ne bouge, donc commuter souvent n'est pas un problème
Vitesse lente, quelques millisecondes très rapide
Type de résistance chauffante élément chauffant CA ou CC élément chauffant CC uniquement
Alimentation toute tension dans la limite du relais environ 6V ou plus
Isolation oui, la bobine et les contacts sont séparés oui, grâce à un optocoupleur PC817
À utiliser pour les éléments chauffants CA et un chauffage simple ON/OFF les éléments chauffants CC 12V, le réglage du niveau de chaleur, un thermostat qui commute très souvent

Un système de chauffage allume et éteint souvent l'élément chauffant, encore et encore, pour garder une température. Pour un élément chauffant CC 12V, le module MOSFET gère mieux cela, car il ne s'use jamais et il peut aussi faire fonctionner l'élément chauffant à puissance partielle. Pour un chauffage sur secteur (CA), le relais est le seul choix des deux.

Diagramme de câblage

Schéma de câblage de l'élément chauffant Raspberry Pi

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

Code Raspberry Pi

Le code ci-dessous allumera l'élément chauffant toutes les cinq secondes et l'éteindra toutes les cinq secondes.

Étapes rapides

  • Assurez-vous d'avoir Raspbian ou tout autre système d'exploitation compatible avec Raspberry Pi installé sur votre Pi.
  • Assurez-vous que votre Raspberry Pi est connecté au même réseau local que votre PC.
  • Assurez-vous que votre Raspberry Pi est connecté à Internet si vous devez installer certaines bibliothèques.
  • Si c'est la première fois que vous utilisez Raspberry Pi, consultez Installation du logiciel - Raspberry Pi..
  • Connectez votre PC au Raspberry Pi via SSH en utilisant le client SSH intégré sur Linux et macOS ou PuTTY sur Windows. Consultez comment connecter votre PC au Raspberry Pi via SSH.
  • Assurez-vous d'avoir la bibliothèque RPi.GPIO installée. Sinon, installez-la en utilisant la commande suivante :
sudo apt-get update sudo apt-get install python3-rpi.gpio
  • Créez un fichier de script Python heating_element.py et ajoutez le code suivant :
# Ce code Raspberry Pi a été développé par newbiely.fr # Ce code Raspberry Pi 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/raspberry-pi/raspberry-pi-heating-element import RPi.GPIO as GPIO import time # Set the GPIO mode (BCM or BOARD) GPIO.setmode(GPIO.BCM) # Define the GPIO pin controls the heating element via the relay module RELAY_PIN = 12 # Set the relay pin as an output pin GPIO.setup(RELAY_PIN, GPIO.OUT) try: # Run the loop function indefinitely while True: # Turn the relay ON (HIGH) to turn on the heating element GPIO.output(RELAY_PIN, GPIO.HIGH) time.sleep(5) # Wait for 5 seconds # Turn the relay OFF (LOW) to turn off the heating element GPIO.output(RELAY_PIN, GPIO.LOW) time.sleep(5) # Wait for 5 seconds except KeyboardInterrupt: # If the user presses Ctrl+C, clean up the GPIO configuration GPIO.cleanup()
  • Enregistrez le fichier et exécutez le script Python en exécutant la commande suivante dans le terminal :
python3 heating_element.py
  • Vérifiez la température de l'élément chauffant.

WARNING

Faites attention. Cela peut vous causer du tort à vous et à votre résidence. C'est une question sérieuse, et nous voulons que vous soyez en sécurité. Si vous n'êtes pas absolument certain de ce que vous faites, rendez-vous service et ne vous mêlez de rien. Demandez l'aide de quelqu'un de compétent ! Nous ne sommes pas responsables de votre sécurité.

Le script s'exécute dans une boucle infinie jusqu'à ce que vous appuyiez sur Ctrl + C dans le terminal.

Explication du code

Consultez l'explication ligne par ligne contenue dans les commentaires du code source !

Code Raspberry Pi - Contrôler l'élément chauffant avec un module MOSFET

Dans cette partie, le module MOSFET prend la place du relais. Avec le PWM, le Raspberry Pi décide quelle quantité de puissance va à l'élément chauffant, il peut donc chauffer un peu ou beaucoup.

Diagramme de câblage

Schéma de câblage de l'élément chauffant Raspberry Pi avec module MOSFET

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

Pour simplifier et organiser votre montage de câblage, nous recommandons l'utilisation d'un shield à bornier à vis pour Raspberry Pi. Ce shield assure des connexions plus sûres et mieux gérées, comme illustré ci-dessous :

Shield à bornier à vis pour Raspberry Pi
De Vers
GPIO16 du Raspberry Pi (broche 36) broche PWM du module MOSFET
GND du Raspberry Pi (broche 34) broche GND du module MOSFET
Positif de l'adaptateur 12V borne + du module MOSFET
Fil rouge (+) de l'élément chauffant borne + du module MOSFET (partagée avec l'adaptateur)
Fil noir (−) de l'élément chauffant borne LOAD du module MOSFET
Négatif de l'adaptateur 12V borne − du module MOSFET

Un élément chauffant n'a pas de bobine, vous n'avez donc pas besoin de diode de roue libre (flyback) ici.

Étapes rapides

  • Préparez le Raspberry Pi, la connexion SSH et la bibliothèque RPi.GPIO de la même façon que dans les étapes rapides du relais ci-dessus.
  • Connectez tout comme indiqué dans le schéma de câblage, mais gardez l'adaptateur 12V débranché pour le moment.
  • Créez un fichier script Python MosfetModule.py et ajoutez le code suivant :
# Ce code Raspberry Pi a été développé par newbiely.fr # Ce code Raspberry Pi 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/raspberry-pi/raspberry-pi-heating-element import RPi.GPIO as GPIO import time MOSFET_PIN = 16 # GPIO16 (pin 36) connected to the PWM pin of the MOSFET module GPIO.setmode(GPIO.BCM) GPIO.setup(MOSFET_PIN, GPIO.OUT) pwm = GPIO.PWM(MOSFET_PIN, 500) # 500 Hz PWM, slow enough for the module's optocoupler pwm.start(0) # start with the load OFF def set_load(percent): pwm.ChangeDutyCycle(percent) print("Load power: {}%".format(percent)) try: while True: # turn the load fully ON, then fully OFF print("Load: ON") set_load(100) time.sleep(2) print("Load: OFF") set_load(0) time.sleep(2) # increase the power step by step (PWM) for percent in range(10, 101, 10): set_load(percent) time.sleep(0.5) # decrease the power step by step (PWM) for percent in range(90, -1, -10): set_load(percent) time.sleep(0.5) time.sleep(1) except KeyboardInterrupt: pass finally: pwm.stop() GPIO.cleanup()
  • Branchez l'adaptateur 12V et lancez le script :
python3 MosfetModule.py
  • Le script donne à l'élément chauffant la pleine puissance pendant 2 secondes et aucune puissance pendant 2 secondes. Ensuite, la puissance monte de 10 % à 100 % puis redescend à 0 %. Un élément chauffant se réchauffe et refroidit lentement, vous ne sentirez donc pas chaque étape. Laissez-le fonctionner un moment et vous remarquerez qu'il est plus chaud à forte puissance qu'à faible puissance.
  • Le terminal affiche le niveau de puissance à chaque étape :
PuTTY - Raspberry Pi
Load: ON Load power: 100% Load: OFF Load power: 0% Load power: 10% Load power: 20% Load power: 30% Load power: 40% Load power: 50% Load power: 60% Load power: 70% Load power: 80% Load power: 90% Load power: 100% Load power: 90% Load power: 80% Load power: 70% Load power: 60% Load power: 50% Load power: 40% Load power: 30% Load power: 20% Load power: 10% Load power: 0%

Astuce : le module MOSFET ne commute que des charges CC, et il a besoin d'une alimentation de charge d'environ 6V ou plus. Si votre élément chauffant fonctionne en CA, utilisez la méthode du relais.

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 !