So steuern Sie einen Servomotor mit einer Infrarot-Fernbedienung (vollständige Schritt-für-Schritt-Anleitung)_BLDC_Industry Insights_Kpower
Heim > Brancheneinblicke >BLDC
TECHNISCHE UNTERSTÜTZUNG

Produktunterstützung

So steuern Sie einen Servomotor mit einer Infrarot-Fernbedienung (vollständige Schritt-für-Schritt-Anleitung)

Veröffentlicht 2026-04-19

Dieser Leitfaden bietet eine vollständige, praktische Lösung für die Steuerung von aServoMotor mit einer Standard-Infrarot-Fernbedienung (IR). Wenn Sie die folgenden Schritte ausführen, können Sie a präzise positionierenServoSie können den Motor durch Drücken von Tasten auf einer herkömmlichen IR-Fernbedienung (z. B. einer TV- oder Set-Top-Box-Fernbedienung) steuern. Es sind keine markenspezifischen Komponenten erforderlich und die Anleitung basiert auf allgemein verfügbaren, kostengünstigen Modulen.

01Kernkonzept und wie es funktioniert

Eine IR-Fernbedienung sendet unsichtbare Lichtimpulse aus. Ein IR-Empfänger erkennt diese Impulse und wandelt sie in einen digitalen Code um, der für jede Taste einzigartig ist. Ein Mikrocontroller liest diesen Code und sendet ein entsprechendes Pulsweitenmodulationssignal (PWM) an denServoMotor und stellt seine Welle auf einen bestimmten Winkel ein.

Beispielszenario:Die „Lautstärke erhöhen“-Taste einer gewöhnlichen TV-Fernbedienung dreht einen Servo um 90° (öffnet z. B. einen kleinen Riegel), während die „Lautstärke verringern“-Taste ihn auf 0° zurückstellt. Dieses Prinzip wird in DIY-Roboterarmen, automatischen Haustierfütterern und ferngesteuerten Kamera-Schwenk-Neige-Systemen verwendet.

02Erforderliche Komponenten (keine Markennamen)

Komponente Typische Spezifikation Menge
Mikrocontroller-Platine Jede gängige Platine (z. B. 5-V-Logik, mit PWM-Ausgang) 1
IR-Empfängermodul 1838B oder gleichwertig (38 kHz Trägerfrequenz) 1
Servomotor Standard-5-V-Analogservo (z. B. SG90-Größe, 0°–180°) 1
IR-Fernbedienung Jede Haushaltsfernbedienung (TV, DVD, Klimaanlage) 1
Überbrückungsdrähte Von Mann zu Frau oder von Mann zu Mann 6–8
Stromversorgung 5V DC (USB oder Akku) 1

Wichtig:Die meisten Servos verbrauchen einen erheblichen Strom (200–500 mA). Versorgen Sie das Servo nicht direkt über den 5-V-Pin des Mikrocontrollers mit Strom, wenn es mehr als 500 mA benötigt. Verwenden Sie eine externe 5-V-Versorgung mit gemeinsamer Masse.

03Kabelverbindung (geprüft und zuverlässig)

Verbinden Sie die Komponenten wie folgt. Diese Verkabelung wurde mit Standard-5V-Systemen getestet.

IR-Empfängermodul (von der flachen Seite aus betrachtet):

Linker Pin: Signal → Digitaler Pin 11 des Mikrocontrollers (Beispiel)

Mittelstift: GND → Gemeinsame Masse

Rechter Pin: VCC → 5V-Ausgang

Servomotor:

Braun/schwarzes Kabel: GND → Gemeinsame Masse

Rotes Kabel: 5V → Externe 5V-Versorgung (oder Mikrocontroller 5V nur für kleine Servos)

Orange/gelbes Kabel: Signal → Mikrocontroller-PWM-Pin 9 (Beispiel)

Gemeinsamkeiten:Verbinden Sie den GND des externen Netzteils mit dem GND des Mikrocontrollers. Dies ist für einen stabilen Betrieb zwingend erforderlich.

04Schritt-für-Schritt-Anleitung

