"Evolution" eines Humanoiden / Biped / Laufroboter

Fussballroboter, Autofabrik...
Modellideas &- presentation - Soccerrobot, Carfactory...
Forumsregeln
Bitte beachte die Forumsregeln!
NBGer
Beiträge: 111
Registriert: 02 Aug 2013, 18:26

"Evolution" eines Humanoiden / Biped / Laufroboter

Beitrag von NBGer » 31 Aug 2018, 19:33

Hallo, ich trage mich ja schon lange mit der Idee, ob es mit Fischertechnik möglich ist, einen humanoiden Laufroboter zu bauen, der einigermaßen wie ein Kaufroboter laufen kann.

Meiner Meinung nach mit 100% Fischertechnik sicherlich nicht, aber vielleicht mit 80%.

Inzwischen sind mir ein paar ganz gute Ideen gekommen, so dass ich dieses Projekt letztes WE gestartet habe. Ich veröffentliche den Fortschritt (und auch Rückschritte ;) ) von Anfang an. Deswegen "Evolution" im Titel!
Vielleicht wird der Roboter ja nie fertig und verstaubt wie ein paar andere angefangene Ideen im Schrank.

Zuallererst geht es um die reine Technik, hübsch muß er nicht werden.

Parallel zu diesem Thread veröffentliche ich Photos hier: https://www.ftcommunity.de/categories.php?cat_id=3529
Der Anfang ist ja bereits zu sehen. Ein Prototyp des ersten Beines steht.

Das grobe Konzept:

Sprunggelenk, Knie und Hüfte (eine Richtung) werden angetrieben mit einem Schneckenantrieb.
Vorteil: selbsthemmend; kein Energiebedarf, wenn keine Bewegung
Detail: Die Antriebe werden unterstützt durch Federn, die die potentielle Energie aufnehmen.
Dadurch ist es für die Motoren zwar etwas schwerer, den Roboter abzusenken, aber viel leichter, ihn anzuheben. Im Idealfall sollten die Federn alleine den Roboter halten können, dazu fehlt mir aber eine ausreichende Auswahl an Zug- und Druckfedern.

Ein Bein wiegt im Moment 800g.
Pro Bein habe ich nur 3 Motoren (Freiheitsgrade) vorgesehen. Damit ist die Funktion natürlich beschränkt! Erstens, er wird nicht um die Kurve laufen können. Zweitens, um auf einem Bein zu stehen, muß er den Oberkörper als Gegengewicht seitlich verschieben; dazu muß ich am Ende noch Gewicht drauf packen. Eventuell komme ich mit diesem Konzept nur mit einem weiteren Motor in der Hüfte aus.

Eigentlich braucht man noch ein paar Freiheitsgrade mehr. Zusätzlich einmal in der Ferse und 2 x in der Hüfte (je Seite). Das bringt aber noch mehr Gewicht und Komplexität. Ich versuche es erstmal so, ob ich ihn überhaupt zum Laufen bringe. Vielleicht kann man ja später noch die Funktionen verbessern

Die ersten Versuche, die Motoren zu drehen, sind vielversprechend. Das Bein ist relativ stabil und die Motoren schaffen es locker, hoch- und runter zu fahren.

Im Moment mache ich Versuche mit einem Arduino, die Motoren anzusteuern. Erstes Ergebnis: Beschleunigen und Bremsen der Motoren mit Rampenfunktion bringt Vorteile.
Abruptes Anfahren/Anhalten der Motoren von 0V auf 9V und umgekehrt bringt das Bein ins Nachschwingen und macht es instabil.

Aktuell arbeite ich daran, alle Motoren eines Beines per Arduino Shield anzusteuern und die Motoren zu koordinieren.

Weiterhin benötige ich Absolutwertgeber für die Stellung aller Gelenke. Dazu habe ich eine ganz gute Idee, welche ich in Kürze beschreibe.

Für das 2. Bein habe ich Material bestellt; außerdem ein paar Alus, um das Ganze noch etwas stabiler zu machen.

Vielleicht habt Ihr ja ein paar Tipps, wie man Manches gut lösen kann.

Von der Software-Seite will ich mich erst mal mit einer Positionsregelung beschäftigen. Geschwindigkeitsregelung per PID und PWM habe ich schon mal gemacht, aber auf Position (sprich in diesem Fall Winkel) habe ich noch nicht geregelt.

Benutzeravatar
EstherM
Administrator
Beiträge: 308
Registriert: 11 Dez 2011, 21:24

Re: "Evolution" eines Humanoiden / Biped / Laufroboter

