Arduino UNO Q - Vanne d'Eau/Liquide
Une vanne solénoïde d'eau/liquide contrôle le débit d'eau, d'huile ou d'autres liquides. Elle s'ouvre lorsque 12V est appliqué et se ferme lorsque l'alimentation est coupée. L'Arduino UNO Q la contrôle via un relais. Avec Bridge et Telegram, vous pouvez ouvrir et fermer la vanne à distance depuis n'importe où.
Dans ce tutoriel, vous apprendrez :
- Ce qu'est une vanne solénoïde d'eau/liquide et comment elle fonctionne
- Comment câbler la vanne et le relais au MCU de l'Arduino UNO Q
- Comment programmer le MCU pour ouvrir et fermer la vanne
- Comment utiliser Bridge pour contrôler la vanne depuis le côté Linux (Python)
- Comment ouvrir et fermer la vanne à distance via Telegram sur Arduino UNO Q
- Comment utiliser OpenClaw sur Arduino UNO Q avec la vanne d'eau

Matériel Requis
Ou vous pouvez acheter les kits suivants:
| 1 | × | Kit de Capteurs DIYables (18 capteurs/écrans) |
À Propos de la Vanne d'Eau/Liquide
Brochage
Une vanne solénoïde possède deux connexions filaires :
- Fil positif (+) rouge : Connecter à 12V DC via le relais
- Fil négatif (-) noir : Connecter à GND de l'alimentation 12V DC

Fonctionnement
- Quand 12V est appliqué → le solénoïde s'ouvre → le liquide peut s'écouler
- Quand l'alimentation est coupée → le solénoïde se ferme → le débit de liquide s'arrête
※ Note:
Certaines vannes nécessitent une pression minimale du fluide pour s'ouvrir complètement après application des 12V. De plus, certaines vannes sont directionnelles — vérifiez la flèche de débit sur le corps. La vanne ne doit JAMAIS être connectée directement à une broche de l'Arduino UNO Q. Utilisez toujours un relais pour commuter l'alimentation 12V.
Comment Contrôler la Vanne
Le MCU de l'Arduino UNO Q contrôle un relais qui commute l'alimentation 12V vers la vanne solénoïde :
- Broche relais HIGH → relais fermé → 12V vers vanne → vanne OUVERTE
- Broche relais LOW → relais ouvert → pas d'alimentation vers vanne → vanne FERMÉE
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 vanne solénoïde. Connectez VCC du relais à 5V et GND à GND.
| Relay Pin | Arduino UNO Q MCU |
|---|---|
| GND | GND |
| VCC | 5V |
| IN | D3 |
Comment Programmer pour la Vanne d'Eau
- Configurer la broche du relais en sortie :
- Ouvrir et fermer la vanne :
Code Arduino UNO Q
L'Arduino UNO Q dispose de deux processeurs fonctionnant ensemble :
- Le MCU STM32 contrôle le relais qui commute l'alimentation 12V vers la vanne solénoïde
- 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 ouvre la vanne pendant 5 secondes, puis la ferme — en se répétant en continu.
Étapes Rapides
Première utilisation de l'Arduino UNO Q ? Suivez le tutoriel Démarrer avec Arduino UNO Q avant de continuer.
- Connectez : Câblez la vanne solénoïde, le relais et l'alimentation 12V à l'Arduino UNO Q MCU comme indiqué dans le schéma de câblage.
- Ouvrez Arduino App Lab : Lancez Arduino App Lab et attendez qu'il détecte votre Arduino UNO Q.
- Créez une nouvelle application : Cliquez sur le bouton Créer une nouvelle application.

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

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

