Events

23.05.2022: Tiefpassfilter

:

Elektronik | Funk | Software

Der Technik-Blog

  • Social Media

    Werbung:


    Neue Artikel


    Events

    Der Technik-Blog

    Arduino read analog PWM Signals from RC

    Arduino PWM Fernsteuerung

    Alex @ AEQ-WEB

    Die meisten Fernsteuerungen aus dem Modellbau (Drohnen, Boote, Flieger etc.) arbeiten mit analogen PWM-Signalen. Es gibt zwar auch digitale Übertragungen wie PCM, die bereits viele Fernsteuerungen haben. Dennoch wird PWM weiterhin sehr stark verwendet. Mit einem Arduino Board können diese Signale über digitale Eingänge eingelesen werden. Dadurch ist es möglich, dass das Arduino Board auch im Modellbau als zentrale Steuereinheit verwendet werden kann. In unserem Beispiel lesen wir drei PWM-Signale von einer Fernsteuerung ein. Für das Arduino Board ist es kein Problem, mehrere PWM-Signale hintereinander auf verschiedenen Pins einzulesen.

    Empfänger am Arduino

    Die meisten Empfänger arbeiten mit 5 Volt. Das bietet den Vorteil, dass der Empfänger direkt vom Arduino versorgt werden kann. Neben den zwei Leitungen für die Stromversorgung wird noch eine weitere Leitung für das PWM-Signal benötigt. Pro Kanal, der eingelesen werden soll, muss eine Leitung angeschlossen werden. Das Arduino kann zwar nur an bestimmten digitalen Pins PWM-Signale erzeugen, jedoch an allen Pins die Signale einlesen.

    Werbung:

    PWM Signal

    Das PWM (Pulsweitenmodulation) Signal liegt beim kleinsten Wert knapp unter 1000 und beim höchsten Wert knapp unter 2000. Durch eine mathematische Formel könnte man den Wert in einen Prozentwert umwandeln und so beispielsweise die Drehzahl von einem Motor von 0-100% regeln. Die folgende Grafik aus dem Serial Plotter zeigt, wie auf der Fernsteuerung ein Regler von unten nach oben bewegt wird und anschließend in der Mitte positioniert wird.

    Die Software

    Das Codebeispiel ist sehr einfach aufgebaut und funktioniert ähnlich wie analoge Inputs. Zuerst werden die I/O-Pins sowie deren Funktion definiert. Anschließend wird das PWM-Signal über PulseIn eingelesen und im Serial Monitor angezeigt. Das PWM-Signal wird im Code immer zu bestimmten Zeiten eingelesen. Wenn es notwendig ist, dass eine Veränderung des Signales zu jeder Zeit erfasst wird, so kann man auch mit Interrupts arbeiten, die dann nicht von einem Delay oder einer anderen Operation blockiert werden können. Der folgende Screenshot zeigt die Ausgabe von drei PWM-Kanälen der Fernsteuerung im Serial Monitor an.

    Werbung:

    Arduino PulseIn
    Download

    122X122

    Über den Autor

    Alex, der Gründer von AEQ-WEB. Seit über 10 Jahren beschäftigt er sich mit Computern und elektronischen Bauteilen aller Art. Neben den Hardware-Projekten entwickelt er auch Webseiten, Apps und Software für Computer.

    Top Artikel in dieser Kategorie:

    Arduino Smartmeter S0 Watt Counter

    Arduino Smartmeter

    • Video

    In diesem Artikel zeigen wir, wie aus einem einfachen Stromzähler und einem Arduino ein Smartmeter gebaut wird, das den Zählerstand im EEPROM speichern kann

    Weiterlesen
    Arduino Anemometer Wind Sensor

    Arduino Anemometer Schaltung

    • Video
    • DE/EN

    Mit einem Mikrocontroller wie dem Arduino, einer kleinen Schaltung und entsprechender Software kann die Windgeschwindigkeit über ein Anemometer gemessen werden

    Weiterlesen

    Social Media

    Werbung:


    Neue Artikel


    Events