Beitrag von EstherM » 31 Aug 2018, 20:58

Bitte, bitte, stell das Ding auf de Convention in Dreieich vor!
Gruß
Esther
Beiträge als Admin sind als solche gekennzeichnet.

geometer
Beiträge: 204
Registriert: 28 Jan 2011, 12:24
Wohnort: Bochum
Kontaktdaten:

Re: "Evolution" eines Humanoiden / Biped / Laufroboter

Beitrag von geometer » 31 Aug 2018, 22:41

Hallo,

kennst Du Elektrolutz' Samurai?

http://ftcommunity.de/details.php?image_id=29291#col3

Wenn ich mich recht erinnere, lief der zwar nicht sehr schnell, aber sicher. Er war eine Fortentwicklung des fischertechnik-Samurai von 2003 mit Schnecken statt Hubgetrieben in den Beinen und einigen weiteren Verbesserungen. Ob er Sprunggelenke hatte, weiß ich nicht mehr. Hier ist ein Link auf den fischertechnik-Samurai:

http://ft-datenbank.de/details.php?Arti ... eacfb34839

Viele Grüße

Thomas

NBGer
Beiträge: 111
Registriert: 02 Aug 2013, 18:26

Re: "Evolution" eines Humanoiden / Biped / Laufroboter

Beitrag von NBGer » 01 Sep 2018, 13:19

geometer hat geschrieben:Hallo,

kennst Du Elektrolutz' Samurai?

http://ftcommunity.de/details.php?image_id=29291#col3
den kannte ich noch nicht! süß irgendwie! ;)
ich hab auch noch diesen "BigBoy" gefunden: http://ftcommunity.de/details.php?image_id=9793

NBGer
Beiträge: 111
Registriert: 02 Aug 2013, 18:26

Re: "Evolution" eines Humanoiden / Biped / Laufroboter

Beitrag von NBGer » 02 Sep 2018, 14:50

Winkelmesser / Absolutwertgeber für alle Gelenke:

https://www.ftcommunity.de/details.php? ... 47849#col3

kostet selbst bei conrad fast gar nix! ;)

ich habe aber noch nicht getestet; schaffe ich vielleicht heute (Sonntag) noch

NBGer
Beiträge: 111
Registriert: 02 Aug 2013, 18:26

Re: "Evolution" eines Humanoiden / Biped / Laufroboter

Beitrag von NBGer » 03 Sep 2018, 00:33

NBGer hat geschrieben: ich habe aber noch nicht getestet; schaffe ich vielleicht heute (Sonntag) noch
also, funktioniert ziemlich gut!!
die Analogeingänge des Arduino verarbeiten 0..5 Volt. Ich schliesse also die Arduino-5V Spannung an das Poti an anstatt 9V Power-Supply der Motoren.
Der Arduino hat einen Wertebereich 0..1023 für 0..5 Volt.

Am Sprunggelenk habe ich schon getestet. Der Winkel, den die Mechanik momentan hergibt, liegt zwischen 60 und ca. 110 Grad (womit ich noch nicht ganz zufrieden bin). Am Analog-Eingang lese ich 530 bei 60 Grad, 625 bei 90 Grad und 685 bei ca. 110 Grad.
Das macht dann je Integerschritt ca. 0,32 Grad, also pro Grad ungefähr 3 Schritte. Ich denke, die Auflösung ist völlig ausreichend!

Jetzt muß ich mir noch eine geschickte Zahlendarstellung und Berechnung überlegen, da der Arduino keine Floating-Point Unit hat und Berechnungen mit Gleitpunkt-Zahlen damit quälend langsam wären.

Benutzeravatar
MasterOfGizmo
Beiträge: 1744
Registriert: 30 Nov 2014, 07:44

Re: "Evolution" eines Humanoiden / Biped / Laufroboter

Beitrag von MasterOfGizmo » 03 Sep 2018, 10:10

Ohne es selbst ausprobiert zu haben klingt mir das Thema ja sehr nach einem perfekten Projekt für die Teile aus dem Elektro-Pneumatik.
ftDuino, der Arduino für fischertechnik: http://ftduino.de

NBGer
Beiträge: 111
Registriert: 02 Aug 2013, 18:26

Re: "Evolution" eines Humanoiden / Biped / Laufroboter

Beitrag von NBGer » 03 Sep 2018, 11:16

