Arduino, Tutoriels

Comment utiliser Bouton poussoir avec Arduino

Bouton Poussoir Arduino

Introduction

Bouton poussoir est un composant électronique couramment utilisé pour les projets d’automatisation et les applications interactives. Dans cet article, nous allons expliquer comment utiliser un bouton poussoir avec Arduino. Nous allons voir les différents types de boutons poussoirs et leur utilisation. Nous allons également apprendre à connecter un bouton poussoir à Arduino et à écrire un code pour lire l’état du bouton poussoir.

Comment utiliser un bouton poussoir ?

Un bouton poussoir est un composant électronique qui permet de contrôler l’état d’un circuit en ouvrant ou en fermant le circuit lorsqu’il est activé. Il est appelé momentané car il ne conserve pas son état enclenché ou désenclenché une fois que l’on arrête d’appuyer dessus. Le bouton poussoir est donc souvent utilisé pour des fonctions temporaires ou pour une action ponctuelle

Où utiliser le bouton poussoir ?

Les boutons poussoirs sont généralement utilisés pour contrôler des circuits électroniques en ouvrant ou en fermant un circuit.

Par exemple il peut être utilisé :

  1. Interrupteur de lumière : Pour allumer ou éteindre une lumière.
  2. Interphone : Pour permettre aux visiteurs de sonner à la porte d’entrée.
  3. Contrôle de volume : Pour augmenter ou diminuer le volume d’un système de sonorisation ou d’un système de home cinéma.
  4. Alarme : Pour activer ou désactiver les alarmes.
  5. Portes automatiques : Pour ouvrir et fermer les portes automatiques.
  6. Jouets : Pour activer des fonctions ou des effets sonores dans les jouets.
  7. Appareils électroménagers : Pour activer et désactiver les fonctions des appareils électroménagers.
  8. Machines industrielles : Pour contrôler les machines industrielles.
  9. Contrôle de la température : Pour régler la température d’un thermostat.
  10. Contrôle de la vitesse : Pour régler la vitesse d’un ventilateur ou d’un moteur.
  11. Jeux vidéo : Pour jouer à des jeux vidéo.
  12. Applications d’automatisation : Pour activer des fonctions spécifiques dans les projets d’automatisation.
  13. Contrôle de la navigation : Pour naviguer dans les menus des systèmes électroniques.
  14. Contrôle de l’éclairage de la voiture : Pour allumer et éteindre les lumières de la voiture.

Dans les applications électroniques, les boutons poussoirs peuvent être connectés à des microcontrôleurs comme Arduino Maroc pour réaliser des fonctions plus complexes. Par exemple, un bouton poussoir peut être utilisé pour déclencher un événement spécifique, ou pour activer un mode de fonctionnement particulier dans un programme Arduino.

Utilisation avec Arduino Uno

Maintenant que nous avons compris comment fonctionne un bouton poussoir et où il peut être utilisé, voyons comment l’utiliser avec Arduino.

Matériel nécessaire :

Pour utiliser un bouton poussoir avec Arduino UNO, vous aurez besoin de :

  • Une carte Arduino (Uno, Mega ou toute autre type)
  • bouton poussoir
  • Des fils de raccordement
  • Une résistance de 10k ohms

Branchement du bouton poussoir avec Arduino :

Bouton Poussoir Arduino

Le bouton poussoir doit être branché sur la carte Arduino. Vous pouvez utiliser l’un des ports d’entrée numériques de la carte pour connecter le bouton. Voici comment vous pouvez connecter un bouton poussoir avec une résistance de pull-up :

  • Connectez une extrémité de la résistance à l’un des ports d’entrée numériques de la carte Arduino.
  • Connectez l’autre extrémité de la résistance au bouton poussoir.
  • Connectez une des pattes du bouton poussoir à la masse de la carte Arduino.
  • Connectez l’autre patte du bouton poussoir à la carte Arduino.

Si vous utilisez une résistance de pull-down, connectez-la de la même manière, mais connectez la résistance à la masse plutôt qu’au port d’entrée.

Code Arduino pour lire l’état du bouton poussoir

Pour lire l’état du bouton poussoir, vous devez écrire un code Arduino. Voici comment vous pouvez le faire :

int bouton = 2; // Port d'entrée numérique
void setup() {
pinMode(bouton, INPUT); // Initialiser le port d'entrée numérique en mode entrée
Serial.begin(9600); // Initialiser la communication série
}

void loop() {
int etat = digitalRead(bouton); // Lire l'état du bouton poussoir

if (etat == HIGH) {
Serial.println("Le bouton est appuyé");
} else {
Serial.println("Le bouton n'est pas appuyé");
}
}

Ce code lit l’état du bouton poussoir et affiche un message sur le moniteur série. Lorsque le bouton est appuyé, il affiche “Le bouton est appuyé”, sinon il affiche “Le bouton n’est pas appuyé”.

Code pour configurer le bouton poussoir

Pour configurer le bouton poussoir, vous pouvez utiliser la fonction pinMode(). Cette fonction configure le port d’entrée numérique pour fonctionner en mode entrée ou sortie. Voici comment vous pouvez utiliser cette fonction pour configurer le bouton poussoir :

