Raspberry Pi - Serrure de porte à clavier
Ce tutoriel vous explique comment créer un système de verrouillage de porte par mot de passe utilisant un Raspberry Pi, un clavier, une serrure à solénoïde ou une serrure électromagnétique, et un écran LCD.
Lorsqu'un utilisateur saisit un mot de passe correct via le clavier, le Raspberry Pi désactive la serrure à solénoïde pour déverrouiller la porte. La porte reste déverrouillée pendant une durée spécifique (par exemple, 20 secondes) avant de se verrouiller automatiquement à nouveau. Le code du Raspberry Pi permet l'utilisation de plusieurs mots de passe.
Pour simplifier, le tutoriel est divisé en plusieurs étapes, de la plus facile à la plus difficile :
- Partie 1 : Un système de verrouillage de porte simple avec un clavier à touches, basé sur Arduino Nano, une serrure à solénoïde ou une serrure électromagnétique.
- Partie 2 : Ajout de la prise en charge de plusieurs mots de passe
Préparation du matériel
Or you can buy the following sensor kits:
1 | × | DIYables Sensor Kit (30 sensors/displays) | |
1 | × | DIYables Sensor Kit (18 sensors/displays) |
À propos du clavier, de la serrure à solénoïde et de la serrure électromagnétique
La serrure à solénoïde et la serrure électromagnétique sont utilisées pour verrouiller/déverrouiller la porte. Elles diffèrent principalement l'une de l'autre en termes de conception mécanique. Leur câblage vers le Raspberry Pi est similaire. Le code Raspberry Pi pour les contrôler est le même.
Si vous n'êtes pas familier avec le clavier, la serrure à solénoïde et la serrure électromagnétique (brochage, fonctionnement, programmation ...), les tutoriels suivants peuvent vous aider à apprendre :
Diagramme de câblage
- Schéma de câblage avec Raspberry Pi, clavier et serrure à solénoïde
This image is created using Fritzing. Click to enlarge image
- Diagramme de câblage avec Raspberry Pi, clavier et serrure électromagnétique
This image is created using Fritzing. Click to enlarge image
Pour simplifier et organiser votre câblage, nous vous recommandons d'utiliser un Screw Terminal Block Shield pour Raspberry Pi. Ce shield garantit des connexions plus sûres et plus faciles à gérer, comme illustré ci-dessous :
Code Raspberry Pi - Verrouillage de Porte avec Clavier
Étapes rapides
- Assurez-vous d'avoir Raspbian ou tout autre système d'exploitation compatible avec Raspberry Pi installé sur votre Pi.
- Assurez-vous que votre Raspberry Pi est connecté au même réseau local que votre PC.
- Assurez-vous que votre Raspberry Pi est connecté à Internet si vous avez besoin d'installer des bibliothèques.
- Si c'est la première fois que vous utilisez Raspberry Pi, voir Installation du logiciel - Raspberry Pi..
- Connectez votre PC au Raspberry Pi via SSH en utilisant le client SSH intégré sur Linux et macOS ou PuTTY sur Windows. Voir comment connecter votre PC au Raspberry Pi via SSH.
- Assurez-vous que vous avez la bibliothèque RPi.GPIO installée. Si ce n'est pas le cas, installez-la en utilisant la commande suivante :
- Créez un fichier de script Python keypad_lock.py et ajoutez le code suivant :
- Enregistrez le fichier et exécutez le script Python en exécutant la commande suivante dans le terminal :
- Tapez 1111 et appuyez sur #.
- Puis tapez 1234 et appuyez sur #.
- Vérifiez l'état de la languette du verrou pendant 20 secondes.
- Vérifiez le résultat sur le moniteur série.
Le script s'exécute en boucle infinie jusqu'à ce que vous appuyiez sur Ctrl + C dans le terminal.
Explication du Code
Les mots de passe valides sont prédéfinis dans le code du Raspberry Pi. Une chaîne de caractères est utilisée pour stocker le mot de passe saisi par les utilisateurs, appelée chaîne d'entrée. Sur le clavier, deux touches (* et #) sont utilisées pour des fonctions spéciales : effacer le mot de passe et terminer le mot de passe. Le système fonctionne de la manière suivante :
- À part les deux touches spéciales, si une autre touche est pressée, elle est ajoutée à la chaîne d'entrée.
- Si * est pressée, la chaîne d'entrée est effacée. Cela peut être utilisé pour commencer ou recommencer la saisie du mot de passe.
- Si # est pressée :
- Raspberry Pi compare la chaîne d'entrée aux mots de passe prédéfinis. Si elle correspond à l'un des mots de passe prédéfinis, Raspberry Pi désactive le relais pour déverrouiller la porte.
- Que le mot de passe soit correct ou non, Raspberry Pi efface la chaîne d'entrée pour la prochaine saisie.
Code Raspberry Pi - Plusieurs clés
Ajout d'un capteur de porte à la serrure à clavier
Dans le code mentionné précédemment, le Raspberry Pi verrouille la porte après un délai depuis le déverrouillage. Cependant, dans les applications pratiques, un capteur de porte est généralement ajouté au système. Si le Raspberry Pi détecte que la porte est fermée, il verrouille la porte immédiatement au lieu d'attendre le délai.
Pour éviter de vous submerger, nous n'avons pas inclus le capteur de porte dans le schéma de câblage et le code. Au lieu de cela, nous vous laissons cette partie à votre créativité. Vous pouvez consulter les tutoriels Raspberry Pi - Capteur de porte. et Raspberry Pi - Capteur de porte - Relais. pour plus d'orientation.