Arduino Nano - Berührungssensor - Relais

Dieses Tutorial zeigt Ihnen, wie Sie den Arduino Nano und einen Berührungssensor verwenden, um das Relais zu steuern. Indem Sie das Relais an ein elektromagnetisches Schloss anschließen, können Sie einen Berührungssensor verwenden, um diese zu steuern. Wir werden zwei verschiedene Anwendungen kennenlernen:

Anwendung 1 - Der Relaiszustand ist mit dem Zustand des Berührungssensors synchronisiert. Im Detail:

Anwendung 2 - Der Relaiszustand wird jedes Mal umgeschaltet, wenn der Berührungssensor berührt wird. Genauer gesagt:

Erforderliche Hardware

1×Official Arduino Nano
1×Alternativ: DIYables ATMEGA328P Nano Development Board
1×USB-A-zu-Mini-B-Kabel
1×Berührungssensor
1×Relais
1×Breadboard
1×Verbindungskabel
1×(Optional) Magnetschloss
1×(Optional) 12V Netzteil
1×(Optional) DC-Stromanschluss
1×(Empfohlen) Schraubklemmen-Erweiterungsboard für Arduino Nano
1×(Empfohlen) Breakout-Erweiterungsboard für Arduino Nano
1×(Empfohlen) Stromverteiler für Arduino Nano

Oder Sie können die folgenden Kits kaufen:

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 Relais und Berührungssensoren

Wenn Sie mit Relais- und Berührungssensoren (einschließlich Pinbelegung, Funktionsweise und Programmierung) nicht vertraut sind, können Ihnen die folgenden Tutorials helfen:

Verdrahtungsdiagramm

Arduino Nano Berührungssensor Relais-Schaltplan

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

Siehe Der beste Weg, den Arduino Nano und andere Komponenten mit Strom zu versorgen.

Anwendung 1 - Der Relaiszustand ist mit dem Zustand des Berührungssensors synchronisiert

Arduino Nano-Programmcode

/* * Dieser Arduino Nano Code wurde von newbiely.de entwickelt * Dieser Arduino Nano 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-nano/arduino-nano-touch-sensor-relay */ #define TOUCH_SENSOR_PIN 3 // The Arduino Nano pin connected to the touch sensor #define RELAY_PIN 2 // The Arduino Nano pin connected to the relay module void setup() { Serial.begin(9600); // Initialize the Serial to communicate with the Serial Monitor. pinMode(TOUCH_SENSOR_PIN, INPUT); // set arduino pin to input mode pinMode(RELAY_PIN, OUTPUT); // set arduino pin to output mode } void loop() { int touch_state = digitalRead(TOUCH_SENSOR_PIN); // read new state if (touch_state == HIGH) { Serial.println("The sensor is being touched"); digitalWrite(RELAY_PIN, HIGH); // turn on } else if (touch_state == LOW) { Serial.println("The sensor is untouched"); digitalWrite(RELAY_PIN, LOW); // turn off } }

Schnelle Schritte

  • Schließen Sie einen Arduino Nano mit einem USB-Kabel an Ihren Computer an.
  • Starten Sie die Arduino-IDE und wählen Sie das richtige Board und den richtigen Port aus.
  • Kopieren Sie den Code und öffnen Sie ihn in der Arduino-IDE.
  • Klicken Sie in der Arduino-IDE auf die Schaltfläche Hochladen, um den Code zu kompilieren und auf den Arduino Nano hochzuladen.
Code in der Arduino IDE hochladen
  • Berühren Sie den Berührungssensor und halten Sie ihn einige Sekunden lang gedrückt.
  • Überprüfen Sie die Veränderung des Relaiszustands.

Sie werden sehen, dass der Relaiszustand mit dem Zustand des Berührungssensors synchron ist.

Code-Erklärung

Schauen Sie sich die Zeile-für-Zeile-Erklärung an, die in den Kommentaren des Quellcodes enthalten ist!

Anwendung 2 - Berührungssensor schaltet Relais um

Arduino Nano Code - Berührungssensor schaltet Relais um

/* * Dieser Arduino Nano Code wurde von newbiely.de entwickelt * Dieser Arduino Nano 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-nano/arduino-nano-touch-sensor-relay */ #define TOUCH_SENSOR_PIN 3 // The Arduino Nano pin connected to the touch sensor #define RELAY_PIN 2 // The Arduino Nano pin connected to the relay module int relay_state = LOW; // The current state of relay int prev_touch_state; // The previous state of touch sensor int touch_state; // The current state of touch sensor void setup() { Serial.begin(9600); // Initialize the Serial to communicate with the Serial Monitor. pinMode(TOUCH_SENSOR_PIN, INPUT); // set arduino pin to input mode pinMode(RELAY_PIN, OUTPUT); // set arduino pin to output mode touch_state = digitalRead(TOUCH_SENSOR_PIN); } void loop() { prev_touch_state = touch_state; // save the last state touch_state = digitalRead(TOUCH_SENSOR_PIN); // read new state if (prev_touch_state == LOW && touch_state == HIGH) { Serial.println("The sensor is touched"); // toggle state of relay relay_state = !relay_state; // control relay according to the toggled state digitalWrite(RELAY_PIN, relay_state); } }

Code-Erklärung

Sie finden die Erklärung in den Kommentarzeilen des Arduino Nano-Codes oben.

Im Code ist der Ausdruck relay_state = !relay_state äquivalent zu dem folgenden Code:

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

Schnelle Schritte

  • Kopieren Sie den Code und öffnen Sie ihn in der Arduino IDE.
  • Laden Sie den Code auf den Arduino Nano hoch.
  • Berühren Sie den Berührungssensor mehrmals und lösen Sie ihn wieder.
  • Prüfen Sie die Änderung des Relaiszustands.

Sie werden feststellen, dass das Relais jedes Mal, wenn Sie den Berührungssensor berühren, nur einmal ein- oder ausschaltet.

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!