ESP32 S3 - Clavier - Serrure à solénoïde
Ce tutoriel vous montre comment combiner un clavier et une serrure à solénoïde avec l'ESP32 S3 pour construire un système d'entrée contrôlé par mot de passe. Quand un utilisateur saisit le bon mot de passe sur le clavier, l'ESP32 S3 active la serrure à solénoïde pour accorder l'accès.
Le tutoriel couvre aussi une variante de déverrouillage temporisé qui active la serrure à solénoïde pendant une durée définie puis la désactive automatiquement — sans utiliser la fonction delay(). Le code prend en charge plusieurs mots de passe afin que vous puissiez enregistrer plus d'un code d'entrée valide.
Ce que vous allez construire :
- Un circuit connectant un clavier 3x4, un relais, et une serrure à solénoïde à l'ESP32 S3
- Un croquis qui lit un mot de passe depuis le clavier et déverrouille la serrure à solénoïde quand il est correct
- Une variante de déverrouillage temporisé qui maintient la serrure ouverte pendant 5 secondes puis se reverrouille automatiquement
- Une base pour les projets de contrôle d'accès et de serrure intelligente utilisant l'ESP32 S3
Matériel nécessaire
Ou vous pouvez acheter les kits suivants:
| 1 | × | Kit de Démarrage DIYables ESP32 S3 (ESP32 S3 inclus) | |
| 1 | × | Kit de Capteurs DIYables (18 capteurs/écrans) |
À propos du clavier et de la serrure à solénoïde
Un clavier offre aux utilisateurs une façon familière et sécurisée de saisir des mots de passe numériques ou alphanumériques directement dans un système embarqué sans aucun appareil externe. Une serrure à solénoïde convertit un signal électrique provenant de l'ESP32 S3 (via un relais) en un mouvement mécanique de verrou, ce qui en fait l'actionneur idéal pour le contrôle d'accès physique. Ensemble, ils forment une serrure de porte ou d'armoire autonome et peu coûteuse qui ne nécessite ni smartphone ni connexion réseau.
Spécifications clés
Nous avons des tutoriels dédiés couvrant chaque composant en détail. Chaque tutoriel contient des informations détaillées et des instructions étape par étape sur le brochage matériel, le principe de fonctionnement, le câblage vers l'ESP32 S3, et le code Arduino. Apprenez-en davantage via les liens suivants :
Schéma de câblage
Connectez le clavier, le relais, et la serrure à solénoïde à votre ESP32 S3 en suivant le schéma ci-dessous. Vérifiez toutes les connexions avant de mettre sous tension, surtout sur le côté haute tension du relais qui pilote la serrure à solénoïde.

Cette image a été créée avec Fritzing. Cliquez pour agrandir l'image.
Vous voulez que le câblage reste bien en place ? Vous pouvez placer la carte ESP32 S3 sur une carte à bornier à vis pour ESP32 S3 et brancher les fils sur ses borniers à vis. Voici le schéma de câblage avec la carte à bornier à vis.

Cette image a été créée avec Fritzing. Cliquez pour agrandir l'image.
Ou branchez la carte ESP32 S3 sur une carte d'extension GPIO pour ESP32 S3. Le même câblage ressemble alors à ceci :

Cette image a été créée avec Fritzing. Cliquez pour agrandir l'image.
Notes de sécurité
La serrure à solénoïde fonctionne en 12 V CC et doit être alimentée via le relais, pas directement depuis les broches GPIO de l'ESP32 S3. Gardez le câblage 12 V physiquement séparé du câblage basse tension du clavier, et assurez-vous que toutes les bornes à vis du relais sont serrées avant de mettre le circuit sous tension.
| Composant | Broche | Broche ESP32 S3 |
|---|---|---|
| Clavier | Rangée 1 | GPIO17 |
| Clavier | Rangée 2 | GPIO16 |
| Clavier | Rangée 3 | GPIO15 |
| Clavier | Rangée 4 | GPIO7 |
| Clavier | Colonne 1 | GPIO6 |
| Clavier | Colonne 2 | GPIO5 |
| Clavier | Colonne 3 | GPIO4 |
| Relais | DC- | GND |
| Relais | DC+ | 5V |
| Relais | IN | GPIO18 |
| Serrure à solénoïde | + | Relay NO |
| Serrure à solénoïde | - | 12V GND |
Code ESP32 S3 - Activer la serrure à solénoïde si le mot de passe est correct
Le code suivant lit les appuis de touches depuis le clavier sur l'ESP32 S3, les accumule dans une chaîne de saisie, et active la serrure à solénoïde via le relais quand le mot de passe saisi correspond à l'un des mots de passe prédéfinis. Aucune bibliothèque supplémentaire en dehors de la bibliothèque Keypad n'est nécessaire pour cette variante.
Étapes rapides
- Nouveau sur l'ESP32 S3 ? Terminez d'abord notre guide ESP32 S3 - Premiers pas.
- Câblez les composants en suivant le schéma de câblage montré ci-dessus.
- Connectez la carte ESP32 S3 à votre PC avec un câble USB Type-C.
- Ouvrez l'Arduino IDE sur votre PC.
- Sélectionnez la bonne carte ESP32 S3 et le bon port COM dans le menu Tools.
- Cliquez sur l'icône Libraries dans la barre latérale gauche de l'Arduino IDE.
- Recherchez "keypad", puis trouvez la bibliothèque Keypad de Mark Stanley et Alexander Brevig.
- Cliquez sur Install pour installer la bibliothèque Keypad.
- Search for DIYables_Keypad created by DIYables.io and click the Install button.
- Copiez le code ci-dessus et collez-le dans l'Arduino IDE.
- Cliquez sur le bouton Upload pour compiler et téléverser le code vers l'ESP32 S3.

