Raspberry Pi - Relais

Dans un tutoriel précédent, nous avons découvert comment allumer et éteindre une LED en utilisant un Raspberry Pi. Ce tutoriel vous apprend à activer et désactiver certains appareils qui utilisent une alimentation électrique haute tension (par exemple, une ampoule, un ventilateur, une serrure électromagnétique, un actionneur linéaire, etc.) en utilisant un Raspberry Pi.

Quelles sont les similitudes et les différences entre contrôler une LED et contrôler une ampoule en utilisant un Raspberry Pi ?

Le commun : Semblable au contrôle d'une LED, nous utilisons la broche de sortie du Raspberry Pi pour les allumer et les éteindre.

La différence :

Préparation du matériel

1×Raspberry Pi 4 Model B
1×Relay
1×LED Strip
1×12V Power Adapter
1×DC Power Jack
1×Breadboard
1×Jumper Wires
1×(Optional) Screw Terminal Block Shield for Raspberry Pi
1×(Optional) USB-C Power Cable with On/Off Switch for Raspberry Pi 4B
1×(Optional) Plastic Case and Cooling Fan for Raspberry Pi 4B
1×(Optional) HDMI Touch Screen Monitor for Raspberry Pi

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 de Relay

Un relais est un commutateur électrique qui peut être programmé à l'aide d'un Raspberry Pi ou de tout microcontrôleur. Il est utilisé pour allumer et éteindre de manière programmable des appareils qui utilisent une tension et/ou un courant élevé.

Il agit comme un pont entre Raspberry Pi et les composants haute tension.

WARNING

Lorsque vous créez des projets impliquant une tension secteur, il est essentiel d'être conscient des risques. C'est un sujet sérieux et nous voulons que vous soyez en sécurité. Si vous n'êtes pas complètement sûr de ce que vous faites, n'essayez pas. Demandez l'aide d'une personne compétente.

Bien que certains relais puissent être utilisés pour les appareils CC et CA, nous vous suggérons fortement d'utiliser un appareil CC (jusqu'à 24V) pour les tests.

Brochage du relais

Brochage du relais

