Arduino - Capteur tactile - Serrure à solénoïde

Nous allons apprendre à utiliser Arduino pour contrôler le verrou solénoïde dans deux cas d'utilisation :

Préparation du matériel

1×Arduino Uno
1×USB 2.0 cable type A/B
1×Touch Sensor
1×Solenoid Lock
1×Relay
1×12V Power Adapter
1×DC Power Jack
1×Jumper Wires
1×(Optional) 9V Power Adapter for Arduino
1×(Recommended) Screw Terminal Block Shield for Arduino Uno
1×(Optional) Transparent Acrylic Enclosure For Arduino Uno

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.

Sur le capteur tactile et le verrou à solénoïde

Si vous ne connaissez pas le verrou à solénoïde et le capteur tactile (brochage, fonctionnement, programmation...), renseignez-vous sur ces dispositifs dans les tutoriels suivants :

Diagramme de câblage

Schéma de câblage de la serrure à solénoïde avec capteur tactile Arduino

This image is created using Fritzing. Click to enlarge image

Code Arduino - Capteur tactile contrôle la serrure à solénoïde

/* * Ce code Arduino a été développé par newbiely.fr * Ce code Arduino 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/arduino-touch-sensor-solenoid-lock */ const int TOUCH_SENSOR_PIN = 8; // Arduino pin connected to touch sensor's pin const int RELAY_PIN = A5; // Arduino pin connected to the solenoid lock via relay void setup() { Serial.begin(9600); // initialize serial pinMode(TOUCH_SENSOR_PIN, INPUT); // set arduino pin to input mode pinMode(RELAY_PIN, OUTPUT); // set arduino pin to output mode } void loop() { int touchState = digitalRead(TOUCH_SENSOR_PIN); // read new state if (touchState == HIGH) { Serial.println("The sensor is being touched"); digitalWrite(RELAY_PIN, HIGH); // turn on } else if (touchState == LOW) { Serial.println("The sensor is untouched"); digitalWrite(RELAY_PIN, LOW); // turn off } }

Étapes rapides

  • Connectez l'Arduino au PC via un câble USB
  • Ouvrez l'Arduino IDE, sélectionnez la bonne carte et le bon port
  • Copiez le code ci-dessus et ouvrez-le avec l'Arduino IDE
  • Cliquez sur le bouton Upload de l'Arduino IDE pour téléverser le code sur l'Arduino
Chargement du code Arduino IDE
  • Touchez et continuez de toucher le capteur tactile pendant plusieurs secondes.
  • Observez le changement d'état du verrou solénoïde.

Explication du code

Lisez l'explication ligne par ligne dans les lignes de commentaire du code source !

Code Arduino - Capteur tactile bascule serrure à solénoïde

/* * Ce code Arduino a été développé par newbiely.fr * Ce code Arduino 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/arduino-touch-sensor-solenoid-lock */ const int TOUCH_SENSOR_PIN = 8; // Arduino pin connected to touch sensor's pin const int RELAY_PIN = A5; // Arduino pin connected to solenoid lock via relay // variables will change: int solenoidLockState = LOW; // the current state of relay int lastTouchState; // the previous state of touch sensor int currentTouchState; // the current state of touch sensor void setup() { Serial.begin(9600); // initialize serial pinMode(TOUCH_SENSOR_PIN, INPUT); // set arduino pin to input mode pinMode(RELAY_PIN, OUTPUT); // set arduino pin to output mode currentTouchState = digitalRead(TOUCH_SENSOR_PIN); } void loop() { lastTouchState = currentTouchState; // save the last state currentTouchState = digitalRead(TOUCH_SENSOR_PIN); // read new state if(lastTouchState == LOW && currentTouchState == HIGH) { Serial.println("The sensor is touched"); // toggle state of relay solenoidLockState = !solenoidLockState; // control relay arccoding to the toggled state digitalWrite(RELAY_PIN, solenoidLockState); } }

Étapes rapides

  • Connectez l'Arduino au PC via le câble USB
  • Ouvrez l'IDE Arduino, sélectionnez la bonne carte et le bon port
  • Copiez le code ci-dessus et ouvrez-le avec l'IDE Arduino
  • Cliquez sur le bouton Upload de l'IDE Arduino pour charger le code sur Arduino
  • Continuez à toucher le capteur tactile plusieurs secondes, puis relâchez-le.
  • Observez le changement d'état du verrou à solénoïde.

Explication du code

Vous pouvez trouver l'explication dans la ligne de commentaires du code Arduino ci-dessus.

Dans le code, solenoidLockState = !solenoidLockState est équivalent au code suivant :

if(solenoidLockState == LOW) solenoidLockState = HIGH; else solenoidLockState = LOW;

Vidéo

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