ESP32 - Deurslot met Keypad
Deze tutorial begeleidt u stap voor stap bij het maken van een deurslotsysteem dat werkt met een wachtwoord via een keypad en een solenoïde slot. Het systeem ontgrendelt de deur zodra het juiste wachtwoord is ingevoerd en houdt de deur 20 seconden ontgrendeld voordat het automatisch weer vergrendelt. De ESP32 code ondersteunt bovendien meerdere wachtwoorden.
※ Notiz:
Naast deze tutorial bieden we ook andere tutorials over deurslotsystemen aan:
Hardware Vereist
Of u kunt de volgende kits kopen:
| 1 | × | DIYables Sensorkit (30 sensoren/displays) | |
| 1 | × | DIYables Sensorkit (18 sensoren/displays) |
Over Keypad en Solenoïde Slot
We hebben aparte tutorials die zich specifiek richten op keypads en solenoïde sloten. Elke tutorial geeft gedetailleerde informatie en stapsgewijze instructies over de hardware pinout, het werkingsprincipe, bedrading naar de ESP32, ESP32 code en meer. Voor meer informatie over deze tutorials verwijzen wij u graag naar de volgende links:
Bedradingsschema
- ESP32 - Deurslot met keypad en solenoïde slot

This image is created using Fritzing. Click to enlarge image
ESP32 Code - Deurslotsysteem met wachtwoord via keypad en solenoid lock
Snelle Stappen
- Verbind de ESP32 met uw computer via een USB-kabel.
- Open de Arduino IDE, selecteer de juiste board en poort.
- Klik op het Libraries icoon in de linkerzijbalk van de Arduino IDE.
- Zoek naar de “keypad” bibliotheek en vind de keypad bibliotheek gemaakt door Mark Stanley en Alexander Brevig.
- Klik op de Installeren knop om de keypad bibliotheek te installeren.

- Kopieer de opgegeven code en plak deze in de Arduino IDE.
- Compileer en upload de code naar het ESP32 bord door op de Uploaden knop te klikken in de Arduino IDE.
- Open de Serial Monitor in de Arduino IDE.
- Druk de toetsen 12345 in en druk vervolgens op #
- Druk de toetsen 1234567 in en druk vervolgens op #
- Observeer de staat van de vergrendelpen (lock tongue) gedurende 20 seconden.
- Observeer de output in de Serial Monitor.
Code Uitleg
In dit systeem zijn geldige wachtwoorden vooraf geprogrammeerd in de ESP32 code. Een input string wordt gebruikt om het wachtwoord op te slaan dat door gebruikers is ingevoerd. Het keypad heeft twee speciale toetsen, * en #, die respectievelijk dienen om de invoer te wissen en te beëindigen. Het systeem werkt als volgt:
- Wanneer een toets wordt ingedrukt die geen speciale toets is, wordt deze toegevoegd aan de input string.
- Wanneer de * toets wordt ingedrukt, wordt de input string gewist en kan het invoeren van het wachtwoord opnieuw worden gestart.
- Wanneer de # toets wordt ingedrukt:
- Wordt de input string vergeleken met de vooraf gedefinieerde wachtwoorden. Als deze overeenkomt met een van de wachtwoorden, wordt het relais geactiveerd om de deur te ontgrendelen.
- Ongeacht of het wachtwoord correct is of niet, wordt de input string geleegd voor de volgende invoer.
- In de bovenstaande code is ter vereenvoudiging de delay-functie gebruikt. Het is beter om millis() te gebruiken in plaats van delay(). Zie Hoe millis() te gebruiken in plaats van delay()
- U kunt een piezo buzzer toevoegen om een pieptoon te laten horen bij elke toetsdruk op het keypad.
- In de bovenstaande codes wordt de deur opnieuw vergrendeld na 20 seconden. U kunt dit vervangen door een deursensor. De deur wordt dan vergrendeld wanneer de deursensor detecteert dat de deur door de gebruiker is gesloten.
※ Notiz:
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 stap voor stap door het proces.