Arduino UNO R4 - Interrupteur de fin de course

Ce tutoriel vous explique comment utiliser l'interrupteur de fin de course avec l'Arduino UNO R4. En détail, nous apprendrons :

Arduino UNO R4 avec interrupteur de fin de course

À propos de l'interrupteur de fin de course

On le nomme Interrupteur de fin de course car il sert principalement à détecter quand un objet en mouvement atteint une limite. On l'appelle aussi interrupteur de déplacement.

Schéma des broches

Plusieurs types d'interrupteurs de fin de course sont fréquemment utilisés, notamment le KW12-3 et le V-156-1C25. Les deux modèles disposent de 3 broches.

  • Broche C : Il s'agit de la broche commune. Elle est utilisée à la fois en mode normalement ouvert et en mode normalement fermé.
  • Broche NO : Cela correspond à la broche normalement ouverte. Elle est utilisée en mode normalement ouvert.
  • Broche NC : Cela correspond à la broche normalement fermée. Elle est utilisée en mode normalement fermé.
Schéma de brochage de l'interrupteur de fin de course
image source: diyables.io

Comment cela fonctionne

L'interrupteur de fin de course possède trois broches, mais en pratique seules deux broches sont utilisées : la broche C et l'une des deux autres broches. Il existe quatre façons différentes de connecter l'interrupteur de fin de course. Voici un tableau montrant comment câbler l'interrupteur de fin de course et comment il se lit sur l'Arduino UNO R4 pour les quatre méthodes :

C pin NO pin NC pin Arduino UNO R4 Input Pin's State
1 GND Arduino UNO R4 Input Pin (with pull-up) NOT connected HIGH when untouched, LOW when touched
2 GND NOT connected Arduino UNO R4 Input Pin (with pull-up) LOW when untouched, HIGH when touched
3 VCC Arduino UNO R4 Input Pin (with pull-down) NOT connected LOW when untouched, HIGH when touched
4 VCC NOT connected Arduino UNO R4 Input Pin (with pull-down) HIGH when untouched, LOW when touched

Nous pouvons permuter entre la broche GND et la broche d'entrée de l'Arduino UNO R4 pour chaque méthode. Cela nous donne 8 façons de connecter l'Arduino UNO R4 à un interrupteur de fin de course.

Il suffit d'en choisir une parmi les quatre méthodes mentionnées ci-dessus. Nous utiliserons la première méthode pour le reste de ce tutoriel.

Diagramme de câblage

Schéma de câblage de l'interrupteur de fin de course Arduino UNO R4

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

Voir Comment alimenter l'Arduino UNO R4..

Code Arduino UNO R4 - Interrupteur de fin de course

Tout comme un bouton, un interrupteur de fin de course a aussi besoin d’un anti-rebond (Pour en savoir plus sur Pourquoi l’anti-rebond est nécessaire pour le bouton/l’interrupteur de fin de course ?). L’anti-rebond peut compliquer le code. Heureusement, la bibliothèque ezButton inclut une fonction d’anti-rebond et utilise une résistance de tirage interne, ce qui rend la programmation plus simple pour nous.

※ Note:

Voici deux scénarios courants :

  • Le premier : lorsque l'interrupteur est dans l'état TOUCHED, effectuez une action. Lorsqu'il est dans l'état UNTOUCHED, effectuez l'action opposée.
  • Le second : lorsque l'interrupteur change d'état de UNTOUCHED à TOUCHED ou de TOUCHED à UNTOUCHED, effectuez une action.
/* * Ce code Arduino UNO R4 a été développé par newbiely.fr * Ce code Arduino UNO R4 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-uno-r4/arduino-uno-r4-limit-switch */ #include <ezButton.h> ezButton limitSwitch(7); // create ezButton object that attach to pin 7; void setup() { Serial.begin(9600); limitSwitch.setDebounceTime(50); // set debounce time to 50 milliseconds } void loop() { limitSwitch.loop(); // MUST call the loop() function first if(limitSwitch.isPressed()) Serial.println("The limit switch: UNTOUCHED -> TOUCHED"); if(limitSwitch.isReleased()) Serial.println("The limit switch: TOUCHED -> UNTOUCHED"); int state = limitSwitch.getState(); if(state == HIGH) Serial.println("The limit switch: UNTOUCHED"); else Serial.println("The limit switch: TOUCHED"); }

Étapes rapides

Suivez ces instructions étape par étape :

  • Si c'est la première fois que vous utilisez l'Arduino Uno R4 WiFi/Minima, reportez-vous au tutoriel sur la Arduino UNO R4 - Installation du logiciel..
  • Connectez l'interrupteur de fin de course à l'Arduino Uno R4 selon le schéma fourni.
  • Connectez la carte Arduino Uno R4 à votre ordinateur à l'aide d'un câble USB.
  • Lancez l'IDE Arduino sur votre ordinateur.
  • Sélectionnez la carte Arduino Uno R4 appropriée (par exemple, Arduino Uno R4 WiFi) et le port COM.
  • Installez la bibliothèque ezButton en utilisant ce guide : Voir Guide de la bibliothèque ezButton.
  • Appuyez sur le bouton Upload dans l'IDE Arduino pour transférer le code vers l'Arduino UNO R4.
  • Appuyez sur l'interrupteur de fin de course et relâchez-le.
  • Vérifiez les résultats dans le Moniteur Série.
COM6
Send
The limit switch: UNTOUCHED The limit switch: UNTOUCHED The limit switch: UNTOUCHED The limit switch: UNTOUCHED -> TOUCHED The limit switch: TOUCHED The limit switch: TOUCHED The limit switch: TOUCHED The limit switch: TOUCHED The limit switch: TOUCHED The limit switch: TOUCHED The limit switch: TOUCHED The limit switch: TOUCHED The limit switch: TOUCHED The limit switch: TOUCHED The limit switch: TOUCHED -> UNTOUCHED The limit switch: UNTOUCHED The limit switch: UNTOUCHED The limit switch: UNTOUCHED The limit switch: UNTOUCHED
Autoscroll Show timestamp
Clear output
9600 baud  
Newline  

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 !