MasterOfGizmo hat geschrieben:Ohne es selbst ausprobiert zu haben klingt mir das Thema ja sehr nach einem perfekten Projekt für die Teile aus dem Elektro-Pneumatik.
Hi,
Pneumatik wäre ein interessanter Ansatz! Die Beine könnten kleiner und leichter sein.
Allerdings beim Thema Kraft und Präzision habe ich bei der Fischertechnik-Pneumatik erhebliche Bedenken! Mit einer guten Hydraulik könnte man das eventuell sehr schön lösen.
Anstatt den Motoren und Schneckenantrieben jeweils ein Hydraulik-Zylinder und gute Hydraulikventile, die sich elektronisch regulieren lassen. Das wäre sehr elegant!
Du bringst mich auf Ideen.... :D naja, vielleicht das nächste Projekt!?

Benutzeravatar
MasterOfGizmo
Beiträge: 1744
Registriert: 30 Nov 2014, 07:44

Re: "Evolution" eines Humanoiden / Biped / Laufroboter

Beitrag von MasterOfGizmo » 03 Sep 2018, 12:28

Was die Kraft angeht hätte ich keine Bedenken. Die Pneumatik hat m.E. im Vergleich mit anderen ft-basierten Lösung reichlich Kraft. Aber ohne Steuerung des Luftdrucks bzw. der Luftmenge rummst das schon ordentlich von Endanschlag zu Endanschlag.
ftDuino, der Arduino für fischertechnik: http://ftduino.de

NBGer
Beiträge: 111
Registriert: 02 Aug 2013, 18:26

Re: "Evolution" eines Humanoiden / Biped / Laufroboter

Beitrag von NBGer » 03 Sep 2018, 14:04

Kleiner Zwischenstand: Software

Ich hatte noch ein bisschen Zeit und hab an der Steuerung der Motoren weitergearbeitet:
Momentan habe ich mit einem Gelenk getestet:

Implementierte Funktionen:
- Ansteuerung des Motors mit PWM
- Einlesen der absoluten Winkelposition über Poti, Weiterverarbeitung als Rohdaten (0..1023) und Umrechnung in Winkel 1/10 Grad.
- interne Berechnung in Integer bzw. Long, um Rundungsfehler zu minimieren (keine Gleitpunkt-Arithmetik, da zu langsam)
- Berücksichtigung einer Mindest-PWM, unter der der Motor nicht dreht
- Parametrierung der mech. Grenzen Limit_Min und Limit_Max; weiter darf die Mechanik nicht fahren.
- Sicherheitsfunktion (in allen Modi): sofortiger Motor-Halt, falls Grenzen erreicht oder überschritten
Vorteil: da ich Absolutwerte vom Sensor bekomme, brauche ich keine Endschalter; und kann nach dem Einschalten (bei gespeicherten Parametern) sofort loslegen
- Rampenfunktion (in allen Modi) beim Fahren bis zum mechanischen Limit
- Mode_1: Geschwindigkeits-Steuerung: Soll-Vorgabe einer Geschwindigkeit, Hoch- bzw Runter-Rampen, bis neue Geschwindigkeit erreicht ist
- Mode_2: Zielposition: Anfahren einer absoluten Winkelposition mit Rampe beim Erreichen der Position (überlagert Geschwindigkeits-Steuerung)

Was noch fehlt: Geschwindigkeitsregelung
Vorgabe einer Winkelgeschwindigkeit, Regelung der Motor-PWM abhängig von Winkelgeschwindigkeit (PID-Regler)
Die Programmierung eines PID-Reglers ist nicht schwer, die Arbeit steckt dann in der Anpassung der Parameter; damit der Regler zum Beispiel nicht schwingt und nicht übersteuert.
Außerdem braucht man einen ziemlich präzisen Zeittakt für die Regelung, was mit der Arduiono-MainLoop schwer machbar ist.
Am Ende muß ich ja mindestens 7 Motoren gleichzeitig regeln.
Ich habe FreeRTOS für Arduino gefunden; vielleicht probiere ich das mal aus. Ein Echtzeit-Kernel würde die Sache sehr vereinfachen!
Das stelle ich aber erst mal zurück, für die ersten mechanischen Versuche müsste es auch ohne Regelung klappen.

Als nächstes würde ich beide Beine vollständig aufbauen und verkabeln. Aber jetzt habe ich erst mal keine Zeit mehr, da ich ab morgen beruflich unterwegs bin....

später geht es erst an die eigentlichen Lauffunktionen des Roboters: Kinematik, Trajectory...
dafür ist es wahrscheinlich hilfreich, einen Sensor (Schalter) in jede Ferse einzubauen. Bei jedem Aufsetzen des Fußes kann dann der Software-Ablauf synchronisiert werden

