Arduino - Keypad - Solenoïdeslot
In deze handleiding gaan we leren hoe u een keypad, solenoïdeslot en Arduino samen kunt gebruiken. Concreet: als een gebruiker het wachtwoord correct invoert op het keypad, schakelt de Arduino het solenoïdeslot aan.
De handleiding bevat ook de code die het solenoïdeslot gedurende een bepaalde tijd inschakelt en daarna weer uitschakelt zonder gebruik te maken van de delay()-functie. De Arduino-code ondersteunt tevens meerdere wachtwoorden.

Benodigde Hardware
Of u kunt de volgende kits kopen:
| 1 | × | DIYables Sensorkit (30 sensoren/displays) | |
| 1 | × | DIYables Sensorkit (18 sensoren/displays) |
Over Keypad en Solenoïdeslot
Als u nog niet bekend bent met het keypad en solenoïdeslot (pinout, werking, programmering, etc.), bekijk dan de volgende tutorials:
- Arduino - Keypad tutorial
- Arduino - Solenoïdeslot tutorial
Aansluitschema

This image is created using Fritzing. Click to enlarge image
Arduino Code - schakel solenoïdeslot aan bij correct wachtwoord
De onderstaande code schakelt het solenoïdeslot in wanneer het ingevoerde wachtwoord correct is.
Snel aan de slag
- Verbind de Arduino met de PC via de USB-kabel.
- Open de Arduino IDE, selecteer het juiste board en de juiste poort.
- Klik in de Arduino IDE op het Libraries icoon in de linker zijbalk.
- Zoek naar “keypad” en vind de keypad bibliotheek van Mark Stanley en Alexander Brevig.
- Klik op de Installeren knop om de keypad bibliotheek te installeren.

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

- Druk de toetsen 7124 in en druk op #.
- Druk de toetsen 1234 in en druk op #.
- Bekijk het resultaat in de Seriële Monitor en de status van het solenoïdeslot.
Uitleg van de code
Toegestane wachtwoorden zijn vooraf gedefinieerd in de Arduino-code.
Een string wordt gebruikt om het door gebruikers ingevoerde wachtwoord op te slaan, dit wordt de input string genoemd. Op het keypad zijn twee toetsen (* en #) voor speciale functies: het wissen van het wachtwoord en het beëindigen van de invoer. Wanneer er een toets op het keypad wordt ingedrukt:
- Als de ingedrukte toets niet een van de speciale toetsen is, wordt deze toegevoegd aan de input string.
- Als de ingedrukte toets * is, wordt de input string gewist. U kunt deze gebruiken om opnieuw te beginnen met het invoeren van het wachtwoord.
- Als de ingedrukte toets # is:
- Wordt de input string vergeleken met de vooraf gedefinieerde wachtwoorden. Als deze overeenkomt met een van de wachtwoorden, wordt het solenoïdeslot ingeschakeld.
- Ongeacht of het wachtwoord correct is of niet, wordt de input string gewist om een nieuwe invoer te kunnen starten.
Arduino Code - schakel solenoïdeslot voor een bepaalde tijd in bij correct wachtwoord
De onderstaande code schakelt het solenoïdeslot 5 seconden in als het wachtwoord correct is. Na 5 seconden wordt het slot weer uitgeschakeld.
Let op: de bovenstaande code gebruikt de ezOutput bibliotheek, die het gemakkelijk maakt om tijd te beheren zonder het programma te blokkeren. U kunt de ezOutput Library Installatiegids raadplegen voor meer informatie.
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.