- Observez la vanne alternant entre ouvert et fermé toutes les 5 secondes. Vous pouvez entendre le clic du solénoïde s'enclencher.
Sortie Console App Lab
Bridge : Linux + MCU
Cette section montre comment programmer les deux processeurs de l'Arduino UNO Q afin que le côté Linux puisse ouvrir et fermer la vanne via Bridge :
- La vanne 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 ouvrir ou fermer la vanne
- 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 contrôle de vanne
- Arduino_RouterBridge active 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 résumé : Le MPU reçoit les commandes open/close → appelle Bridge → le MCU contrôle le relais → la vanne s'actionne.
Code MCU (Bridge)
Code Python (Bridge)
Étapes Rapides
- Connectez : Câblez la vanne solénoïde, le relais et l'alimentation 12V à l'Arduino UNO Q comme indiqué dans le schéma de câblage.
- Ouvrez Arduino App Lab : Lancez Arduino App Lab et attendez que la carte soit détectée.
- Créez une nouvelle application : Cliquez sur Créer une nouvelle application, nommez-la WaterValveBridge, puis cliquez sur Créer.
- Collez le sketch MCU : Copiez le code MCU Bridge ci-dessus et collez-le dans sketch/sketch.ino.
- Collez 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éversez : Cliquez sur le bouton Exécuter dans Arduino App Lab.

- Observez le cycle de la vanne : ouvert → attendre 5 secondes → fermé → attendre 1 seconde → répéter.
Sortie Console App Lab
Telegram
Contrôlez la vanne d'eau/liquide à distance via Telegram — ouvrez et fermez depuis n'importe où avec une simple commande.
Sketch MCU : Conservez le même sketch MCU de la section Bridge précédente.
Code Python (Telegram)
Étapes Rapides
- Remplacez YOUR_TELEGRAM_BOT_TOKEN par votre vrai token de bot obtenu auprès de BotFather.
- Remplacez YOUR_CHAT_ID par votre ID de chat Telegram.
- Collez ce code Python dans le fichier Python de votre application (conservez le même sketch MCU).
- Cliquez sur le bouton Exécuter. Envoyez /open depuis Telegram pour démarrer le débit, puis /close pour l'arrêter.
Sortie 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 réaliser de nombreux projets utiles avec la vanne solénoïde et l'Arduino UNO Q :
- Système d'irrigation à distance : Contrôler l'arrosage du jardin depuis n'importe où via Telegram — envoyer /open pour démarrer l'irrigation et /close pour l'arrêter, avec le côté Linux enregistrant la durée de chaque session dans un fichier
- Arrosage programmé : Programmer le MPU pour ouvrir automatiquement la vanne pendant 10 minutes chaque matin à 6h en utilisant l'horloge système Linux — aucune intervention manuelle nécessaire
- Réponse aux fuites d'eau : Combiner un capteur d'eau avec la vanne — lorsque le capteur détecte une fuite, Python appelle immédiatement Bridge.call("close_valve") pour couper l'alimentation en eau et envoie une alerte Telegram
- Appoint automatique pour aquarium : Utiliser un capteur de niveau d'eau dans un aquarium — lorsque le niveau descend en dessous d'un seuil, Python ouvre la vanne pendant 30 secondes pour ajouter de l'eau, puis la ferme et envoie une confirmation Telegram
- Distributeur de bière/jus : Contrôler une vanne solénoïde alimentaire connectée à un réservoir de liquide — /open distribue le liquide et /close l'arrête, avec un minuteur pour éviter le sur-versement
Relevez le Défi
Prêt à aller plus loin avec la vanne d'eau sur Arduino UNO Q ? Essayez ces défis :
- Facile : Ajouter une commande Telegram /open_10s qui ouvre la vanne pendant exactement 10 secondes en utilisant time.sleep(10) du côté Python avant d'appeler Bridge.call("close_valve").
- Moyen : Implémenter un calendrier d'irrigation quotidien : Python lit un fichier de planning (par ex. schedule.json avec des heures d'ouverture/fermeture) et contrôle automatiquement la vanne en fonction de l'horloge système Linux — envoyer une notification Telegram lorsque chaque session commence et se termine.
- Avancé : Construire un enregistreur de temps de débit : chaque fois que la vanne est ouverte via Telegram ou automatiquement, Python enregistre l'heure de début, l'heure de fermeture et la durée dans un fichier CSV — implémenter une commande Telegram /log qui renvoie les 5 dernières sessions d'irrigation.