Schritt 1: Identifizieren Sie die Tastencodes Ihrer Fernbedienung

Jede IR-Fernbedienung sendet unterschiedliche Codes. Sie müssen zunächst die Codes Ihrer spezifischen Fernbedienung lesen.

Typischer Fall:Eine Sony-TV-Fernbedienung könnte senden0x10für die „1“-Taste, während eine Samsung-Fernbedienung sendet0x80. Der Code ist nicht die Beschriftung der Taste, sondern eine hexadezimale Zahl, die eindeutig für die Marke der Taste und der Fernbedienung gilt.

Aktion:Laden Sie eine einfache IR-Decoder-Skizze (verfügbar in gängigen Bibliotheken wie „IRremote“) auf Ihren Mikrocontroller hoch. Öffnen Sie den seriellen Monitor, drücken Sie jede Taste, die Sie verwenden möchten, und notieren Sie die Codes. Zum Beispiel:

Pfeil nach oben →0xFF629D

Pfeil nach unten →0xFFA857

OK/Auswählen →0xFF02FD

Schritt 2: Ordnen Sie die Tastencodes den Servowinkeln zu

Entscheiden Sie, welche Taste das Servo in welchen Winkel bewegt. Standard-Servowinkel betragen 0° bis 180°.

Beispiel-Mapping (mit Codes aus Schritt 1):

Taste0xFF629D→ Servowinkel 0°

Taste0xFFA857→ Servowinkel 90°

Taste0xFF02FD→ Servowinkel 180°

Schritt 3: Schreiben Sie den Steuercode

Unten finden Sie ein generisches Codebeispiel, das mit der beliebten IRremote-Bibliothek (Version 3.x oder höher) funktioniert. ErsetzenREMOTE_CODE_1, REMOTE_CODE_2usw. mit Ihren tatsächlichen Codes aus Schritt 1.

#enthalten#enthaltenconst int IR_PIN = 11; const int SERVO_PIN = 9; IRrecv irrecv(IR_PIN); decode_results Ergebnisse; Servo myServo; // Ersetzen Sie diese durch die tatsächlichen Codes Ihrer Fernbedienung (Hex-Werte aus Schritt 1) ​​const unsigned long CODE_ANGLE_0 = 0xFF629D; // z. B. Auf-Taste const unsigned long CODE_ANGLE_90 = 0xFFA857; // z. B. Down-Taste const unsigned long CODE_ANGLE_180 = 0xFF02FD; // z. B. OK-Button void setup() { Serial.begin(9600); irrecv.enableIRIn(); // IR-Empfänger starten myServo.attach(SERVO_PIN); myServo.write(0); // Bei 0° beginnen Serial.println("Bereit. Drücken Sie die Tasten auf Ihrer Fernbedienung."); } void loop() { if (irrecv.decode(&results)) { unsigned longempfangenCode = results.value; Serial.print("Empfangener Code: 0x"); Serial.println(receivedCode, HEX); // Empfangenen Code dem Servowinkel zuordnen if (receivedCode == CODE_ANGLE_0) { myServo.write(0); Serial.println("Servo → 0°"); } else if (receivedCode == CODE_ANGLE_90) { myServo.write(90); Serial.println("Servo → 90°"); } else if (receivedCode == CODE_ANGLE_180) { myServo.write(180); Serial.println("Servo → 180°"); } else { Serial.println("Nicht zugeordnete Schaltfläche. Ignoriert."); } irrecv.resume(); // Auf nächstes Signal warten } }

Notiz:Wenn Ihre Fernbedienung ein anderes Protokoll verwendet (z. B. NEC, Sony, RC5), erkennt die Bibliothek dies automatisch. Der obige Code funktioniert für die meisten Consumer-Fernbedienungen.

Schritt 4: Testen und kalibrieren

1. Versorgen Sie den Schaltkreis mit Strom (bei Bedarf externe Servostromversorgung).

2. Öffnen Sie Serial Monitor mit 9600 Baud.

3. Drücken Sie eine zugeordnete Taste – das Servo sollte sich innerhalb von 0,5 Sekunden in den voreingestellten Winkel bewegen.

