Arduino Nano - Capteur tactile

Ce tutoriel vous explique comment utiliser le capteur tactile capacitif avec un Arduino Nano. En détail, nous allons apprendre :

Préparation du matériel

1×Arduino Nano
1×USB A to Mini-B USB cable
1×Touch Sensor
1×Jumper Wires
1×(Optional) 9V Power Adapter for Arduino Nano
1×(Recommended) Screw Terminal Adapter for Arduino Nano

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 du capteur tactile

Un capteur tactile capacitif, également connu sous le nom de bouton tactile ou interrupteur tactile, est un dispositif fréquemment utilisé pour contrôler d'autres gadgets, comme une lampe tactile. Il remplit la même fonction qu'un bouton, mais est souvent choisi à la place d'un bouton pour les appareils modernes afin de leur donner une apparence plus soignée.

Brochage du capteur tactile

Le capteur tactile possède trois broches :

  • La broche GND doit être connectée à la masse (0V).
  • La broche VCC doit être connectée à la source de tension (5V ou 3,3V).
  • La broche SIGNAL est une broche de sortie. Elle sera à l'état BAS lorsque non touchée et à l'état HAUT lorsqu'elle est touchée. Cette broche doit être connectée à une broche d'entrée de l'Arduino Nano.
schéma de brochage du capteur tactile

Comment ça fonctionne

  • Lorsque le capteur n'est pas touché, la broche SIGNAL du capteur est à un niveau BAS.
  • Inversement, lorsque le capteur est touché, la broche SIGNAL du capteur est à un niveau ÉLEVÉ.

Arduino Nano - Capteur tactile

La broche SIGNAL du capteur tactile est connectée à une broche d'entrée sur un Arduino Nano. En vérifiant l'état d'une broche d'entrée de l'Arduino Nano, nous pouvons déterminer si le capteur tactile a été touché ou non.

Diagramme de câblage

Schéma de câblage du capteur tactile Arduino Nano

This image is created using Fritzing. Click to enlarge image

Comment programmer un capteur tactile

  • Initialise la broche de l'Arduino Nano en mode entrée numérique avec la fonction pinMode(). Par exemple, le code ci-dessous configure la broche 2 en mode entrée.
pinMode(2, INPUT_PULLUP);
  • Utilise la fonction digitalRead() pour lire l'état de la broche de l'Arduino Nano.
int inputState = digitalRead(2);

※ NOTE THAT:

Deux scénarios courants existent :

  • Le premier : Si l'entrée est HAUTE, effectuez une action. Si l'entrée est BASSE, effectuez l'action opposée.
  • Le deuxième : Si l'entrée passe de BAS à HAUT (ou vice versa), effectuez une action.

Selon l'application, nous pouvons en sélectionner un. Par exemple, si nous utilisons un capteur tactile pour contrôler une LED :

  • Si nous voulons que la LED soit ALLUMÉE lorsque le capteur est touché et ÉTEINTE lorsque le capteur n'est pas touché, nous DEVONS utiliser le premier scénario.
  • Si nous voulons que la LED bascule entre ALLUMÉ et ÉTEINT chaque fois que nous touchons le capteur, nous DEVONS utiliser le deuxième scénario.

Code Arduino Nano pour capteur tactile

Nous exécuterons deux exemples de code :

  • Arduino Nano lit la valeur du capteur tactile et l'imprime sur le moniteur série.
  • Arduino Nano détecte les événements de toucher ou de non-toucher.

Arduino Nano lit la valeur du capteur tactile et l'affiche sur le moniteur série.

/* * Ce code Arduino Nano a été développé par newbiely.fr * Ce code Arduino Nano 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-nano/arduino-nano-touch-sensor */ #define TOUCH_SENSOR_PIN 2 // The Arduino Nano pin connected to the touch sensor void setup() { // Initialize the Serial to communicate with the Serial Monitor. Serial.begin(9600); // initialize the Arduino Nano pin as an input pinMode(TOUCH_SENSOR_PIN, INPUT); } void loop() { // read the state of the the input pin: int state = digitalRead(TOUCH_SENSOR_PIN); // print state to Serial Monitor Serial.println(state); }

Étapes rapides

  • Copiez le code et ouvrez-le avec Arduino IDE.
  • Cliquez sur le bouton Upload de l'Arduino IDE pour compiler et téléverser le code vers l'Arduino Nano.
  • Placez votre doigt sur le capteur, puis retirez-le.
  • Consultez le résultat sur le moniteur série.
COM6
Send
0 0 0 1 1 1 1 1 1 0 0
Autoscroll Show timestamp
Clear output
9600 baud  
Newline  

Arduino Nano détecte si le capteur est touché ou relâché

/* * Ce code Arduino Nano a été développé par newbiely.fr * Ce code Arduino Nano 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-nano/arduino-nano-touch-sensor */ #define TOUCH_SENSOR_PIN 2 // The Arduino Nano pin connected to the touch sensor int prev_state = LOW; // The previous state from the input pin int touch_state; // The current reading from the input pin void setup() { // Initialize the Serial to communicate with the Serial Monitor. Serial.begin(9600); // initialize the Arduino Nano pin as an input pinMode(TOUCH_SENSOR_PIN, INPUT); } void loop() { // read the state of the the input pin: touch_state = digitalRead(TOUCH_SENSOR_PIN); if (prev_state == LOW && touch_state == HIGH) Serial.println("The sensor is touched"); else if (prev_state == HIGH && touch_state == LOW) Serial.println("The sensor is released"); // save the the last state prev_state = touch_state; }

Étapes rapides

  • Copiez le code et ouvrez-le avec l'IDE Arduino.
  • Cliquez sur le bouton Upload dans l'IDE pour transférer le code vers l'Arduino Nano.
  • Posez votre doigt sur le capteur.
  • Vérifiez la sortie sur le moniteur série.
COM6
Send
The sensor is touched
Autoscroll Show timestamp
Clear output
9600 baud  
Newline  
  • Retirez votre doigt du capteur tactile.
  • Vérifiez la sortie sur le moniteur série.
COM6
Send
The sensor is touched The sensor is released
Autoscroll Show timestamp
Clear output
9600 baud  
Newline  

Vidéo

Références de Fonction

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