-         

Seite 2 von 4 ErsteErste 1234 LetzteLetzte
Ergebnis 11 bis 20 von 31

Thema: Servo Geschwindigkeitsregelung

  1. #11
    Neuer Benutzer Öfters hier
    Registriert seit
    23.03.2011
    Beiträge
    9
    Anzeige

    @ lokirobotics: Da hast du recht, das sieht sehr gut aus. Genau das was meine Servos machen sollen. Wie steuerst du denn die Servos an?

  2. #12
    Erfahrener Benutzer Begeisterter Techniker
    Registriert seit
    19.05.2005
    Ort
    Berlin
    Beiträge
    316
    Danke.
    Ich hab einen eigenen Servocontroller auf Basis eines ATMega32. Die Software läuft aber praktisch auf jedem Controller, der einen Timer mit Compare Match hat.
    Der Controller wird einfach mit Positionswerten über die serielle Schnittstelle gefüttert. Für den PC hab ich mir ein Programm geschrieben, mit dem ich Sequenzen erstellen und ablaufen lassen kann.
    Der Befehl "set,0,200,1000" z.B. würde Servo1 in einer Sekunde auf Position 200 fahren (0-255 möglich).

  3. #13
    Neuer Benutzer Öfters hier
    Registriert seit
    23.03.2011
    Beiträge
    9
    @ lokirobotics: Also verändert dein Controller, wie ich in dem Viedeo gesehen habe, die Pulsweite entsprechend der Zeit, die der Servo für das Anfahren der benötigten Position brauchen soll oder? Hast du die Software in C oder mit was anderem geschrieben? Habe mit meinem Programm und der Messkarte (läuft auch mit Digitalservos), das ganze noch mal optimieren können und das zittern vermindern können. Komme aber immernoch nicht ganz an die saubere Bewegung, wie mit einem Servotester z.B. ran.

  4. #14
    Erfahrener Benutzer Begeisterter Techniker
    Registriert seit
    19.05.2005
    Ort
    Berlin
    Beiträge
    316
    Der Controller erzeugt nur die Signale für die jeweiligen Servos. Das Programm im PC erstellt eine Tabelle, in der die Servopositionen stehen. Jede Tabellenzeile stellt dabei einen Timeslot von 10ms dar. Der Controller kriegt also alle 10ms die Servopositionen übermittelt, die er dann auch sofort anlegt. Die Servos bewegen sich also immer mit maximaler Geschwindigkeit.
    Hier mal ein Ausschnitt aus solch einer Tabelle:

    Code:
    0    0    0    0    
    2    2    0    0    
    4    4    0    0    
    6    6    0    0    
    8    8    0    0    
    10    10    0    0    
    12    12    0    0    
    14    14    0    0    
    16    16    0    0    
    18    18    0    0    
    20    20    0    0    
    22    22    0    0    
    24    24    0    0    
    26    26    0    0    
    28    28    0    0    
    30    30    0    0    
    32    32    0    0    
    34    34    0    0    
    36    36    0    0    
    38    38    0    0    
    40    40    0    0    
    42    42    0    0    
    44    44    0    0    
    46    46    0    0    
    48    48    0    0    
    50    50    0    0    
    52    52    0    0    
    54    54    0    0    
    56    56    0    0    
    58    58    0    0    
    60    60    0    0    
    62    62    0    0    
    64    64    0    0    
    66    66    0    0    
    68    68    0    0    
    70    70    0    0    
    72    72    0    0    
    74    74    0    0    
    76    76    0    0    
    78    78    0    0    
    80    80    0    0    
    82    82    0    0    
    84    84    0    0    
    86    86    0    0    
    88    88    0    0    
    90    90    0    0    
    92    92    0    0    
    94    94    0    0    
    96    96    0    0    
    98    98    0    0    
    100    100    0    0    
    102    98    0    0    
    104    96    0    0    
    106    94    0    0    
    108    92    0    0    
    110    90    0    0    
    112    88    0    0    
    114    86    0    0    
    116    84    0    0    
    118    82    0    0    
    120    80    0    0    
    122    78    0    0    
    124    76    0    0    
    126    74    0    0    
    128    72    0    0    
    130    70    0    0    
    132    68    0    0    
    134    66    0    0    
    136    64    0    0    
    138    62    0    0    
    140    60    0    0    
    142    58    0    0    
    144    56    0    0    
    146    54    0    0    
    148    52    0    0    
    150    50    0    0    
    152    48    0    0    
    154    46    0    0    
    156    44    0    0    
    158    42    0    0    
    160    40    0    0    
    162    38    0    0    
    164    36    0    0    
    166    34    0    0    
    168    32    0    0    
    170    30    0    0    
    172    28    0    0    
    174    26    0    0    
    176    24    0    0    
    178    22    0    0    
    180    20    0    0    
    182    18    0    0    
    184    16    0    0    
    186    14    0    0    
    188    12    0    0    
    190    10    0    0    
    192    8    0    0    
    194    6    0    0    
    196    4    0    0    
    198    2    0    0    
    200    0    0    0
    edit: MCU in C, PC Programm in C#

  5. #15
    Erfahrener Benutzer Robotik Visionär Avatar von oberallgeier
    Registriert seit
    01.09.2007
    Ort
    Oberallgäu
    Beiträge
    7.480
    Gute Arbeit, mein Kompliment.
    Zitat Zitat von lokirobotics
    ... Controller kriegt also alle 10ms die Servopositionen übermittelt, die er dann auch sofort anlegt ...
    Nun ist die Standard-Updateperiode eines Servos 20 ms. Aber wir wissen, dass Servos nicht so pingelig auf diese Zeit achten - aber das Rampenverhältnis muss halt stimmen. Spricht Dein Servo wirklich 100 mal pro Sekunde mit Dir? Dann müsste ja auch Dein Stellungssignal, die Rampe (siehe hier) entsprechend kleiner sein, sprich 0,5 bis 1 ms je Periode.

    Frage 1: wie lang ist Deine kürzeste Rampe, wie lang Deine längste ?
    Frage 2: Verarbeitet Dein Servo wirklich die 100-Hz-Signale? (Wie) Ist das getestet/gesichert?
    Ciao sagt der JoeamBerg

  6. #16
    Erfahrener Benutzer Begeisterter Techniker
    Registriert seit
    19.05.2005
    Ort
    Berlin
    Beiträge
    316
    Danke.

    Zu erstens: Meine Servos halten sich leider gar nicht an die üblichen "Vorgaben".

    Klicke auf die Grafik für eine größere Ansicht

