ESP32 - Télécommande infrarouge
Vous avez probablement rencontré la télécommande infrarouge, également appelée télécommande IR, lors de l'utilisation d'appareils comme les téléviseurs et les climatiseurs à la maison... Dans ce guide, nous apprendrons à utiliser la télécommande infrarouge (IR) et un récepteur infrarouge pour contrôler l'ESP32. En détail, nous apprendrons :
- Comment connecter un récepteur IR à une carte ESP32
- Comment programmer l'ESP32 pour lire la commande d'une télécommande IR via le récepteur IR
Préparation du matériel
1 | × | ESP-WROOM-32 Dev Module | |
1 | × | USB Cable Type-C | |
1 | × | IR Remote Controller and Receiver Kit | |
1 | × | CR2025 Battery | |
1 | × | Breadboard | |
1 | × | Jumper Wires | |
1 | × | (Recommended) ESP32 Screw Terminal Adapter |
Or you can buy the following sensor kits:
1 | × | DIYables Sensor Kit (30 sensors/displays) | |
1 | × | DIYables Sensor Kit (18 sensors/displays) |
À propos de la télécommande IR
Un système de contrôle IR comprend deux composants : une télécommande IR et un récepteur IR.
- La télécommande IR est utilisée pour envoyer des commandes à l'aide de signaux infrarouges.
- Le récepteur IR capture et interprète ces signaux pour contrôler l'appareil.
Un kit IR comprend généralement les deux composants mentionnés ci-dessus : une télécommande IR et un récepteur IR.
Télécommande IR
La télécommande IR est un appareil portable qui émet des signaux infrarouges. Elle est conçue avec un clavier comportant plusieurs boutons :
- Chaque bouton de la télécommande est assigné à une fonction ou commande spécifique.
- Lorsqu'un bouton est pressé, la télécommande émet un signal infrarouge contenant un code ou motif unique lié au bouton pressé.
- Ces signaux infrarouges se situent dans le spectre infrarouge et ne sont pas visibles à l'œil humain.
Récepteur IR
Le module récepteur IR est un capteur qui détecte et reçoit les signaux infrarouges émis par la télécommande.
Le récepteur infrarouge détecte les signaux infrarouges entrants et les convertit en code (commande) représentant le bouton pressé sur la télécommande.
Le récepteur IR peut être un capteur ou un module. Vous pouvez utiliser les choix suivants :
- Module de réception IR uniquement
- Capteur de réception IR uniquement
- Capteur de réception IR + Adaptateur
Brochage du récepteur IR
Le module ou capteur de réception IR a trois broches :
- Broche VCC : Connectez cette broche à la broche 3,3V ou 5V de l'ESP32 ou à une source d'alimentation externe.
- Broche GND : Connectez cette broche à la broche GND de l'ESP32 ou à une source d'alimentation externe.
- Broche OUT (Sortie) : Cette broche est la broche de sortie du module récepteur IR. Connectée à une broche d'entrée numérique sur l'ESP32.
Comment ça marche
Lorsque l'utilisateur appuie sur un bouton de la télécommande IR
- La télécommande IR encode la commande correspondant au bouton en signal infrarouge via un protocole spécifique
- La télécommande IR émet le signal infrarouge codé
- Le récepteur IR reçoit le signal infrarouge codé
- Le récepteur IR décode le signal infrarouge codé en commande
- L'ESP32 lit la commande provenant du récepteur IR
- L'ESP32 associe la commande à la touche pressée
Lorsqu'un bouton est pressé sur la télécommande IR, la séquence d'événements suivante se produit :
- La télécommande IR encode la commande du bouton en un signal infrarouge en utilisant un protocole spécifique.
- Le signal infrarouge codé est émis par la télécommande IR.
- Le récepteur IR capture et reçoit le signal infrarouge codé.
- Le récepteur IR décode le signal infrarouge, le reconvertissant en la commande originale.
- L’ESP32 lit et récupère la commande du récepteur IR.
- L’ESP32 associe ensuite la commande reçue au bouton correspondant qui a été pressé sur la télécommande IR.
En essence, ces étapes décrivent comment l'appui sur un bouton de la télécommande IR est transformé en une commande reconnaissable que l'ESP32 peut comprendre et traiter.
Régénérer la réponse
Cela peut sembler compliqué, mais ne vous inquiétez pas. Grâce à la bibliothèque conviviale DIYables_IRcontroller library, cela devient incroyablement facile à réaliser.
Diagramme de câblage
Schéma de câblage entre l'ESP32 et le module récepteur IR
This image is created using Fritzing. Click to enlarge image
Si vous ne savez pas comment alimenter l'ESP32 et d'autres composants, vous pouvez trouver des conseils dans le tutoriel suivant : Comment alimenter l'ESP32.
Schéma de câblage entre ESP32 et capteur récepteur IR
This image is created using Fritzing. Click to enlarge image
Schéma de câblage entre l'ESP32 et le capteur récepteur IR et l'adaptateur
Avant de connecter le capteur récepteur IR à l'ESP32, vous avez la possibilité de le connecter à l'adaptateur. Cela permet une intégration et une configuration plus faciles du capteur récepteur IR avec l'ESP32.
Comment programmer pour une télécommande infrarouge
- Inclure la bibliothèque :
- Déclarez un objet DIYables_IRcontroller_17 ou DIYables_IRcontroller_21 correspondant aux télécommandes IR de 17 touches ou 21 touches :
- Initialisez le contrôleur IR.
- Dans la boucle, vérifiez si une touche est pressée ou non. Si oui, récupérez la touche.
- Après avoir détecté une pression de touche, vous pouvez effectuer des actions en fonction de chaque touche.
Code ESP32
- Code ESP32 pour la télécommande IR à 17 touches DIYables
- Code ESP32 pour télécommande IR DIYables à 21 touches
Étapes rapides
- Si c'est la première fois que vous utilisez l'ESP32, consultez comment configurer l'environnement pour l'ESP32 sur Arduino IDE.
- Cliquez sur l'icône Libraries dans la barre latérale gauche de l'Arduino IDE.
- Recherchez "DIYables_IRcontroller", puis trouvez la bibliothèque DIYables_IRcontroller de DIYables.
- Cliquez sur le bouton Install pour installer la bibliothèque DIYables_IRcontroller.
- Vous serez invité à installer la dépendance de la bibliothèque comme le montre l'image ci-dessous :
- Cliquez sur le bouton Install All pour installer la dépendance.
- Copiez le code ci-dessus et ouvrez-le avec l'Arduino IDE.
- Cliquez sur le bouton Upload dans l'Arduino IDE pour charger le code sur l'ESP32.
- Appuyez sur les touches de la télécommande une par une.
- Vérifiez le résultat sur le moniteur série.
- Lorsque vous appuyez sur les touches d'une télécommande IR de 21 touches une par une, voici le résultat :
Vous avez désormais la capacité de personnaliser le code et de contrôler différents appareils comme des LED, des ventilateurs, des pompes, des actionneurs, et plus encore à l'aide de télécommandes infrarouges. Cela signifie que vous pouvez apporter des modifications au code pour faire réagir ces dispositifs à vos commandes envoyées via la télécommande.