In diesem Beitrag möchte ich dir zeigen, wie du ein analoges Signal auf ein PWM Signal im Open Roberta Lab mappen kannst.
Die Entwicklungsumgebung Open Roberta Lab habe ich dir bereits in diversen Beiträgen auf meinem Blog vorgestellt und das ein oder andere Projekt gezeigt.
- Grafische Programmierung mit Open Roberta
- Open Roberta #2 – LED programmieren
- Open Roberta #3 – Grove Shields
- Open Roberta #4 – Grove LED
- Open Roberta #5 – Grove Button
Hier möchte ich dir nun zeigen, wie du ein analoges Signal von einem Drehpotentiometer auf ein PWM Signal für das Regeln der Helligkeit einer LED zu mappen.
Ein analoges Signal kann am Arduino zwischen 0 und 1023 liegen und ein PWM Signal zwischen 0 und 255. Du kannst also das analoge Signal nicht 1:1 auf ein PWM Signal abbilden und musst dieses nun irgendwie umwandeln / umrechnen. Wie dieses geht, zeige ich dir nun hier.
Die schöne Welt der Arduino IDE
Wenn du bereits die Arduino IDE kennst und damit Erfahrung gesammelt hast, das kennst du bestimmt die Funktion map.
map(value, fromLow, fromHigh, toLow, toHigh)
Dieser Funktion übergibst du den gemessenen Wert sowie die untere/obere Grenze der ersten Range sowie der zweiten. Als Ergebnis erhältst du einen berechneten Wert.
Nachbauen der Funktion map in Open Roberta Lab
Eigentlich ist es recht einfach, denn man muss lediglich den maximalen Wert des analogen Signals (1023) durch den maximalen Wert vom PWM Signal (255) teilen.
1023/255 = ~4.01
Den Wert von 4.01 nehmen wir jetzt und teilen jeweils den analogen Wert durch diesen.
15/4.01 = ~3.75
Das Ergebnis müssen wir nun noch runden und somit haben wir das analoge Signal auf ein PWM Signal gemappt.
Im nachfolgenden Video zeige ich dir das Programm in Open Roberta Lab und die Ausgabe in einem Putty Terminal Fenster.
Download
Hier nun noch der Code zum einfachen Download, welchen du in Open Roberta Lab importieren kannst.
1 thought on “Open Roberta Lab – analoges Signal auf PWM mappen”