Name:	minMax.jpg
Hits:	20
Größe:	29,8 KB
ID:	18374

    Wie du siehst, liegt die kürzeste Periode bei 500µS, die längste bei ~2400µS. Bei den Extremwerten kommen die Servos auch nicht ins Zittern, wie das z.B. bei drei oder 4ms Impulsen der Fall wäre.

    Zu zweitens: Ob die Servos so schnelle Impulse verarbeiten, weiß ich nicht. Das ist weder getestet, noch irgendwie gesichert. Imho macht es auch keinen Sinn, die Servoposition mit 100Hz zu aktualisieren. Der Controller soll aber auch zur Steuerung von BL-Motor Controllern eingesetzt werden. Da möchte ich dann untersuchen, wie schnell man die Drehzahlen der Motoren ändern kann. Deswegen die 10ms.
    ...
    So, ich habe es gerade mal mit 20ms getestet. Die Servos fahren ruckeliger. Die Servos scheinen die 10ms also zu schlucken.

  7. #17
    Erfahrener Benutzer Robotik Visionär Avatar von oberallgeier
    Registriert seit
    01.09.2007
    Ort
    Oberallgäu
    Beiträge
    7.480
    Noch mehr Kompliment und danke für die Arbeit. Ich verwende ähnliche Servos, die billigen MODELCRAFT ES-05 JR/FUT - aber derzeit praktisch nur in der Hackversion 2. Bei früheren Arbeiten war mir schon aufgefallen, dass die recht tolerant gegenüber der Periodendauer sind. Aber ich habe das weder so genutzt wie Du, noch habe ich das so genau dokumentiert. Ich hatte lediglich die langsame Fahrweise geübt durch ein paar tausend Schritte für die Rampe und langsames Hochtickern der Rampe.

    Bitte nicht prügeln, wenn ich jetzt pingelig werde. Du dokumentierst Pulse von 500 µs bis 2400 µs. Jetzt ist die naheliegende und wichtige Frage, wie lang war bei Deinen Tests die Periodendauer [klugsche--sen] die ja der Abstand von Pulsanfang zu Pulsanfang ist [/klugsche--sen]. Vergleiche auch die üblichen Definitionen hier. Jedenfalls danke für die saubere Arbeit.

    Na ja, und meine Servos halten sich auch nicht an die üblichen "Vorgaben" die da mal sagten, dass diese Typen gleich/schnell/nachMinuten hinüber seien. Jedenfalls laufen meine gehackten Teilchen seit vielen vielen Betriebsstunden.
    Ciao sagt der JoeamBerg

  8. #18
    Erfahrener Benutzer Begeisterter Techniker
    Registriert seit
    19.05.2005
    Ort
    Berlin
    Beiträge
    316
    Oh, das freut mich, wenn meine Arbeit nicht nur mir was bringt ;D
    Also, bei der 10ms Variante: 10.05ms bis 11.10 ms, je nach Servowert.
    Bei der 20ms Variante sind es: 20.1ms bis 21.2ms, je nach Servowert.

    Wieso pingelig werden? Ich würde sagen, diese ganze "Rumdokumentiererei" ist schon pingelig genug, da kommt es auf ein bisschen mehr oder weniger nicht an XD

    Es sind aber nicht nur ähnliche Servos, es sind die gleichen. ;D
    Die sind schon ganz günstig, aber die nächsten werde ich mir bei Hobbyking holen, da gibts die schon ab $2,60US.

    Bevor ich es vergesse: Weißt du, ob man die Potis durchdrehen kann? Oder haben die auch einen Anschlag?

  9. #19
    Erfahrener Benutzer Robotik Visionär Avatar von oberallgeier
    Registriert seit
    01.09.2007
    Ort
    Oberallgäu
    Beiträge
    7.480
    Ok, also ist die Rampe im üblichen Verhältnis zur Periode. Danke.

    Zitat Zitat von lokirobotics
    ... Servos ... die gleichen ... bei Hobbyking holen ... schon ab $2,60US ...
    Hast Du so etwas schon mal aus USA importiert? Ich habe vor zwei Jahren für einige Gramm (geschätzt um die 50 g Nutzlast von Nevada nach Bayern) etwa 30 .. 40 US$ Porto und ca. 20 Euro Zoll gezahlt. Die nächste Sendung hab ich dann ans Büro in den USA geschickt, Porto dann etwa 3 .. 4 US$, von dort bei der ersten Gelegenheit mitgenommen. Der Zoll an der Grenze sah das als Geschenk/Mitbringsel und zollfrei an.

    Zitat Zitat von lokirobotics
    ... ob man die Potis durchdrehen kann ...
    Ja, man kann die ohne Anschlag durchdrehen, aber es gibt natürlich den undefinierten Übergangsbereich. Ich kann Dir eines schicken - da ich zum Ärger meiner Frau kein Wegschmeisser bin.
    Ciao sagt der JoeamBerg

  10. #20
    Erfahrener Benutzer Begeisterter Techniker
    Registriert seit
    19.05.2005
    Ort
    Berlin
    Beiträge
    316
    Zitat Zitat von oberallgeier Beitrag anzeigen
    ...da ich zum Ärger meiner Frau kein Wegschmeisser bin.
    <= XD Das gleiche "Problem" hat meine Frau auch.
    Ach, danke, aber wenn ich eines umbauen will, dann muss ich's ja eh öffnen.

    Hobbyking sitzt in China. Ich hab erst vor ein paar Wochen Lipos, Motoren und Fahrtensteller gekauft.
    Das Paket hat 750g gewogen und $18 Versand gekostet. Dann kamen noch 13€ Zoll dazu. Für nen Warenwert von $76 ganz ok, finde ich.
    Die haben ne sehr enge Staffelung der Versandkosten. Bis 100g zahlt man z.B. nur $3. Dazu kommt, dass man manche Artikel auch aus Deutschland verschicken lassen kann, dann fällt schonmal der Zoll weg.
    Außerdem sind die unglaublich günstig. Leider kriege ich keine Provision ;D

Seite 2 von 4 ErsteErste 1234 LetzteLetzte

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •  

Gearbest