Hallo ihr,
ich beschäftige bereits eine Weile mit der Aufgabe mit einem Rasberry, einem Adafruit PWM/Servo Driver und der Library von Adafruit vorerst einen Servo zu steuern.
Grundsätzlich scheint es zu funktionieren aber beim Einsatz der Methode zum Senden des PWMs ist bei mir der Groschen noch nicht gefallen.
Ich habe jetzt mittels
[code=php]
tick = 200
pwm = PWM(0x40)
pwm.setPWMFreq(100)
while True:
pwm.setPWM(0, 0, tick)
print "%d is the tick" % tick
tick = tick + 5
time.sleep(.5)
[/php]
festmachen können, dass sich der Servo von 250 bis 925 als Pulslänge jeweils ein Stückchen nach links dreht - vorausgesetzt ich habe ihn vorher manuell komplett nach rechts gedreht.
Ich würde mir ja einen Wrapper schreiben, der Winkel und Dauer oder Geschwindigkeit oder ähnliches erwartet und das entsprechend umrechnet aber was setPWM da jetzt wirklich anstellt ist mir halt nicht klar.
Habe diesen Artikel gefunden, der genau meinen Wrapper beschreibt - allerdings tuts das auch nicht...
Im Beispiel werden on und off übergeben.
Bei mir rührt sich der Servo nur wenn ich für on 0 übergebe.
Und wenn ich das Tutorial richtig verstehe müsste doch sowas hier
[code=php]
pwm = PWM(0x40, debug=True)
pwm.setPWMFreq(100)
while True:
pwm.setPWM(0, 0, input('Enter a pulse width value between 250 and 925: '))
print '------------------------------------------'
[/php]
bewirken, dass sich der Servo entsprechend dreht... Tut er aber eher selten und nicht repoduzierbar...
Kann mir jemand evtl. weiterhelfen?
Vielen Dank im Vorraus