Arduino Nano - Solenoïde Slot

Deze handleiding toont u hoe u een Arduino Nano gebruikt om een solenoïde slot te bedienen, dat ook wel het elektrisch sluitstuk wordt genoemd. We kunnen dit toepassen op beveiligde kasten, laden en deuren.

Hardware Vereist

1×Official Arduino Nano
1×Alternatief: DIYables ATMEGA328P Nano Development Board
1×USB A naar Mini-B USB-kabel
1×Solenoïde Slot
1×Relais
1×12V Voedingsadapter
1×DC Voedingsconnector
1×(Aanbevolen) Schroefklem Uitbreidingsboard voor Arduino Nano
1×(Aanbevolen) Breakout Uitbreidingsboard voor Arduino Nano
1×(Aanbevolen) Stromsplitter voor Arduino Nano

Of u kunt de volgende kits kopen:

1×DIYables Sensorkit (30 sensoren/displays)
1×DIYables Sensorkit (18 sensoren/displays)
Openbaarmaking: Sommige van de links in deze sectie zijn Amazon-affiliate links. We kunnen een commissie ontvangen voor aankopen die via deze links worden gedaan, zonder extra kosten voor u. We waarderen uw steun.

Over het Solenoïde Slot

Pinout van het Solenoïde Slot

Het solenoïde slot heeft twee draden:

  • De Positieve (+) draad (rood) moet aangesloten worden op 12V van de DC-voeding
  • De Negatieve (-) draad (zwart) moet aangesloten worden op GND van de DC-voeding
solenoid lock pinout

Hoe Het Werkt

  • Wanneer het solenoïde slot wordt voorzien van stroom, schuift de grendel uit en wordt de deur vergrendeld.
  • Wanneer het solenoïde slot geen stroom krijgt, trekt de grendel zich in en wordt de deur ontgrendeld.

※ Notiz:

Het solenoïde slot vereist gewoonlijk een voeding van 12V, 24V of 48V. Daarom mag het NIET direct op een Arduino Nano pin worden aangesloten. Er moet een relay worden gebruikt om het aan te sluiten op de Arduino Nano pin.

Als we het solenoïde slot aansluiten op een relay (in de normaal open-stand):

  • Wanneer het relay niet geactiveerd is, is de deur ontgrendeld
  • Wanneer het relay geactiveerd is, is de deur vergrendeld

Door de Arduino Nano aan een relay te koppelen, kunnen we deze zo programmeren dat het solenoïde slot wordt bediend. Voor meer informatie over relays, zie de Arduino Nano - Relay handleiding.

Bedradingsschema

Arduino Nano Solenoid Lock wiring diagram

This image is created using Fritzing. Click to enlarge image

Arduino Nano Code

De onderstaande code zorgt ervoor dat de deur elke vijf seconden vergrendeld en ontgrendeld wordt.

/* * 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-solenoid-lock */ #define RELAY_PIN 2 // The Arduino Nano pin connected to the IN pin of relay // The setup function runs once on reset or power-up void setup() { // initialize digital pin 3 as an output. pinMode(RELAY_PIN, OUTPUT); } // The loop function repeats indefinitely void loop() { digitalWrite(RELAY_PIN, LOW); // unlock the door delay(5000); digitalWrite(RELAY_PIN, HIGH); // lock the door delay(5000); }

Snelstappen

  • 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 te uploaden naar de Arduino Nano.
  • Controleer de toestand van de grendel.

Arduino Nano - Knop Bestuurt Solenoïde Slot

  • Bedradingsschema
Arduino Nano Solenoid Lock wiring diagram

This image is created using Fritzing. Click to enlarge image

  • Code schrijven voor een Arduino Nano.
/* * 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-solenoid-lock */ #include <ezButton.h> #define BUTTON_PIN 8 // The Arduino Nano pin connected to button's pin #define RELAY_PIN 2 // The Arduino Nano pin connected to relay's pin ezButton button(BUTTON_PIN); // create ezButton object for pin 12; void setup() { Serial.begin(9600); // Initialize the Serial to communicate with the Serial Monitor. pinMode(RELAY_PIN, OUTPUT); // set arduino pin to output mode button.setDebounceTime(50); // set debounce time to 50 milliseconds digitalWrite(RELAY_PIN, HIGH); // lock the door } void loop() { button.loop(); // MUST call the loop() function first if(button.isPressed()) { Serial.println("The button is pressed"); digitalWrite(RELAY_PIN, LOW); // unlock the door in 10 seconds delay(10000); // 10 seconds digitalWrite(RELAY_PIN, HIGH); // lock the door again } }

Snelstappen

  • Installeer de ezButton library. Raadpleeg How To voor instructies.
  • Kopieer de code en open deze in de Arduino IDE.
  • Klik op de Upload knop in de Arduino IDE om de code naar de Arduino Nano te uploaden.
  • Druk een keer op de knop.
  • Controleer de status van de grendel gedurende 10 seconden.

※ Notiz:

In bovenstaande code is de delay-functie gebruikt. Daarom is debouncing van de knop niet noodzakelijk. Toch is de code met debouncing toegevoegd voor het geval u taken wilt uitvoeren zonder gebruik te maken van de delay-functie. Zie voor meer informatie Hoe millis() te gebruiken in plaats van delay().

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.

Bekijk onze video-tutorial voor een visuele begeleiding bij dit project! De video biedt extra inzichten en helpt u de bediening van het solenoïde slot met Arduino Nano beter te begrijpen.

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