Le relais a deux ensembles de broches : un groupe d'entrée (basse tension) et un groupe de sortie (haute tension).

  • Le groupe d'entrée est connecté au Raspberry Pi et se compose de trois broches :
    • Broche DC- : doit être reliée à la masse (0V)
    • Broche DC+ : doit être reliée à VCC (5V)
    • Broche IN : reçoit le signal de commande du Raspberry Pi
  • Le groupe de sortie est connecté à l'appareil à haute tension et se compose de trois broches (généralement dans un bornier à vis) :
    • Broche NO : est la broche normalement ouverte. Elle est utilisée en mode normalement ouvert
    • Broche NC : est la broche normalement fermée. Elle est utilisée en mode normalement fermé
    • Broche COM : est la broche commune. Elle est utilisée dans les modes normalement ouvert et normalement fermé

    Généralement, nous n'utilisons pas toutes les broches du groupe haute tension. Nous n'en utilisons que deux :

    • Si nous utilisons le mode normalement ouvert, alors les broches COM et NO sont utilisées.
    • Si nous utilisons le mode normalement fermé, alors les broches COM et NC sont utilisées.

    En outre, si le relais dispose à la fois de déclencheurs de niveau BAS et de niveau HAUT, il y a généralement un cavalier pour choisir soit le déclencheur de niveau BAS, soit le déclencheur de niveau HAUT.

    ※ Note:

    La disposition des broches sur un module de relais peut varier selon les fabricants. Il est crucial de toujours se référer aux étiquettes imprimées sur le module de relais lors de son utilisation. Faites très attention !

    Comment connecter le dispositif haute tension au relais

    Comment connecter un relais

    Comment ça marche

    Selon le fabricant et la façon dont il est installé, un relais peut fonctionner différemment.

    Pour la broche IN, il existe deux modes d'entrée qui font fonctionner le relais de manière opposée :

    • Le mode déclencheur de niveau BAS
    • Le mode déclencheur de niveau HAUT

    Pour les broches de sortie, il existe deux modes de fonctionnement :

    • Normalement ouvert
    • Normalement fermé. Ce sont des opposés.

    Le terme "normalement" implique "si la broche IN est reliée à BAS (0V)".

    Avant d’entrer dans les détails, voici quelques informations rapides :

    • Les modes normalement ouvert et normalement fermé fonctionnent de manière opposée.
    • La plupart des modules relais supportent à la fois les modes normalement ouvert et normalement fermé.
    • Les modes déclenchement par niveau bas et déclenchement par niveau haut fonctionnent de manière opposée.
    • Tous les modules relais ne supportent pas à la fois les modes déclenchement par niveau bas et déclenchement par niveau haut.
    • À tout moment donné, le module relais ne peut fonctionner que dans l'un des deux modes déclenchement par niveau bas et déclenchement par niveau haut.

    La combinaison des modes d'entrée et des modes de sortie génère de multiples cas d'utilisation. Si vous êtes débutant, nous vous suggérons d'employer le mode de déclenchement HAUT niveau et le mode normalement ouvert.

    Le mode déclencheur de niveau ÉLEVÉ sera expliqué en détail car il fonctionne de manière opposée au déclencheur de niveau BAS. Le déclencheur de niveau BAS fonctionne de manière opposée.

    Déclencheur de NIVEAU ÉLEVÉ - Mode normalement ouvert

    Pour utiliser ce mode, nous devons connecter le dispositif haute tension à la broche COM et à la broche NO.

    Lorsque la broche IN est connectée à LOW (0V), l'interrupteur est ouvert, ce qui entraîne l'arrêt (ou l'inactivation) de l'appareil.

    Inversement, lorsque la broche IN est connectée à HIGH (5V), l'interrupteur est fermé, ce qui fait que l'appareil est ALLUMÉ (ou actif).

    Fonctionnement du relais - Normalement ouvert

    Déclencheur de Niveau Élevé - Mode Normalement Fermé

    Pour utiliser ce mode, nous devons raccorder le dispositif haute tension à la broche COM et à la broche NC.

    Si la broche IN est reliée à LOW (0V), l'interrupteur sera fermé. L'appareil sera ALLUMÉ (ou actif).

    Lorsque la broche IN est connectée à HAUT (5V), l'interrupteur sera ouvert. L'appareil sera ÉTEINT (ou inactif).

    Fonctionnement du relais - Normalement fermé

    Résumé

    Input modes Output Modes IN pin (programmable) Output pins Relay state Device state
    HIGH Trigger Normally Open LOW COM and NO pin ⇒ open OFF
    HIGH Trigger Normally Open HIGH COM and NO pin ⇒ closed ON
    HIGH Trigger Normally Closed LOW COM and NC pin ⇒ closed ON
    HIGH Trigger Normally Closed HIGH COM and NC pin ⇒ open OFF
    LOW Trigger Normally Open LOW COM and NO pin ⇒ closed ON
    LOW Trigger Normally Open HIGH COM and NO pin ⇒ open OFF
    LOW Trigger Normally Closed LOW COM and NC pin ⇒ open OFF
    LOW Trigger Normally Closed HIGH COM and NC pin ⇒ closed ON

    Il y a un maximum de 8 cas d'utilisation. Cela pourrait être accablant. Cependant, si vous êtes un débutant, vous n'avez besoin de vous soucier que des deux premiers scénarios, qui impliquent un déclencheur de niveau ÉLEVÉ et normalement ouvert. Le reste de ce tutoriel se concentrera sur ces deux cas d'utilisation.

    Raspberry Pi - Relais

    Le Raspberry Pi contrôle un relais, qui à son tour contrôle un appareil haute tension.

    Gérer un relais est simple. Tout ce qui est nécessaire est :

    • Relier une broche du Raspberry Pi à la broche IN du relais
    • Programmer la broche sur LOW ou HIGH pour contrôler le relais

Diagramme de câblage

Schéma de câblage du relais Raspberry Pi

This image is created using Fritzing. Click to enlarge image

Pour simplifier et organiser votre câblage, nous vous recommandons d'utiliser un Screw Terminal Block Shield pour Raspberry Pi. Ce shield garantit des connexions plus sûres et plus faciles à gérer, comme illustré ci-dessous :

Raspberry Pi Screw Terminal Block Shield

Comment programmer pour un relais

  • Configurez la broche 3 d'un Raspberry Pi en mode sortie numérique en utilisant le module RPi.GPIO. Par exemple :
import RPi.GPIO as GPIO GPIO.setmode(GPIO.BCM) # Définir le mode GPIO (BCM ou BOARD) GPIO.setup(12, GPIO.OUT) # Définir la broche GPIO 12 comme une broche de sortie
  • Réglez la broche à 0V en utilisant la fonction GPIO.output():
GPIO.output(12, GPIO.LOW) # Éteindre le relais
  • Réglez la broche à 5V en utilisant la fonction GPIO.output() :
GPIO.output(12, GPIO.HIGH) # Allumer le relais

Code Raspberry Pi

É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 avez besoin d'installer certaines bibliothèques.
  • Si c'est la première fois que vous utilisez Raspberry Pi, voir 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. Voir comment connecter votre PC au Raspberry Pi via SSH.
  • Assurez-vous que vous avez 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 relay.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-relay import RPi.GPIO as GPIO import time # Set the GPIO mode (BCM or BOARD) GPIO.setmode(GPIO.BCM) # Define the GPIO pin connected to the relay module's IN pin 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) GPIO.output(RELAY_PIN, GPIO.HIGH) time.sleep(1) # Wait for 1 seconds # Turn the relay OFF (LOW) GPIO.output(RELAY_PIN, GPIO.LOW) time.sleep(1) # Wait for 1 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 relay.py
  • Vérifiez la bande LED, qui devrait clignoter.

Le script s'exécute dans une boucle infinie de manière continue jusqu'à ce que vous appuyiez sur Ctrl + C dans le Terminal.

Vidéo

Défiez-vous

  • Lorsque vous entrez dans votre chambre, la lumière s'allume automatiquement. Après votre départ, elle s'éteindra après 30 secondes. Pour plus d'informations, veuillez consulter Raspberry Pi - Capteur de mouvement..

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