4. Wenn das Servo zittert oder sich nicht bewegt, überprüfen Sie Folgendes:

Gemeinsamer Erdungsanschluss.

Servostromversorgungskapazität (mindestens 500 mA für Standardservos).

Der IR-Empfänger ist keinem direkten Sonnenlicht oder Fluoreszenzlicht ausgesetzt (diese verursachen Störungen).

05Häufige Probleme und Lösungen (Fälle aus der Praxis)

Problem Höchstwahrscheinliche Ursache Verifizierter Fix
Der Servo bewegt sich zufällig, wenn keine Taste gedrückt wird Der IR-Empfänger erfasst Geräusche von Lichtern oder Bildschirmen Schirmen Sie den Empfänger mit schwarzem Isolierband ab oder fügen Sie einen 100-µF-Kondensator zwischen 5 V und GND in der Nähe des Empfängers hinzu
Einige Tasten funktionieren, andere nicht Die Fernbedienung sendet einen „Wiederholungscode“ (z. B. 0xFFFFFFFF) für gedrückte Tasten Ändern Sie den Code, um Wiederholungscodes zu ignorieren:if (receivedCode == 0xFFFFFFFF) return;
Der Servo bewegt sich nur einmal und stoppt dann Servostromausfall Verwenden Sie eine externe 5-V-Versorgung (2 A empfohlen) mit einem großen Kondensator (470 µF).
Es wurde überhaupt kein Signal erkannt Falscher IR-Empfänger-Pin oder fehlende Bibliothek Überprüfen Sie die Pin-Verbindung noch einmal. Installieren Sie die neueste IRremote-Bibliothek aus einem vertrauenswürdigen Repository

06Erweiterung des Projekts (umsetzbare nächste Schritte)

Kernschlussfolgerung nochmals formuliert:Eine Standard-IR-Fernbedienung gepaart mit einem kostengünstigen IR-Empfänger und einem Mikrocontroller ermöglicht Ihnen eine präzise, ​​kabellose Servosteuerung ohne proprietäre Hardware.

Drei umsetzbare Empfehlungen zur Stärkung Ihrer Umsetzung:

1. Mehrere Servos hinzufügen:Verwenden Sie eine Reihe von Servoobjekten und weisen Sie verschiedenen Servos unterschiedliche Tasten zu. Beispielsweise steuert Taste „1“ Servo A auf 0°, Taste „2“ steuert Servo B auf 45°.

2. Sanfte Bewegung umsetzen:Ersetzenservo.write(Winkel)mit einer Schleife, die den Winkel Schritt für Schritt erhöht (z. B. vom aktuellen Winkel zum Zielwinkel in 1°-Schritten mit 15 ms Verzögerung). Dadurch entsteht eine professionelle, schrittweise Bewegung.

3. Tastenzuordnungen im EEPROM speichern:Schreiben Sie eine kleine Kalibrierungsroutine, mit der Sie neue Schaltflächen erlernen können, ohne den Code erneut hochladen zu müssen. Dies ist besonders nützlich, wenn Sie Ihre Originalfernbedienung verlieren und zu einer anderen Marke wechseln.

Endgültige Überprüfung:Bevor Sie Ihr Projekt in einer realen Anwendung einsetzen (z. B. ferngesteuertes Türschloss oder Robotergreifer), testen Sie alle Tastendrücke jeweils mindestens 50 Mal. IR-Signale können durch Objekte oder helles Licht blockiert werden – schließen Sie immer eine visuelle Anzeige (z. B. eine LED, die blinkt, wenn ein Code empfangen wird) ein, um zu bestätigen, dass das System funktioniert.

Aktualisierungszeit: 19.04.2026

Die Zukunft vorantreiben

Wenden Sie sich an den Produktspezialisten von Kpower, um einen geeigneten Motor oder ein geeignetes Getriebe für Ihr Produkt zu empfehlen.

Mail an Kpower
Anfrage senden
WhatsApp-Nachricht
+86 0769 8399 3238
 
kpowerMap