ESP32 - Keypad - Solenoid Lock
In deze handleiding leert u hoe u een keypad, solenoid lock en ESP32 samen gebruikt. Concreet: als een gebruiker het wachtwoord correct invoert op het keypad, schakelt de ESP32 de solenoid lock in.
De handleiding bevat ook code die de solenoid lock voor een bepaalde tijd aanzet en daarna automatisch weer uitschakelt zonder gebruik te maken van de delay() functie. De ESP32 code ondersteunt bovendien meerdere wachtwoorden.
Hardware Benodigd
Of u kunt de volgende kits kopen:
| 1 | × | DIYables Sensorkit (30 sensoren/displays) | |
| 1 | × | DIYables Sensorkit (18 sensoren/displays) |
Over Keypad en Solenoid Lock
Bent u niet vertrouwd met keypad en solenoid lock, inclusief hun pinouts, functionaliteiten en programmering? Verken dan de onderstaande uitgebreide tutorials over deze onderwerpen:
- ESP32 - Keypad tutorial
- ESP32 - Solenoid Lock tutorial
Aansluitschema

This image is created using Fritzing. Click to enlarge image
ESP32 Code - schakel de solenoid lock aan als het wachtwoord correct is
De onderstaande code zet de solenoid lock aan als het ingevoerde wachtwoord correct is.
Snelle Stappen
- Als u voor het eerst een ESP32 gebruikt, bekijk dan hoe u de omgeving voor ESP32 instelt in Arduino IDE.
- Maak de bedrading volgens bovenstaande afbeelding.
- Verbind de ESP32 met uw PC via een micro USB-kabel.
- Open de Arduino IDE op uw PC.
- Selecteer het juiste ESP32-bord (bijv. ESP32 Dev Module) en de juiste COM-poort.
- Verbind ESP32 met PC via USB-kabel
- Open Arduino IDE, selecteer het juiste bord en poort
- Klik op het Libraries-icoon in de linkerzijbalk van de Arduino IDE.
- Zoek op “keypad”, vind dan de keypad bibliotheek van Mark Stanley, Alexander Brevig
- Klik op de knop Installeren om de keypad bibliotheek te installeren.

- Kopieer de bovenstaande code en open deze in Arduino IDE
- Klik op de Upload-knop in Arduino IDE om de code naar de ESP32 te uploaden

- Druk op de toetsen 7124 en daarna op de toets #
- Druk op de toetsen 1234 en daarna op de toets #
- Bekijk het resultaat in de Serial Monitor en de status van de solenoid lock
Code Uitleg
De geautoriseerde wachtwoorden zijn vooraf gedefinieerd in de ESP32 code.
Er wordt een string gebruikt om het door de gebruiker ingevoerde wachtwoord op te slaan, genoemd input string. Op het keypad worden twee toetsen (* en #) gebruikt voor speciale functies: het wissen van het wachtwoord en het beëindigen van de invoer. Wanneer een toets op het keypad wordt ingedrukt:
- Als de toets geen van de twee speciale toetsen is, wordt deze toegevoegd aan de input string
- Als de ingedrukte toets * is, wordt de input string gewist. Hiermee kunt u het invoeren van het wachtwoord starten of opnieuw starten
- Als de ingedrukte toets # is:
- Wordt de input string vergeleken met de vooraf gedefinieerde wachtwoorden. Als er een match is met een van deze wachtwoorden, wordt de solenoid lock ingeschakeld.
- Ongeacht of het wachtwoord correct is, wordt de input string gewist om klaar te zijn voor de volgende invoer
ESP32 Code - zet een solenoid lock aan gedurende een bepaalde tijd als het wachtwoord correct is
De onderstaande code zet de solenoid lock gedurende 5 seconden aan als het wachtwoord correct is. Na 5 seconden wordt de solenoid lock weer uitgeschakeld.
Let op dat bovenstaande code gebruikmaakt van de ezOutput bibliotheek, die het eenvoudig maakt om tijdmanagement te doen zonder blokkering (non-blocking). U kunt de ezOutput Library Installatiehandleiding raadplegen.
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.