Nr. 54 – Rundumleuchte am Arduino

Mit dem Arduino den Signalmodus bzw. die Blinkabfolge einer Modell-Rundumleuchte verändern

In dieser Anleitung möchten wir das Blinksignal einer Modell-Warnleuchte verändern. Da das Modul vorrangig im Modellbau eingesetzt wird, ist das Modul mit einem typischen Servostecker ausgestattet, welcher über drei Leitungen verfügt. Neben der 5V Spannungsversorgung (rotes und braunes Kabel) steht eine Signalleitung (gelb) zur Verfügung. Über die Signalleitung wird der Signalmodus (die Blinkabfolge) verändert. Eine Änderung des Modus wird initiiert, wenn über die Signalleitung (gelb) ein PWM-Signal (vom RC-Empfänger oder ein PWM-Signal vom Mikrocontroller) verändert wird. Um den Modus zu ändern, muss das PWM-Signal von ca. 30% (Pulsdauer) auf ca. 60% angehoben werden. Dieser Übergang wird vom Modul detektiert und sorgt so für eine Änderung des Signalmodus.

In dem folgenden Beispiel soll das Blinksignal im Sekundentakt verändert werden. Der passende Arduinocode sieht folgendermaßen aus:

#include <Servo.h>
int pos=0; // Variable für das PWM-Signal

Servo alarm;

void setup() 
{
alarm.attach(9);  // Rundumleuchte wird mit der Signalleitung an Pin9 angeschlossen
}

void loop() 
{   
for (pos = 54; pos <= 110; pos += 1) // Hier beginnt eine Schleife, die das PWM-Signal von 30% auf 60% anhebt. Da für das PWM-Signal die Servo-Bibliothek verwendet wird, ist der prozentuale Wert analog zu den Drehwinkeln zwischen 54 und 110 dargestellt.
 {
 alarm.write(pos);    // Ausgabe des PWM-Signals an das Modul
 delay(10);          // Das Signal bleibt für 10ms bestehen
 }
delay (1000); 
}