Aansluitschema Drukknop met LED-Ring en Relais
Met deze voorbeeld code kunt u een relais in en uitschakelen door middel van een Arduino Uno en een Drukknop met Ledverlichting
Stappenplan
- verbind de DC+ van het relais met de 5V van de Arduino
- Verbind de DC- van het relais met de GND van de Arduino
- verbind de IN pin van het relais met de digitale pin 8 van de Arduino
- verbind de C van de drukknop met de GND van de Arduino
- verbind de 1 van de drukknop met de GND van de Arduino
- Verbind de NO van de drukknop met de digitale pin 2 van de Arduino
- Verbind de 2 van de drukknop met de digitale pin 7 van de Arduino
Voorbeeldcode
const int drukknopPin = 2; // Pinnummer voor de drukknop
const int relaisPin = 8; // Pinnummer voor het relais
const int ledPin = 7; // Pinnummer voor de LED
int drukknopStatus = HIGH; // Variabele om de status van de drukknop bij te houden (laag = niet ingedrukt, hoog = ingedrukt)
int knopcyclus = 0; // Variabele om de knopcycli bij te houden (0 = wacht op knop indrukken, 1 = wacht op loslaten, 2 = knop is ingedrukt)
int relaisStatus = LOW; // Variabele om de status van het relais bij te houden (0 = uit, 1 = aan)
void setup() {
pinMode(drukknopPin, INPUT_PULLUP); // Stel de drukknop-pin in als input met pull-up weerstand
pinMode(relaisPin, OUTPUT); // Stel de relais-pin in als output
pinMode(ledPin, OUTPUT); // Stel de LED-pin in als output
Serial.begin(9600); // Start de seriële communicatie met een baudsnelheid van 9600
}
void loop() {
// Lees de status van de drukknop
drukknopStatus = digitalRead(drukknopPin);
Serial.println(knopcyclus); // Print de huidige knopcycli naar de seriële monitor
if (drukknopStatus == LOW && knopcyclus == 0) {
knopcyclus = 1; // De knop is ingedrukt, ga naar de volgende knopcycli
}
if (drukknopStatus == HIGH && knopcyclus == 1) {
knopcyclus = 2; // De knop is losgelaten, ga naar de volgende knopcycli
}
// Controleer of de drukknop is ingedrukt (laag, omdat we met een pull-up weerstand werken) en het relais is uitgeschakeld
if (knopcyclus == 2 && relaisStatus == 0) {
aan(); // Schakel het relais en de LED aan
}
// Controleer of de drukknop is ingedrukt (laag, omdat we met een pull-up weerstand werken) en het relais is ingeschakeld
if (knopcyclus == 2 && relaisStatus == 1) {
uit(); // Schakel het relais en de LED uit
}
}
void aan() {
digitalWrite(relaisPin, HIGH); // Schakel het relais in
digitalWrite(ledPin, HIGH); // Schakel de LED in
relaisStatus = 1; // Update de relaisstatus
knopcyclus = 0; // Reset de knopcycli
}
void uit() {
digitalWrite(relaisPin, LOW); // Schakel het relais uit
digitalWrite(ledPin, LOW); // Schakel de LED uit
relaisStatus = 0; // Update de relaisstatus
knopcyclus = 0; // Reset de knopcycli
}
Aansluitschema
Een 5V Relais schakelen met een aan-uit self lock Drukknop
Met dit aansluitschema zou uw relais inschakelen en het LED op de drukknop gaan branden zolang de knop is ingedrukt
Een lamp schakelen met een aan-uit self lock Drukknop
met dit aansluit schema kunt u een component van een ander voltage schakelen door midden van een drukknop.