- SF800 Solar Speicher Tutorial         
Ergebnis 1 bis 10 von 95

Thema: Hexapod - "IKU"

Hybrid-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #1
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    07.03.2011
    Beiträge
    1.899
    Obwohl ich mit Servos wenig zu tun hab, gebe ich mal meinen Senf dazu da ich schon so manche elektronische Schaltung debugged habe.

    Das A und O zum funktionieren einer Elektronik ist die Versorgung. Wenn die nicht steht, und damit meine ich nicht ein "wenig" Brumm oder Ripple, sondern daß sie immer innerhalb des für die Elektronik spezifierten Bereich ist, braucht man sich den Rest garnicht erst ansehen.

    Ohne jetzt die Schaltung zu kennen, wobei die Innenschaltung eines Servos selten bekannt ist, halte ich Spannungseinbrüche von mehr als 5% für bedenklich. Wenn sie sehr kurz sind, sind sie noch problematischer, da man sie mit typischen Messmitteln schlecht erfasst und sie in Wirklichkeit eher größer sind. Analoge Schaltungen sind da toleranter, digitale fangen sich einen extra Clocksignal ein und µCs spielen verrückt oder gehen über Los.

    Leider ist das "Konzept Servo" von Beginn an vermurkst. Sowohl die Leistung, der Motor, als auch die Elektronik werden aus der selben Quelle versorgt. Als dieses Konzept entstand, war das aber verständlich. Die Servos haben ein paar Ruder und das Gas vom Verbrenner gedreht, und das war zusammen mit dem Empfänger die ganze Elektronik in einem Modell. Die gemeinsame Versorgung hat sich aber bis heute erhalten, obwohl die Servos nicht mehr ein Seitenruder drehen sondern das Modell bewegen. Man muß also damit leben, oder wie bei Dynamixel die Versorgung des Motors von der Ansteuerung trennen (was einen nur noch begrenzt kompatibel zu bestehenden Systemen macht).

    Kurz und gut, am Servoanschlußstecker muß die Spannung immer im für die Servos angegebenen Bereich sein. Und damit die Steuersignale ein definiertes Potential haben, muß insbesondere GND stabil sein. Vom Controller bis zum Servo sollten da nicht mehr als wenige zehntel Volt zu messen sein (dynamisch mit dem Scope).

    Und etwas zu den Steuersignalen. Wenn diese gestört sind, helfen Ferrite genausogut wie Handauflegen. Sie verhindern das Aussenden von HF (zweistellige MHz) und haben auf Servosignale (zweistellige Hz) keinen Einfluß. Wenn also Funk oder Radio gestört wird, können sie helfen.

    Längswiderstände sind ebenso kontraproduktiv. Sie verkleinern das Signal und vermindern daher den Störabstand. Wenn das Servo Signale mit TTL Pegeln akzeptiert (und so haben die Servos angefangen), ist der Störabstand bei Low besonders kritisch. Ein gültiges Low am Eingang ist da kleiner als 0,8V. Verliere ich da am Längswiderstand einige Zehntel Volt, habe ich meinen Störabstand schon fast verbraucht.

    Übersprechen zwischen Servoversorgung und Steuerleitung ist ein anderes Ding. Da der Hersteller seine Teile getestet hat, sollte das funktionieren. Verlängere ich das Kabel, könnte es zum Problem werden. Es lässt sich aber leicht Messen und durch Austausch des Kabels ebenso leicht vermeiden.

    Die 20ms des Servosignals sind gar kein Problem. Interessant ist nur die Pulslänge. Der Unterschied zwischen Analog und Digitalservo lieg darin, daß das analoge Servo den Motor nur ansteuert, wenn ein Puls kommt. Kommt er zu selten verliert es die Position, kommt er zu häufig, können sich die eingesetzten Monoflops nicht richtig entladen. Viele Fernsteuerungen liefern keine konstanten 20ms, sondern, wenn alle Kanäle auf Vollausschlag sind, ein längeres, sonst ein kürzeres Signal. Für ein analoges Servo beginnt bei jedem Puls ein neuer Zyklus, von 20ms weiß das nichts.

    Ein Digitalservo misst nur die Pulslänge. Die Steuerung des Motors ist davon unabhängig. Und was es tut, wenn das Signal mal (viel) später kommt, hängt vom Modell ab. Bessere Modelle haben an der Stelle eine Fail Safe Automatik. Sie können auch den Einstellwert statt als Pulsbreite, via UART, RS485 oder I²C bekommen (Dynamixel).

    Das wichtigste ist, Messen! Und zwar dynamisch, mit einem Scope. Da die Servosignale langsam sind, so 50Hz, und sich ständig wiederholen, kann man auch ohne Tricks selbst mit einem einfachen, analogen Scope etwas erreichen.

    Unabhängig davon, die Stromsersorgung ist das A und O. Von der Versorgung bis zu Servoverteiler fließen kräftige Ströme (z.B.): 18 Servos a' 2A ==> 36 A, 0,1 Ohm Kabel und Übergangswiderstand ==> 3,6V. Soetwas kann man auch nicht mit µF kitten, nur mit massivem Kupfer. Da helfen die Car HiFi Leute, überall gibts 2,5² oder 4² Kabel für kleines Geld.

    Viel Erfolg

    Klebwax
    Strom fließt auch durch krumme Drähte !

  2. #2
    Moderator Robotik Einstein Avatar von HannoHupmann
    Registriert seit
    19.11.2005
    Ort
    München
    Alter
    42
    Beiträge
    4.534
    Blog-Einträge
    1
    Zitat Zitat von Klebwax Beitrag anzeigen
    ...
    Unabhängig davon, die Stromsersorgung ist das A und O. Von der Versorgung bis zu Servoverteiler fließen kräftige Ströme (z.B.): 18 Servos a' 2A ==> 36 A, 0,1 Ohm Kabel und Übergangswiderstand ==> 3,6V. Soetwas kann man auch nicht mit µF kitten, nur mit massivem Kupfer. Da helfen die Car HiFi Leute, überall gibts 2,5² oder 4² Kabel für kleines Geld.
    Genau das war bei meinem Vinculum das Problem, denn 18 Servos ziehen hier zwar keine 36A, aber zumindest gut und gerne 7,5A... 12A, da war a) mein Labornetzteil zu schwach auf der Brust und b) zu träge, da es sich um Stromimpulse handelt. Auch der Akku in Kombination mit SBEC konnte diese Spitzen nicht abdecken, die bei der Initialisierung entstehen. Abhilfe war dann eben eine wirklich dicke Kondensator-Bank die auch genug Leistung liefert. Zudem dicke Kabel die den Strom an die Beine verteilen, erst dort geht es dann mit den dünneren Servoleitungen weiter.

    Ob sich nun die Ferritkerne und die 100Ohm Widerstände positiv auswirken oder nicht, möchte ich gar nicht groß diskutieren, ich habe sie einfach eingebaut. Zumal mein µC im 80Mhz bereich arbeitet und ich da keine Störsignale haben will.

    Hinzu kommt die Versorgung von Servos und Logik aus zwei unterschiedlichen Quellen. Einmal ein 7,2V LiPo und ein 9V Block Akku, letzterer ist nur für Logik, Sensoren und Co gedacht, keine Leistungselektronik. Gerade letzteres hilft enorm, das zeigt die Erfahrung.

    Das die Hersteller ihren billigen No-Name Servos testen, wage ich allerdings zu bezweifeln. Bei den Markenservos für viel Geld wird es sicher so sein, aber bei 10€ China-Zeugs ist kein Geld für Tests vorhanden!

  3. #3
    Erfahrener Benutzer Roboter Genie Avatar von HeXPloreR
    Registriert seit
    08.07.2008
    Ort
    Soltau - Niedersachsen
    Alter
    46
    Beiträge
    1.369
    Hallo alle zusammen,

    so nun ist die Maker Faire Hannover geschafft. Es war wirklich sehr warm dort, aber es hat unglaublich viel Spaß gemacht die interessierten Leute dort zu sehen. Und mal von einem kleinen Jungen abgesehen, der an einem Roboter "mal eben so" die verschiedenen On/Off Schalter bedienen wollte, hatten, denke ich, alle Respekt vor unseren Projekten.

    Die IKU hat sich gut geschlagen. Ich hatte ja bedenken ob das alles gut geht da ... es war aber sogar sehr gut - dafür hat sie sich einen extra Akku verdient.

    Der Hexapod hat doch für die eine oder andere Schockreaktion am Stand gesorgt. Ganz besonders wenn die Besucher nicht mit einer Reaktion des Roboters gerechnet haben. Auch wenn die (Körper-) Bewegungen noch nicht ganz sauber aussehen, freue ich mich das ich keine Ausfälle oder ähnliches zu beklagen hatte.
    Ich hatte 3 LiPo Akku's (3600/3700/5000mAh) mit wobei ich den zweiten bis zuletzt drin gelassen hatte - der hätte auch noch ca. ne Stunde drinbleiben können. Den Dritten hatte ich überhaupt nicht gebraucht.
    Ab und zu hatte ich nur die Servos von der Spannung getrennt, damit sie etwas abkühlen konnten. Wobei der Sensorkopf trotzdem immer noch seine Runden gedreht hat.

    Da ich ja immer die Leute die mit IKU "gespielt" haben beobachtet hatte, fiel mir auf das die Sensoranordnung doch etwas ungünstig gewählt ist. Das ändere ich also gleich schon mal ab.

    Einige Leute fragten wie man dem Roboter das laufen auf unebenen Gelände beibringen könnte.
    Nun, ich habe dazu die beiden Ansätze per Drucksensoren oder per einfachen Taster. Ich tendiere noch zu der einfachen Lösung mit den Tastern.

    In dem Zusammenhang habe ich auch mit malty unterhalten...und da ich von Samstag auf Sonntag(heute) so schlecht schlafen konnte...da ist es mir auf gefallen warum malty meinen Standpunkt nicht verstanden hat bzw auch nicht konnte: malty ist nämlich schon mindestens einen Schritt weiter als ich - im wahrsten Sinne. Und er hat natürlich recht mit seinen Argument das die inverse Kinematik nicht den puren Endpunkt anfährt - ganz besonder natürlich nicht wenn ein Schritt getan wird.
    Sorry malty, da haben wir aneinander vorbeigeredet, denn ich war noch im Gedanken bei meinen einfachen verschiebe Spielchen mit den Beinen. Ohne das mir "die Schrittkurve" eingefallen ist - die ja selbsverständlich auch durch die inverse Kinematik geschickt, und daher auch per Taster oder sonstige geeignete Sensoren an einer definierten Stelle angehalten werden kann - welche dann die neue Höhe ergeben würde
    Allerdings habe ich mit meiner IKU noch keinen einzigen Schritt getan, von Gelände garnicht zu reden...also da muss mein Weg noch hingehen
    Sicher haben einige Menschen, denen ich versucht habe zu erklären wie die Beine momentan bewegt werden, bemerkt das ich mir das Ganze noch ziemlich einfach halte.

    @ malty, Du siehst hoffentlich auch wenn ich im Gespräch nicht gleich drauf gekommen bin, irgendwann machts auch bei mir klick.... nur wann
    Wir haben uns (Sabas und ich) Deinen Humanoiden kurz angesehen, schade das Du da grade nicht an Deinem Stand warst.

    Von Strommessung direkt am Servo rate ich allerdings immer noch ab. Das hatte ich bei meinem Bioloid mal versucht, es hat bei mir damals nur mit Einschränkungen funktioniert, und war im Endeffekt dann nicht zufriedenstellend.


    Jemand anderes fragte ob man für die Fußsensoren auch einen Sharp Infrarot Sensor nutzen könnte. Hierzu ist mir noch was wichtiges eingefallen - vielleicht liesst er das ja mit: Wenn man einen Sharpsensor benutzt kann es gut sein das man einen "boden" detektiert der nicht tragfähig genug für den Roboter ist. Daher empfehle ich keinen optischen Sensor an dieser Stelle, sondern einen taktielen - der also wirklich körperlichen Kontakt mit dem Boden bemerken kann. Ein Taster, wahrscheinlich mit einer auf Robotergewicht einstellbaren Feder davor könnte ich mir vorstellen. Oder auch ein Poti mit Federeinstellung über ADC's- was allerding etwas aufwendiger erscheint als die Tasterversion über Interrupt. Wenn man jedes Bein einzeln setzt, benötigt man auch keinen Spannungsteiler - da man ja programmseitig das Bein kennt welches sich gerade senkt.
    Nur wenn man zwei/drei Beine im gleichen Moment absenkt, würde man um die Höhen zuordnen zu können einen Spannungsteiler auf einem ADC benötigen.

    Ich denke mit diesen Ansätzen kann man etwas anfangen.

    So und nach diesem riesen Artikel, möchten "wir beide" uns ganz herzlich für das rege Interesse bedanken - sie hat sich auch sehr gefreut euch alle kennen zu lernen.

    Ich bereite demnächst auch einige "Flugblätter" vor ... vielleicht auch in Englisch...ich hörte davon, es ist wohl eine Weltsprache

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