NBGer
Beiträge: 111
Registriert: 02 Aug 2013, 18:26

Re: "Evolution" eines Humanoiden / Biped / Laufroboter

Beitrag von NBGer » 03 Sep 2018, 16:23

hier noch ein Bild zum aktuellen Stand: https://www.ftcommunity.de/details.php?image_id=47853

NBGer
Beiträge: 111
Registriert: 02 Aug 2013, 18:26

Re: "Evolution" eines Humanoiden / Biped / Laufroboter

Beitrag von NBGer » 31 Aug 2019, 13:21

nach ca. einem Jahr Pause....

das Projekt lag jetzt solange auf Eis. Erstens hatte ich wenig Zeit und zweitens war der erste Entwurf eine Sackgasse.
Da ich keine Gelenke für die Bewegung nach rechts/links eingebaut habe, war es nicht möglich, ein Bein ohne Umfallen anzuheben.
Auch mit einem Zusatzgewicht im Oberkörper zum Hin- und Herpendeln hat es nicht funktioniert.

Da die ft-Bildergalerie nicht mehr funktioniert, hier mal ein Bild des letzten Standes:

Da die [img]ErsterEntwurf_Beine.jpg[/img]
Dateianhänge
ErsterEntwurf_Beine.jpg

NBGer
Beiträge: 111
Registriert: 02 Aug 2013, 18:26

Re: "Evolution" eines Humanoiden / Biped / Laufroboter

Beitrag von NBGer » 31 Aug 2019, 13:33

der Roboter muß sich also auch nach rechts und links bewegen lassen, um das Gewicht verlagern zu können. Für das Sprunggelenk ist mir folgende Idee eingefallen:
Biped_ft_Kardan_1.jpg
Biped_ft_Kardan_2.jpg
Die Gelenksteine habe ich allerdings ein klein wenig aufgebohrt, damit die Kugellager reinpassen.

Damit hab ich mal Fuß und Unterschenkel zusammengebaut, bin aber dann mit dem Antrieb der beiden Achsen nicht mehr weitergekommen.
Bild davon habe ich leider keins, der Versuch ist schon wieder zerlegt, aber es geht vorwärts.....

Benutzeravatar
steffalk
ft:pedia-Herausgeber
Beiträge: 1058
Registriert: 01 Nov 2010, 16:41
Wohnort: Karlsruhe
Kontaktdaten:

Re: "Evolution" eines Humanoiden / Biped / Laufroboter

Beitrag von steffalk » 01 Sep 2019, 10:34

Tach auch!

Ui, was ein supercooles Projekt! Für eine kardanische Aufhängung könnten bei hinreichend kleiner Last vielleicht auch die kompakten Kardanbausteine, aufgebaut aus einem Kardanwürfel https://ft-datenbank.de/ft-article/2352 und zwei Hubgelenkstein-Klauen https://ft-datenbank.de/ft-article/2121 funktionieren - das wäre nur 15x15x15 mm groß.

Gruß,
Stefan

NBGer
Beiträge: 111
Registriert: 02 Aug 2013, 18:26

Re: "Evolution" eines Humanoiden / Biped / Laufroboter

Beitrag von NBGer » 01 Sep 2019, 10:48

steffalk hat geschrieben: Für eine kardanische Aufhängung könnten bei hinreichend kleiner Last vielleicht auch die kompakten Kardanbausteine, aufgebaut aus einem Kardanwürfel https://ft-datenbank.de/ft-article/2352 und zwei Hubgelenkstein-Klauen https://ft-datenbank.de/ft-article/2121 funktionieren - das wäre nur 15x15x15 mm groß.
Stefan
Hi, ja die Teile habe ich und auch schon in anderen Modellen genau so verbaut.

Hier wird es aber kritisch. Ein Bein wiegt jetzt schon ca. 800 g. Wenn der Robo auf einem Bein stehen können soll, sind das schon 1,6 kg. Noch ohne Oberkörper, Akku usw.
Neben der Last ist auch das Spiel ein Problem. So ein Roboter wird unkalkulierbar bei zuviel Spiel. Besonders in den untersten Teilen. Wenn das Sprunggelenk wackelt, wirkt sich dies auf die ganze Höhe des Roboters dramatisch aus!
ich habe ja schon diverse Versuche gemacht. Besonders kritisch ist das Spiel beim Überschreiten des Totpunktes. Also, wenn man das Bein über die 90 Grad-Senkrechte bewegt. Dann drückt die ganze Masse erst mal auf die andere Seite und kann solange ungebremst beschleunigen, wie es eben das Spiel zulässt. Ich will nicht, dass er nach jedem Schritt seitlich umkippt ;)

