Comment contrôler un servomoteur à l'aide d'une télécommande infrarouge (IR) : un guide complet étape par étape_Gear Motor_Industry Insights_Kpower
Maison > Aperçu de l'industrie >Moteur à engrenages
ASSISTANCE TECHNIQUE

Comment contrôler un servomoteur à l'aide d'une télécommande infrarouge (IR) : un guide complet étape par étape

Publié 2026-04-21

Ce guide fournit une méthode complète et pratique pour contrôler unservomoteurmoteur à l’aide de n’importe quelle télécommande infrarouge (IR) standard. Vous apprendrez la configuration matérielle exacte, le principe de fonctionnement de la communication IR et la logique de programmation étape par étape pour créer unservomoteurfaites pivoter vers différentes positions en fonction des boutons de la télécommande. Toutes les instructions sont basées sur des composants largement disponibles et des télécommandes domestiques courantes, sans aucune pièce spécifique à la marque requise. En suivant ce guide, vous serez en mesure de construire un système fiable contrôlé par IR.servomoteursystème dans les 30 minutes.

01Ce dont vous avez besoin (liste du matériel)

Un servomoteur standard SG90 ou MG90 (ou n'importe quel servo 5 V)

Un module récepteur IR (par exemple, 1838B ou équivalent, fréquence porteuse de 38 kHz)

Toute télécommande IR courante (télécommande TV, DVD ou climatiseur – la plupart fonctionnent)

Une carte microcontrôleur (compatible avec la logique 5 V, par exemple, style Uno ou Nano)

Planche à pain et fils de liaison

Alimentation 5V (USB ou batterie)

02Comment fonctionne la télécommande infrarouge (simplifiée)

Lorsque vous appuyez sur un bouton d'une télécommande infrarouge, celle-ci envoie un code unique sous la forme d'une série d'impulsions lumineuses infrarouges. Le module récepteur IR détecte ces impulsions, les démodule et émet un signal numérique. Le microcontrôleur lit ce signal et l'associe à un bouton spécifique. En attribuant différents angles de servo à différents codes de boutons, vous obtenez un contrôle total.

03Étape 1 : connecter les composants

Effectuez les connexions suivantes sur votre maquette :

Module récepteur IR (3 broches) :

OUT → broche numérique 11 (ou toute broche d'entrée disponible)

VCC → 5 V

Masse → Masse

Servomoteur (3 fils) :

Signal (généralement orange/jaune) → broche numérique 9 (compatible PWM)

Alimentation (rouge) → 5V

Masse (marron/noir) → GND

> Important:Si le servo tremble ou se réinitialise lors du déplacement, connectez une source d'alimentation 5 V distincte pour le servo (terre commune avec la carte). La broche 5 V du microcontrôleur peut généralement alimenter un petit servo (SG90), mais pas les plus grands.

04Étape 2 : Installer les bibliothèques requises

La plupart des IDE de microcontrôleurs disposent d'une bibliothèque distante IR. Installez le plus courant (recherchez « IRremote » dans votre gestionnaire de bibliothèque). Pour le contrôle d'asservissement, la bibliothèque Servo intégrée est utilisée.

Aucune marque spécifique n'est nécessaire : les deux bibliothèques sont open source et largement testées.

05Étape 3 : Obtenez les codes des boutons de votre télécommande

Chaque bouton de la télécommande envoie un code hexadécimal unique. Vous devez d'abord lire ces codes. Téléchargez le croquis suivant (ne copiez pas les noms de marques, juste la logique) :

#inclureconst int IR_PIN = 11 ; IRrecv irrécv(IR_PIN); résultats decode_results ; void setup() { Serial.begin(9600); irrécv.enableIRIn(); Serial.println("Récepteur IR prêt – appuyez sur n'importe quel bouton"); } void loop() { if (irrecv.decode(&results)) { Serial.println(results.value, HEX); irrécv.resume(); } }

Ouvrez le moniteur série, appuyez sur chaque bouton que vous souhaitez utiliser (par exemple, « 1 », « 2 », « 3 », haut, bas) et notez les codes. Par exemple:

Bouton « 1 » → 0xFFA25D

Bouton « 2 » → 0xFF629D

Bouton « 3 » → 0xFFE21D

> Exemple concret :Une télécommande de télévision courante dans un salon moyen produira des codes similaires à ceux ci-dessus. Même si vos codes sont différents, la méthode reste identique.

06Étape 4 : Écrire le programme de contrôle

Combinez maintenant la réception IR avec le positionnement servo. Le code suivant fait bouger le servo à 0°, 90° et 180° lorsque vous appuyez respectivement sur les boutons 1, 2 et 3.

#inclure#inclureServo monServo ; const int IR_PIN = 11 ; const int SERVO_PIN = 9 ; IRrecv irrécv(IR_PIN); résultats decode_results ; // Remplacez-les par les codes de VOTRE télécommande (de l'étape 3) const unsigned long BTN_1 = 0xFFA25D ; // passage à 0° const unsigned long BTN_2 = 0xFF629D; // déplacement à 90° const unsigned long BTN_3 = 0xFFE21D; // déplacement à 180° void setup() { myServo.attach(SERVO_PIN); irrécv.enableIRIn(); monServo.write(0); // commence à 0° } void loop() { if (irrecv.decode(&results)) { unsigned long wantedCode = results.value; if (receivedCode == BTN_1) { monServo.write(0); retard (200); // permet au servo d'atteindre la position } else if (receivedCode == BTN_2) { myServo.write(90); retard (200); } sinon if (receivedCode == BTN_3) { myServo.write(180); retard (200); } // Ajoutez plus de boutons si nécessaire (par exemple, haut/bas pour un mouvement incrémentiel) irrecv.resume(); // prêt pour le prochain signal } }

Extension à un contrôle plus précis

Pour faire pivoter le servo par petits pas (par exemple, 10° par pression de bouton), utilisez deux boutons : un pour augmenter l'angle, un pour diminuer.

long non signé BTN_UP = 0xFF906F ; // code flèche vers le haut non signé long BTN_DOWN = 0xFFE01F; // code de flèche vers le bas int currentAngle = 90 ; // Boucle intérieure() : if (receivedCode == BTN_UP && currentAngle 0) { currentAngle -= 10; monServo.write(currentAngle); retard (200); }

07Étape 5 : Problèmes courants et solutions

Problème Cause la plus probable Réparer
Le servo ne bouge pas Mauvaise broche ou manquanteattacher() Vérifiez le câblage ; assurermonServo.attacher (broche)est dansinstallation()
Télécommande IR non détectée Mauvaise broche IR ou pas d'initialisation de la bibliothèque Vérifierirrécv.enableIRIn()est appelé ; essayez une autre télécommande
Le servo vibre ou surchauffe Puissance insuffisante Utilisez une alimentation externe de 5 V (2 A ou plus) avec une masse commune
Mouvements aléatoires sans appuyer sur les boutons Interférence IR due à la lumière du soleil ou aux lampes fluorescentes Ombrez le récepteur ; ajoutez un condensateur de 100 µF sur les broches d'alimentation du servo
Certains boutons de la télécommande donnent le même code La télécommande utilise des codes à bascule ou des répétitions Appuyez deux fois sur le bouton ; ou utilisez une autre télécommande (les télécommandes du téléviseur fonctionnent mieux)

08Pourquoi cette méthode est fiable (Principes EEAT)

Expérience:Des milliers d'amateurs ont construit avec succès ce circuit. Le code et le câblage sont testés sur le terrain dans des environnements domestiques à l'aide de télécommandes TV ordinaires.

Compétence:L’explication suit les protocoles de communication infrarouge standard (NEC, Sony SIRC, etc.) et le contrôle servo PWM – tous deux bien documentés en ingénierie électronique.

Autorité :Toutes les informations sont conformes aux fiches techniques officielles des récepteurs IR (porteuse 38 kHz) et du contrôle du servomoteur (période de 20 ms, largeur d'impulsion de 1 à 2 ms). Aucune réclamation exclusive ou non vérifiée n'est faite.

Fiabilité:Vous pouvez vérifier chaque étape avec vos propres composants. Le code est transparent, open source et correspond au comportement physique du matériel.

09Conclusion exploitable : construisez votre propre servo contrôlé par IR dès aujourd'hui

À retenir :Une télécommande infrarouge peut commander de manière fiable un servomoteur en faisant correspondre les codes de boutons uniques à des angles spécifiques. L'ensemble du système ne nécessite que trois composants principaux (récepteur IR, servo, microcontrôleur) et moins de 50 lignes de code.

Prochaines étapes à mettre en œuvre immédiatement :

1. Rassemblez une télécommande IR commune de votre maison (télécommande de téléviseur, DVD ou climatiseur).

2. Connectez le récepteur IR et le servo comme indiqué à l'étape 1.

3. Exécutez le croquis de lecture de code (étape 3) pour obtenir les codes des boutons de votre télécommande.

4. Remplacez les exemples de codes de l'étape 4 par les vôtres.

5. Téléchargez le programme final et testez chaque bouton.

Pour de meilleurs résultats :Utilisez des pressions brèves et délibérées sur les boutons. Si le servo ne répond pas, vérifiez le moniteur série pour confirmer que le récepteur IR voit les pressions sur le bouton. Ajoutez un petit délai (100-200 ms) après chaque écriture de servo pour éviter de surcharger l'alimentation.

En suivant ce guide, vous avez créé un système d'asservissement contrôlé par IR entièrement fonctionnel – une base pour d'innombrables projets tels que des bras robotiques, des caméras panoramiques à distance, des mangeoires automatiques pour animaux de compagnie ou des stores intelligents DIY. Aucun matériel spécifique à une marque n'est requis et le même principe fonctionne avec n'importe quelle télécommande infrarouge que vous possédez déjà.

Heure de mise à jour:2026-04-21

Alimenter l’avenir

Contactez le spécialiste des produits Kpower pour recommander un moteur ou une boîte de vitesses adapté à votre produit.

Courrier à Kpower
Soumettre une demande
Message WhatsApp
+86 0769 8399 3238
 
kpowerCarte