Name:	S7300670.jpg
Hits:	61
Größe:	58,9 KB
ID:	26154Klicke auf die Grafik für eine größere Ansicht

Name:	S7300676.jpg
Hits:	46
Größe:	32,7 KB
ID:	26155Klicke auf die Grafik für eine größere Ansicht

Name:	S7300671.jpg
Hits:	48
Größe:	61,5 KB
ID:	26156Klicke auf die Grafik für eine größere Ansicht

Name:	S7300672.jpg
Hits:	40
Größe:	39,3 KB
ID:	26157Klicke auf die Grafik für eine größere Ansicht

Name:	S7300675.jpg
Hits:	48
Größe:	53,7 KB
ID:	26158Klicke auf die Grafik für eine größere Ansicht

Name:	S7300673.jpg
Hits:	54
Größe:	74,4 KB
ID:	26159Klicke auf die Grafik für eine größere Ansicht

Name:	S7300674.jpg
Hits:	48
Größe:	73,3 KB
ID:	26160
    Geändert von HeXPloreR (05.08.2013 um 07:04 Uhr)

  4. #4
    Moderator Robotik Visionär Avatar von radbruch
    Registriert seit
    27.12.2006
    Ort
    Stuttgart
    Alter
    62
    Beiträge
    5.799
    Blog-Einträge
    8
    Hallo

    Nun, ich habe dazu die beiden Ansätze per Drucksensoren oder per einfachen Taster. Ich tendiere noch zu der einfachen Lösung mit den Tastern.

    Von Strommessung direkt am Servo rate ich allerdings immer noch ab.
    Kennst du meinen Servo-Sensor-Thread? Über einen nicht dokumentierten Effekt an der Signalleitung wird die Belastung des Servos beurteilt. Allerdings wurde das nicht gründlich erforscht, keine Ahnung, ob es auch bei hochwertigen Servos funktioniert:
    https://www.roboternetz.de/community...g-Servo-Sensor



    Gruß

    mic
    Bild hier  
    Atmel’s products are not intended, authorized, or warranted for use
    as components in applications intended to support or sustain life!

  5. #5
    Erfahrener Benutzer Roboter Genie Avatar von HeXPloreR
    Registriert seit
    08.07.2008
    Ort
    Soltau - Niedersachsen
    Alter
    46
    Beiträge
    1.369
    Hallo mic,

    danke dafür, nein kannte ich tatsächlich noch nicht wirklich. Aber es sieht vielversprechend aus.

    Bei Gelegenheit lese ich mir den Thread durch.

    EDIT: Okay, das scheint ja recht gut zu klappen. Wenn man jetzt nur noch verlässliche Daten hätte.

    Mein problem ist natürlich das ich vermutlich noch nicht so tief ins programmieren eingearbeitet bin um das umzusetzen und das meine Hardware (SD-21) irgendwie mit dem Messzeitpunkt syncronisiert werden müsste, wenn es damit überhaupt funktioniert - wegen der Umschaltung auf Eingang - da könnte ich mir vorstellen das es die SD-21 stört / sie komplett raus muss.
    Geändert von HeXPloreR (04.08.2013 um 19:22 Uhr)

  6. #6
    Erfahrener Benutzer Roboter Genie Avatar von malthy
    Registriert seit
    19.04.2004
    Ort
    Oldenburg
    Beiträge
    1.379
    Hallo HeXPloreR!

    Es war schön dich und deinen Roboter mal persönlich zu treffen! Sorry dass ich zwischdurch nicht an meinem Stand war. Habe den Vormittag über wirklich pausenlos geredet und das bei dieser extremem Hitze in der Halle. Das hat mich echt etwas mitgenommen. Im Verlauf des späteren Nachmittags habe ich mir dann hin und wieder mal ein Pause gegönnt, um ein bißchen Ruhe und Erfrischung zu haben - vor allem auch um mir mal Projekte anderer Leute anzugucken ...

    Kann gut sein dass wir unterschiedliche Sachen im Kopf hatten als wir uns unterhalten haben . Du schreibst "Und er hat natürlich recht mit seinen Argument das die inverse Kinematik nicht den puren Endpunkt anfährt". Das ist natürlich etwas mißverständlich, bin mir nicht mehr ganz sicher was genau der Zusammenhang ist den du meinst. Die IK sagt ja einfach nur die Gelenkstellungen, die man braucht, damit der Fuß einen bestimmten Punkt einnimmt. Alles andere wäre falsch und wollte ich nicht zum Ausdruck bringen. Was ich da gestern auf der Faire nur meinte ist: weil der Servo ein geregeltes System ist, kann man sich (unter einigen Randbedingungen natürlich) "sicher" sein, dass, wenn man dem Servo über das PWM Signal sagt "nehme Winkel w" ein, er diesen Winkel auch tatsächlich einnimmt und hält. Man braucht deswegen i. d. R. selber kein Positionssignal, man geht einfach davon aus, dass der Servo da ist, wo man ihm befohlen hat zu sein. Das war eigentlich schon alles was ich in dem Moment sagen wollte .

    Viele Grüße
    Malte

  7. #7
    Erfahrener Benutzer Roboter Genie Avatar von HeXPloreR
    Registriert seit
    08.07.2008
    Ort
    Soltau - Niedersachsen
    Alter
    46
    Beiträge
    1.369
    Hallo Malte,

    es hat mich auch gefreut "euch" mal in Real-3D und in Farbe zu treffen.

    Na das mit dem Endpunkt hatte ich ja die ganze Zeit so gesagt, aber die Berechnungen für die "jederzeit aktuellen" Winkel dazwischen - ist mir irgendwie entgangen in dem Gespräch - das man sie ja zu dem Zeitpunkt der Bodenkontaktes kennt, man müsste sie dementsprechen also nur noch selektieren und als neuen Höhenwert fixieren, damit dann der Schritt beendet ist.

    Ich denke in etwa so hattest Du Dir das gedacht - nur mein aktives Vacuum hat das nicht gerafft in dem Moment.
    Well, das wollte ich nur nicht so zwischen uns stehen lassen...sonst schlafe ich immer so schlecht

    Der Tag war wirklich anstrengend, ich merk das heute auch. Für mich sind so viele Leute eher streßig, dabei ist es nicht mal die Menge sondern die Nebengeräusche die dann so ein Raum entwickelt, da komm ich mit meiner Kratzstimme nicht gegen an - aber dennoch hat es riesen Spaß gemacht irgendwie
    Geändert von HeXPloreR (05.08.2013 um 06:47 Uhr)

Ähnliche Themen

  1. Antworten: 10
    Letzter Beitrag: 01.11.2017, 12:53
  2. "EVa" - Bioloid Hexapod
    Von HeXPloreR im Forum Vorstellung+Bilder+Ideen zu geplanten eigenen Projekten/Bots
    Antworten: 56
    Letzter Beitrag: 11.11.2011, 08:43
  3. Antworten: 2
    Letzter Beitrag: 15.06.2011, 21:18
  4. "Soft-Reset?" und "Finger-Interrupt?"
    Von trapperjohn im Forum Asuro
    Antworten: 8
    Letzter Beitrag: 10.06.2008, 23:02
  5. ASM: was machen "swap" und "cbr" genau?
    Von RHS im Forum AVR Hardwarethemen
    Antworten: 3
    Letzter Beitrag: 18.08.2004, 17:16

Berechtigungen

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

fchao-Sinus-Wechselrichter AliExpress