ganz ehrlich....ich setze jetzt mehr auf 3D-Druck für kritische Teile, was das Modell allerdings immer weiter von fischertechnik entfernt!

NBGer
Beiträge: 111
Registriert: 02 Aug 2013, 18:26

Re: "Evolution" eines Humanoiden / Biped / Laufroboter

Beitrag von NBGer » 01 Sep 2019, 19:27

um zu zeigen, wie das Sprunggelenk funktionieren soll, habe ich es jetzt mit fischertechnik-Teilen nochmal aufgebaut:
biped_ft_ankle.jpg
über zwei Schnecken wird die x und z-Achse angetrieben. Das Ganze ist halt relativ wackelig

NBGer
Beiträge: 111
Registriert: 02 Aug 2013, 18:26

Re: "Evolution" eines Humanoiden / Biped / Laufroboter

Beitrag von NBGer » 01 Sep 2019, 19:34

...und hier gleich mal mein allererstes 3D-Teil.
Ich fand es schon immer als eine Herausforderung, die Powermotoren ohne allzuviel Aufwand in einem Modell zu befestigen.
Eine platzsparende, leichte und stabile Lösung für 2 Motoren habe ich mir jetzt selbst gemacht:
2fachMotorHalter90Grad.jpg
gedacht für 2 Motoren zum Anbau an eine Alustrebe, versetzt um 90 Grad:
2fachMotorHalter90GradMitMotoren.jpg
damit ist der Aufbau des doppelten Antriebes ein Kinderspiel:
Biped_ft_AntriebAnkle_.jpg
Hinweis: Die Maße des Motorhalters sind genau so gewählt, das der Achsabstand für eine Z15->Z10 Übersetzung genau passt, was mit Fischertechnik-Teilen alleine schwierig zu lösen ist (krummes Maß!)

Benutzeravatar
DirkW
Beiträge: 336
Registriert: 10 Nov 2014, 16:16
Wohnort: Bad Schwartau
Kontaktdaten:

Re: "Evolution" eines Humanoiden / Biped / Laufroboter

Beitrag von DirkW » 08 Sep 2019, 11:45

Hallo NBGer,

Dein erstes 3D-Druck Teil sieht sehr gelungen aus.
Ich bin schon auf deinen Humanoiden sehr gespannt.

Vor allem der Bewgungsaublauf ist ja sehr komplex.

Viele Grüße
Dirk

NBGer
Beiträge: 111
Registriert: 02 Aug 2013, 18:26

Re: "Evolution" eines Humanoiden / Biped / Laufroboter

Beitrag von NBGer » 09 Sep 2019, 16:44

kleiner Update....
ich bin mechanisch weitergekommen;
naja, vielleicht hab ich mit dem 3D-Druck etwas übertrieben; bleibt fast kein fischertechnik mehr übrig :D
aber ich nenne es mal "Fischertechnik-kompatibel"; alles mit Nut und Feder für die Verbindung mit ft-Teilen;
außerdem alles im Raster 5mm / 7.5mm / 15mm; Achsbohrungen 4 mm

Ankle_3D_Teile_I.jpg
in der hintersten Stellung sieht man, wie gut alles zussamenpasst:
Ankle_3D_Teile_II.jpg
durch die 3D-Teile habe ich keinerlei Schlupf mehr (auch bei höherer Belastung; ich meine damit, in den Nuten verschiebt sich nichts; alle Teile sind irgendwo abgestützt), außerdem kaum noch Spiel. Am meisten Spiel habe ich noch an den Schneckenmuttern; da muß ich wohl auch noch was eigenes machen.
Zuletzt geändert von NBGer am 09 Sep 2019, 16:56, insgesamt 2-mal geändert.

NBGer
Beiträge: 111
Registriert: 02 Aug 2013, 18:26

Re: "Evolution" eines Humanoiden / Biped / Laufroboter

Beitrag von NBGer » 09 Sep 2019, 16:51

besser sind die Teile im 3D zu erkennen:

Oberes Verbindungsteil:
Bild 4.png
Unteres Verbindungsteil:
Bild 7.png
die Teile sind jetzt zu 95% optimal; ein paar kleine Anpassungen habe ich noch vor;

da waren aber schon mehrere (Fehl-)Versuche dazwischen:
Historie_32-Teile.jpg

Antworten