Arduino UNO Q - Serrure Solénoïde
Une serrure solénoïde (également appelée serrure à gâche électrique) est alimentée par 12V DC et contrôlée via un relais. L'Arduino UNO Q peut verrouiller et déverrouiller automatiquement une porte, un placard ou un tiroir — et avec Bridge et Telegram, vous pouvez contrôler la serrure à distance depuis n'importe où.
Dans ce tutoriel, vous apprendrez :
- Ce qu'est une serrure solénoïde et son fonctionnement
- Comment câbler une serrure solénoïde et un relais sur le MCU de l'Arduino UNO Q
- Comment programmer le MCU (code Arduino C/C++) pour contrôler la serrure solénoïde
- Comment programmer côté Linux (Python) et côté MCU (C/C++) pour verrouiller et déverrouiller via Bridge
- Comment verrouiller et déverrouiller à distance via Telegram sur Arduino UNO Q
- Comment utiliser OpenClaw sur Arduino UNO Q avec la serrure solénoïde

Matériel Requis
Ou vous pouvez acheter les kits suivants:
| 1 | × | Kit de Capteurs DIYables (18 capteurs/écrans) |
À Propos de la Serrure Solénoïde
Brochage
La serrure solénoïde possède deux fils :
- Fil positif (+) rouge : Connecter à l'alimentation 12V DC
- Fil négatif (-) noir : Connecter au GND de l'alimentation 12V DC

Fonctionnement
- Lorsque la serrure solénoïde reçoit de l'alimentation → la langue de serrure se déploie → la porte est verrouillée
- Lorsque la serrure solénoïde n'a pas d'alimentation → la langue de serrure se rétracte → la porte est déverrouillée
※ Note:
La serrure solénoïde nécessite 12V DC — elle ne doit JAMAIS être connectée directement à une broche de l'Arduino UNO Q. Utilisez toujours un relais comme intermédiaire. Le relais est contrôlé par le MCU et commute l'alimentation 12V vers la serrure solénoïde.
Lorsque le relais est câblé en configuration normalement ouvert :
- Relais ouvert (broche LOW) → pas d'alimentation à la serrure → porte déverrouillée
- Relais fermé (broche HIGH) → alimentation à la serrure → porte verrouillée
Pour l'état déverrouiller (HIGH) et l'état verrouiller (LOW), référez-vous au code — le mappage dépend du type de votre module relais (actif-HIGH ou actif-LOW).
Schéma de Câblage

Cette image a été créée avec Fritzing. Cliquez pour agrandir l'image.
Connectez la broche IN du module relais à la broche MCU D3. Connectez les bornes COM et NO du relais entre l'alimentation 12V et la serrure solénoïde. Connectez le VCC du relais à 5V et GND à GND.
| Broche Relais | MCU Arduino UNO Q |
|---|---|
| GND | GND |
| VCC | 5V |
| IN | D3 |
Comment Programmer pour la Serrure Solénoïde
- Configurer la broche du relais en sortie :
- Déverrouiller et verrouiller le solénoïde :
Code Arduino UNO Q
L'Arduino UNO Q possède deux processeurs qui fonctionnent ensemble :
- Le MCU STM32 contrôle le relais qui commute l'alimentation vers la serrure solénoïde — toute la logique de timing et d'état s'exécute sur le MCU
- Le MPU Qualcomm exécute Debian Linux et gère le Wi-Fi, Python et la connectivité cloud
- Dans cette section, seul le MCU est programmé — le côté Linux reste inactif. Une section ultérieure montre comment les deux processeurs fonctionnent ensemble via Bridge.
Ce code déverrouille la serrure solénoïde pendant 5 secondes, puis la verrouille à nouveau — en répétant continuellement.
Étapes Rapides
Première utilisation d'Arduino UNO Q ? Suivez le tutoriel Démarrer avec Arduino UNO Q avant de continuer.
- Connecter : Câblez la serrure solénoïde, le relais et l'alimentation 12V sur le MCU de l'Arduino UNO Q comme indiqué dans le schéma de câblage.
- Ouvrir Arduino App Lab : Lancez Arduino App Lab et attendez qu'il détecte votre Arduino UNO Q.
- Créer une nouvelle application : Cliquez sur le bouton Créer une nouvelle application.

- Donnez un nom à l'application, par exemple : SolenoidLock
- Cliquez sur Créer pour confirmer.

- Coller le sketch : Copiez le code MCU ci-dessus et collez-le dans sketch/sketch.ino. Laissez les autres fichiers par défaut.
- Aucune bibliothèque requise — utilise uniquement la fonction intégrée digitalWrite().
- Téléverser : Cliquez sur le bouton Exécuter dans Arduino App Lab.

