PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : SD21 lässt keine 180° Drehung zu! was tun?



smusmut
01.11.2011, 14:16
Hallo,
Ich habe ein RN Control und ein SD21 Servoboard.Und steuere damit diesen Servo (http://www.conrad.at/ce/de/product/229712/BLUEBIRD-SERVO-SUPER-STRONG-BMS-630-MG/1207063&ref=list) an.

Da der Servo bei dem Beispiel Programm mit den Tasten nur ca 100° Drehwinkel hat, erhöhte ich die Werte im Quelltext auf 1100 und 900.
Danach drehte der Servo ca. um 20 ° mehr. Also habe ich die Werte noch einmal erhöht.

Das hatte dann aber keine Auswirkungen mehr auf den Servo. :confused::confused:

Übernimmt das SD21 keine größeren Werte? Sind da also irgendwelche Grenzwerte im SD21, zum Schutz der Servos, festgelegt? Wenn ja wie stelle ich dennoch größere Werte ein?

Wenn keine Spannung am Servo anliegt kann ich ihn weit mehr als 180° drehen! :(

Danke schonmal an alle die mir helfen. ;)

Ich hoffe ich habe das Problem ausreichend geschildert, wenn nicht bitte nochmal nachfragen.

gruiß
David

radbruch
01.11.2011, 15:10
Hallo

Das SD21 besitze ich nicht, aber ich kann mir nicht vorstellen, dass es interne Grenzwerte für die Impulslängen besitzt. Laut Datenblatt des Servos ist der Drehbereich wohl von 1,2 bis 1,6ms:

"Direction Re-clock wise / pulse traveling 1200 to 1600 usec"

Das trifft sich gut, denn in der Beschreibung des SD21 (http://www.shop.robotikhardware.de/shop/catalog/product_info.php?cPath=87&products_id=198) findet man:

"Servopositionen: direkte Angabe in µs, 16-bit-Auflösung"

Also einfach mal weiter den Bereich vergrössern, aber möglichst nicht gegen den Anschlag fahren:

"Stall Current 1800mA"

Gruß

mic

Richard
01.11.2011, 19:15
Ich habe mir ein Billig Servo von Konrad geholt, Brauche das Teil nicht wirklich wollte es einfach nur probieren. Getestet habe ich das dann mit Baskom und der dort vorhandenen Servo Demo. Ich habe das Servo voll an den Anschlag fahren lassen und so die Min/Max Position (Programm maßig) ermittelt, die auch bei Servos gleicher Bauart etwas abweichen kann (Fertigungs- Streuung) halt. Wenn die von Hand ermittelte Anschlag/Anschlag Winkel Änderung vom Programm nicht erreicht wird (vermute) ich jetzt einmal eine nicht ordnungsgemäße Quarz Frequenz des Controllers ?

Gruß Richard

smusmut
05.11.2011, 13:33
Hallo,

@mic: Hab die Werte weiter erhöht ---> Bei 400 die selbe Stellung wie bei 900 .. Noch eine Idee was da sein könnte?

@richard: Meinst du die im Programm reingeschriebene ($crystal) passt mid demm Quarz am Controlleer nicht zusammen?
Die hab ich noch mal gecheckt. Die stimmt ebenfalls.


Hat noch jemand ein Idee?

Danke nochmal für eure Hilfe!

Gruß David

Richard
05.11.2011, 13:49
Versuche einmal das Bascom Demo



$regfile = "2313def.dat" ' Auf Deinen µC anpassen!

Config Servos = 1 , Servo1 = Portb.0 , Reload = 10
Config Portb = Output
Enable Interrupts

Do
Loop

Dim I As Byte
Do
For I = 0 To 100 ' I einfach mit anderen besser passenden Werten setzen
Servo(1) = I
Waitms 1000
Next

For I = 100 To 0 Step -1
' Servo(1) = I
Waitms 1000
Next
Loop
End


Hat bei mir bestens geklappt. :-)

Gruß Richard

smusmut
05.11.2011, 17:12
Verstehe ich das jetzt richtig das bei dieser Möglichkeit das SD21 keine Rolle spielt?
Ich würd das ganze nämlich gerne mit dem SD21 realisieren!!

gruß David

radbruch
05.11.2011, 19:12
Wenn im Datenblatt des Servos "1,2 bis 1,6ms" steht bringt "Hab die Werte weiter erhöht ---> Bei 400 die selbe Stellung wie bei 900" wohl nicht sehr viel...

smusmut
06.11.2011, 17:44
1,2 bis 1,6ms heist doch eigentlich, dass ich 1200 bis 1600 nehmen müsste. oder? Das bringt aber auch nichts. sind dann höchstens 60° Drehung.


Ich weis ich stelll mich unglaublich blöd an, und ich verstehs grad überhaupt nicht.
Aber könnt ihr mir trotzdem helfen?

radbruch
06.11.2011, 18:10
1200 bis 1600 ... ? Das bringt aber auch nichts. sind dann höchstens 60° Drehung.
...
Da der Servo bei dem Beispiel Programm mit den Tasten nur ca 100° Drehwinkel hat, erhöhte ich die Werte im Quelltext auf 1100 und 900. Danach drehte der Servo ca. um 20 ° mehr.60°+100°+20°=180°. Viel mehr drehen die Servos eh nicht. Im Prinzip den Wert jeweils soweit vergrößern/verkleinern bis das Servo in der gewählten Richtung nicht mehr weiterdreht. Das hat nichts mit "Ich weis ich stell mich unglaublich blöd an, und ich verstehs grad überhaupt nicht." zu tun!

Gruß

mic