Arduino - Berührungssensor - Solenoidschloss

Wir werden lernen, wie man Arduino verwendet, um das Solenoidschloss in zwei Anwendungsfällen zu steuern:

Erforderliche Hardware

1×Arduino Uno R3
1×USB 2.0 Kabel Typ A/B (für USB-A PC)
1×USB 2.0 Kabel Typ C/B (für USB-C PC)
1×Berührungssensor
1×Magnetschloss
1×Relais
1×12V Netzteil
1×DC-Stromanschluss
1×Verbindungskabel
1×(Empfohlen) Schraubklemmenblock-Shield für Arduino Uno
1×(Empfohlen) Breadboard-Shield für Arduino Uno
1×(Empfohlen) Gehäuse für Arduino Uno
1×(Empfohlen) Prototyping-Grundplatte & Breadboard-Kit für Arduino Uno

Oder Sie können die folgenden Kits kaufen:

1×DIYables STEM V3 Starter-Kit (Arduino enthalten)
1×DIYables Sensor-Kit (30 Sensoren/Displays)
1×DIYables Sensor-Kit (18 Sensoren/Displays)
Offenlegung: Einige der in diesem Abschnitt bereitgestellten Links sind Amazon-Affiliate-Links. Wir können eine Provision für Käufe erhalten, die über diese Links getätigt werden, ohne zusätzliche Kosten für Sie. Wir schätzen Ihre Unterstützung.

Über Berührungssensor und Solenoidschloss

Wenn Sie nichts über das Solenoidschloss und den Berührungssensor wissen (Pinbelegung, Funktionsweise, Programmierung ...), informieren Sie sich in den folgenden Tutorials darüber:

Verdrahtungsdiagramm

Schaltplan für Arduino-Berührungssensor-Solenoidschloss

Dieses Bild wurde mit Fritzing erstellt. Klicken Sie, um das Bild zu vergrößern.

Arduino-Code - Berührungssensor steuert das Solenoidschloss

/* * Dieser Arduino Code wurde von newbiely.de entwickelt * Dieser Arduino Code wird der Öffentlichkeit ohne jegliche Einschränkung zur Verfügung gestellt. * Für vollständige Anleitungen und Schaltpläne besuchen Sie bitte: * https://newbiely.de/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 } }

Schnelle Schritte

  • Verbinde den Arduino über ein USB-Kabel mit dem PC.
  • Öffne die Arduino IDE, wähle das richtige Board und den richtigen Port aus.
  • Kopiere den obigen Code und öffne ihn in der Arduino IDE.
  • Klicke in der Arduino IDE auf die Schaltfläche Hochladen, um den Code auf den Arduino hochzuladen.
Code in der Arduino IDE hochladen
  • Berühren Sie den Berührungssensor und halten Sie ihn mehrere Sekunden lang fest
  • Sehen Sie die Änderung des Zustands des Elektroschlosses

Code-Erklärung

Lies die zeilenweise Erklärung in den Kommentarzeilen des Quellcodes!

Arduino-Code – Berührungssensor schaltet das Solenoidschloss um

/* * Dieser Arduino Code wurde von newbiely.de entwickelt * Dieser Arduino Code wird der Öffentlichkeit ohne jegliche Einschränkung zur Verfügung gestellt. * Für vollständige Anleitungen und Schaltpläne besuchen Sie bitte: * https://newbiely.de/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); } }

Schnelle Schritte

  • Schließen Sie Arduino über ein USB-Kabel an den PC an
  • Öffnen Sie die Arduino-IDE, wählen Sie das richtige Board und den passenden Port aus
  • Kopieren Sie den obigen Code und öffnen Sie ihn in der Arduino-IDE
  • Klicken Sie auf die Hochladen-Schaltfläche in der Arduino IDE, um den Code auf den Arduino hochzuladen
  • Berühren Sie den Touch-Sensor mehrere Sekunden lang weiter und lösen Sie ihn danach
  • Sehen Sie die Änderung des Zustands des Solenoidschlosses

Code-Erklärung

Sie finden die Erklärung in der Kommentarzeile des oben genannten Arduino-Codes.

Im Code entspricht solenoidLockState = !solenoidLockState dem folgenden Code:

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

Video Tutorial

Wir erwägen die Erstellung von Video-Tutorials. Wenn Sie Video-Tutorials für wichtig halten, abonnieren Sie bitte unseren YouTube-Kanal , um uns zu motivieren, die Videos zu erstellen.

※ UNSERE NACHRICHTEN

  • Sie können gerne den Link zu diesem Tutorial teilen. Bitte verwenden Sie jedoch unsere Inhalte nicht auf anderen Websites. Wir haben viel Mühe und Zeit in die Erstellung der Inhalte investiert, bitte respektieren Sie unsere Arbeit!