.. note:: Bonjour et bienvenue dans la communauté des passionnés de Raspberry Pi, Arduino et ESP32 de SunFounder sur Facebook ! Plongez plus profondément dans l'univers de Raspberry Pi, Arduino et ESP32 avec d'autres passionnés. **Pourquoi nous rejoindre ?** - **Support d'experts** : Résolvez les problèmes après-vente et les défis techniques grâce à l'aide de notre communauté et de notre équipe. - **Apprendre et partager** : Échangez des astuces et des tutoriels pour perfectionner vos compétences. - **Aperçus exclusifs** : Accédez en avant-première aux annonces de nouveaux produits. - **Remises spéciales** : Bénéficiez de réductions exclusives sur nos derniers produits. - **Promotions festives et tirages au sort** : Participez à des concours et à des promotions lors des fêtes. 👉 Prêt à explorer et à créer avec nous ? Cliquez sur [|link_sf_facebook|] pour nous rejoindre dès aujourd'hui ! 1.3.4 Relais ============ Introduction ---------------- Dans cette leçon, nous allons apprendre à utiliser un relais. C'est l'un des composants couramment utilisés dans les systèmes de contrôle automatique. Lorsque la tension, le courant, la température ou la pression atteignent, dépassent ou sont inférieurs à une valeur prédéterminée, le relais connecte ou interrompt le circuit pour contrôler et protéger les équipements. Composants ----------- .. image:: img/list_1.3.4.png Principe ---------- **Diode** Une diode est un composant électronique à deux bornes qui permet un flux de courant unidirectionnel. Elle offre une faible résistance dans le sens du courant et une haute résistance dans le sens opposé. Les diodes sont principalement utilisées pour éviter les dommages aux composants, notamment en raison de la force électromotrice dans les circuits polarisés. .. image:: img/image344.png Les deux bornes d'une diode sont polarisées : l'anode (pôle positif) et la cathode (pôle négatif). La cathode est généralement en argent ou comporte une bande colorée. Le courant dans une diode circule de l'anode à la cathode. Ce comportement est similaire à celui d'une soupape de non-retour. Si une tension plus élevée est appliquée à l'anode, le courant circule, c'est le biais direct. Si la tension plus élevée est appliquée à la cathode, le courant ne passe pas, c'est le biais inverse. **Relais** Un relais est un dispositif utilisé pour établir une connexion entre deux ou plusieurs points en réponse à un signal d'entrée. En d'autres termes, il assure une isolation entre le contrôleur et l'appareil, notamment lorsque des dispositifs fonctionnent en courant alternatif (AC) ou continu (DC). Les relais sont très utiles pour contrôler de grandes quantités de courant ou de tension à l'aide de faibles signaux électriques. Il y a 5 parties dans chaque relais : **Électroaimant** - Il est constitué d'un noyau en fer enroulé de fils. Lorsque l'électricité passe à travers, il devient magnétique. **Armature** - Une bande magnétique mobile appelée armature. Lorsque du courant circule, le champ magnétique attire l'armature, activant les contacts normalement ouverts (N/O) ou fermés (N/C). **Ressort** - Lorsque le courant ne passe pas dans l'électroaimant, le ressort tire l'armature pour que le circuit soit interrompu. **Jeu de contacts électriques** : - Normalement ouvert - connecté lorsque le relais est activé, déconnecté lorsqu'il est inactif. - Normalement fermé - non connecté lorsque le relais est activé, connecté lorsqu'il est inactif. **Cadre moulé** - Protégé par un boîtier en plastique. **Fonctionnement du relais** Le principe de fonctionnement est simple. Lorsque le relais est alimenté, le courant circule dans la bobine de commande, ce qui active l'électroaimant. L'armature est alors attirée et connecte les contacts normalement ouverts, fermant ainsi le circuit. Lors de la rupture du circuit, le ressort ramène l'armature vers les contacts normalement fermés, interrompant le circuit. Ce processus permet de contrôler l'état d'un circuit de charge. .. image:: img/image142.jpeg Schéma --------- .. image:: img/image345.png Procédures expérimentales --------------------------- **Étape 1 :** Construisez le circuit. .. image:: img/image144.png :width: 800 Pour les utilisateurs du langage C ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ **Étape 2 :** Ouvrez le fichier de code. .. raw:: html .. code-block:: cd ~/davinci-kit-for-raspberry-pi/c/1.3.4 **Étape 3 :** Compilez le code. .. raw:: html .. code-block:: gcc 1.3.4_Relay.c -lwiringPi **Étape 4 :** Exécutez le fichier exécutable. .. raw:: html .. code-block:: sudo ./a.out Après l'exécution du code, la LED s'allumera. De plus, vous entendrez un « tic-tac » dû à l'ouverture du contact normalement fermé et à la fermeture du contact normalement ouvert. .. note:: Si cela ne fonctionne pas après l'exécution ou si un message d'erreur apparaît : \"wiringPi.h : Aucun fichier ou répertoire de ce type\", veuillez vous référer à :ref:`faq_c_nowork`. **Code** .. code-block:: c #include #include #define RelayPin 0 int main(void){ if(wiringPiSetup() == -1){ //si l'initialisation de wiringPi échoue, affichez un message à l'écran printf("setup wiringPi failed !"); return 1; } pinMode(RelayPin, OUTPUT); //définir la sortie GPIO17(GPIO0) while(1){ // Tick printf("Relay Open......\n"); delay(100); digitalWrite(RelayPin, LOW); delay(1000); // Tock printf("......Relay Close\n"); delay(100); digitalWrite(RelayPin, HIGH); delay(1000); } return 0; } **Explication du Code** .. code-block:: c digitalWrite(RelayPin, LOW); Configurez le port I/O à un niveau bas (0V), ce qui désactive le transistor et la bobine n'est pas alimentée. Il n'y a donc pas de force électromagnétique, le relais s'ouvre et la LED ne s'allume pas. .. code-block:: c digitalWrite(RelayPin, HIGH); Configurez le port I/O à un niveau haut (5V) pour alimenter le transistor. La bobine du relais est alimentée, générant une force électromagnétique, et le relais se ferme, allumant la LED. Pour les utilisateurs de Python ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ **Étape 2 :** Ouvrez le fichier de code. .. raw:: html .. code-block:: cd ~/davinci-kit-for-raspberry-pi/python **Étape 3 :** Exécutez le code. .. raw:: html .. code-block:: sudo python3 1.3.4_Relay.py Pendant l'exécution du code, la LED s'allume. De plus, vous entendrez un « tic-tac » dû à l'ouverture et à la fermeture du relais. **Code** .. note:: Vous pouvez **Modifier/Réinitialiser/Copier/Exécuter/Arrêter** le code ci-dessous. Mais avant cela, vous devez vous rendre au chemin du code source tel que ``davinci-kit-for-raspberry-pi/python``. .. raw:: html .. code-block:: python import RPi.GPIO as GPIO import time # Définir GPIO17 comme broche de contrôle relayPin = 17 # Définir une fonction de configuration def setup(): # Configurer le mode GPIO en numérotation BCM GPIO.setmode(GPIO.BCM) # Configurer le mode de relayPin en sortie, # avec un niveau initial à High (3,3V) GPIO.setup(relayPin, GPIO.OUT, initial=GPIO.HIGH) # Définir une fonction principale pour le processus principal def main(): while True: print ('Relay open...') # Tic GPIO.output(relayPin, GPIO.LOW) time.sleep(1) print ('...Relay close') # Tac GPIO.output(relayPin, GPIO.HIGH) time.sleep(1) # Définir une fonction destroy pour nettoyer après la fin du script def destroy(): # Éteindre la LED GPIO.output(relayPin, GPIO.HIGH) # Libérer les ressources GPIO.cleanup() # Si ce script est exécuté directement, exécuter : if __name__ == '__main__': setup() try: main() # Lorsque 'Ctrl+C' est pressé, le programme enfant # destroy() sera exécuté. except KeyboardInterrupt: destroy() **Explication du Code** .. code-block:: python GPIO.output(relayPin, GPIO.LOW) Configurez les broches du transistor en niveau bas pour ouvrir le relais, et la LED ne s'allume pas. .. code-block:: python time.sleep(1) Attendre 1 seconde. .. code-block:: python GPIO.output(relayPin, GPIO.HIGH) Configurez les broches du transistor en niveau haut pour activer le relais, et la LED s'allume. Image du Phénomène ----------------------- .. image:: img/image145.jpeg