Arduino Nano - Touch Sensor - Relay

Deze handleiding legt uit hoe u de Arduino Nano en een touch sensor gebruikt om een relay te bedienen. Door de relay te verbinden met een solenoïde slot, lamp, LED strip, motor of actuator..., kunt u met de touch sensor deze apparaten aansturen. We behandelen twee verschillende toepassingen:

Toepassing 1 - De staat van de relay is gesynchroniseerd met de staat van de touch sensor. In detail:

Toepassing 2 - De staat van de relay wordt telkens omgeschakeld bij aanraking van de touch sensor. Meer specifiek:

Over Relay en Touch Sensor

Als u niet vertrouwd bent met de relay en touch sensor (inclusief pinout, werking en programmeren), kunnen volgende tutorials u helpen:

Bedradingsschema

Arduino Nano touch sensor relay wiring diagram

This image is created using Fritzing. Click to enlarge image

Zie De beste manier om Arduino Nano en andere componenten van stroom te voorzien.

Toepassing 1 - De relay is gesynchroniseerd met de toestand van de touch sensor

Arduino Nano Code

/* * Deze Arduino Nano code is ontwikkeld door newbiely.nl * Deze Arduino Nano code wordt zonder enige beperking aan het publiek beschikbaar gesteld. * Voor volledige instructies en schema's, bezoek: * https://newbiely.nl/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 } }

Snelle Stappen

  • Verbind een Arduino Nano met uw computer via een USB-kabel.
  • Start de Arduino IDE en selecteer het juiste board en de juiste poort.
  • Kopieer de code en open deze in de Arduino IDE.
  • Klik op de Upload-knop in de Arduino IDE om de code te compileren en naar de Arduino Nano te uploaden.
Arduino IDE Upload Code
  • Raak de touch sensor aan en houd deze een paar seconden vast.
  • Observeer de verandering in de staat van de relay.

U zult zien dat de staat van de relay synchroon loopt met de staat van de touch sensor.

Code-uitleg

Bekijk de regel-voor-regel uitleg in de commentaarregels van de broncode!

Toepassing 2 - Touch sensor schakelt relay

Arduino Nano Code - Touch Sensor schakelt relay

/* * Deze Arduino Nano code is ontwikkeld door newbiely.nl * Deze Arduino Nano code wordt zonder enige beperking aan het publiek beschikbaar gesteld. * Voor volledige instructies en schema's, bezoek: * https://newbiely.nl/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-uitleg

U vindt de uitleg terug in de commentaren van de hierboven getoonde Arduino Nano code.

In de code is de expressie relay_state = !relay_state gelijkwaardig aan de volgende code:

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

Snelle Stappen

  • Kopieer de code en open deze in de Arduino IDE.
  • Upload de code naar de Arduino Nano.
  • Raak de touch sensor meerdere keren aan en laat los.
  • Observeer de verandering in de staat van de relay.

U zult merken dat de relay één keer aan- of uitschakelt telkens wanneer u de touch sensor aanraakt.

Video Tutorial

We overwegen het maken van videotutorials. Als u videotutorials belangrijk vindt, abonneer u dan op ons YouTube-kanaal om ons te motiveren de video's te maken.

Opmerkingen

※ ONZE BERICHTEN

  • U bent welkom om de link naar deze tutorial te delen. Gebruik onze inhoud echter niet op andere websites. We hebben veel moeite en tijd gestoken in het maken van de inhoud, respecteer alstublieft ons werk!