"Evolution" eines Humanoiden / Biped / Laufroboter
Verfasst: 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.
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.