- Appuyez sur les touches 7124 puis appuyez sur # sur le clavier.
- Appuyez sur les touches 1234 puis appuyez sur # sur le clavier.
- Ouvrez le moniteur série et observez les résultats en parallèle de l'état physique de la serrure à solénoïde.
- Astuce : Utilisez la touche * à tout moment pour effacer votre saisie actuelle et recommencer la saisie du mot de passe depuis le début.
Sortie du moniteur série
La sortie du moniteur série suivante montre l'ESP32 S3 répondant aux saisies de mot de passe en temps réel. Les tentatives correctes et incorrectes sont enregistrées afin que vous puissiez vérifier d'un coup d'œil le comportement du contrôle d'accès.
Explication du code
Les mots de passe autorisés sont prédéfinis dans le code de l'ESP32 S3. Une variable de type chaîne appelée chaîne de saisie accumule chaque touche que l'utilisateur appuie. Deux touches spéciales du clavier contrôlent le déroulement : * efface la chaîne de saisie afin que vous puissiez recommencer la saisie, et # la termine et déclenche une comparaison. Quand # est appuyée, la chaîne de saisie est comparée à chaque mot de passe prédéfini — si elle correspond à l'un d'eux, la serrure à solénoïde est activée ; indépendamment du résultat, la chaîne de saisie est ensuite effacée, prête pour la prochaine tentative.
Code ESP32 S3 - Activer la serrure à solénoïde pendant une durée définie
Le code suivant déverrouille la serrure à solénoïde pendant 5 secondes quand le mot de passe correct est saisi, puis se reverrouille automatiquement. Le comportement temporisé est implémenté avec la bibliothèque ezOutput afin que l'ESP32 S3 reste réactif aux nouveaux appuis de touches pendant la fenêtre de déverrouillage.
Le code ci-dessus utilise la bibliothèque ezOutput, qui facilite la gestion de sorties temporisées de manière non bloquante. Vous trouverez les instructions d'installation dans le Guide de la bibliothèque ezOutput.
Applications et idées de projets
Une fois que vous maîtrisez le fonctionnement d'une serrure à solénoïde contrôlée par mot de passe avec l'ESP32 S3, vous pouvez étendre ce modèle à un large éventail de projets de contrôle d'accès et de sécurité.
- Serrure d'armoire de bureau : Sécurisez un classeur ou une baie de serveurs avec un code PIN numérique que seul le personnel autorisé connaît.
- Serrure de porte domestique : Remplacez une serrure à clé traditionnelle par un verrou à solénoïde contrôlé par clavier sur une porte d'entrée ou arrière.
- Coffre-fort : Ajoutez une serrure à solénoïde à un coffre et exigez le bon code PIN avant que le couvercle puisse être libéré.
- Système de vestiaires : Attribuez des codes PIN individuels à chaque casier et utilisez un ESP32 S3 par unité pour un fonctionnement autonome.
- Accès à un espace de travail partagé : Changez le mot de passe à distance en mettant à jour le firmware afin que seuls les membres actuels puissent entrer.
- Laboratoire de sécurité prototype : Construisez un banc de test qui enregistre chaque tentative d'accès sur une console série ou une carte SD à des fins d'audit.
Tutoriel vidéo
Regardez la vidéo pas à pas pour ce projet ESP32 S3 ci-dessous.
Relevez le défi
Maintenant que vous pouvez déverrouiller une serrure à solénoïde avec un mot de passe de clavier sur l'ESP32 S3, essayez ces extensions progressivement plus difficiles pour approfondir votre compréhension et créer des projets plus performants.
- Débutant : Changez le mot de passe prédéfini dans le code pour un code PIN à six chiffres et vérifiez que les saisies plus courtes sont toujours rejetées.
- Débutant : Ajoutez un indicateur LED qui s'allume en vert pour un mot de passe correct et en rouge pour un mot de passe incorrect, offrant un retour visuel instantané.
- Intermédiaire : Implémentez un mécanisme de verrouillage qui désactive le clavier pendant 30 secondes après trois tentatives de mot de passe incorrectes consécutives.
- Intermédiaire : Stockez les mots de passe autorisés dans l'EEPROM ou la mémoire flash afin qu'ils persistent après une coupure d'alimentation et puissent être mis à jour sans reflasher le firmware.
- Avancé : Ajoutez une interface Web via WiFi afin qu'un administrateur puisse changer les mots de passe et consulter le journal d'accès depuis un navigateur.
- Avancé : Intégrez un écran OLED pour afficher une invite de saisie de mot de passe, un message de succès, et un compte à rebours pendant la fenêtre de déverrouillage.