int bouton = 2; // Port d'entrée numérique
void setup() 
{ 
pinMode(bouton, INPUT_PULLUP); // Configurer le port d'entrée numérique avec résistance de pull-up interne 
}

Dans ce code, la fonction pinMode() est utilisée pour configurer le port d'entrée numérique avec une résistance de pull-up interne. Cela élimine la nécessité d'utiliser une résistance de pull-up externe.

Code pour lire l’état du bouton poussoir

Pour lire l’état du bouton poussoir, vous pouvez utiliser la fonction digitalRead(). Cette fonction lit l’état du port d’entrée numérique et renvoie la valeur HIGH ou LOW. Voici comment vous pouvez utiliser cette fonction pour lire l’état du bouton poussoir :

int bouton = 2; // Port d'entrée numérique
void setup() 
{ 
pinMode(bouton, INPUT_PULLUP); // Configurer le port d'entrée numérique avec résistance de pull-up interne Serial.begin(9600); // Initialiser la communication série 
}

void loop() 
{ 
int etat = digitalRead(bouton); // Lire l'état du bouton poussoir

if (etat == LOW) 
{ 
Serial.println("Le bouton est appuyé"); 
} 
else { Serial.println("Le bouton n'est pas appuyé");
 }
 }

Dans ce code, la fonction digitalRead() est utilisée pour lire l’état du bouton poussoir. Si le bouton est appuyé, la fonction renvoie la valeur LOW, sinon elle renvoie la valeur HIGH.

Amélioration du code

Imprimer un message plus explicite : Le code précédent peut être amélioré en ajoutant un message plus explicite lorsqu’on appuie sur le bouton poussoir. Voici comment vous pouvez le faire :

int bouton = 2; // Port d'entrée numérique
void setup() 
{
 pinMode(bouton, INPUT_PULLUP); // Configurer le port d'entrée numérique avec résistance de pull-up interne Serial.begin(9600); // Initialiser la communication série 
}

void loop() 
{ 
int etat = digitalRead(bouton); // Lire l'état du bouton poussoir

if(etat == LOW) {
Serial.println("Bouton appuyé !"); // Afficher un message plus explicite
delay(500); // Attendre 500 ms pour éviter les rebonds
}
}

Dans ce code, un message plus explicite est affiché lorsque le bouton est appuyé. La fonction delay() est également utilisée pour éviter les rebonds.

Utilisation du Bouton poussoir pour allumer et éteindre une LED

Bouton Poussoir Pour Allumer Et Éteindre Une Led

Voici les étapes à suivre pour réaliser cette application :

  1. Matériel nécessaire :
    • Pour cette application, vous aurez besoin d’un bouton poussoir, d’une LED, d’une résistance de 220 ohms et de 10kohms, de fils de connexion et d’une carte Arduino.
  2. Branchement du bouton poussoir avec Arduino :
  3. Branchement de la LED avec Arduino :
    • Pour brancher la LED avec Arduino, connectez l’anode de la LED (la broche plus longue) à la broche 13 de la carte Arduino et connectez la cathode de la LED (la broche plus courte) à une résistance de 220 ohms. Connectez ensuite l’autre extrémité de la résistance à la masse (GND) de la carte Arduino.
  4. Code Arduino pour allumer et éteindre la LED :
    • Ecrivez un code Arduino pour allumer et éteindre la LED en fonction de l’état du bouton poussoir. Voici un exemple de code :
pinMode(2, INPUT);
  pinMode(13, OUTPUT);
}

void loop() {
  int etat = digitalRead(2);
  if (etat == HIGH) {
    digitalWrite(13, HIGH);
  } else {
    digitalWrite(13, LOW);
  }
}

Dans ce code, nous avons configuré la broche 2 comme une entrée et la broche 13 comme une sortie. Nous avons ensuite utilisé la fonction digitalRead() pour lire l’état du bouton poussoir et la fonction digitalWrite() pour allumer ou éteindre la LED en fonction de l’état du bouton poussoir.

  1. Test de l’application : téléversez le code sur la carte Arduino et appuyez sur le bouton poussoir pour allumer et éteindre la LED en fonction de son état.

Utilisation des résistances pull up/down

Les résistances de pull-up et de pull-down sont utilisées pour maintenir un port d’entrée numérique à un niveau logique connu en l’absence de signal. Lorsqu’un bouton poussoir est utilisé, une résistance de pull-up est généralement utilisée pour maintenir le port d’entrée à un niveau logique élevé en l’absence de signal.

Si vous n’avez pas de résistance de pull-up externe, vous pouvez utiliser la résistance de pull-up interne de la carte Arduino en utilisant la fonction pinMode() avec l’option INPUT_PULLUP. Si vous utilisez une résistance de pull-down, vous pouvez la connecter à la masse et configurer le port d’entrée numérique avec la fonction pinMode() avec l’option INPUT.

Lien outilles

Video descriptif du tutoriel Bouton poussoir pour contrôler une LED : https://www.youtube.com/watch?v=MnzidiZ_6ok

La fiche technique du Bouton poussoir : https://components101.com/sites/default/files/component_datasheet/Push-Button.pdf