Utiliser un bouton-poussoir Arduino pour commander un relais et une ampoule en courant alternatif

Utiliser un bouton-poussoir Arduino pour commander un relais et une ampoule en courant alternatif

Dans ce tutoriel, nous apprendrons comment contrôler une ampoule en courant alternatif (AC) ou une lampe LED à l'aide d'un bouton-poussoir et d'un relais. Le bouton-poussoir basculera la lumière entre allumée et éteinte, la laissant dans son dernier état même après le relâchement du bouton. Ce montage n'est pas seulement pratique, c'est aussi une excellente introduction à la manipulation des relais et des charges en courant alternatif.

5V LOW-LEVEL trigger relay

Au fur et à mesure, nous aborderons les composants nécessaires, les instructions de câblage et le code Arduino qui rendent ce projet possible. Assurez-vous de regarder la vidéo associée pour un guide visuel et des explications détaillées (dans la vidéo à 00:00).

5V LOW-Level triggered Relay module

Le matériel expliqué

Pour ce projet, nous utiliserons un module relais, une carte Arduino et un bouton poussoir. Le module relais agit comme un interrupteur capable de commander des charges en courant alternatif à haute tension, comme une ampoule, tout en étant contrôlé par les signaux basse tension de l'Arduino. Le module relais possède trois bornes principales pour connecter la charge : commune (COM), normalement ouverte (NO) et normalement fermée (NC).

Le bouton poussoir sert d'interface utilisateur pour basculer l'état du relais. Il est connecté à l'une des broches numériques de l'Arduino. Lorsque le bouton est enfoncé, il envoie un signal à l'Arduino, qui active ou désactive alors le relais en conséquence. Cette interaction simple nous permet de contrôler facilement la lumière.

Détails de la fiche technique du relais

FabricantSongle
Numéro de pièceSRD-05VDC-SL-C
Tension de la bobine5 V CC
Tension de commutationCA 250 V / CC 30 V
Courant de commutation10 A max.
Résistance de contact≤ 100 mΩ
Résistance d'isolement≥ 1000 MΩ
Température de fonctionnementde -40 à +70 °C
PaquetModule relais standard

  • Assurez-vous que le relais est adapté à la charge que vous commutez.
  • Maintenez le module de relais alimenté en 5 VDC.
  • Utilisez une isolation appropriée pour les connexions en courant alternatif.
  • Soyez prudent lorsque vous travaillez avec le courant alternatif ; assurez-vous que le circuit est débranché avant d'apporter des modifications.
  • Connectez le bouton-poussoir à la broche d'entrée désignée de l'Arduino.
  • Utilisez le mode INPUT_PULLUP pour la broche du bouton-poussoir afin d'éviter d'avoir recours à des résistances externes.
  • Testez le fonctionnement du relais avec une tension plus faible avant de connecter des charges en courant alternatif.
  • Vérifiez les connexions pour éviter les courts-circuits.

Instructions de câblage

Arduino wiring for AC bulb, LED and push button
Arduino wiring for AC bulb, LED and push button

Pour câbler le module de relais, commencez par connecter la broche VCC du relais à la broche 5V de l'Arduino, et la broche GND du relais à la broche GND de l'Arduino. La broche IN du relais doit être connectée à la broche numérique 10 de l'Arduino. Cette broche enverra le signal pour activer le relais.

Pour le bouton-poussoir, connectez une borne à la broche numérique 2 de l'Arduino. L'autre borne doit être reliée à GND. Cette configuration utilise la résistance pull-up interne de l'Arduino, donc assurez-vous que la broche est configurée en INPUT_PULLUP dans le code. Lorsque le bouton est pressé, il mettra la broche à LOW, envoyant un signal à l'Arduino.

Pour la charge en courant alternatif, branchez un fil sur la borne COM du relais et l'autre sur la borne NO. Cette configuration permettra à la charge en courant alternatif de s'allumer lorsque le relais est activé. Veillez toujours à ce que les connexions en courant alternatif soient sécurisées et isolées.

Exemples de code et guide pas à pas

Le code suivant initialise les broches nécessaires et configure le relais pour qu'il reste éteint au départ. L'appui sur le bouton bascule l'état du relais et met à jour l'état de la lumière en conséquence.

int pbuttonPin = 2; // connect output to push button
int relayPin = 10; // Connected to relay (LED)

void setup() {
  Serial.begin(9600);
  pinMode(pbuttonPin, INPUT_PULLUP); 
  pinMode(relayPin, OUTPUT);
  digitalWrite(relayPin, HIGH); // keep the load OFF at the beginning
}

Dans le code, la variablepbuttonPinest réglé sur la broche 2, qui est utilisée pour le bouton-poussoir. LerelayPinest assigné à la broche 10, contrôlant le relais. LedigitalWriteLa fonction est utilisée pour garantir que le relais démarre à l'état OFF.

void loop() {
  val = digitalRead(pbuttonPin); // read the push button value
  if(val == HIGH && lightON == LOW) {
    pushed = 1 - pushed; // toggle the push status
    delay(100);
  }
  if(pushed == HIGH) {
    digitalWrite(relayPin, LOW); // turn the relay ON
  } else {
    digitalWrite(relayPin, HIGH); // turn the relay OFF
  }
}

Cette section du code vérifie en continu l'état du bouton-poussoir. Lorsque le bouton est appuyé, cela bascule lepushedvariable. En fonction de la valeur depushed, le relais est activé ou désactivé, contrôlant ainsi la lumière. Cette boucle s'exécute en continu, garantissant que l'état de la lumière est mis à jour en temps réel.

Pour obtenir tous les détails du code, veuillez consulter le code chargé sous l'article.

Démonstration / À quoi s'attendre

Lorsque vous appuyez sur le bouton-poussoir, le relais s'activera, allumant l'ampoule AC connectée. Appuyer à nouveau sur le bouton éteindra l'ampoule. Le moniteur série affichera des messages d'état, indiquant si la lumière est ON ou OFF. Si vous rencontrez des problèmes, assurez-vous que le câblage est correct et vérifiez l'absence d'entrées flottantes qui pourraient provoquer un comportement inattendu (dans la vidéo à 10:00).

Horodatages vidéo

  • 00:00- Introduction
  • 01:30- Aperçu du matériel
  • 03:15- Instructions de câblage
  • 05:45- Présentation du code
  • 08:00- Démonstration

Images

5V LOW-Level triggered Relay module
5V LOW-Level triggered Relay module
5V LOW-LEVEL trigger relay
5V LOW-LEVEL trigger relay
Arduino wiring for AC bulb, LED and push button
Arduino wiring for AC bulb, LED and push button
5V LOW-LEVEL trigger relay
5V LOW-LEVEL trigger relay
34-Using an Arduino push button to push-on and push-off a relay and AC bulb (toggle)
Langue: C++
Copié !

Ressources et références

Fichiers📁

Aucun fichier disponible.