PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Problem beim Servo-Hacking



a111a198
10.06.2006, 15:33
Hallo beisammen,

als J2EE-Entwickler mit Robotik-Interesse habe ich ein Problem beim Servo-Hacking:
Nach dem Kalibrieren des gehackten Servos bleibt es nur vorübergehend stehen.
Nach einiger Zeit beginnt es sich wieder zu drehen, obwohl das Signal programmatisch nicht geändert wurde.

Wo liegt das Problem? Ist es die Toleranz des Potis / eingebauten Widerstandnetzwerks?
Ist es die Steuerelektronik des Servos? Gibt es überhaupt eine Lösung?

Weitere Infos:
Verwende ein SD21 als Servo-Controller und ein gehacktes Grauper C 512.

Habe leider keine brauchbaren Infos zur Problemlösung gefunden :-(

Liebe Grüße und besten Dank,
Christian

Suchbegriffe: Servo, hacking, hacked, hack, modification, modify

Blackbird.
12.06.2006, 08:13
Ein nicht-"gehacktes" Servo bleibt in jeder vorgegebenen Stellung (innerhalb seines Drehbereiches) stehen und korrigiert die auch wenn von außen versucht wird es zu verdrehen. Bedingungen sind natürlich ein sauberer und zeitlich stabiler Impuls und konstante Spannung auch unter Last.

Mit "gehackt" meinst Du wohl die Erweiterung des Drehbereiches durch Abfeilen der Anschlagbegrenzung?
Dann ist die Servoelektronik und das eingebaute Poti nicht mehr zu gebrauchen. Das Poti hat nur einen Drehbereich von ca. 270grd, genutzt werden 180grd. Befindet sich der Schleifer in den "toten" 90grd, in dem keine Widerstandsbahn vorhanden ist, dann "spinnt" die Elektronik.

Blackbird

a111a198.
12.06.2006, 18:38
Hallo Blackbird,

danke für Deinen Beitrag.
Mit "gehackt" meine ich wirklich das Abfeilen der Servobegrenzung sowie die "Deaktivierung" des Potis. Am Poti liegt's definitiv nicht, da ich es auch schon mit zwei Festwideständen versucht habe - auch vergebens. Nach einigen Minuten beginnt sich das 360°-Servo zu drehen :-(

Du meinst also, dass duch die Modifiaktion (Deaktivierung der Rückkoppling zum Servo-Controller) die Servoelektronik nicht mehr zu (zuverlässig) zu gebrauchen ist?
Kann es an einer unkonstanten Spannungsversorgung / Widerständen mit zu hohen Toleranzen liegen?

Vielen Dank.

Blackbird.
13.06.2006, 07:31
Der Drehwinkel ist proportional zum Potiwiderstand, genauer: zum Spannungswert eines Spannungsteilers, wobei das Poti ein Teil davon ist. Da die Spannung nur zwischen (minimal) 0 Volt und maximal der Betriebsspannung liegen kann (der Spannungsbereich ist durch interne Widerstaende noch geringer), ist somit auch der Drehbereich nicht beliebig gross waehlbar.
Aus technischer Sicht gilt auch folgende Einschraenkung: die Steuerelektronik ist nur fuer einen kleinen Spannungsbereich (naemlich genau die, die das Poti bei plus/minus 60grd (90grd) lieferte) funktionstuechtig.
Es kann sein, das sie auch ausserhalb dieses Spannungsbereiches funktioniert, aber garantieren kann das Dir keiner. Das Servo macht dann, was es will, z.B. eben, sich langsam wegdrehen. Mit den Festwiderstaenden hast Du offenbar ausserhalb dieses Spannungsbereiches gelegen.
Die Versorgungsspannung sollte nicht zusammenbrechen, auch nicht kurzzeitig, wenn das Servo anzieht (der Strom kann bis zu 1,5A beim Motoranlauf betragen). Zwischen 4,8V und 6V arbeiten alle Servos zuverlaessig.

Die Vergroesserung des Drehbereiches wuerde ich also nicht elektrisch, sondern mechanisch mit zwei Zahnraedern oder einem Gestaenge mit zwei unterschiedlich langen Hebeln machen.


Blackbird

Schokohoernl
13.06.2006, 13:41
hallo!

nochmal zum verständnis: a111a198 hat ein sevr so umgebaut, dass es 360° dreht (bzw. unendlich lange dreht) und steuert dies über das normale PWM signal, das man zum servo ansteuern eben benutzt (20ms low, 1-2ms high (je nach stellung, 1,5ms ist mittelstellung, in diesem falle stehenbleiben))

wie schnell dreht sich denn das servo weg?? ganz langsam oder auf einmal ratzfatz?

hast du mal das steuersignal mit einem oszilloskop angeschaut?
was passiert, wenn du das servo nachdem es anfängt wegzulaufen aussteckst und dann wieder einsteckst (nur das servo, nicht den µC)
mfg

schoko

a111a198.
13.06.2006, 18:54
Hallo,

vielen Dank für Eure Antworten.

Die Servostellung driftet anfangs sehr langsam von der Nullstellung ab.
Typischerweise dreht es sich nach einiger Zeit etwas schneller.
Ruckartige Bewegungen kommen keinesfalls vor.

Habe kein Oszilloskop zum Signal prüfen. Werde aber mal ein ungehacktes Servo mit dem gleichen Signal füttern und schauen, ob dieses sich auch wegdreht.

Ein erneutes Anschließen des Servos nach dem Abstöpseln hilft auch nicht.
Es bleibt nur die Möglichkeit programmatisch geringfügig nachzukalibrieren.
Dann bleibt es wieder stehen - aber das Problem tritt später wieder auf.

Hinweis: Das Servo liegt zerlegt auf dem Tisch - ohne Getriebe. Ich betrachte direkt das (sich drehende) Zahnrad am Motor.

Manf
13.06.2006, 20:51
Du könntest das Feld der Fehlersuche unterteilen indem Du das Steuersignal des Sevos überwachst, ...
am einfachsten vielleicht mit einem un-"gehackten" Servo parallel am Signal.
So, dann habe ich mal die Namen eingesetzt für die Gäste und mache noch einen Link zum anderen Thread zum gleichen Thema.
Manfred

https://www.roboternetz.de/phpBB2/viewtopic.php?p=188803#188803

Schokohoernl
13.06.2006, 21:55
Hallo,

vielen Dank für Eure Antworten.

Die Servostellung driftet anfangs sehr langsam von der Nullstellung ab.
Typischerweise dreht es sich nach einiger Zeit etwas schneller.
Ruckartige Bewegungen kommen keinesfalls vor.

Habe kein Oszilloskop zum Signal prüfen. Werde aber mal ein ungehacktes Servo mit dem gleichen Signal füttern und schauen, ob dieses sich auch wegdreht.

Ein erneutes Anschließen des Servos nach dem Abstöpseln hilft auch nicht.
Es bleibt nur die Möglichkeit programmatisch geringfügig nachzukalibrieren.
Dann bleibt es wieder stehen - aber das Problem tritt später wieder auf.

Hinweis: Das Servo liegt zerlegt auf dem Tisch - ohne Getriebe. Ich betrachte direkt das (sich drehende) Zahnrad am Motor.

wenn du den µC kurz ausschaltest undgleich wieder ein, und dann die servo wieder stehen bleibt, dann kann es nicht an veränderungen in der servo liegen.
ich vermute mal, dass der generator für dein PWM-signal langsam von der vorgegebenen frequenz wegdriftet. vielleicht lässt sich das ganze ja auch auf ein gesetz Murphys zurückführen: "Toleranzen ergänzen sich immer einseitig".

MfG

Schoko

Blackbird
14.06.2006, 06:32
Temperaturprobleme (bei Zimmertemperatur) würde ich ausschließen. Sonst würden ja ständig die Modellflieger vom Himmel fallen. Die Potis sind mit 5fach-Schleifer ausgerüstet.

Nochmal zum Verständnis:

der Drehbereich eines Servos ist NICHT 360grd, sondern max. 180grd.

(Es gibt jedoch Spezialservos die das können.)

Damit ist auch klar, dass die Führungsgröße (die Spannung, die durch Poti oder Spannungsteiler bereitgestellt wird) sich nur in einem kleinen Bereich bewegen darf. Nämlich nur in dem, wo das Servo +- 90grd von der MITTELLAGE aus sich bewegt.
Außerhalb dieses Bereiches KANN, muß es aber nicht funktionieren.

Warum das Servo wegläuft, kann verschiedenen Ursachen haben. Einige wurden genannt: Stabilität des Steuerimpulses, Versorgungsspannung-Innenwiderstand, ...
Da wir nicht wissen, ob es sich bei der Servoelektronik um eine
- diskrete analoge Steuereinheit
- eine analoge Steuereinheit mit IC
- eine digitale Steuereinheit
handelt, kann man auch nicht viel über die Ursache des Wegdrehens sagen (falls alle oben genannten Vermutungen nicht zutreffen sollten).

Ohne Getriebe (jedoch MIT angeschlossenem Poti! in etwa Mittelstellung) sollte ein modernes Servo ruhig stehen. Die ganz alten Dinger (diskreter Aufbau) haben schon mal Driftprobleme, weil die Elkos hinüber sind. Das ist aber mit Getriebe kein großes Problem, weil sich das Servo selbst nachregelt. Das hört sich dann wie ein "Knurren" an. Nicht schön und auch unerwünscht, aber es funktioniert noch.


Blackbird