- Observez la serrure solénoïde alterner entre verrouillé et déverrouillé toutes les 5 secondes.
Sortie de la Console App Lab
Bridge : Linux + MCU
Cette section montre comment programmer les deux processeurs de l'Arduino UNO Q pour que le côté Linux puisse verrouiller et déverrouiller la serrure solénoïde via Bridge :
- La serrure solénoïde est connectée au MCU via relais — le MCU contrôle la broche de sortie du relais
- Le MPU ne peut pas contrôler le relais directement — il appelle des fonctions Bridge pour verrouiller ou déverrouiller
- Le MPU dispose du Wi-Fi — exécutant Debian Linux complet, il peut accepter des commandes de Telegram ou de tout service web et les traduire en actions de verrouillage/déverrouillage
- Arduino_RouterBridge permet la communication RPC entre les deux processeurs
- ⚠️ /dev/ttyHS1 (Linux) et Serial1 (MCU) sont RÉSERVÉS par le routeur — ne les ouvrez jamais dans le code utilisateur
En bref : Le MPU reçoit des commandes de verrouillage/déverrouillage → appelle Bridge → Le MCU contrôle le relais → La serrure solénoïde s'active.
Code MCU (Bridge)
Code Python (Bridge)
Étapes Rapides
- Connecter : Câblez la serrure solénoïde, le relais et l'alimentation 12V sur l'Arduino UNO Q comme indiqué dans le schéma de câblage.
- Ouvrir Arduino App Lab : Lancez Arduino App Lab et attendez que la carte soit détectée.
- Créer une nouvelle application : Cliquez sur Créer une nouvelle application, nommez-la SolenoidLockBridge, puis cliquez sur Créer.
- Coller le sketch MCU : Copiez le code MCU Bridge ci-dessus et collez-le dans sketch/sketch.ino.
- Coller le code Python : Copiez le code Python Bridge ci-dessus et collez-le dans le fichier Python de l'application.
- Install the library: Click the Add sketch library button (the open book icon with a + sign) in the left sidebar.

- Search for Arduino_RouterBridge created by Arduino and click the Install button.
- Téléverser : Cliquez sur le bouton Exécuter dans Arduino App Lab.

- Observez le cycle de la serrure : déverrouiller → attendre 5 secondes → verrouiller → attendre 1 seconde → répéter.
Sortie de la Console App Lab
Telegram
Contrôlez la serrure solénoïde à distance via Telegram — verrouillez et déverrouillez depuis n'importe où avec une simple commande.
Sketch MCU : Gardez le même sketch MCU de la section Bridge précédente.
Code Python (Telegram)
Étapes Rapides
- Remplacez YOUR_TELEGRAM_BOT_TOKEN par votre token de bot réel obtenu auprès de BotFather.
- Remplacez YOUR_CHAT_ID par votre identifiant de chat Telegram.
- Collez ce code Python dans le fichier Python de votre application (gardez le même sketch MCU).
- Cliquez sur le bouton Exécuter. Envoyez /unlock depuis Telegram pour ouvrir la serrure, puis /lock pour la refermer.
Sortie de la Console App Lab
ArduinoBot
Intégration d'OpenClaw
Vous pouvez adapter OpenClaw à ce tutoriel en vous référant aux instructions du tutoriel Arduino UNO Q - OpenClaw.
Idées de Projets
Vous pouvez créer de nombreux projets utiles avec la serrure solénoïde et l'Arduino UNO Q :
- Serrure de porte contrôlée par Telegram : Contrôlez votre porte d'entrée ou de bureau à distance via Telegram — /unlock pour laisser entrer quelqu'un et /lock pour la sécuriser à nouveau, avec tous les événements enregistrés avec horodatage
- Verrouillage automatique basé sur l'heure : Programmer le MPU (Python Linux) pour verrouiller automatiquement à 22h et déverrouiller à 7h chaque jour — en utilisant l'horloge système côté Linux pour déclencher les commandes Bridge
- Système d'accès par clavier : Combiner la serrure solénoïde avec un clavier 4x4 sur le MCU — déverrouiller quand le bon PIN est entré, et envoyer une alerte Telegram à chaque fois qu'un mauvais PIN est essayé trois fois de suite
- Système de journal d'accès : Enregistrer chaque événement de verrouillage et déverrouillage dans un fichier CSV sous Linux — inclure l'horodatage, la source de la commande (Telegram ou automatique), et générer des rapports quotidiens envoyés à Telegram
- Gestionnaire d'accès invité : Créer un déverrouillage à durée limitée via Telegram — /unlock_5min déverrouille la porte et la reverrouille automatiquement après 5 minutes, avec une confirmation Telegram envoyée lorsque le minuteur expire
Défiez-vous
Prêt à aller plus loin avec la serrure solénoïde sur Arduino UNO Q ? Essayez ces défis :
- Facile : Ajoutez une commande Telegram /unlock_10s qui déverrouille la serrure pendant exactement 10 secondes en utilisant time.sleep(10) côté Python avant d'appeler Bridge.call("lock").
- Moyen : Implémentez une commande Telegram /schedule qui analyse un argument horaire (ex. /schedule 23:00) et verrouille automatiquement la porte à cette heure en utilisant l'horloge système Linux sur le MPU.
- Avancé : Créez un système d'accès multi-utilisateurs : stockez une liste d'identifiants Telegram autorisés dans un fichier Python — seuls ces utilisateurs peuvent envoyer des commandes /unlock, et toutes les tentatives non autorisées déclenchent une alerte Telegram vers l'identifiant de chat de l'administrateur.