Archiv verlassen und diese Seite im Standarddesign anzeigen : Oktopod Projekt
LeeMajors
22.01.2014, 21:56
Hallo zusammen,
ich möchte euch mein Oktopod-Projekt vorstellen, welches momentan etwas stagniert, aber trotzdem bereits ziemlich weit gekommen ist.
Um zunächst eine Vorstellung zu geben, wo die Reise hingehen soll, ein Bildchen:
http://www.3dmax.de/neu/galerie/bilddatenbank/pics/15505.jpg
Es gibt ja schon einige "nPods", aber dieser sollte einige Fähigkeiten bekommen, die es momentan noch nicht gibt. Das soll anders sein:
- Der Bot soll auch über unebenes Gelände laufen können, bestenfalls Treppen steigen können.
- Er soll größtenteils autark arbeiten. D.h. nicht mit einer Fernsteuerung, o.ä. bedient werden sollen, sondern eher "Aufträge" bekommen, wie "erkunde die Umgebung".
- Er soll in gewissen Bereichen lernfähig sein, d.h. z.B. dass er selbständig ein "Laufprogramm" optimieren kann, in dem er Parametereinstellung bewertet.
- Er bekommt einen Haufen Sensoren, damit er seine Umgebung wahrnehmen kann.
Die Idee dahinter ist, mit möglichst wenig Informationen, möglichst viel zu leisten. Anfänglich habe ich eigentlich eher spaßeshalber die ganze Spinne einer Vogelspinne nachgebildet.
Nach und nach hat sich rausgestellt, dass man viele Eigenschaften der Spinne technisch gut umsetzen kann und diese dann auch sehr effektiv sind. Quasi der "bionische-Gedanke" an der Sache.
Ein gutes Beispiel sind hier die Augen. Eine Spinne hat (meist) 8 Augen. Die können nicht viel mehr als hell- und dunkel unterscheiden, sowie grob die Richtung, aus der das Licht kommt. Trotzdem reicht das, um z.B. Bewegungen in der Umwelt zu erfassen, sowie die ungefähre Richtung dieser Bewegungen. Diese Augen hab ich mit Sharp-Entfernungssensoren umgesetzt. 2 gucken jeweils um 5° nach rechts und links, einer gerade aus und einer um 5° nach oben. Das kann man hier ganz gut sehen:
http://www.3dmax.de/neu/galerie/bilddatenbank/pics/15506.jpg
Die 4 Sensoren liefern 4 Zahlen (Entfernungen) und so hat man auf einen Schlag die Info darüber, ob ein Hindernis da ist, wie weit es weg ist, und in welchem Winkel es sich befindet, wenn man erst mal von einem planen Hindernis (z.B. Wand) ausgeht.
Man kann also aus den wenigen Daten viel herausholen, ohne hohen Rechenaufwand. Im Gegensatz dazu wäre eine Kamera, oder gar 2 für 3D Overkill...
Zu Testzwecken hab ich die Sensor-Infos einmal auf einen Fühler übertragen. Der Fühler versucht die Entfernung und den Winkel der vermeintlichen Wand zu folgen:
http://youtu.be/jOZCP7mdT_M
...so, später folgen weitere Infos. :rolleyes:
Grüße, Marcus
- - - Aktualisiert - - -
Ein paar technische Daten:
Gesteuert wird der Bot mit einem Beaglebone Black - das ist einen Hieb schneller, als das oft benutzte Raspberry Pi. Auf dem Beaglebone programmiere ich den Code momentan in Python. Ich hoffe, die Performance reicht, ansonsten muss das ganze noch mal in C++ imgesetzt werden. (Was ich leider noch nicht kann.)
Das Beaglebone steuert 4 Maestroboards an. 2 mit 18 Kanälen (http://www.pololu.com/product/1354 ) und 2 mit 12 (http://www.pololu.com/product/1352 ). An den Kanälen können entweder Servos angesteuert werden, oder analoge Sensoren gelesen werden. (0-5V). Da Hochstrom-Servos benutzt werden, die direkt an einen 2S-Lipo angeschlossen werden können, nehmen 2 der Maestros für die Servos die Spannung direkt aus den Lipos, während an den anderen 2 Sensoren und normale Servos angeschlossen werden können. Um die analogen Sensoren vernünftig auslesen zu können, wird die Spannung der Lipos mit einem BEC auf eine stabile 5V Spannung gebracht.
Die Maestros können alle 4 in Reihe geschaltet werden und hängen über einen USB-Anschluss am Beaglebone. Schön ist, dass man denen Befehle geben kann: Fahre Servo Nr. x an die Position y mit Geschwindigkeit z und Beschleunigung b. Die Servos bewegen sich anschließend entsprechend und falls man nicht versucht, diese mit einer zu hohen Geschwindigkeit zu bewegen, kann man die aktuelle Position auch jederzeit auslesen. D.h. man muss im Script nicht x mal pro Sekunde die aktuelle Position an die Servos schicken.
Der Strom kommt aus 3 x 2S Lipos mit 5100mAh. Hier ein Bild von der Stromverteilung im hinteren Bereich.
http://www.3dmax.de/forum/funstuff/no9.jpg
Das sieht etwas wild aus, aber ich wollte möglichst hohe Querschnitte nehmen, damit nirgendwo etwas durchbrät, falls mal viel Strom gebraucht wird. Nach grober Rechnung siehts so aus:
29 Hochstromservos zwischen 0.2 und 1.2A = 5.8 - 34.8A = 43 - 258 Watt
6 kleine Servos zwischen 0.003 und 0.75A = 0.018 - 4.5A = 0.1 - 22.5 Watt
Beaglebone, Mastroboards & Sensor-Boards ca. 2A = 10 Watt
Also zusammen zwischen 53 und 290 Watt. Ich schätze, man wird später ca. bei 100 Watt durchschnittlich rauskommen und mit einer Akku-Ladung ca. eine Stunde durch die Gegend gurken könne.
Über einen Strom und einen Spannungssensor kann die Spinne selbständig überprüfen, ob irgendwelche gefährlichen Zustände bestehen und Maßnahmen ergreifen, wie z.B. die Servos abschalten und Alarm schlagen. Es ist geplant, dass über WLAN auf einen Webserver auf dem Beaglebone zugegriffen werden kann, so dass solche Meldungen z.B. auch über Tablett kontrollierbar sind.
- - - Aktualisiert - - -
3D Konstruktion
Da ich ursprünglich aus dem 3D-Bereich komme, kenne ich mich mit 3D-Studio Max aus. Das ist sicherlich nicht die geeignetste Wahl um einen Bot zu konstruieren, da ich aber kein AutoCad, o.ä. kann, ist das für mich die schnellste Alternative. Außerdem kann man relativ leicht damit dann auch fotorealistische Visualisierungen machen. ;)
Die 3-D Teile exportiere ich dann ins obj-Format und lass diese bei shapeways ausdrucken. ...was dann leider immer eine gefühle Ewigkeit dauert, bis es fertig ist.
Die Beine
Die Beine haben die üblichen 3 Gelenke, wie man sie auch von anderen Hexas und Oktos kennt. Wirklich schwierig war der Bau des Fußes. Hier sollte zum einen ein Drucksensor rein, zum anderen ein Federmechanismus, der die schlimmsten Stöße abfängt. Nach zig Versuchen ist auch etwas brauchbares herausgekommen.
http://www.3dmax.de/forum/funstuff/no10.jpg
Oben sind alle Teile eines Beines abgebildet. Das etwas gelbliche Teil ist quasi die "Hornhaut" und besteht aus einem Gummi-artigen Material. Darüber wird das Teil rechts daneben geklippst. Auf den Pin in der Mitte kommt noch ein kleines 2mm Gummi-Scheibchen. Das drückt dann später auf den Drucksensor. Im folgenden Bild sieht man, wo die 2 Teile reinkommen und in der Mitte den verbauten Drucksensor.
http://www.3dmax.de/forum/funstuff/no11.jpg
"Hornhaut" und Halter haben ganz leichten Druck, der direkt auf den Drucksensor wirkt und es gibt ca. 1mm Spiel, den sich das Gummi zusammendrücken könnte. Der leichte Druck am Anfang ist wichtig, damit der ganze Kram nicht klappert und nicht-lineare Ergebnisse am Drucksensor erzeugt werden. Mit der Konstruktion hier, kann der Druck in Gramm mit einem Fehler von ca. 5-10% berechnet werden. D.h. wenn die Spinne auf ihren 8 Beinen steht, kann man bereits durch die Drucksensoren auf die Lage der Spinne schließen - ob sie z.B. schräg steht.
Dieser untere Teil des Fußes wird an einer langen Achse geführt und wird mit 4 Kugelschreiberminen gefedert. Ja nachdem wie viel Federkraft und wie hart die Federung sein soll, kann man Federn weglassen, oder kürzen.
http://www.3dmax.de/forum/funstuff/no12.jpg
Ansonsten hab ich die Beine ursprünglich mit den hitec HSR-5498SG Servos geplant. Das sind Robot-Servos und die haben z.B. den Vorteil, dass das Kabel an der Seite rauskommt, dass auf der anderen Seite der Servoscheibe eine 2. Drehscheibe ist und dass man verschiedene Gehäuseteile anschrauben kann, die viel günstiger zu verbauen sind, als die 2 Standard-Laschen der normalen Servos.
Hier ist ein entsprechendes 3D-Bildchen:
http://www.3dmax.de/neu/galerie/bilddatenbank/pics/15508.jpg
Außerdem sieht man hier auch die bis zu 3 Gummis, die eine entsprechende Vorspannung bewirken und die Spinne zunächst einmal alleine tragen sollten. Das Servo sollte im Idealfall nur bei anderen, als dem Standardwinkel Kraft ausüben müssen. Übrigens rechne ich mit einem Gewicht von ca. 5.5kg.
...so später geht's weiter. Über Kommentare würde ich mich freuen!
:rolleyes:
Geistesblitz
23.01.2014, 01:31
Respekt, das sieht bisher schon ziemlich beeindruckend aus :)
Scheint ja auch schon einiges an Geld und Mühe reingeflossen zu sein.
Zu den Gummis hab ich nochmal eine Frage: bringen die wirklich so viel? Eigentlich dürften die sich mehr spannen, wenn sich das Bein anhebt, allerdings ist das auch die Situation, wo das Bein nicht mehr vom Eigengewicht des Roboters belastet wird. Das heißt, der Servo müsste dann voll gegen die Kraft der Gummibänder arbeiten. Wenn die sich sowieso nciht so oft anheben, mag es gehen, aber wenn mal ein Bein in der Luft hängen bleiben sollte, wäre das sicherlich ungünstig.
Andree-HB
23.01.2014, 07:14
...seeeehr cooles Projekt - alle meine Daumen steil nach oben !!! :-)
LeeMajors
23.01.2014, 08:24
Mit den Gummis kann man sich das so vorstellen: Wenn man die Spinne mit "entspannten Servos" hinstellt, sinkt die bis zu einem bestimmten Punkt runter, bis die Spannung auf den Gummis so hoch ist, dass sie halten. Das ist quasi die 0-Position, die man mit mehr oder weniger Gummis erreichen kann. Die Servos müssen in dieser Position keine Kraft ausüben. In jeder anderen Position schon - wenn sich das Bein hebt, müssen sie gegen die Gummis arbeiten. Wenn sie sich senken, müssen sie sukzessiuve immer mehr Gewicht der Spinne tragen.
Wie die genaue Energiebilanz aussieht kann man natürlich erst sehen, wenn die Spinne läuft und ihren Strom misst. Vielleicht arbeitet man dann auch nur mit 2 Gummis, o.ä. Oder aber, die Spinne läuft auf einem höheren Niveau, als in der oben beschriebenen 0-Stellung.
Bis jetzt hab ich nur ein Bein, da kann ich daher noch nicht so viel zu sagen.
http://www.3dmax.de/forum/funstuff/no7.jpg
HannoHupmann
23.01.2014, 09:08
Was haben die ganzen Teile bisher bei shapeways gekostet? Bin am überlegen ob ich nicht für meinen Wall-E auf drucken umsteige statt auf Fräsen und Feilen.
LeeMajors
23.01.2014, 09:16
Der Kram ist natürlich nicht ganz billig...
8
Leg
174,53 €
1.396,24 €
1
Abdomen Part I, II, III, IV, V
258,05 €
258,05 €
1
Base Skeleton
235,36 €
235,36 €
1
Feeler
48,92 €
48,92 €
1
Accessory Legs
12,04 €
12,04 €
1
Leg Tester
15,55 €
15,55 €
1
Mounts
38,38 €
38,38 €
1
Camera Mount
6,73 €
6,73 €
1
Battery Tank
37,67 €
37,67 €
1
Prosoma
107,26 €
107,26 €
1
Slide & Slide Mount
88,08 €
88,08 €
1
Jaw
120,00 €
120,00 €
2.244,28 €
Wobei die Beine, wie man sieht, am teuersten sind und daher vorher gründlich getestet werden müssen.
Die Kosten der kompletten Spinne liegen übrigens bei EUR 5.000,- - Hauptkosten sind die 3D-Teile & die Servos.
Da man bei den 3D-Teilen aber immer mal wieder korrigieren muss, muss man auch da entsprechend mehr investieren...
Es gibt 2 Vorteile beim 3D-Drucken: Es ist vermutlich stressfreier auch komplexeste Formen hinzubekommen, aber vor allem ist alles reproduzierbar.
Wenn die Spinne irgendwann mal fertig ist, sollte das komplette Teil in einer Woche Arbeitsaufwand reproduzierbar sein.
HannoHupmann
23.01.2014, 10:51
Danke für die detaillierte Aufschlüsselung, das zeigt mal wieder, dass ein Hexa-Bot kein günstiger Roboter ist. Natürlich muss man nicht so komplex bauen wie bei dir, aber bei der größer wird man immer in den vierstelligen Bereich kommen.
Andree-HB
23.01.2014, 12:15
...jetzt kann man auch erstmal erahnen, was für eine Größe das Teil haben wird - da bekommt man ja Angst ! :-)
Ich kann mir aber fast gar nicht vorstellen, dass man mit 5 Amperestunden und bei 5,5Kg Gewicht solange (wie errechnet) "arbeiten" kann. Ich lasse mich da aber sehr gerne überraschen.
LeeMajors
23.01.2014, 12:21
Eigentlich wollte ich ja auch nur ne Hardware mit genügend Sensoren haben, um die programmieren zu können. Die ersten Ideen sahen ziemlich lustig aus...
http://www.3dmax.de/forum/funstuff/no13.jpg
Die Beine mit normalen Servos auf diese Art anzusprechen war natürlich Kappes. Dann hab ich die hitec Robot-Servos gefunden. Eigentlich die einzigen brauchbaren Servos dieser Art. Das große Problem ist nun, das hitec seine komplette Robot-Servo-Reihe eingestellt hat und die Servos nur noch hier und da zufällig zu bekommen sind. Da der Robot aber auch reproduzierbar sein sollte, fiel hitec an dieser Stelle flach. Sämtliche 3D-Teile, die Servos berühren waren damit für die Tonne, also eigentlich 80% der Spinne...
Mein derzeitiger Plan ist, diese Servos von robbe einzusetzen: http://www.robbe.de/servo-s3071mg-hv-s-bus.html
10kg-Digital Servos, die mit vielen Parametern zu programmieren sind. Sehr schön ist z.B. das man ein geglättetes Laufverhalten einstellen kann.
Damit ich die Servos so verbauen kann, wie ursprünglich geplant, müssen die zu Robot-Servos umgebaut werden. D.h. Ober- und Unterteil des Servogehäuses werden durch neukonstruierte 3D-Teile ersetzt. Momentan warte ich noch auf eine Alu-Servoscheibe, damit ich alle Maße habe. Danach geht es weiter...
- - - Aktualisiert - - -
@Andree: Das sind ja auch 3 x 5 Amperestunden ;-)
HannoHupmann
23.01.2014, 13:17
Bei dem Preis hätte man sich fast überlegen können ob man nicht gleich einen eigenen 3D Drucker kauft und die Teile selber macht. :-D
EDIT:
Die Idee mit den Federn hatte ich auch mal (bzw. mit den Gummibändern) allerdings habe ich schnell gemerkt, dass gerade bei dynamischen Bewegungen die Feder (ohne Dämpfung) aufschwingt und damit die Steuerung verfälscht. Gerade am Anfang ist das eher hinderlich, daher werden die Federelemente bei mir erst später wieder eingebaut bis dahin wird es ohne Federn gehen müssen.
Was für Servos verwendest du? Bei der optischen Beinlänge (vermutlich mehr als 10cm) dürfte es spannend werden. Die klassische Rechnung wieder ausgegraben:
Roobe Servos S3071 = 100Ncm also: 10kg auf 1cm --> 10cm gerade mal 0,8kg Hubkraft (Sicherheit: 1,20, was sehr mau ist). Ergo darf der Roboter nicht mehr als 3,2kg (4x0,8kg) wiegen. Allerdings gibst du 5,5kg an! Sollte also ordentlich knirschen im Getriebe.
Gegenrechnung: 5,5kg / 0,8 = 6,8 also immer 7 Beine auf dem Boden dann geht es sich gerade so aus.
Gegenrechnung 2: 5,5kg / 4 Beine am Boden = 1,375; --> *1,30 = 1,7875kg; --> 10cm Hebelarm * 17,875N = 178,75Ncm
Bei meinem Vinculum komm ich auf ein Gewicht von 2,7kg (ich rechne mit 3kg). Hebelarm 16cm und 4 Beine am Boden macht: 120Ncm
Meine Servos können 142Ncm, damit komm ich auf 1,18 was auch nicht besonders viel ist. Test mit 6 Beinen auf dem Boden und zusätzlicher Belastung:
http://www.youtube.com/watch?v=bLdZ-2aH05w
Die Bücher stellen ein Zusatzgewicht von 2,4kg da, mehr wollte ich nicht riskieren (=144Ncm pro Schulterservo).
Je größer Krabbler werden, desto mehr Leistung in den Schultergelenken werden benötigt.
LeeMajors
23.01.2014, 15:36
zum 3D-Drucker:
Das wird mit dem Lasersinter-Verfahren hergestellt. Das ist um einiges genauer, als mit 3D-Drucker (und Spule).
Ein anderer Grund, das nicht mit einem eigenen Drucker zu machen ist, nicht noch eine Baustelle zu haben. Das Projekt ist ja schon recht komplex. ;-)
Falls ich die Spinne mal reproduziere, werde ich mich aber auf alle Fälle damit beschäftigen.
zu der Kraft-Geschichte:
Dass die Gummibänder bei mir aufschwingen, kann ich mir nicht vorstellen. Aber falls doch: Der Gang der Spinne wird nicht einem starren Ablauf folgen. Die Programmierung wird eher in der Art sein: Gehe zu Punkt x,y. Überprüfe in Intervallen, wo du wirklich bist (durch Beschleunigungssensoren, Kompass, Gyro, etc.) und berechne die Richtung. Ebenso kann es sein, dass der Boden uneben ist, dann muss die Geschwindigkeit gedrosselt werden, damit die Drucksensoren rechtzeitig den Kontakt zum Boden berechnen können, etc.
D.h., wenn du die Spinne hochhebst und woanders hinsetzt (würde sie erst mal Alarm schlagen, weil sie keinen Bodenkontakt mehr hat...) aber ansonsten wieder versuchen, das ursprüngliche Ziel anzusteuern.
Falls das Gummibandkonzept nicht aufgeht habe ich in der Tat ein großes Problem. Man könnte dann zwar 8 starke Servos einbauen (Es gibt von der gleichen Serie Servos bis 370Ncm), aber das wäre dann ein schlechtes Konzept, wenn bereits im einfachen Stand so viel Energie verballert würde. Meine bisherigen Tests mit einem Bein sehen zumindest gut aus...
HeXPloreR
23.01.2014, 17:14
Hallo Colt,
sehr cooles Design. Besonders diese Gitterstruktur gefällt mir. Sorry, aber die muss ich jett irgendwie abschauen ;)
Ich finde es nur viel zu teuer.
Diesen Belastungstest mit Zusatzgewichten bis kurz an die Belastungsgrenze kann ich nicht gutheißen - mach das nicht.
Viele Erfolg weiterhin und Gruß
Jörg
HannoHupmann
24.01.2014, 09:23
Zum Aufschwingen: Du gehst gerade einen Schritt zu weit, denn das Aufschwingen wird durch die kleinen Bewegungen der Servos ausgelöst, das hängt nicht mit den übergeordneten Schrittfolgen zu tun. Es reichen die kleinen auf und ab Bewegungen des Beins, was bei jedem Schritt minimal passiert, d.h. ich meine noch nicht mal die große "Fuss zurück in Ausgangslage" Bewegung. Mit Gummibändern allein ist es eben ein Federsystem und kein Feder-Dämpfer System. Vermutlich ist es das Beste, es einfach auszuprobieren und zu hoffen, dass es kein Problem gibt, denn sonst wird es schwierig eine Lösung zu implementieren.
Zum Gewicht: Die Programmierung hat leider gar nichts mit dem Gewicht zu tun. Gib uns doch einfach mal die Abmessung deiner Beine, dann können wir schnell ausrechnen, ob die Servos reichen oder nicht. Am wichtigsten ist der Abstand von Fussspitze zu Schulterservo (Hebelarm) in der maximalen Stellung (bei meinem Vinculum ist der Oberschenkel normal 45° zum Körper, d.h. bei 90° wäre der längste Hebelarm).
Zur Programmierung: Meine Programmierung und wird später ähnlich aussehen, aber erst mal braucht man die Inverse Kinematik für die Beine bzw. Fussspitze, inklusive der Lageregelung. D.h. die Spitze sollte nicht nur die definierte Bahn auf dem Boden abfahren sondern dabei auch noch die Lage des Hexas stabilisieren. Ich habe so ein bisschen das Gefühl, dass du den dritten Schritt vor den ersten Beiden machst.
Bei meinem Vinculum sieht das so aus:
Ebene 0: PWM, Signale für die Servos erzeugen, mit Geschwindigkeitsregelung
Ebene 1a: Inverse Kinemaktik, Berechnen der Servowinkel aus Fussposition x,y und Höhe h des Hexas
Ebene 1b: Vorgabe der Kippwinkel des Körpers (Längs- und Querachse), (hier wird später der Gyro seine Werte eingeben und damit die Lageregelung erfolgen)
Ebene 1c: Anfahren von Zielpositionen
Ebene 2: Bahnplanung Fuss, Berechnung der Bahnpunkte für die Fussposition dx, dy und Rückbewegung auf Anfangspos, dx, dy, ddh
Ebene 3a: Bahnplanung Körper, Berechnung der Körperbewegung von Start zu Zielpos im Raum, ddx, ddy (Translatorisch), h, Teta, (Rotatorisch)
Ebene 3b: Schrittfolge, Berechnung der Schrittsequenzen 3:3, 4:2, 5:1 (Beine Boden:Beine Luft) und Abfolge
Ebene 4: Bewegung im Raum: Berechnen von Schrittfolgen für die Bewegung von A nach B, unter Berücksichtigung der Abstandssensoren
Ebene 5: Wegfindung: Berechnung des Weges von A nach B mit Berücksichtigen von Umgebungskarten
Ebene 6: Übergeordnete Aufgaben
Gerade befinde ich mich bei Ebene 3b.
@HexPloreR Manchmal muss man testen wo die Grenzen sind, abgesehen davon wäre im Fehlerfall nicht viel passiert, denn der Hexa schwebte nur ein paar Millimeter in der Luft, wäre er eingeknickt, dann hätte er nur auf dem Unterbau aufgesetzt.
LeeMajors
24.01.2014, 10:27
Die Programmierung hat leider gar nichts mit dem Gewicht zu tun. -> Das ist schon klar. Damit wollte ich sagen, dass wenn die Gummis dazu führen sollten, dass das Bein Bewegungen macht, die es nicht sollte und daher an Positionen landet, die theoretisch nicht geplant waren, ist das nicht tragisch, da sich das System selber überprüft und korrigiert. Die robbe Servos kann man übrigens sehr gut programmieren, dass nicht diese ruckartigen Bewegungen entstehen, sondern weiche, so dass man evtl. auch dadurch weniger Probleme mit Schwingungen hat.
Ich sitze gerade nicht vor meinem Heimrechner, aber ich denke der Oberschenkel ist ca. 15cm, der Unterschenkel mit Fuß ca. 20cm. Es ist auch klar, dass sich die Spinne niemals aus dem Spagat heraus aufrichten kann. Mit einem Abstand von Fußspitze zu Schulterservo von 15cm sollte die Spinne vernünftig laufen können. Aber eben nicht aus Servokraft alleine, sondern mit Hilfe der Gummis.
Zu der Programmierung - ist ebenfalls klar, dass da ziemlich viele Ebenen existieren werden. Ich hab momentan sogar nur die Ebene 1a absolviert - und das nur mit einem Fühler. Der Kram wird objektorientiert in Python programmiert. Ich muss also nur die Klasse auf ein Bein übertragen und die neuen Parameter mitgeben.
Als nächstes werde ich die Spinne mal stampfen lassen - ein Bein mit den "veralteten" Servos existiert ja - und dann muss sie auch merken, wann Boden kommt. Das wird Aufschluss darüber geben, wie schnell überhaupt die Änderungen am Drucksensor umgesetzt werden können. Ebenso, wie feinfühlig man den Drucksensor reagieren lässt.
...ansonsten trägt die stetige Verunsicherung bzgl. zu schwacher Schulterservos langsam Früchte. Ich denke, für die 8 Schulterservos werde ich evtl. 20kg Servos aus der Serie nehmen, zumal das Tierchen ja auch in der Lage sein soll, mal ne Treppe zu steigen... das wäre dann auch nur ein Aufpreis von EUR 800,- :cry:
Geistesblitz
24.01.2014, 11:11
Zu den Gummis: ließe sich das vielleicht auch so bauen, dass beim Anheben des Beines sich der effektive Hebel, an dem die Gummis angreifen, verkleinert, sodass sie beim Anheben nicht so viel Kraft entfalten können, als wenn das Bein abgesetzt wird? Da müsste man dann gucken, wo dafür am besten die Aufhängungen der Gummibänder platziert werden müssten, müsste man aber wohl einiges herumprobieren. Wenn das Gummi nämlich genau durch die Gelenkachse läuft, kann es keine Kraft auf das Glied übertragen, das wird dann alles vom Gelenk selbst abgefangen. Erst, wenn man das Glied ein Stück bewegt, hat das Gummi wieder einen wirksamen Hebelarm und kann damit seine Kraft auf das Glied übertragen. Müsste dann also wirklich so sein, dass das Gummi beim Anheben näher zur Gelenkachse kommt und sich beim Absetzen wieder davon entfernt. Wenn das mal wieder zu wirr war, kann ich auch nochmal eine Skizze dazu machen.
Problem wäre dabei nur, dass man dann die Positionen, wo sich das Bein befinden kann, quasi vorgibt. Dann gibts eine abgesenkte Position, an der der Servo kein Moment ausüben muss und eine angehobene, für die das gilt, aber an allen Stellungen dazwischen muss der Servo arbeiten, um entweder gegen die Kraft der Gummis oder der Robotermasse zu wirken.
Da du ja die Möglichkeit hast, die Konstruktion ganz nach deinen Bedürfnissen anzupassen, würde ich das an deiner Stelle eher nutzen, alles auf die Standardbauform der Servos anzupassen, so dass man da auf keinen speziellen Typ angewiesen ist. Die Gegenlager kann man dann ja in die gedruckten Teile einplanen.
LeeMajors
24.01.2014, 12:11
...ne Skizze wäre toll, ich kann nicht folgen... :roll:
Ansonsten wird die Spinne ..so halb.. an die Standardbauform der Servos angepasst. Wenn man ein Standardservo komplett mit 3D-Teilen umbaut, um die Wirkung eines Robot-Servos zu bekommen, wird alles zu klobig. D.h. der Plan wäre, ein beliebiges Standard-Servo zu einem "normalisierten" Robot-Servo umzubauen.
Bei einem Servo-Wechsel müsste man dann "nur" die Gehäuseteile neu bauen.
HannoHupmann
24.01.2014, 13:27
Ich glaube ich bin im Forum schon als Spielverderber für Hexabots bekannt und bei deinem Oktobot ist es natürlich das gleiche in Grün :-D. Wäre halt schade, wenn dein ganzes Design umsonst ist, weil der Kerl nicht auf die Füße kommt. Zumindest in der "normalen" Stellung sollten die Servos mehr als genug Kraft entwickeln um den Roboter zu halten, wenn man hier schon an die Grenze kalkuliert, dann reicht meistens eine kleine Auslenkung und der Roboter macht die "Grätsche". In der Regel verabschieden sich dann auch ein zwei Servos und man bezahlt für diesen Fehler doppelt (diese Erfahrungen habe ich alle schon gemacht).
Kurz gerechnet: 5,5kg / 4 Beine * 20cm Hebelarm = 275Ncm wird auch mit 200Ncm noch kritisch :-(. Mit 6 Beinen auf dem Boden gehts wunderbar.
Leider wirkt sich der Skaleneffekt bei Krabbelrobotern enorm aus: je länger die Beine, desto mehr Kraft wird notwendig.
Es gibt also drei Möglichkeiten für dich:
1) Teurere Servos mit sagen wir mal 300Ncm (gibt es sowas?)
2) Kürzere Beine (14cm statt 20cm --> 192,5Ncm) gerade die Geometrie deiner Füße macht es nochmal schwieriger außerdem ist der "Knick" im Fuss eklig in der Berechnung. Einfacher ist es wenn die Fusspitze genau unter dem Gelenk ist.
3) Abspecken! 5,5kg ist schon sehr schwer! Mein Vinculum musste auch nochmal neue Beine bekommen die dann gesamt 360g leichter waren, gesamt 3kg.
LeeMajors
24.01.2014, 13:35
...du ignorierst aber auch hartnäckig die Gummis!
Die robbe-Servos Hochvolt mit S-Bus gibt es bis 370Ncm
100: http://www.robbe.de/servo-s3071mg-hv-s-bus.html
200: http://www.robbe.de/s-bus-servo-s9074sb.html
340: http://www.robbe.de/servo-bls172sv.html
HannoHupmann
24.01.2014, 13:57
Ja und mit voller Absicht, denn die Gummis werden vernachlässigbare Kräfte aufnehmen! Teste es doch einfach mal: Häng an die 3 Gummis ein Gewicht von 1,375kg (bei 4 Beinen am Boden) und sieh dir an um wie viel der Gummi sich verlängert. Wenn die Änderung 0mm ist, dann würde dein System funktionieren, denn deine Gummis sollen - so habe ich es verstanden - den Roboter vollständig in Ruhelage halten. Die Servos sollen dann nur noch die Auslenkung bewirken. Alternativ kann man sich auch nochmal die Berechnung für Zugfedern ansehen, aber das ist mir ehrlich gesagt zu lange her, dass ich das zuletzt gemacht habe. Ansonsten ist das immer so ein bisschen raten, was für eine Federkraft (Federkonstante) dafür jetzt benötigt wird.
EDIT: Noch mal nachgedacht, diesmal mit Logik. Soll der Roboter frei stehen in Nulllage nur durch die Kraft der Federn, dann müssten diese das Gewicht von 5,5kg halten aufgeteilt auf die Beine (sagen wir 4), sprich 1,375kg. Damit wäre der Servo in der Schulter Kraftfrei. Drückt er den Roboter weiter nach oben, unterstützt ihn die Feder und verringert das nötige Drehmoment. Für anheben des Fusses muss die Kraft der Feder komplett überwunden werden, sonst kommt das Bein nicht vom Boden. D.h. konsequenterweise muss die Federkraft von 13,75Ncm erzeugt werden, also genau das gleiche Drehmoment wie ohne Feder :-D. FAZIT: Mit dieser Überlegung steht der Roboter stabil auf Federn, aber bekommt die Füße nicht hoch. Es macht nur Sinn eine Feder einzubauen, wenn diese den Servo unterstützt aber nicht vollständig ersetzt.
Gut es gibt Servos die genug Drehmoment haben, aber 1.600€ nur für Servos???
LeeMajors
24.01.2014, 15:46
...nicht ganz.
1. Die Spinne soll in Nulllage frei stehen - auf 8 Beinen. D.h. an jedem Bein müssen die Gummis ca. 0,7kg halten. Wenn sie läuft sind i.d.R. 4 Beine in der Luft. D.h. wir haben genau den gewünschten Effekt. Die Beine in der Luft müssen mit 0,7kg die Gummikraft überwinden, die Beine am Boden müssen mit zusätzlichen 0,7kg heben.
...mit der Rechnung wird klar, dass bei 15cm -> 10kg Servos -> 0,66kg arg an der Grenze ist. 20kg Servos sollten es aber tun. (Ich erwarte bei einer Treppe ja auch nicht, dass sie da rauf hoppelt, man muss bei Steigungen und Gefällen sicherlich eine andere Gangart wählen.)
2. EUR 1.600 nur für Servos -> Das wird mehr. Aber: ja. Servos und 3D-Druck sind der Kostenfaktor, der Rest ist Pillepalle.
Zum Gewicht: Da sind Servos & Akkus der Faktor. Bei meiner Spinne ist außerdem ja noch der ausfahrbare Kiefer drin. Der fährt auf einem ganz kurzen Schubladenauszug hin- und her. Diese Schienen sind eigentlich zu schwer, ich hab da aber momentan auch keine leichtgewichtigere Alternative gefunden. Zumal der Kram ja auch schon fertig ist.
http://www.3dmax.de/forum/funstuff/no14.jpg
HannoHupmann
24.01.2014, 17:21
Bitte beachte, bei der Rechnung haben wir bisher nur die statischen Kräfte betrachtet. Streng genommen müsste man auch noch die dynamischen Kräfte ansehen :-D :-D. Gerade wenn es um "Treppe rauf hoppeln" geht, dann wird es notwendig. Man muss sich aber nicht mehr Aufwand als nötig machen, aber statisch, sollte die ganze Sache schon "stehen"!
Aus was für einem Material sind eigentlich die Fussspitzen?
Geistesblitz
24.01.2014, 17:24
Gut, ich hab dann nochmal eine Skizze gemacht:
27321
In grün hab ich noch zusätzlich die für das Gummi wirksame Hebellänge eingezeichnet. Würde sich das Bein nun anheben, würde der Hebel kürzer werden, während das Gummi sich leicht verlängert. Das Gummi lässt sich auch noch verschiedenartig ausführen, entweder man nimmt ein dickes Gummi, das nicht sehr stark vorgespannt (also gedehnt) wird oder ein dünneres Gummi, das stärker vorgespannt wird. Im ersteren Fall würde sich die Kraft sehr stark mit der Dehnung ändern, im zweiteren Fall nur wenig, während die Vorspannung dafür sorgt, dass die Kraft hoch genug ist. So müsste der Servo im angehobenen Zustand weniger gegen die Gummis arbeiten, als wenn das Bein unten ist. Die kritischste Stelle wäre dann, wenn das Bein gerade den Boden verlässt, weil dann die Federkraft, die eben noch das Gewicht des Roboters gehalten hat, auf die Servos fällt. Daher müsste die Federkraft auch im Idealfall so hoch sein, dass der Servo in beiden Fällen etwa gleich belastet wird, da so die Kraft gleichmäßiger verteilt wäre.
Achja, ich würde vielleicht eher auf Zugfedern umsteigen, hab bei meinem Roboterarm auch Gummis verwendet und der Effekt der Alterung macht sich extrem bemerkbar. Kann durchaus sein, dass die Gummis schon nach wenigen Wochen morsch werden und im schlimmsten Fall einfach zerfallen. Wenn nicht das, dann verlieren sie aber zumindest mit der Zeit ihre Zugkraft.
Edit: auf dynamische Kräfte kommt es eigentlich erst dann an, wenn sich der Roboter ein bisschen schneller bewegen soll. Solange er im Schneckentempo bleibt, sind die erstmal nicht so wichtig.
LeeMajors
24.01.2014, 18:54
@Geistesblitz: ...verstehe! Dann müssten die Gummis irgendwie rechts und links vom Bein laufen, damit sie nicht an der Achse, die aus einem dicken Servo besteht, hängen bleibt. Ich grübel mal nach...
@Hanno: Ok, 8 x 200Ncm für die Schultergelenke sind Minimum.
Die Füße bestehen aus diesem Material:
https://www.shapeways.com/materials/elasto-plastic
Das Zeug ist aber bei weitem nicht so elastisch und gummiartig wie das anmutet. Durch den leichte Gummierung und die Riffelung der Füße sollte das für normalen Boden aber ausreichen.
Bei deiner Spinne könntest du auch eine kleine runde Platte nehmen, die in der x-Achse schwingen kann und die durch einen Federmechanismus grob in Stellung gehalten wird und sich dem Winkel des Bodens anpasst.
Da drunter einfach ne Gummischeibe.
Ich würde bei der Skizze von Geistesblitz noch genau am Drehpunkt des Servos einen Stift vorsehen, so dass das Gummi um diesen gelenkt wird. Hätte den Vorteil, dass keine "negativen kräfte" beim Anheben des Beins auftreten würden.
LeeMajors
25.01.2014, 11:27
Dann würde aber der Vorteil des "kleinen Hebels" nicht mehr da sein.
Geistesblitz
25.01.2014, 11:48
Na doch, der Stift würde quasi als Anschlag dienen und wenn der wirklich entlang der Servoachse verläuft, ist kein nennenswerter Hebelarm vorhanden, wenn sich das Bein über die obere Nullstellung bewegt. Darunter kann das Gummi seine Kraft dann entfalten.
LeeMajors
25.01.2014, 16:42
Ich stehe schon wieder auf dem Schlauch... So?
27326
Sorry, dacht am drehpunkt des Servos wäre deutlich genug gewesen.
Hab mal mit meinen überagenden Paint künsten rumgepfuscht.
Wenn du bei Geistesblitz Idee das Bein zu weit hebst, dann ziehen deine Gummis das Bein irgendwann nach oben, was du ja nicht willst, deswegen im Drehpunkt einen Stift, der das Gummi bei einer zu weiten Bewegung nach oben umlenkt und somit der Einfluss des Gummis nahezu Null wird, aber nie das Bein nach oben zieht.
27327
Hier mal das Bild, das erste ist etwas übertrieben dargestellt, die Halterung das Gummis ist normalerweise auch immer an der selben Position, also nur zum verdeutlichen um was es mit ging.
LeeMajors
25.01.2014, 21:03
Ja, gelesen hab ich das, aber die Info muss irgendwo auf der Großhirnrinde verschollen gegangen sein...#-o
Jetzt hab ichs verstanden und die Idee ist natürlich gut und wird eingearbeitet! ;-)
LeeMajors
26.01.2014, 01:19
Der Umbau des Standard-Robbe-Servos S3071MG-HV-S.BUS zum Robot-Servo geht weiter. Die 3D-Teile hab ich in erster Version erstellt und schicke die Daten morgen zu Shapeways.
http://www.3dmax.de/forum/funstuff/no15.jpg
Das schwarze Servo ist das hitec-Servo, welches ersetzt werden muss. Die Aufnahme ist durch das Viereck universeller, man könnte das Servo auch 90° gedreht darin unterbringen, unten das Kugellager dürfte auch besser sein, als die angeschraubte Plastik-Scheibe beim hitec. Und schließlich kommt oben ne ordentliche Alu-Servoscheibe von Servocity drauf.
Problematisch war, die original Gehäuseteile des robbe-Servos abzumessen. Gerade im Inneren liegt die Genauigkeit höchstens bei 1/4mm. Ich schätze also, dass ich noch ein paar mal korrigieren muss. Anschließend kommen dann die Teile für das kräftige Servo dran, in der Hoffnung, dass die Gehäuseteile nahezu identisch sind...
Schönes Projekt weiter so.
@HannoHupman Billiger ist nen 3D-Drucker Bauen oder kaufen z.b. den Omerod der kostet bei RS 500€ + Zoll (nen kolege druckt damit 0,1mm Layer), genau das hatte ich mir nämlich auch überlegt allerdings hab ich mich für den komplizierteren weg entschieden, ich bau nen Mendel i3 und damit den OB1.4 als Laserschneider/Fräse.
HannoHupmann
28.01.2014, 09:11
Das hatte ich mir nämlich auch gedacht, dass bei dem Projektvolumen ein eigener 3D Drucker günstiger ist. Ich überlege auch immer wieder ob ich mir einen besorgen soll, aber bisher wurde aus Platz- und Geldmangel nichts daraus. Inbesondere bin ich nicht besonders interessiert daran einen Drucker aufzubauen, sondern mehr, diesen auch zu nutzen. D.h. ein "out of the Box" System wäre weit interessanter für mich, aber auch deutlich teurer :-(
LeeMajors
29.01.2014, 16:40
Man kann aber die bezahlbaren 3D-Drucker, die mit Extrusionsverfahren arbeiten trotzdem nicht mit den professionellen vergleichen, die lasersintern. Gerade bei diesem Projekt gibt es bei den Beinen/Füßen einige Teile, die auf den 1/4 mm genau sein müssen.
Es gibt teile, die zusammengeschoben werden und sich spielfrei bewegen. Sowas wäre alles nicht möglich. Einen Umbau eines Servos, wie auf der letzten Seite beschrieben, könnte man völlig vergessen.
Hier ist z.B. ein Erfahrungsbericht:
http://www.1zu1prototypen.com/urmodelle/3d-drucken/rapman-31.htm
HannoHupmann
30.01.2014, 09:13
Keine Frage, mit einem billigen 3D-Drucker bekommt man auch nur billige Teile. Die 2k€ sollte man schon investieren, wenn man vernünftige Druckergebnisse haben möchte. Die bis 1k€ Lösungen sind einfach noch zu schlecht (50% Ausschuss) und dafür ist das Rohmaterial dann doch zu teuer. Wegen der Genauigkeit würde ich mir da mal keine Gedanken machen, zur Not fertigt man es größer und schleift, feilt und bearbeitet das Teil so lange nach bis es passt. Deine Auflistung der Kosten zeigt aber auch, dass man für so viel Teile eine nicht unerhebliche Summe beim Lasersintern lassen wird. Für meinen Wall-E2 würde ich dann wohl nur ein paar Teile machen lassen, denn sonst wird das Ding zu teuer, abgesehen davon brauch ich nicht so viele "komplexe" Teile, die letzte Version hatte ich ja komplett ohne 3D Teile aufgebaut.
Andree-HB
30.01.2014, 11:21
...vielleicht kurz dazu aus meiner Erfahrung - die Maßhaltigkeit gedruckter Teile aus einem FDM-Drucker lassen tatsächlich ziemlich zu wünschen übrig. Genauigkeiten unterhalb 1mm halte ich für reine Werbeversprechen. Denoch geben mir Druckteile mit mechanischer Nachbearbeitung für meine Zwecke vielleicht schon so zu 80% auch die Ergebnisse, mit denen ich dann wirklich arbeiten kann. Restliche Teile würde ich dann ebenfalls (mit anderen Methoden) fertigen lassen.
Das aus meiner Sicht wirklich Tollste an den Dingern ist - Dir kommt etwas in den Kopp und Du kannst sofort mit der Umsetzung loslegen. Und wenn Du einen Fehler bemerkst, dann konstruierst Du halt nach und druckst erneut. Die Materialkosten dabei sind lächerlich gering !
...was würde ich mich ärgern, wenn ich etwas mit hohen Kosten/Lieferfristen ordere und ich bemerke, dass ich selber einen kleinen Fehler gemacht habe und wieder erneut ordern (und bezahlen/warten) müsste.
LeeMajors
03.02.2014, 17:41
In Anbetracht der Tatsache
- dass der Umbau der robbe-Servos ziemliches Gewurschtel sein wird...
- ich im Grunde alle 3D-Teile neu machen muss, weil ja überall Servos angeschraubt sind, die nicht mehr passen würden...
- die Servos, ob "Robot"-Servos oder normale im Grunde ein Kompromiss sind...
fühl ich mich gerade extrem der Versuchung erlegen, den ganzen Quatsch mit Dynamixel Servos zu realisieren. Also diesen: http://nodna.de/Dynamixel-RX-28-Robot-Servo-Bulk-6-Stk
- Gleichzeitig würde ich mich wohl von meiner Tarantel verabschieden (besonders von Form und Proportionen) und auf einen Hexapod schwenken. (günstiger & leichter)
- Durch die Servos und richtige Gewichtsverteilung könnte man evtl. die 2 Voderbeine auch als Arme einsetzen. (Verzicht auf den ausfahrbaren Kiefer = günstiger & leichter)
- Die Fühler meiner jetzigen Spinne sehen zwar gut aus und funktionieren auch prima, fällt aber auch eher in den Bereich des Fancy-Schnickschnacks und wird nicht mehr umgesetzt. (günstiger)
- ...ebenso wie der Hinterleib. (günstiger & leichter)
- Dadurch wäre auch wesentlich weniger Gekabels in der äh... Ameise. Die Servos können über einen Bus verkabelt werden. Die momentan 4 Maestro-Boards würden einem Controller-Board weichen.
...das sind so meine Gedanken momentan... :-)
HeXPloreR
03.02.2014, 18:46
Mach das mal nicht mit den Dynamixels... Du brauchst alles 3x und auch noch Lager und Hörner extra. Ein Vorteil wäre das Full-Duplex Netzwerk, aber diese Dyx tragen allgemein ziemlich auf finde ich ;)
Ich würde Dir empfehlen, nachdem Du jetzt gravierende Änderungen vorhast diese erst einmal durchzuplanen und dann nochmal nach "Normalen" Servos mit PWM oder auch Busseytem zu schauen.
Ich kann zum Beispiel die Hitec HS-5645MG (http://www.servocity.com/html/hs-5645mg_digital_torque.html) Digitalservos empfehlen. Bei meinem Hexapod-Gewicht von momentan 2500g reichen die aus. Ich betreibe sie direkt mit einem 2SLiPo. Und habe bisher keine Probleme damit.
Es kommt definitiv auch darauf an was Du gedenkst mit dem Hexa später zu machen. Meiner ist als Herausforderung an mich selbst gedacht...nicht an meinen Geldbeutel. ich denke es reicht den in so klein aufzubauen das ich meine bisherigen Pläne daran umsetzen kann. Sollte ich irgendwann mal eine neue idee haben ...tja entweder sie passt noch drauf oder eben nicht ;) Aber alles mögliche im vorfeld abdecken zu wollen halte ich für übertrieben bis utopisch.
LeeMajors
03.02.2014, 20:26
Was ich damit machen will: Eigentlich interessiert mich die Software-Entwicklung. Daher ist das Vieh auch mit so vielen Sensoren geplant.
Den ganzen Kram mit RC-Servos zu machen war eigentlich immer schon ein Kompromiss, damit der Kram nicht zu teuer wird. Aber die sind halt darauf ausgelegt, dass die Kommunikation nur in eine Richtung geht - ins Servo rein und nicht raus.
Die Dynamixels finde ich Klasse, weil man da eben auch so viele Parameter auslesen kann.
Was meinst du mit "ich brauch alles 3x"? Sind die qualitativ Stuhlgang?
Was ich Software seitig grob vorhabe ist folgendes:
Die Spinne hat nen kleinen PC und kann damit laufen, auch über unebenes Gelände. Ebenso kann sie über Distanz-, Druck-, Ton und Lagesensoren die Umwelt rudimentär wahrnehmen. Momentan ist das in Python auf einem Beaglebone gelöst. (Alles schön objektorientiert, so dass ich auch nicht von vorne anfange, wenn plötzlich die Servos viel mehr können, oder die Geometrie der Spinne/Ameise anders ist.)
Über eine REST Schnittstelle unterhält sich die Spinne mit einem Server, der zunächst mal als Gedächtnis fungiert. Es wird dabei nicht jeder Pups übertragen, sondern z.B. wenn ein Bein auf dem Boden aufsetzt -> die Höhe des Bodens, oder wenn die Entfernungsmesser Hindernisse wahrnehmen -> deren Entfernung. Die Spinne authentifiziert sich am Server. So ist es möglich, dass sich beliebig viele (naja, zumindest mehrere) Roboter mit dem Server unterhalten und in ein gemeinsames Gedächtnis die Daten speisen. "Wir sind die Borg...!". Ich werde das zunächst mal als mySQL-Datenbank auf einem richtigen Server aufsetzen. Eine Logik fungiert schließlich als Gehirn, wertet die Daten aus und gibt Befehle an die angeschlossenen Robots zurück.
Der sogenannte Server kann dabei, wie zunächst bei mir ein Server im Keller sein, der über WLAN mit den Bots reden kann, oder auch ein 2. Beaglebone, was man sogar zusätzlich über ein gekreuztes Kabel netzwerktechnisch mit dem 1. Beaglebone verbinden könnte. Wenn man, für was auch immer, noch mehr Rechenpower braucht, kann man die Lösung auch beliebig skalieren.
Das "Gedächtnis" kann natürlich nicht nur von den Bots ausgelesen werden, sondern auch von anderen Geräten, also PCs, Tablets, Handys. Da pappt man dann z.B. einfach eine Website drauf, die Daten ausliest, oder sendet und fertig. Durch die REST Schnittstelle ist es relativ einfach etwas anzubinden, auch wenn die Systeme völlig unterschiedlich sind.
Und um diese Software zu stricken, brauch ich erst mal ordentliche Hardware.
Ansonsten ist der Stand der Dinge: Die REST-Schnittstelle steht im Groben, die Spinne kann sich mit dem Server unterhalten. Heute werde ich mit der Datenbank starten, damit auch behalten wird, was gesendet wird. Und schließlich werde ich als erste Funktion mir die Spannung auf dem Handy anzeigen lassen und mit einem Knopf die Servos in einen "Relax"-Zustand versetzen = Not-Aus. (Also keine Impulse mehr, die Servos sind dann so programmiert, dass sie danach frei laufen.)
HeXPloreR
04.02.2014, 10:08
Damit meine ich das in dem Bulk "nur" 6 Dyx drin sind ;) Du hast aber 18( bzw 24) davon eingeplant, oder? ;)
LeeMajors
04.02.2014, 10:34
Ja, *puh* - ich dachte schon, die Dynamixels wären auch wieder eine Sackgasse. ;-)
Wie gesagt, ich reduziere auf Hexapod und brauche ...nur 3 Päckchen. ...Schnäppchen quasi!
Was mir noch nicht ganz klar ist - hab mich da aber auch noch nicht sehr tief eingelesen - ist, wie die das mit dem Strom machen.
Wenn der ganze Kram als Bus verbunden wird, muss durch die kleinen Äderchen je nach "Streckenabschnitt" der Strom aller Servos gleichzeitig. Bei den angegebenen 1.2A bei 18,5Vmaximal könnten das theoretisch 21.6A werden. Realistisch gesehen werden aber vermutlich selbst in Extrem-Situationen maximal der Hälfte der Servos blockieren, das wären dann 11A...
Hier ist ein Link um Querschnitte zu berechnen: http://www.yachtbatterie.de/de/installationsmaterial/kabel.html
Man bräuchte demnach einen Querschnitt von 2.5mm
HannoHupmann
04.02.2014, 12:54
Grundsätzlich würde ich dir empfehlen, erst mal genau zu überlegen was du machen willst und ob das nicht auch mit einem Gesamtgewicht von 2,5kg funktionieren könnte. Ich kann zwar meine Servos aus nicht auslesen, aber es gibt genug HardwareHacks die das Potisignal anzapfen um den gewünschten Effekt zu erreichen. Es gibt auch eine openSource Lösung bei der Standard-Servos mittels eine neuen Platine in ihrer Funktion stark erweitert werden (openEncoder oder openServo).
157€ pro Servo ist einfach verflucht und übertrieben teuer. Ich habe keine Ahnung bzgl. deiner finanziellen Möglichkeiten und offensichtlich sind diese größer als von den meisten Bastlern hier, doch Kosten und Nutzen sollten sich - egal wie viel Geld man hat - die Waage halten.
Allein die Servos werden 1,3kg ausmachen, noch ohne Chassis und Co, Leistung ist diesmal aber genug da, außer man baut sehr lange Beine.
HeXPloreR
04.02.2014, 13:29
Normelerweise haben die Dynamixel Controller mehrere Anschlüsse. Der Strom geht hier auch direkt durch bis zum Dyx. Man sollte hier nicht zuviele in DaisyChain zusammen schalten da dann genau das von Dir genannte Problem Auftritt.
Viele Benutzer umgehen das Problem wenn es sein muss indem eine Kette aus der Mitte her über einen Verteiler-PCB betrieben wird - das ist das gleiche System was auf dem Robotis Controller die Anschlüsse bedient. Die Paketdaten gehen praktisch ja in jeden Kabel-Baum. EDIT: Half oder Full Duplex - da weiß ich gard nicht was der von Dir genannte Dyx genau unterstützt.
Du solltest mit einer Gruppe von je drei Dyx und einem passenden für den (dafür) zu erwartenden Strom ausgelegten Verteiler keine Probleme haben. Oder ein Controller_Board (z.B CM700) für Dynamixels kaufen. Half- und Full-Duplex musst Du schauen welchen genau Du da brauchst.
LeeMajors
05.02.2014, 10:19
@Hanno: Meine Geldquelle ist leider auch nicht unendlich, aber ich habe bislang die Erfahrung gemacht, dass man es besser einmal richtig macht, als mehrmals gefrickelt.
Der Bot soll z.B. mit überschaubarem Aufwand reproduzierbar sein, daher 3D-Druck und nicht handgefertigte Teile. Aus diesem Grund bin ich auch gegen Hacks am Servo.
Bei mir bewegt sich das knapp außerhalb des Hobby-Bereichs. Ggfs. möchte ich hinterher die Software vermarkten, daher kommen mir die Dynamixel Servos entgegen, die ich zunächst aus Kostengründen ausgeschlossen hatte.
Zum Gewicht: Servos 1,3kg, Akkus ca. 1,5kg, 3D-Teile + Elektronik 1,5kg: Da sind sie wieder, die fast 5kg ;-)
@HeXPloreR: Mercí für die Info, das klingt alles sehr gut. :D
HannoHupmann
05.02.2014, 13:23
Das wird jetzt etwas zynisch und vielleicht sogar arrogant klingen: Nüchtern betrachtet hast du bisher schon einen Fehlversuch gemacht der nichts geworden ist und kosten produziert hat. Dafür vermutlich aber immens viel Erfahrung, wie man einen Hexa nicht bauen sollte. Es gab da schon viele berühmte Entwickler/Erfinder die mehr als einen Fehlversuch gemacht haben. Erfahrungsgemäß bau ich jeden meiner Roboter zwei mal und streng genommen hat mein Vinculum vier Vorgängerversionen. Ich würde mir also nicht zutrauen einen kommerziell vermarktbaren Roboter (oder auch nur die Software) zu bauen nach zwei Versuchen. Professionelle Entwicklungsprojekte haben in der Regel ein A-Muster und gehen beim E-Muster in die Serie, in der Zeit kann sich das Design mehrfach komplett ändern.
1,5kg Akkus? Das erscheint mir fast ein wenig viel, wo es doch heute so gute LiPos gibt.
LeeMajors
05.02.2014, 13:43
Das ist alles richtig. Nur komme ich nicht dahin, wo ich hin will, wenn ich nicht schon jetzt diesen Weg einschlage.
Die Kosten meines bisherigen Fehlversuchs liegen noch in akzeptablen Grenzen, da ich eben keine 8 Beine gebaut habe, sondern nur 1. Den größten Teil der Elektronik kann ich weiterverwenden.
Ebenso die relativ komplexe Fußmechanik, in die ich ziemlich viel Arbeit gesteckt habe.
Den kommenden Hexa baue ich genau so. Ich werde erst mal ein Servo + Controller kaufen, um das Verhalten des Servos kennen zulernen. Dann ein Bein bauen und wenn das komplett ist, den Rest.
Die Software-Entwicklung geht einfach weiter. Da ist ja nichts verloren, denn die ist so aufgebaut, dass es ihr egal ist, wie der Robot aufgebaut ist. (Die Software auf dem Robot wird Hexas, Oktos, ... unterstützen, die Software auf dem Server wird sogar beliebige Roboter unterstützen.)
Mit den Akkus ist einfach die Frage, wie lange der Robot ohne neu aufladen laufen soll. 4S 4500mA Akkus wiegen knapp 500g (http://www.der-schweighofer.at/artikel/104992/lipo_pack_modellexxpert_white_line_45c_4500_mah_4s _14_8_volt ) Ich habe 3 Stück eingeplant. Anders herum könnte der Bot bei 20min vielleicht auch mit 1 Akku auskommen.
HannoHupmann
05.02.2014, 14:17
Dein Gesamtgewicht ist einfach die Ursache für viele deiner Probleme. Ein Modellbau-Kollege hat mir mal gesagt er kann mit seinem Hubschrauber 20 Minuten fliegen mit einer Akkuladung. Wenn er einen größeren Akku mit mehr Leistung nimmt, kann er auch genau 20 Minuten fliegen, denn der Verbrauch steigt mit dem Gewicht. Ergo fliegt er mit kleinem Akku, denn dann ist der Hubschrauber agiler und schneller wieder aufgeladen.
Bei Hexas verhält es sich vermutlich genauso, mehr Gewicht durch 1,5kg Akkus bedeuten mehr Leistung und damit kürzere Laufzeit. Meinen letzter Hexa (Phoenix²) mit 2,1kg hatte ich 45mins im Dauerbetrieb und der Akku hat noch nicht schlapp gemacht (ich meine es waren 2800mAh).
Daher würde ich dir ernsthaft raten nur einen Pack zu verwenden! Damit lässt sich ein Gewicht von knapp 1kg einsparen, was deine Servos dankend annehmen (weniger Drehmoment notwendig, weniger Leistungsaufnahme) und das Gesamtsystem damit sogar effizienter werden könnte.
LeeMajors
05.02.2014, 15:33
Das wäre auch ohne Probleme möglich. Ich sehe 3 Akku-Schächte vor, die man bestücken kann, aber nicht muss. Dann probiert man einfach aus. :-)
HeXPloreR
05.02.2014, 18:23
Das wäre auch ohne Probleme möglich. Ich sehe 3 Akku-Schächte vor, die man bestücken kann, aber nicht muss. Dann probiert man einfach aus. :-)
Das halte ich ür eine guten Kompromiss der auch Deinem Ziel Rechnung trägt.
Ich benutze übrigens 2S 3700mAh die wiegen ca 230g , ich hab noch einen 5000mAh LiPo,allerdings das Gewicht von dem nicht draufgeschrieben/nicht gewogen.
Ich würde überlegen ob es ein 3S LiPo nicht auch tut.
Schau Dir hier bitte mal (http://www.robotis.com/xe/dynamixel_en)die Daten zum RX-24F an - im Vergleich zu dem von Dir favorisierem RX-28. Hier mal besonders auf Gewicht, Motorart und Spannung gucken - gut, Ampere liegt deutlich höher... Und dann nachmal gucken was das RX-24F Bulk bei dem Laden wo du kaufen möchtest kostet ;)
LeeMajors
05.02.2014, 23:47
Hab ich schon:
Label
hitec
robbe
Dynamixel
Dynamixel
Dynamixel
Dynamixel
Dynamixel
Dynamixel
Typ
HSR-5498SG
S3071MG-HV-S.BUS
AX-12W
AX-12A
AX-18A
RX-24F
RX-28
MX-28T
MX-28R
Höhe mm (Rad-Rad)
47,00
40,00
40,00
40,00
35,50
35,50
Breite mm (kleinster Wert)
19,86
20,00
32,00
32,00
32,00
35,60
35,80
Tiefe mm
40,11
38,10
50,00
50,00
50,00
50,60
50,60
Auflösung
1024
1024
1024
1024
1024
4096
Spannung V
7,40
7,40
9,00 - 12,00
9,00 - 12,00
9,00 - 12,00
9,00 - 12,00
12 - 18,5
11,1 - 14,8
Strom Stall A
1,20
1,1 - 1,4
1,1 - 1,4
1,1 - 1,4
2,40
1,50
1,3 - 1,7
Stärke kg/cm
13,50
10,71
15,30
18,35
26,51
37,73
25,49
Gewicht g
59,80
49,00
52,90
54,60
54,60
67,00
72,00
72,00
Geschwindigkeit s/360°
1,14
0,96
0,14
1,02
0,62
0,48
0,90
1,09
Preis
51,00 €
49,56 €
39,00 €
32,90 €
80,00 €
125,45 €
175,59 €
191,90 €
Kommentar
ursprünglicher Robot Servo
alternativer Robot Servo
Lipos Seriell
2
2
3
3
3
3
4
4
Lipo Zelle min
6,00
6,00
9,00
9,00
9,00
9,00
12,00
12,00
Lipo Zelle normal
7,40
7,40
11,10
11,10
11,10
11,10
14,80
14,80
Lipo Zelle maximal
8,40
8,40
12,60
12,60
12,60
12,60
16,80
16,80
P-Ion Seriell
2
2
3
3
3
3
4
4
P-Ion Zelle min
6,40
6,40
9,60
9,60
9,60
9,60
12,80
12,80
P-Ion Zelle normal
7,20
7,20
10,80
10,80
10,80
10,80
14,40
14,40
P-Ion Zelle maximal
8,40
8,40
12,60
12,60
12,60
12,60
16,80
16,80
(Alle Angaben ohne Gewähr!)
Der RX-24 ist halt wieder ein Servo ohne Reserven. Im Grunde ist jetzt Hanno Schuld, der mich mit seinen Berechnungen davon überzeugt hat, wie knapp kalkuliert meine ursprünglichen Servos waren.
Ich weiß, dass ist ein heftiges Ziel, aber der Hexa sollte eine Treppe rauf kommen - zumindest sollten die technischen Voraussetzungen dafür da sein. Dazu müssen die Beine lang genug sein (so wie beim ursprünglichen Okto) und es muss entsprechend viel Kraft da sein, um das Teil zu heben.
Wie hast du denn vor die Treppen zu steigen? Also welche Servos schieben/ziehen den bot über die Treppe?
Nur über die Hüftservos oder die Beine komplett nach hinten knicken und über die kompletten Hinterbeine schieben?
Vllt. kann man ja einen Servo kleiner auslegen, wenn er weniger belastet wird. Hat natürlich den Nachteil, dass man sich daran später auch erinnern muss.
Hab hier auch noch ein paar interessante Servos:
http://www.hobbyking.com/hobbyking/store/__16244__BLS_31A_High_Voltage_7_4V_Brushless_Digit al_Alloy_Gear_Servo_31kg_0_14s_74g.html
http://www.hobbyking.com/hobbyking/store/__16245__BMS_35A_High_Voltage_7_4V_Coreless_Digita l_Servo_w_Titanium_Alloy_Gear_35_5kg_14sec_74g.htm l
HannoHupmann
06.02.2014, 09:31
@robin wollte gerade vorschlagen sich mal bei Hobbyking umzusehen, die haben ganz gute Servos in Angebot. Keine Sorge übrigens wegen China, die Lieferung klappt ausgezeichnet (dauert nur sehr lange) und man muss meistens noch Zollgebühren bezahlen. Die Zöllner sind aber Sendungen von der Firma schon gewohnt und sind daher sehr unkompliziert.
Die Geschwindigkeit ist übrigens auch nicht zu verachten, nur sehe ich einfach, dass man für den Preis der Dynamixel Servos auch sehr gutes Material aus dem Modellbau bekommt. Übrigens ist es auch nicht zwingend Notwendig im jedem Gelenk die gleichen, teuren, Servos zu verbauen. Ich habe immer mit einem Mix gearbeitet, denn Hüfte und Knie brauchen einfach deutlich weniger Drehmoment und es wäre völlige Verschwendung in der Hüfte einen Servo mit 310Ncm einzubauen!
In der Regel wird Treppensteigen genauso auf die Schulterservos gehen, alles andere macht wenig Sinn. Jedoch könnte durch die Schräglage eine größere Belastung auf die Hüftservos entstehen, so dass man hier vielleicht doch ein paar Ncm spendieren muss. Ich würde das Design so auslegen, dass ich ohne Probleme Servos durch stärkere / schwächere austauschen kann. So kann man real testen, welche Drehmomente werden benötigt. Ausrechnen kann und sollte man es sich vorher natürlich auch. Die Gewichtskraft wird dann eben im Winkel der Treppe auf den Hüftservo einwirken.
Da ich schon Schuld bin :-D schlage ich vor die Waage heraus zu kramen und wirklich jedes Teil auf die Waage zu legen und bezüglich seines Gewichts zu optimieren. Leider sind Hexas ähnlich wie Flugzeuge, jedes g zählt am Ende. Die wirklich guten Hexas die ich bisher kenne (Micromagic) sind gnadenlose Leichtbau-Roboter.
LeeMajors
06.02.2014, 10:30
Ich glaube nicht, dass ihr es schafft mich noch von Modellbau-Servos zu überzeugen. Ich seh das genau anders herum. Für die Kohle einer ordentlichen Modellbau-Servos bekomme ich schon fast ein richtiges Robot-Servo und habe da alle Möglichkeiten.
Verschiedene Servos werde ich daher auch nicht einbauen, denn bei den Dynamixels würde das bedeuten, dass ich 4S und 3S Versorgungsspannung brauche, was auch wieder Probleme machen dürfte.
Auch beim Gewicht sehe ich keinen Vorteil statt 4S 3S einzusetzen. Grundsätzlich ist ein 4S Akku natürlich bei gleichen mA schwerer, aber es kommt eben auch mehr raus. D.h. unter dem Strich ist das Gewicht bei vielleicht 2 4S Akkus so wie bei 3 3S Akkus. Es wird bei 4S Akkus aber auch weniger Strom fließen. Und nur weil ein Servo mehr Kraft hat, muss es davon ja keinen Gebrauch machen.
Zum Thema Treppensteigen: Ab einer bestimmten Steighöhe muss die "Laufart" geändert werden. D.h. es wird nur noch maximal 1 Bein angehoben, 5 bleiben auf dem Boden und halten. Erst kommen die vorderen 2 Beine. Erst bei den mittleren Beinen müsste der Schwerpunkt noch oben und vorne übertragen werden, so dass nicht zu viel Gewicht auf den verbleibenden hinteren Beinen ist. Die werden am Ende nachgezogen. ...aber bis zum Treppensteigen- und runterlaufen fließt noch viel Wasser die Wupper runter. Vielleicht bin ich dann auch schon bei meinem E-Muster... :-x
Das Treppensteigen ist aber genau der Knackpunkt beim Auslege deiner Servos. Im schlimmsten Fall liegt die Komplette Hangabtriebkraft (sin(alpha)*F) auf einem Bein, weil alle anderen rutschen.
Zu 100% verhindern, dass mal ein Bein keine Haftung hat, kannst du nicht, also musst du bei der Auslegung der Servos schon von vorne herein vom Schlimmsten ausgeben. Ansonsten stirbt dir später ein Bein nach dem anderen ;)
Zum thema Modellbau Servos:
Was ist denn da der große Unterschied zu roboter Servos? Gut, bei den Dynamixel hast du noch feedback über strom und Winkel, aber der sollte bei guten Servos mit den ihm geseneten Daten sowieso übereinstimmen.
Die Hitec und Dynamixel hätten Gegenlager, der Robbe wiederum nicht.
Was bliebt also noch? Langlebigkeit? Da können dir alle nach 5Minuten oder erst nach Jahren kaputt gehen.
LeeMajors
06.02.2014, 13:19
Hitec hatte Gegenlager, die werden aber nicht mehr produziert.
Daraus folgt: extremes Gebastel - s. Seite 3 des Threads.
Du kannst bei den Dynamixels außerdem noch die Kraft einstellen, von 100-0%. D.h. völliger Freilauf.
Und - ob der Winkel mit dem angeforderten Winkel übereinstimmt, hängt ganz von der Geschwindigkeit ab, mit der sich das Servo bewegt und seine Endposition erreicht.
Du könntest z.B. das Servo auf 50% Kraft stellen, was im normalen Betrieb evtl. ausreicht. Wenn das Bein dann irgendwo hängenbleibt, kann man dies dann auslesen. Bei einem RC-Servo würde die Software einfach davon ausgehen, dass das Bein dahin gegangen ist, wo man es hingeschickt hat. Im besten Falle würde sich das Servo abschalten, bevor es durchbrennt, aber auch dazu gibt es kein Feedback.
Mit den Dynamixels könnte man z.B. auch in bestimmten Situationen in bestimmten Gelenken die Kraft auf 0 setzen. Wenn z.B. das Bein wieder gesenkt wird. In dem Moment, wo es den Boden berührt, würde es stehen bleiben. Man könnte diese Position auslesen und die Position halten.
...oder man könnte auf einfache Weise dem Bot bestimmte Bewegungen "zeigen", in dem man einfach eine Bewegung im Freilauf trackt.
Die Teile sind außerdem 360° Servos und damit sind auch wieder mehr Sachen möglich, bzw. werden vereinfacht.
HannoHupmann
06.02.2014, 14:51
Klassischer Fehler bei Beinen mit Sensoren die den Bodenkontakt erkennen können. Die Bewegung wird gestoppt in dem Moment, wo Bodenkontakt erreicht wird. Der Körper wird dann nicht vom Boden weg gedrückt und der Roboter wird immer tiefer gehen. Es muss nach dem Bodenkontakt eine Gegenkraft aufgebracht werden, damit der Roboter nicht einsinkt. Diese kann je nach Lage des Körpers unterschiedlich sein. Das nur mal so am Rande erwähnt, denn im Moment ist es völlig uninteressant.
Die Rückmeldung der Position ist ein nicht zu verachtendes Feature, denn damit lässt sich ein PID Regler für die Soll-Ist Position aufbauen und eine sehr viel genauere Ansteuerung realisieren (so genug Rechenpower vorhanden ist um das schnell genug zu machen).
Beim Treppensteigen fürchte ich kommen ganz andere Anforderungen zum tragen, allerdings würde ich diese erst mal außen vor lassen und mich darauf beschränken überhaupt zu laufen. Ansonsten empfehle ich sich ganz genau zu überlegen (Schritt bei Schritt und Bewegung bei Bewegung) wie der Roboter die Treppe hinauf "geht". Am besten wäre es natürlich das ganze zu simulieren, doch dafür fehlen vermutlich die Möglichkeiten.
Ehrlich gesagt versteh ich nicht, was es bringen soll mit weniger Kraft zu fahren, denn der Roboter wird immer das an Kraft nehmen, was er braucht um die Bewegung auszuführen. Warum also künstlich beschränken?
LeeMajors
06.02.2014, 15:42
Dass nach dem erkannten Bodenkontakt gegengesteuert werden muss, ist klar. ;-)
Ansonsten zur Kraft: Überlege doch mal, wie du dich bewegst. Du läufst auch nicht permanent mit voll angespannten Muskeln durch die Gegend. Stell dir vor, du stolperst über eine Stufe. Wenn du da mit ganzer Kraft deinen Fuß vorhaust, wird das mächtig weh tun. Übertragen auf den Robot - er wird evtl. mechanischen Schaden nehmen. Oder du richtest dich auf, mit vollster Kraft und knallst mit der Birne unter die Decke, weil die niedriger war, als erwartet...
Man könnte beim gehen die Kraft individuell und dynamisch einstellen. Hebt der Bot das Bein, dann ist nicht so viel Kraft nötig, beim senken noch weniger, bei tragender Funktion ist viel Kraft nötig. Falls die voraussichtlich nötige Kraft nicht reicht, stimmt etwas nicht und die Software kann entscheiden, mehr Kraft zu benutzen, oder lieber ein Hindernis anzunehmen, um das man herum muss.
Geistesblitz
06.02.2014, 16:49
Naja, aber das macht ja deine Positionsregelung schon automatisch. Ich glaub, da verstehst du noch etwas ein wenig falsch: bei unseren Armen und Beinen sind die Muskeln gegenläufig angeordnet, wenn man beide Seiten gleichzeitig anspannt, bewegt sich das jeweilige Gelenk nicht, aber hat halt ein wesentlich steiferes Verhalten.
Beim Servo ist das anders, wenn du da mehr Drehmoment einstellst, dann bewegt sich der Servo auch entsprechend. Die Regelung sorgt dann dafür, dass in der jeweiligen Position das Drehmoment so groß ist, wie es sein muss, um in dieser Stellung zu verharren. Von daher brauchst du da nichts einstellen, das sollte die Regelung eigentlich automatisch übernehmen.
LeeMajors
06.02.2014, 18:05
Ok, der Muskelvergleich hinkt etwas. Trotzdem wäre es doch so, dass das Servo bei größerem Drehmoment einem Hindernis stärker entgegenwirkt als es vielleicht sein müsste. Ich möchte ja, dass das Servo eben nicht in einer bestimmten Stellung verharrt, oder diese anfährt, wenn der Widerstand höher ist, als er sein dürfte. ...oder denke ich da falsch?
Ansonsten hat paradoxer Weise der Servo Umbau vermutlich geklappt. Ich habs zwar nur mit einem Servo ausprobiert, welches ich schon geschrottet hatte, aber die Achsen & Aussparungen scheinen zu stimmen.
(Ich hab mal 2 verschiedene Materialien ausprobiert.)
http://www.3dmax.de/forum/funstuff/no16.jpg
http://www.3dmax.de/forum/funstuff/no17.jpg
Geistesblitz
06.02.2014, 18:51
Vereinfacht gesagt funktioniert so eine Regelung ja so, dass das Drehmoment größer wird, wenn von der Sollposition abgewichen wird. Wenn der Hexapod jetzt also steht, wirkt ein relativ konstantes Drehmoment auf die Servos (lässt sich über Masse, Erdbeschleunigung und Hebellänge ausrechnen), wodurch der Servo so weit ausgelenkt wird, bis das Drehmoment so groß ist, dass es der Gewichtskraft genau entgegenwirkt. Diese Auslenkung lässt sich auch noch durch regelungstechnische Tricks (zB. I-Anteil) ausschalten, aber ansonsten dürfte sich immer etwa so viel Drehmoment einstellen, wie gerade gebraucht wird. Das gilt allerdings auch nur, solange man in der Begrenzung bleibt. Das Drehmoment ist ja proportional zum Motorstrom und dieser hängt im Stillstand auch nur vom Wicklungswiderstand ab, sodass sich dann ein von der Versorgungsspannung abhängiger Höchstwert ergibt. Fordert man mehr vom Servo, gibt er nach (was gerne auch mal einen Schaden am Servo mit sich zieht). Ich denke mal, dass die Drehmomentvorgabe am Servo so gedacht ist, dass man dieses Drehmoment direkt steuern kann und die Regelung extern aufbaut. Du denkst wahrscheinlich eher, dass sich der Servo bei einer höheren Drehmomentvorgabe steifer verhalten würde, aber das würde man eigentlich eher erreichen, indem man die Reglerparameter verändert.
LeeMajors
06.02.2014, 19:28
Im Manual steht folgendes:
Max Torque It is the torque value of maximum output. 0 to 1023 (0x3FF) can be used. The value set to ‘0’ means the Free Run state without torque.
Das hört sich für mich in der Tat so an, dass man quasi die Steifigkeit ändert. Und außerdem impliziert der Satz für mich auch, dass das Servo keinen Schaden nimmt, falls man stärker dreht, als die maximale Torque Einstellung, denn sonst hätte eine Einstellung von z.B. 5% Torque ja keinen Sinn.
Ebenso steht bei den Marketing Facts:
Elasticity Setting It can set up the extent of elasticity when controlling position with Compliance Driving.
Hast du (oder sonst wer) schon mal mit einem Dynamixel-Servo gearbeitet? Sonst theoretisieren wir hier beide nur herum ;-)
@LeeMajors
Dein "Servoeigenbau" sieht ja richtig gut aus. So wie du das hinbekommen hast, könntest du ja versuchen, Ober- und Unterschale als Teil des Beines auszulegen. Also nicht das ganze Servo in das Bein zu montieren, sondern nur den Antrieb (Motor, Getriebe und Poti). Die Teile des Beins machst du ja auch in 3D.
Und dann mal weiter gesponnen: du läßt die Servoelektronic weg, und führst die drei Anschlüsse des Potis und die zwei des Motor nach draußen. Daran dann eine der modernen Motorbrücken und ein µC mit ADC für das Poti. Oder ein etwas größerer µC und drei Brücken für ein ganzes Bein. Als Motorbrücke wird hier zwar gerne der L298 empfohlen, es gibt aber inzwischen massiv bessere und kleinere. So könntest du ein fast komplettes Bein mit Ansteuerung aus dem 3D Drucker bauen. Als "Opferservo" mechanisch hochwertige: Metallgetriebe, Kugellager etc. mit billiger Elektronik, also analog. Wenn du es auf die Spitze treibst, kommt noch ein Temperatursensor an die Motoren.
Genug gesponnen
MfG Klebwax
HeXPloreR
06.02.2014, 19:37
Mit der Kraftrückmeldung der AX-12 habe ich z.b. kiene guten Erfahrungen gemacht. Die Kraft steigt bei jeder Anfahrsituation an. Deinen Software muss dieses Ereignis ausklammern ... und kann in diesem Moment ein direktes Hindernis nicht erkennen. Zusätzlich Sensoren würde das Problem lösen, dann braucht man aber den Dyx auch nicht. Vermutlich resultiert Deine Idee eine möglichst große Akkuspannung zuhaben auf der Tatsache das sich der Roboter ziemlich langsamm bewegen wird. Aber Spannung ist nicht alles, man will auch was zum spielen und Schokolade :)
Meine Meinung ist das der RX24F ausreichend in der Kombination mit einem 30C 3SLiPo. Er hat bei weniger Spannung, laut Datenblatt, bessere Kraftwerte. Eine größer Drehzahl. Und Du bekommst 18 St, anstatt nur 12 zum selben Preis.
Ich sehe keinen gravierenden Vorteil beim Rx28 zum Rx24F. EDIT: Gut allein das Argument das er bis 18V betrieben werden kann, und dann wirklich mehr Power als der RX24 hat. Aber auch hier würde ich eher nochmal nachrechnen, die von Dir genannten Sensoren wiegen ja auch nicht unbedingt die Welt /EDIT
Servomodifikation bzw spezielle Servos sind an Deinem ursprünglichen 8Beiner eigentlich auch nicht nötig gewesen. Man müsste einfach die Servos anders ausrichten, Längen reduzieren (http://www.hexapodrobot.com/store/) Aber das System soll ja unbedingt Treppen steigen können.
Wie wäre die Alternative eine normgerechte Treppe "im kleinen" aufzubauen um die Software daran zu testen? Kostet alles insgesamt vermutlich sehr viel weniger.
Mich überzuegt die Zielsetzung insgesamt nicht so recht. Obwohl vom Projekt schon...aber die Idee dahinter? Reproduzierbarkeit und alle möglichen Sensoren auswerten, Softwarevermarktung. Ich denke dafür ist der Bedarf nicht vorhanden - jedanfalls nicht auf einem X-Pod.
LeeMajors
06.02.2014, 20:15
Das Gute ist ja, dass ich im Moment keine Kohle habe und daher auch nichts überstürzt kaufen kann ;-)
@Klebwax: Sowas hatte ich mir auch überlegt - nicht ganz so krass, aber in die Richtung gehend. Mir ist das allerdings zu viel Gebastel. Auch wenn das Servogehäuse auf Anhieb gepasst hat, hab ichs noch nicht an einem funktionstüchtigen Servo ausprobiert, ob sich alles spielfrei dreht. Ich könnte mir vorstellen, dass da dann doch noch ne 2. oder 3. Version nötig ist, bis alles genau passt. Darüber hinaus hab ich von dem ganzen Elektronik-Kram leider nicht so viel Ahnung. Ich kann Platinen nach Anleitung zusammen braten und kenne den Unterschied zwischen Volt und Ampere. Was du vorschlägst wäre für mich aber wieder eine weitere Baustelle, die alles verzögern würde, genau, wie die Idee mit dem 3D-Drucker, die eigentlich super ist, aber sowas baut man nicht mal eben und hat es auch nicht schnell im Griff.
@HeXPloreR: "Vermutlich resultiert Deine Idee eine möglichst große Akkuspannung zuhaben auf der Tatsache das sich der Roboter ziemlich langsamm bewegen wird." ...verstehe ich jetzt nicht so richtig... Durch die hohe Spannung hat man in meinen Augen eigentlich nur den Vorteil, kleinere Kabel-Querschnitte benutzen zu müssen, bzw. bei gleichem Strom mehr Leistung durch ein Kabel zu bekommen.
Steter Tropfen höhlt aber den Stein und ich denke mal über die 3S Lösung im Zusammenhang mit den RX24F und der leichteren Bauweise nach. Ebenso stimmt es natürlich - wenn der kleine Bot eine verkleinerte Treppe steigen kann, reicht das natürlich.
Mit der Zielsetzung ist es so: Ich habe äußerst große Lust darauf, diese Projekt durchzuziehen und entsprechende Software zu entwickeln. Wenn dabei was vermarktbares rauskommt, wäre das ein netter Nebeneffekt. Die ganzen Sensoren sind preislich nicht die Welt und die sind auch schon vorhanden. Vielleicht stellt sich raus, dass bestimmte Konzepte mit bestimmten Sensoren völliger Blödsinn sind, aber dazu muss ich das erst mal ausprobieren.
Ein wirklich genialer Roboter! Toll.
Ich habe ein wenig Erfahrung mit acht Beinen: http://www.youtube.com/watch?v=gNXuzhop-u8
Die Beinbewegung kannst Du recht einfach über inverse Kinematik von Rotationen in Translationen und zurück übersetzen. Da kann ich helfen, wenn nötig. So gibst Du dann nur die Position der Spinne in Freiheitsgraden an, und wo die Füsse stehen sollen. en Rest macht eine kleine Formel.
Einen 3D Drucker zu bauen kannst Du in diesem Stadium vergessen. All die ganzen FDM Kisten generieren unpräzise und verdrehte Teile aus ABS. In PLA sind sie zwar nicht verdreht, aber spröde. Und wenn dann ein Teil mal bis zum Ende druckt, ohne dass es wegrutscht, der Kopf verstopft oder sonst eines der zwanzig Fehlerquellen, dann ist ersteinmal stundenlanges Nacharbeiten angesagt. Runde Ecken wieder grade feilen, nicht geklebte Fäden rausschneiden, wellige Öberflächen schmirgeln, usw. . Und bei den Belastungen in deinem Roboter lernst Du dann auch schnell über das typische FDM Problem des Delaminierens. Ich hab überhaupt nichts gegen die Drucker, aber bei der wundervollen Qualität Deiner Teile wäre ein Heimdrucker der falschen Weg.
Das SLS ist das richtige verfahren. Leider kosten die Drucker mehrere hunderttausend Euro... .
Was durch SLS aber wirklich genial wäre, wenn Du wirklich die Servohälften in die Bauteile integrieren könntest.
Achja, und zur Servoelektronik: es gibt fertige Nachrüstsätze, die aus einem einfachen Getriebe einen Servo mit Stromüberwachung, Temperatur, usw. machen kann.
Bleib dran!
- Matthias
LeeMajors
09.02.2014, 18:16
Ein wirklich genialer Roboter! Toll. - Danke, aber sagen wir mal so: Hätte ich die Servos bekommen und das Teil gebaut, wäre es vermutlich aufgrund des Gewichts nicht wirklich gut aus dem Quark gekommen. ...ich bin ja lernfähig. :rolleyes:
Ich tendiere sogar dazu, wie schon vorgeschlagen, einen wirklich einfachen Hexapod zu bauen, so klein und leicht, wie es geht, ohne Platzprobleme für die Elektronik zu bekommen. Wenn alles gut klappt, investiere ich dann in einen großen, mit Dynamixel-Servos, evtl. einem schnelleren PC, etc.
Momentan wurschtel ich an der Software, die mit den Bots kommunizieren soll, und auf die später die Intelligenz soll. Die Software ist direkt dazu ausgelegt, um mehrere Bots zu verwalten. Zur Zeit geht es erst mal darum, um Werte zu überwachen und Befehle hin- und her zu schicken. Das klappt auch schon ziemlich gut. :-)
http://www.3dmax.de/forum/funstuff/no18.jpg
Hier ist jetzt z.B. die Übersichtsseite des Robots "Helge", so heißt mein derzeit einbeiniger Oktopod...
Eine Konfigurationsdatei beschreibt, was alles angezeigt werden soll:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<powersupply>
<voltage>
<displayMin>0</displayMin>
<min>6.4</min>
<nominal>7.4</nominal>
<max>8.5</max>
<displayMax>10</displayMax>
</voltage>
<current>
<displayMin>0</displayMin>
<min>0</min>
<nominal>1.5</nominal>
<max>15</max>
<displayMax>20</displayMax>
</current>
</powersupply>
Diese XML Datei kann dann auch direkt vom Bot übertragen werden. D.h. wenn ein Bot, der in der Lage ist, mit der Software zu sprechen, stellt er sich einmalig vor ("Ich bin der Helge, meine IP ist ... und das ist meine Konfiguration..."), danach kann er von der Software überwacht und gesteuert werden.
Es ist natürlich sinnvoll, eine beschreibende XML-Datei für die externe, als auch die interne Software zu nutzen. D.h. hier würden auch alle möglichen Parameter zur Geometrie untergebracht, was hier noch nicht der Fall ist.
Es ist dabei auch egal, ob es ein Hexapod, ein Oktopod, ein Raupenfahrzeug oder ein 2-Beiniger Roboter ist. Die Hardware-nahen und zeitkritischen Berechnungen verbleiben auf dem Bot, die übergeordneten Berechnungen macht der Server.
Die angeschlossenen Bots haben quasi 1 Gehirn und können so auch untereinander kommunizieren oder auf gemeinsame Daten zugreifen.
...so, ich mach jetzt mal weiter. :D
LeeMajors
09.02.2014, 23:21
Wo ich ja gerade das Bot-Konzept abspecke...
1. Was haltet ihr von solchen Servos: http://www.hobbyking.com/hobbyking/store/__24575__Turnigy_TGY_5513MD_Metal_Gear_Digital_Ser vo_12kg_0_18sec_54_5g.html?strSearch=Turnigy%20TGY-5513M
12kg Servo für einen 10er... klingt verdächtig nach Schrott - oder kann man das nehmen?
2. Ich hab von Elektronik ja nicht sooo viel Ahnung. Spricht etwas dagegen, die Basisplatte des Bots aus Aluminium zu bauen und diese gleichzeitig als Masse zu benutzen? Das würde einiges an Kabeln sparen.
3. Falls ich die Servos oben nehme, verkraften die ja nur 5-6V. Die Elektronik braucht eine stabile 5V Versorgung. Ein Umstieg auf 4S NiMH fällt daher flach. Momentan mache ich mir mit diesem BEC meine geregelten 5V aus 2S Lipos: http://www.der-schweighofer.at/artikel/89800/modellsport?query=8a+bec# - das hätte gereicht, aber jetzt müssen ja 18 Servos mit versorgt werden, da reichen 8A nicht. Ich schätze, 12-15A müssten vorhanden sein. Kennt ihr stärkere BECs, oder habt ihr eine andere Idee zur Stromversorgung?
HannoHupmann
10.02.2014, 09:35
zu 1) Die Frage wurde schon öfters im Forum gestellt und es gibt wohl auch ein paar Beiträge die sich genauer damit befassen, denn durch die technischen Daten sticht er ins Auge. Getestet habe ich den selbst noch nie.
zu 2) Im Prinzip lässt sich das machen, aber dann muss man verflucht aufpassen, dass keine anderen Kontakte diese Basisplatte berühren. Zudem muss gewährleistet sein, dass der Kontakt wirklich gut ist. Ausprobieren! Würde ich sagen und halt damit rechnen, dass es vielleicht nicht funktioniert, aber neue Wege muss man ab und an beschreiten.
zu 3a) NiMH? Das ist aber eine sehr alte Technologie, da empfehle ich doch ganz klar Lithium Polymer Akkus!
zu 3b) Klar, es gibt SBECs auch mit 20A so einen habe ich in meinem Hexa verbaut. http://www.ebay.de/itm/P20B12S-20A-5V-5-5V-6V-7V-9V-12S-51V-SBEC-UBEC-DCDC-Schaltregler-BEC-AMAX-Platin-/331090605815?pt=RC_Modellbau&hash=item4d1689b6f7
LeeMajors
10.02.2014, 11:12
zu 1) Klingt gut, was da berichtet wird. Für mein Projekt erst mal ausreichend.
zu 2) Man könnte eine Folie drauf kleben um dümmste Kurzschlüsse zu vermeiden. Aber die Kontakte sind in der Tat ein Problem. Evtl. einfach Löcher rein, so dass man mit Mini-Goldkontaktsteckern rein kann... Bin mir aber auch noch nicht sicher.
zu 3) Sehr gut, BEC ist bestellt. :-)
HannoHupmann
10.02.2014, 13:58
zu 2) Die idee mit den Minigold-Kontaktsteckern finde ich per se gut, aber dann bräuchte man schon eine Aluminiumplatte von knapp 3mm Dicke. Ich arbeite mit 2,5 bzw. 2,8 und das ist schon nicht ohne. Hier lohnt sich wirklich jede Aussparung um das Gewicht zu reduzieren. Vorsicht auch bei anotisiertem Aluminium, hier könnte die Verbindung unter Umständen leiden. Vermutlich geht es auch, wenn man ein Gewinde in die Platte schneidet und die Platine so mit der Grundplatte verbindet.
LeeMajors
10.02.2014, 15:05
...ich glaube, ich lass das besser. Alu hat ein Gewicht von 2,7g/cm³, die 3D-Teile sind aus so einer Art Nylon Zeugs mit einem Gewicht von 0,93g/cm³.
Ich gehe mal von 4mm Stärke für die Basisplatte aus und dank Aussparungen von ca. 300cm².
Dann wäre das in Alu 0,25cm x 300cm = 75cm³ -> 202g
...in Nylon 3D Druck 0,4cm x 300cm = 120cm³ -> 112g
Praktisch hin- oder her, ich nehme Kabel, so schwer können die gar nicht werden. ;-)
Einer meiner Roboter ist ausschliesslich aus 1mm Alu gebaut und sehr stabil. Man muss das Alu halt abkanten. Die Falze machen es sehr steif. Alu ist darüber hinaus auch ein hervorragender Leiter. Die Anschlüsse macht man mit einem an das Kabel gepressten Ring, der auf die Platte geschraubt wird. Aber Gewicht spart man gegenüber einer guten Verkabelung nicht. Abgesehen davon ist die Motor-Masse nicht unbedingt die gleiche wie die Logik-Masse, also noch mehr Gefahr für Kurzschlüsse.
Die Spannung für die Servos wird nicht reguliert und kann für die Standard R/C Dinger ruhig auch bei 7,2 V liegen. Die Logik Stromversorgung muss gepuffert und gefiltert werden, wenn sie vom gleichen Akku kommt (Diode, Filter, Kondensator, Regler, Kondensator).
HannoHupmann
11.02.2014, 09:32
Bei einem Hexa mit Servos sollte die Motormasse schon mit der Logik-Masse verbunden sein, sonst gibts fiese Zuckungen in den Servos.
Mein Vinculum verwendet Dibond als Basismaterial (0,5mm Aluminium 3mm Plastik und nochmal 0,5mm Aluminium), sehr stabil und sehr leicht. Freaks verwenden CFK und werden noch leichter. Billiger und auch leicht zu bearbeiten ist Polycarbonat/Lexan. Das schöne an einem Hexabot ist eigentlich, dass er sich fast komplett aus Plattenmaterial aufbauen lässt. Phoenix² habe ich noch komplett selbst mit der Laubsäge ausgesägt und mit der Hand gefeilt.
Bei einigen Servos muss man leider sehr genau 6V bereit stellen, sonst werden die unwillig, gerade die China-Servos sind da etwas empfindlich. Bei HiTec habe ich auch keine Probleme mit 7,2V. Daher SBEC mit 20A und schöner 6V Ausgangsspannung.
@Movido kannst du für deine Pufferschaltung einen Schaltplan posten? Würde mich interessieren wie du das aufgebaut hast.
LeeMajors
11.02.2014, 10:10
Wegen der Spannung: 6V wäre mit auch lieber, aber das Beaglebone brauch 5V, daher wollte ich alles mit 5V betreiben.
Das Turnigy TGY-5513MD wird mit 4.8~6V angegeben. Daher bin ich davon ausgegangen, dass es mit 5V klappen sollte - liege ich da falsch?
...sonst müsste ich mit 2 BECs arbeiten, was wieder Gekabels, Gewicht und Platzprobleme erhöht...
Ansonsten, movido, meinst du damit, man kann normale Servos in der Regel wie Hochstrom-Servos behandeln? Außerdem sind es ja bei vollgeladenem Akku 8.4V und nicht nur 7.2V!?
Du solltest so oder so zwei BECs verwenden, denn die ganzen störungen, die von den Servos kommen können, willst du garnicht auf deiner Logik Platine haben.
Die eleganteste (aber auch schwerste) Lösung wäre sogar ein kleiner Logik Akku und ein Großer LiPo für die Servos.
Um größere Elkos auf der Servoseite solltest du auch einplanen.
LeeMajors
11.02.2014, 11:05
Hmm... 2 BECs wären ja quasi vorhanden, 6V für die Servos hört sich auch gut an.
Als Elektronik-Dau:
- Sollen die "größeren Elkos" Störungen ausfiltern, oder Stromspitzen befüttern?
- Müssen die vorhandenen ausgelötet werden, oder kann ich die großen parallel betreiben.
- ...eigentlich braucht doch nur das Servo-BEC die Elkos - oder? Am 5V BEC hängt nur das Beaglebone und 2 Maestroboards.
- Was für Elkos nehme ich da?
- Gibt das am Anfang, wenn die sich aufladen, nicht erstmal sowas wie fast einen Kurzschluss?
- Dadurch das deine Servos sehr viel Strom beim anfahren ziehen, brechen deine 6V zwangäufig ein. Das sollen die Elkos dann verhindern. Das liegt an der Trägheit des BECs, wenn du die Servos direkt mit einem Lipo versogen könntest, sollte so etwas nicht auftreten, bzw. nicht so Stark. Welche Größe man benötigt, hängt also vom BEC ab, wie schnell dieses Nachregeln kann. Hanno hat bei seinem Hexa 7x2200µF verwendet. Was auch helfen kann, die Servos nacheinander anzusteuern und so die Last auf die 20ms Pulse zu verteilen, das muss aber deine Steuerung unterstützen.
- Der im BEC vorhandene Elko (und auch die in den Servos, falls du das meinst) bleiben vorhanden. Im idealfall baust du dir dann eine kleine Elko Batterie pro Bein mit ca. 2000µF. Genaue Werte musst du aber an deinen Servos ermitteln, da die Leitungslänge und das ansteuern der Servos da eine große Rolle spielen.
- Genau, die Elkos nur in die Servo Versorgung einbauen.
- Zum Kurzschluss, theoretisch ja, aber durch den BEC sollte da eigentlich nichts passieren.
HannoHupmann
11.02.2014, 11:35
Ich hatte das doch schon an meinem Projekt gezeigt, aber gut:
1) Ich habe einen SBEC mit 20A @6V für die Servos, dahinter eine sehr dicke Kondensatorbank mit 6800µF (Elko, bin mir über den Wert gerade nimmer ganz sicher @robin) für jedes Bein also sechs mal das ganze! Parallel verschaltet. Zusätzlich sind am Bein noch 100µF und 100nF für jedes Bein verbaut.
2) Die Logik wird aus einem 9V Block separat gespeist mit gemeinsamen GND. 2 DC/DC Regler setzen die Spannung um auf 3,3V und 5V sowie ein StepUp Wandler für 12V. Da die Logik nicht so viel Strom zieht reichen hier je 1A, die 12V sind für die LED Beleuchtung.
3) Die µC Boards haben noch mal ein paar eigene Kondensatoren drauf, aber die sind eher zu vernachlässigen klein.
Kurzschluss gibt es da nicht, aber es dauert einen Moment bis die Kondensatoren aufgeladen sind, allerdings dauert es noch länger bis sich diese wieder entladen haben nach dem Abschalten.
So sieht dass dann bei mir aus, wobei das noch die alte Platine (ganz rechts unten) ist mit Festspannungsreglern, diese wurden jetzt durch DC/DC Regler ersetzt.
Darüber (rechts oben) ist der SBEC mit 20A und 6V, der ist an die Kondensatoren (rechts Mitte) angeschlossen. Unter den Kondensatoren sieht man die Goldkontakte hier werden die 6 Beine angesteckt. Nicht auf dem Bild: Für jedes Bein gibt es eine kleinere Verteilerplatine, hier können jeweils 3 Servos angeschlossen werden. Die Logiksignale werden hier von der Spannungsversorgung getrennt und an den µC weitergeleitet (siehe Stecker ganz links, auf dem linken Board) und die Stromversorgung der Servos hat hier nochmal zwei Kondensatoren (100nF und 100µF) für kleine Spitzen. Zusätzlich bekommt jeder Servo noch einen Ferritkern in seine Zuleitung als Drossel was die Signale noch etwas verbessert.
http://www.thomasboegle.de/pics/vinculum/photo0484.JPG
Links sind die beiden Controller Platinen. Ganz links: Servocontroller und Links Mitte, Licht und Sonstiges.
Wie habe ich die Größe der Kondensatoren ermittelt? Mit dem Oszi die Versorgungsspannung der Servos aufgenommen und die Bewegung von einem Bein abgefahren. Mit einem Steckbrett habe ich dann so lange Kondensatoren zwischen VCC und GND gesteckt bis die Spannung auf dem Oszi nicht mehr gewackelt hat und ein gerade Strich blieb. Das waren so etwa 3x 2200µF, daher pro Bein 6800µF. Danach also eine Bank mit 6x 6800µF zusammen gesteckt und alle Beine mit Last bewegt. Wieder die Spannung gemessen und Viola alles bleibt konstant und ruhig. Es hat mich selbst überrascht wie viel µF man da reinstecken muss.
Kleine Anmerkung noch: Statt 6x 6800µF könnte man natürlich auch 2x 22.000µF nehmen oder einmal 40.000µF. Eine nahe liegende Überlegung ABER: die Kondensatoren können nicht beliebig höhe Ströme versorgen. Bei angenommenen 8A Spitze, verteilt sich der Strom bei 6 Kondensatoren schön auf und jeder muss nur noch 1,33A stemmen. Mit einem einzelnen Kondensator kann es da schnell ein Wärmeproblem geben (außer man nimmt entsprechende Kondensatoren die 8A abkönnen, aber die sind im Bauraum wieder deutlich größer und schwerer).
LeeMajors
11.02.2014, 11:50
Eine Frage zu "die Stromversorgung der Servos hat hier nochmal zwei Kondensatoren (100nF und 100µF) für kleine Spitzen"
Die Kondensatoren sind doch im Grunde alle parallel geschaltet - wieso haben die kleinen Kondensatoren dann noch irgendeine Wirkung?
...ich hoffe, ich nerve nicht zu sehr mit Anfängerfragen...:rolleyes:
HannoHupmann
11.02.2014, 12:01
Irgendwie habe ich das Gefühl, dass du es aber noch nicht verstanden hast. Lass die Controllerboards erst mal außen vor. Es geht rein um die Stromversorgung der Servos. Diese brauchen einen ausreichend großen Puffer. Mit einem Oszi lässt es sich leicht "praktisch" ermitteln, welche Größe dieser Puffer haben muss. Ich habe 6 Stück eingebaut, daher versteh ich nicht warum du nur 2 Stück verwenden willst.
Wie du in meinem Aufbau sehen kannst, befindet sich der Puffer irgendwo zwischen SBEC und Servo, die Leitungslänge ist mir persönlich dabei egal gewesen. Allerdings habe ich darauf geachtet, dass der Querschnitt so lange wie möglich dick ausgeführt ist, insbesondere weil pro Bein 3 Servos versorgt sein müssen. Erst auf der "kleinen Verteilerplatine" wechsel ich auf die normalen Servokabel.
Achsja noch ein kleiner Hinweis zu LiPos, ich spendiere meinen Robotern immer einen Akkuwächter aus dem Modellbau, damit sich kein LiPo tiefentladen kann und ich die Spannung der einzelnen Zellen im Blick habe.
Geistesblitz
11.02.2014, 12:02
Mach dir keine Sorgen, mir ist das ehrlich gesagt auch immer ein Rätsel gewesen. Ich könnte mir höchstens vorstellen, dass die auf höherfrequente Störungen besser reagieren können als die dicken Teile.
Wo befindet sich eigentlich die Kondensatorbatterie? Vor oder hinter dem SBEC? Das ist mir irgendwie auch noch nicht so ganz klar.
mehr = besser = schwerer = schlechter :p gibt immer zwei Seiten einer Medaille. Du musst durch Messen und Probieren den Spannungseinbruch so Gering halten, dass er für dich Akzeptabel ist und die Servos gut funktionieren.
Ich würde es anders machen, die Servokabel so weit kürzen, dass sie die Volle beweglichkeit zulassen, aber nur bis zur Schulter kommen, dort dann pro Bein eine Kleine Elko Batterie mit 2000µF (oder 6800, dann hab ich das aus Hannos thread wohl auf die schnelle falsch verstanden) und das Controllerboard nur über Masse und Servosignal mit den Servos verbinden. Und die Elko Batterie wird dann direkt vom BEC versorgt ( ein Ring um einen Bot herum mit 6V für die Servos). Das wäre mMn. die sauberste Lösung, muss aber auch im Bot untergebracht werden können. Ansonsten ist eine große zentrale Elko-Batterie wie bei Hanno natürlich auch möglich.
E: @Geistesblitz: Die Kondensatorbank kommt hinter den BEC (also auf die Servo-Seite). Die Versorgung wird ja schon durch die Batterie (riesiger Kondensator, wenn man so will) gut genug geglättet.
LeeMajors
11.02.2014, 12:19
Ok, danke erst mal an alle! :)
@Hanno: Ich hatte deine Megapost nicht gelesen, meine Fragen bezogen sich nur auf Robin, nach deinem Post hab ich dann meins wieder gelöscht und andere Fragen reingeschrieben... klassisches Timingproblem :-p
- - - Aktualisiert - - -
Ok, eine Frage hab ich noch: :rolleyes:
So ein DC/DC Wandler mit einem Elko ist doch im Grunde das gleiche wie ein BEC - oder?
Ich würde nämlich eher zu meinem vorhandenen (kleinen) BEC für die Elektronik tendieren, da ich zumindest bei Conrad nur DC/DC Wandler bis 1.5A gefunden habe.
HannoHupmann
11.02.2014, 13:18
@robin, im Prinzip habe ich deine Idee umgesetzt. Zumindest soweit das bei dem Bauraum möglich ist. Die Servos werden an der Schulter eingesteckt, die Steuersignale und GND gehen zum µC und die Leistungsversorgung erfolgt über dicke Kupferleitungen zur Schulter. Kabel sind alle so kurz wie möglich gemacht und von der Kondensatorbank geht die Verteilung quasi Sternförmig.
Akku --> SBEC --> Kondensatoren 6x6800 --> Schulterverteilerknoten 100nF + 100µF <-- Servos
Ich hatte auch mal mit einer Ringverteilung gespielt, aber damit war ich nicht zufrieden.
Keine Ahnung wie viel Strom deine Elektronik zieht, vermutlich mehr als meine, daher wäre es mit einem BEC schon in Ordnung (ja ist genau das gleiche). Meine Logik kommt bisher auf 230mA also reicht ein DC/DC mit 1A dicke aus.
Stromversorgung der Logik und der Servos vom selben Akku: wer das "einfach so" anklemmt wird feststellen, dass die CPU auf dem Logikboard immer wieder Aussetzer hat und Resets durchführt. Schlimmstenfalls zerstört man den Controller. Der Grund ist simpel: die Servomotoren ziehen nicht nur eine Menge Strom, sie geben auch tonnenweise Störungen auf die Leitung zurück. Das liegt an den Bürsten in den Motoren, die unberechenbare Abreissfunken generieren und an den Impedanzen und Kapazitäten im System. Ausserdem saugen bei einem Laufroboter meist viele Servos gleichzeitig viel Strom, so dass die Spannung am Akku auch schon einmal wesentlich zusammen brechen kann.
Die einfachste Lösung, die ich für meinen Hexapod und meinen Octopod gefunden habe, basiert auf eine NiCad Akku mit 7,2V und ein paar Ampere. NiCad's sind "late" Technologie, funktionieren aber auch.
Der Akku versorgt direkt alle Servos mit einer Verteilung mit üppigen Querschnitt. Zusätzlich kann man vor das Servo noch einen oder mehrere Kondensatoren hängen, um die Leitungen zu entlasten. Hier sind allerdings recht hohe Kapazitäten nötig.
Der Servocontroller hängt an den selben 7,2V, die fogendermassen gefiltert werden:
. +--------+
. + -------/\/\/\---[>|--o----| 5v REG |------o-----o-------> CPU
. | +--------+ | |
. --- | --- ---
. --- | --- ---
. | | | |
. - ---------------------o--------o-----------o-----o-------> GND
Der Filter hatte IIRC 100uH und dient dazu, die hochfrequenten Störspitzen zu filtern. Die Diode ist das Magische Schwert. Sie sorgt dafür, dass die Motoren nicht den Strom aus den folgenden Pufferkondensatoren ziehen. Der erste C filtert die niederfrequenten Spitzen und muss passend zum Regulator und dem Verbraucher dimensioniert sein. Der zweite und dritte C unterstützt den Regulator.
Wenn das nicht reicht, dann schaltet man zum ersten Kondensator noch einen zweiten mit einem *anderen* Wert parallel (also z.B. 2200yF parallel mit 47uF, vielleicht noch mal 1uF). Die unterschiedlichen Kapazitäten addieren sich nicht nur einfach auf, sondern die Kondensatoren laden und entladen sich unterschiedlich schnell, so dass jeder Kondensator einen anderen Frequenzbereich der Störungen ausfiltert.
HannoHupmann
11.02.2014, 16:32
Verstanden soweit, bleibt für mich eine Frage: Was für eine Diode setzt man da am besten ein? Ich würde nämlich gerne so eine Schaltung bei meinem Vinculum einbauen.
Puh, Hanno, das weiss ich nicht mehr. Der Schaltplan ist irgendwie auch nicht mehr auf meinem Rechner. Das ist aber auch recht unkritisch. Jede Diode, die in Durchflussrichtung den Strom aushält, den der Controller benötigt +100% Sicherheit, + Versorgungsspannung x1.5, sollte reichen.
LeeMajors
11.02.2014, 18:22
Der Filter wäre dann sowas?
http://www.conrad.de/ce/de/product/433521/Talema-Drossel-DPO-DPO-20-100-open-mount-Induktivitaet-100-H-2-A?ref=searchDetail
Das gibt's auch kleiner und billiger. Such mal nach Festinduktivität oder Drossel. Hängt halt vom Strom ab, den Du brauchst:
http://de.farnell.com/murata-power-solutions/11r104c/inductor-100uh-350ma-radial-leaded/dp/1710416
oder noch kleiner für 18 Cent:
http://de.farnell.com/multicomp/mcal0410a1-101ku/inductor-100uh-275ma-10-4-8mhz/dp/1839648
Schau halt, dass der Widerstand nicht zu hoch ist.
LeeMajors
11.02.2014, 21:01
Für meinen Elektronik Kram brauche ich ein gutes Ampere, daher die fette Spule. :-)
LeeMajors
11.02.2014, 23:57
So, ich hab mal mit der Schultergelenkkombination angefangen, so dass Standard-Servos reinpassen.
Leider musste ich feststellen, dass auch bei Standard-Servos die Löcher nicht genormt sind. :mad:
D.h. die Details mach ich erst, wenn die Turnigys ankommen.
http://www.3dmax.de/forum/funstuff/no19.jpg
Im Gegensatz zur alten Spinne mit hitec-Robot-Servos hat sich der Abstand zwischen den Aufnahmen nur um 4mm vergrößert.
LeeMajors
12.02.2014, 23:44
Ein neues Bein-Konzept steht, im Prinzip so, wie die meisten Hexa-Beine aufgebaut sind, nur halt mit 3D-Teilen.
http://www.3dmax.de/forum/funstuff/no20.jpg
Die Beweglichkeit ist auf diese Art super. Rechts ist das Bein am extremsten zusammengefaltet. Bodenabstand Schultergelenk <-> Kontakt Fuß: 4,6cm.
In der Mitte ist ein realistischer Abstand: 7,6cm und ganz links wäre meine Wunschvorstellung, die noch funktionieren sollte: 14,76cm.
Bevor mir jetzt Hanno vorrechnet, dass das alles nicht klappt, komme ich ihm zuvor... ;-)
Die Servos sind mit 12,25kg/cm bei 6V angegeben. D.h. Hubkraft in der mittleren Position 12,25 * 0,8 (wegen Hub) / 7,6 = 1,29kg.
Ich schätze den Bot diesmal auf knapp 3kg. Wenn sich die Beinpaare paarweise bewegen sollen, muss auf einer Seite jeweils alles durch ein Bein gehalten werden = 1,5kg.
An dieser Stelle kann man also schon von einem Griff ins Klo sprechen.
Baue ich aber einen Okto und gehe mal von 3,5kg aus, wegen der 2 zusätzlichen Beine, dann sieht die Rechnung besser aus:
3,5kg, davon die Hälfte, verteilt auf 2 Beine = 0,875kg Last pro Servo. Damit hätte ich 47% über dem Minimum.
Das ist allerdings nicht viel. Da ich den Anspruch habe, dass er auch etwas steigen soll (keine Treppen, aber Treppchen...) dann ist da vermutlich schnell Ende im Gelände.
Ebenso darf man dann auch nicht die Dreh-Servos vernachlässigen. Wenn sich der Bot "nur" nach vorne bewegt, haben die Servos nicht viel zu tun. Bei einer Steigung oder bei Gefälle müssen diese aber ebenso mitarbeiten.
Lange Rede... falls die 12kg Servos schlapp machen, werde ich wohl für die Drehgelenke und die Schultern diese Servos nehmen:
http://www.hobbyking.com/hobbyking/store/__45859__Mi_Digital_HV_High_Torque_Metal_Gear_Serv o_31kg_0_15_60g_EU_Warehouse_.html
...die machen dann 27kg/cm bei 6V. = 225% über dem Minimum und bei der weiten Position (links im Bild) immer noch 67% über dem Minimum.
Morgen werde ich außerdem noch mal gucken, ob ich das Gummi - oder Federkonzept an den Beinen noch eingebaut bekomme...
HeXPloreR
13.02.2014, 09:47
Hallo,
ich würde den Unterschenkelservo in dieser Version direkt in den Unterschenkel setzen. Und hier vielleicht einen gewinkelten Anschluss zum Fußsegment planen.
Viele Grüße
LeeMajors
13.02.2014, 09:58
So wird das meistens gemacht - aber wieso?
Ansonsten geht ja eine Führungsstange nach oben. Das Fußelement geht quasi bis oben hin.
Ich hab mir gedacht, dass es besser ist, möglichst viel Gewicht nah am Körper (Schultergelenk) zu haben, um dieses zu entlasten - wenn auch nur mit minimaler Wirkung.
Seh auch keinen Vorteil darin, der Servo weiter nach außen zu ziehen. Das wird doch hauptsächlich nur wegen der Fertigung gemacht und da hast du mit 3D-Druck ja keine/kaum Probleme.
Wie stabil ist eigentlich das Plastik, dass du da Drucken lässt?
LeeMajors
13.02.2014, 11:46
Sehr stabil. Es ist quasi Nylon.
Bei shapeways nennen die es Strong & Flexible, das ist es auch.
D.h. wenn es dünn ist, kann man Federn oder Schnappverschlüsse, etc. damit bauen.
Es hat jedenfalls nichts mit billigem Plastik zu tun.
https://www.shapeways.com/materials/strong-and-flexible-plastic?li=nav
HannoHupmann
13.02.2014, 13:18
Bevor mir jetzt Hanno vorrechnet, dass das alles nicht klappt, komme ich ihm zuvor... :wink:
Die Servos sind mit 12,25kg/cm bei 6V angegeben. D.h. Hubkraft in der mittleren Position 12,25 * 0,8 (wegen Hub) / 7,6 = 1,29kg.
Ich schätze den Bot diesmal auf knapp 3kg. Wenn sich die Beinpaare paarweise bewegen sollen, muss auf einer Seite jeweils alles durch ein Bein gehalten werden = 1,5kg.
An dieser Stelle kann man also schon von einem Griff ins Klo sprechen.
Der Hanno rechnet das aber trotzdem noch mal nach, denn ganz richtig ist es leider nicht. Denn dein Roboter könnte in der oben genannten Konfiguration 3,87kg schwer sein. Kleiner Exkurs: Es gibt für einen Hexa drei mögliche Lauf-Algorithmen: 1) 5 Beine auf dem Boden 1 in der Luft, das Gewicht teilt sich auf 5 Beine auf. 2) 4 Beine auf dem Boden 2 in der Luft, Gewicht / 4 oder 3) 3 Beine Boden, 3 Beine Luft das Gewicht teilt sich auf 3 Beine auf, wie in deinem Fall. Niemals aber kann sich die Gewichtskraft einseitig aufteilen wie bei dir gerechnet. Die 3 Füsse auf dem Boden bilden ein Dreieck und dessen Schwerpunkt ist irgendwo in der Mitte, d.h. die Gewichtskraft teilt sich homogen auf alle Beine auf, außer: der Roboter hat Schlagseite! Bei 1,5kg auf einer Seite muss er aber schon sehr starke Schlagseite haben und dann kippt er vermutlich eh um.
Für Treppensteigen würde ich auf Algorithmus 1 zurück greifen und mit 5 Beinen den Roboter stabilisieren. Bei meinem Vinculum habe ich die Programmierung so aufgezogen, dass ich beliebig zwischen den Algorithmen wechseln kann. D.h. im Moment kann ich 2 Schritte mit 5:1 laufen und dann auf 3:3 wechseln, wenn der Weg frei ist und es schnell voran gehen soll.
Wenn man schon druckt und dafür viel Geld ausgibt dann sollte der Oberschenkel besser designed sein, denn dieses Design, wird von allen nur deswegen verwendet, ist für die Herstellung aus Plattenmaterial gedacht. Dabei ist es schwierig das ganze verwindungssteif auszuführen. Abgesehen davon könnte man zur Gewichtsersparnis gleich noch ein paar Aussparungen ein designen.
Der Servo wird in den Oberschenkel gesetzt damit so wenig Masse wie möglich an der Fusspitze ist, denn je weiter draußen die Servos desto mehr Hebelarm für die Schulter beim anheben. Das fällt bei diesen Servos zwar nicht ins Gewicht, denn Drehmoment ist genug da, aber: 1) Masse ist immer Träge und der Roboter tendiert dazu mir ihr zu wackeln und 2) je weniger Energie für sowas verbraucht wird, desto länger "läuft" der Roboter. Unterm Strich sollten die Servos also so nah wie möglich am Körper sein!
HeXPloreR
13.02.2014, 13:51
Ich dachte so, das Servo in der Ansicht ganz rechts um ca 50° (oder was auch immer der winkel aktuell wäre) im Uhrzeigersinn zu drehen. Damit hättest Du vermutlich etwa das Gewicht der "Führungsstange" eingespart. Das "Haltergehäuse" dann in der Verlängerung vom Fuß (ohne diesen Winkelansatzl).
Der Grund warum ich das Voschlug ist einfach der dass das Material ja nun auch Geld kostet, und je weniger man davon benutzen muss, weil man ein Servogehäuse integriert umso besser. Außerdem das Gewicht der Servos hast Du immer - da kann man nicht mehr viel dran machen.
Oder wie Hanno gut angedeutet hat zwecks noch bessere Massenverteilung in den Oberschenkel setzen (den Gelenkanschluss dort quasi umkehren) Hier hättest Du dann den Vorteil dass das Kabel über eine Gelenk weniger geführt werden könnte. Und den Platz dafür hast Du anscheinend auch.
LeeMajors
13.02.2014, 14:20
Hm... stimmt. Zumindest, wenn man darauf achtet, dass man die Beine so anordnet, dass die 3 Beine, die auf dem Boden sind, ca. 120° bilden. Je näher die 2 Beine, die auf einer Seite das Gewicht tragen, zusammen stehen, desto schwerer wird es für das eine gegenüberliegende Bein. Ein anderer Punkt ist aber, dass sich ja der Robot während des Schritts verschiebt, d. h. beim Schritt nach vorne ist der Schwerpunkt auch weiter vorne und die vorher beschriebene Ideal-Konstellation wieder über den Haufen wirft.
Im idealen Fall wäre ich beim Hexapod 30% über dem Minimum. Wie weit ich mich vom Ideal entferne, hängt von den Schrittweiten ab, auf alle Fälle wird es ziemlich eng.
Auf alle Fälle hat mir die Rechnung gezeigt, dass der Vorteil durch einen Oktopod nicht mehr so groß ist. Ich sollte wohl direkt die Schulter-Servos stark auslegen.
Zum Bein-Design: Form follows function. Ich hab beim Oberschenkel sogar mit graden Platten angefangen. Da die aber beim Hochfahren an den anderen Servoträger gekommen sind, ist die leichte Kurve drin.
In der Mitte brauche ich Luft, damit die Servos durchschwingen können, da ich auf alle Fälle mit einem Gegenlager arbeiten möchte. In der Mitte sind 2 gebogene Platten. Man sieht es in der Darstellung nicht so gut, aber da passen die Servos genau durch.
Mehr Platz ist in der Mitte nicht vorhanden. Die Aussparungen mache ich allerdings noch.
Servo in den Oberschenkel - das ist bei der Konstruktion durch das Gegenlager und damit 2 Platten nicht möglich. (Außer, die Gabel verjüngt sich wieder zu einer Platte, aber dann ist die Servoplatte für den Unterschenkel nicht in der Mitte, ...usw.) Allerdings ist diese Stellung normalerweise noch besser, da so noch mehr Gewicht näher am Körper ist.
HeXPloreR
13.02.2014, 16:43
Hm... stimmt. Zumindest, wenn man darauf achtet, dass man die Beine so anordnet, dass die 3 Beine, die auf dem Boden sind, ca. 120° bilden. Je näher die 2 Beine, die auf einer Seite das Gewicht tragen, zusammen stehen, desto schwerer wird es für das eine gegenüberliegende Bein. Ein anderer Punkt ist aber, dass sich ja der Robot während des Schritts verschiebt, d. h. beim Schritt nach vorne ist der Schwerpunkt auch weiter vorne und die vorher beschriebene Ideal-Konstellation wieder über den Haufen wirft. Es gibt während der Bewegung keine ideale Konstellation der Gelenkwinkel. Wenn die Beine (mal zufällig) 120° bilden sollten, dann ist dieser Moment auch gleich wieder vorbei.
Du kannst alles zusammen bauen wie Du möchtest, die minimalen Abstände gibt Dir die Mechanik vor, also u.a. Deinen eigene Konstruktion sowie Servogröße. Die maximalen Abstände werden durch die Leistung der Servos/Motoren bestimmt. Diese Erfahrung hast Du ja nun schon angenommen. Je länger das Bein umso mehr Kraft müssen sie haben.
Die Schrittweite hängt von der Konstruktion ab, also der Beinabstand und das damit aufspannende Dreieck. Verlasst der Schwerpunkt das Dreieck kippt der Hexa um. Daher kannst Du mit dem maximalen Beinabstand zwar rechnen, darfst den aber niemals übersteigen. Und die Sicherhietsrechnug darf mit dem Sicherheitswert diese Grenze auch nicht übersteigen. Wenn Du also 15cm Abstand (Fußpunkt-Hüfte) hast, und möchtest 50% Sicherheit erhalten, dann darfst/kannst Du "nur" mit 10cm rechnen bzw das ist der Wert in dem sich später die IK bewegen darf.
Dazu kommt, weil sich ja die Winkel während der Bewegung verschieben, noch die Triangulation am Bein. Also hier dürfen dann die 10cm auch nicht überschritten werden. Allerdings darfst Du auch das Minimum nicht unterschreiten, da Du sonst mit anderen Bauteile kollidierst.
Auf alle Fälle hat mir die Rechnung gezeigt, dass der Vorteil durch einen Oktopod nicht mehr so groß ist. Ich sollte wohl direkt die Schulter-Servos stark auslegen.
Nur um Verwirrung entgegen zu wirken: Der erste Servo ist der Hüftservo, dann kommt der Oberschenkelservo - diese bilden zusammen die Hüftservoeinheit. Dann kommt der Unterschenkel- (oder Knie-) Servo. Da wir ja eigentlich von Beinen sprechen ist es (für mich jedenfalls) immer gut verwirrend wenn auf einmal etwas von Schulter geschrieben wird...und welchen davon meint man nun.
Servo in den Oberschenkel - das ist bei der Konstruktion durch das Gegenlager und damit 2 Platten nicht möglich. (Außer, die Gabel verjüngt sich wieder zu einer Platte, aber dann ist die Servoplatte für den Unterschenkel nicht in der Mitte, ...usw.) Allerdings ist diese Stellung normalerweise noch besser, da so noch mehr Gewicht näher am Körper ist.
Doch ist möglich. Du kannst den Unterschenkelservo in den Oberschenkel integrieren indem Du den Oberschenkel halbierst.
Der Hüftservospline und der Fußpunkt sollten auf einer Achse liegen. Der ganze Rest dazwischen kann theoretisch bis nach Rom gebaut werden. Du kannst also theoretisch innerhalb der Breite von den beiden Oberschenkeln den Fußpunkt verschieben - mit der Hüftservoachse.
Deswegen hatte ich vorgeschlagen den Unterschenkelservo in den Unterschenkel einzubauen, dann bräuchtest Du nur den Unterschenkel ändern.
Aber ich meinte auch gesehen zu haben das dort ja auch dein Fußsensor drin ist...
LeeMajors
14.02.2014, 00:12
Wie gesagt, wegen dem Fuß klappt diese Art der Konstruktion bei mir nicht so richtig - zumal ich die Lösung so eigentlich ganz gut finde. Einziger Nachteil ist das Kabel, welches ich über das Knie-Servo führen muss, aber da läuft ohnehin ein Kabel drüber, das vom Drucksensor. Der Fuß sieht aufgeschnitten so aus:
http://www.3dmax.de/forum/funstuff/no21.jpg
Von unten: Das Gelbe Teil hat oben auf der Säule ein kleines Gummiplättchen. Darüber sitzt der Drucksensor - der sitzt in der superflachen Ritze zwischen grünem und rosa Teil. Das gelbe Teil ist im grünen um 1.5mm beweglich. Es wird aber durch das Gummi immer auseinander gedrückt. (Ganz leicht.) Setzt das Bein auf, wird der Druck auf den Drucksensor konzentriert. Durch die Mechanik ist es fast egal, ob der Fuß in der Mitte oder außen aufsetzt.
Das pinke Teil wird oben durch das blaue Teil geführt. Dann gibt es 4 Pinne die nach unten in das pinke Teil ragen. Links kann man eins davon sehen. Da muss man sich jetzt noch eine Feder hin denken. Man kann zwischen 1-4 Feder im Fuß einbauen, je nachdem wie weich er aufsetzen soll. Der Fuß kann einen guten cm federn.
Die Gummis (oder Federn) wollte ich gemäß Geistesblitz' Idee aufbauen, nur dazu hätten die Gummis außen angebracht werden müssen und die ohnehin breiten Beine noch breiter gemacht und die Beweglichkeit eingeschränkt. Der Effekt ist in leichter Form allerdings auch so vorhanden.
http://www.3dmax.de/forum/funstuff/no22.jpg
...wie ich gerade feststelle, fehlen noch die Aussparungen in den Seitenteilen - die kommen noch. :-)
HeXPloreR
14.02.2014, 08:01
Okay, vielen Dank. Es ist natürlich kein Problem den Servo so zu lassen, denn nur allein um vielleicht einige Gramm Gewicht hier zu sparen alles über den haufen zu werfen ist nicht nötig.
Aber ich sehe jetzt ein neues Problem: Und zwar der Drucksensor in Kombination mit dieser Federung. Wenn Du das so baust, dann benötigst Du in der Federung einen Sensor der die Einfederung messen kann. Der Drucksensor kann das nicht - es sei denn Du bekommmst diese beiden Dinge in Beziehung gesetzt. ich wüßte nicht wie und könnte es demanch nicht.
Das Problem setzt sich in der inversen Kinematik fort - dort bekommst du je nach Einfederung andere Längen im Unterschenkel. Das könnte später ein riesen Problem sein, um den Roboter stabil laufen zu lassen.
Mein Vorschlag dazu: Nimm die Federung raus - oder fixiere sie zu mindest vorerst. Ein oder zwei Stifte durch beide oberen Teile (Stange im Zylinder) sollte dazu genügen.
Viele Grüße
LeeMajors
14.02.2014, 08:27
Die Federung kann man als Stoßdämpfer bezeichnen. Die soll auf alle Fälle so stark sein, dass sie nur beim Kontakt mit dem Boden den Stoß abfängt und sich dann wieder auseinander drückt.
Am Drucksensor messe ich bei Bodenkontakt nur einen plötzlichen Anstieg des Drucks, mehr ist nicht nötig. Für genaue Messungen sollte der Bot still stehen.
Geistesblitz
14.02.2014, 10:06
Dämpft da der Gummifuß nicht schon genug?
Sehe da nämlich auch das Problem, dass dein Stoßdämpfer zu sehr eindrücken könnte und da das überhaupt nicht gemessen wird, weiß der Roboter auch nix davon. Es gäbe ja auch die Möglichkeit, über die Einfederung auf die Fußkraft zu schließen, aber bei beiden Möglichkeiten hast du das Problem, dass der Wert, den du bekommst, wom Winkel des Unterschenkels abhängt. Wenn jetzt mal ganz übertrieben gesagt zum Beispiel der Unterschenkel ganz waagerecht auf der Unterlage stehen würde, würde der Drucksensor gar nix messen, wenn er im 45°-Winkel steht misst er nur noch das 1/wurzel(2)-fache vom tatsächlichen Wert usw. Müsste also in der Software berücksichtigt werden.
Wenn die Gummis/Federn so angebracht sind, bringt es glaub ich auch nicht mehr viel, da kannst die gleich weglassen...
Noch ne andere Sache, vielleicht hab ich es auch einfach übersehen: Wie verhinderst du, dass der Fuß einfach aus dem Unterschenkel rausrutscht?
LeeMajors
14.02.2014, 10:50
Da ich ein Bein mit Fuß ja schon (in x Versuchen) gebaut habe, kann ich auch sagen, dass alles funktioniert. :-)
Das "Gummiteil" am Fuß ist kein Gummi und völlig starr. Der Unterschied zum weißen Material ist, dass es nicht rutscht und sich durch die Noppen geschätzt vielleicht einen Viertel Millimeter eindrückt.
Die Federung ist vermutlich nach einer geschätzten 10tel Sekunde wieder auseinander gedrückt.
Zum Druck hab ich schon gesagt, dass ich beim Laufen nur den plötzlichen Anstieg des Drucks messen werde. Für eine vernünftige Messung muss der Bot natürlich nicht nur still stehen, sondern auch seine Füße senkrecht stellen. - Aber ich hatte auch nicht vor, ihn als Haushaltswaage zu misbrauchen. :-p
Achso - zum rausrutschen: Da ist ein Schnappverschluss rechts und links. Einen sieht man auf dem letzten Rendering.
LeeMajors
15.02.2014, 01:29
Bein Update:
http://www.3dmax.de/forum/funstuff/no23.jpg
Die Formteile um den Fuß werden 3 Schalter, die eine Kollision messen können.
LeeMajors
23.02.2014, 22:02
Langsam geht es weiter - die Details machen ja immer mehr Arbeit als der Rest. :-)
http://www.3dmax.de/forum/funstuff/no24.jpg
Zu sehen sind die Kupferkabel, die die Kontakte auslösen, wenn der Fuß irgendwo kollidiert. (Ich hab mir jetzt mal gespart, die Kabel in 3D zu verlöten ;-) ) Es gibt 4 von diesen "Platten", wobei die zum Körper gewandte Platte fix am Fuß ist. Die anderen haben die Leitungen, die jeweilt bei Kollision einen Kontakt auslösen. Durch verschiedene Widerstände (Spannungsteiler) kann man an Hand der Spannung auslesen, welcher der Platten Kontakt haben.
Ansonsten werde ich jetzt vom Beaglebone zu diesem Vertreter schwenken: http://www.wandboard.org/index.php/details
Die Platine mit dem Quad verwendet nahezu die gleiche CPU, die auch im HTC One X verbaut ist. (Da ist noch ein 5. Kern für den Stromsparmodus draufgepappt.) Und da man mit Phyton auch mehrere Kerne ansprechen kann, ist das Teil in meinen Augen ideal.
HannoHupmann
24.02.2014, 10:28
Ich kann mir ehrlich gesagt gerade nicht vorstellen, wie man den Widerstand einbauen kann ohne die Anschlussdrähte zu verbiegen.
LeeMajors
24.02.2014, 11:49
Deswegen sind ja die Halter weiter entfernt, als der Widerstand groß ist. Die Drähte müssen danach ja nicht 1a gerade bleiben.
HannoHupmann
24.02.2014, 12:53
Ja schon, aber warum so kompliziert? Ich meine, wenn ich es recht verstehe, dann wird der Widerstand an den Kupferdraht gelötet oder? In dem Fall würde ich mir die untere Öse für den Widerstand sparen und diese nur oben durch die Führungsöse fädeln. Da er unten an den Kupferdraht (der ja auch in einer Öse geführt wird) gelötet wird, ist er fixiert. Das ganze funktioniert nun ohne lästiges einfädeln o.ä. Verlöten muss man es natürlich immer im aufgebauten Zustand und riskieren, dass das Plastik schmilzt.
LeeMajors
24.02.2014, 14:13
Das ist mir zu wackelig. Wenn man oberhalb der oberen Öse rumwackelt, wackelt der Rest ggfs.mit. Da kommen ja ne Menge Kabel und Widerstände zusammen, die oben irgendwo in den Fuß müssen und die ich so nicht dargestellt habe. Das ist dann später wie Mikado spielen, wenn man es zu wackelig aufbaut....
Ansonsten sind an den Stellen, wo man löten muss, entsprechende Aussparungen, so dass der Kunsstoff immer etwas entfernt ist. Man muss dann möglicherweise noch mit Zangen arbeiten, die die Hitze ab einer bestimmten Position ableiten, bevor der Draht wieder in den Kunsstoff ragt.
HannoHupmann
24.02.2014, 16:05
Na wenn du meinst, ich bin mir zwar ziemlich sicher, dass da nix wackelt, aber jeder darf die Erfahrung machen, dass CAD leicht zu konstruieren ist und real fummelig zu montieren.
Zum Board: Absoluter Overkill, braucht kein Mensch soviel Leistung für so ein System. Abgesehen davon ist es leichter mit µC Hardwarenahe zu programmieren. Wenn es schon ein Board sein soll und kein µC (was ich nicht weiter verstehen muss), dann würde ich wohl wirklich auf ein embedded Board setzen. Da gibt es Mittlerweile eine so große Auswahl an Lösungen, dass es auch schon sehr leistungsfähige Boards mit niedrigem Stromverbrauch gibt. Das Quad braucht 10Watt, da gibt es genug Embedded Boards die mit 1 bis 2Watt auskommen. Die Laufzeit des Hexas würde mit einem niedrigeren Verbrauch signifikant gesteigert werden. Ganz abgesehen davon, dass ein kleineres Board auch viel weniger wiegt.
LeeMajors
24.02.2014, 16:47
Ich war fast sicher, dass eine solche Antwort kommt... :rolleyes:
Bevor ich hier eine Diskussion anzettel - gibt es ein paar Beispiele, wo einer eurer n-Pods zügig umher läuft (so schnell, wie es die Servos erlauben), Hindernissen ausweicht, etc.
Ich finde auf YouTube meist nur kleine Test-Läufe, ruckelige, oder sehr langsame Robots.
HeXPloreR
24.02.2014, 17:50
...
Ja, richtig gibt es ein paar Beispiele, wo einer eurer n-Pods zügig umher läuft (so schnell, wie es die Servos erlauben), Hindernissen ausweicht, etc.
Ich finde auf YouTube meist nur kleine Test-Läufe, ruckelige, oder sehr langsame Robots.
Ja, richtig...und vermutlich wird sich Deiner sehr bald dazu gesellen. Du wirst schon noch früh genug feststellen das Du keinen Rennwagen baust und DEIN Werk nicht mit maximal Geschwindigkeit an die Wand fahren willst.
LeeMajors
24.02.2014, 18:47
Mir ist klar, dass es keine Rennwagen sind, aber sowas ist doch bereits möglich, wenn auch in einem kommerziellen Produkt:
http://youtu.be/-vVblGlIMgw
Dass man am Anfang alles superlangsam laufen lässt, solange man die Software entwickelt und testet ist klar, aber irgendwann sollte man doch diese Bremse einmal lösen.
Mir geht es bei meiner Frage darum, zu sehen, was mit µC möglich ist.
Ich habe mich damals für eine Hybridversion entschieden: die Motore werden von einem Microcontroller gesteuert, damit sie sich genau an den Heartbeat von 100/s halten. Steuercomputer war einfach ein Smartphone über RS232. So musste der Steuerrechner kein RTOS haben und wurde nicht vom Timing laufend unterbrochen. Die RS232-Befehle waren dann recht simpel. Heute würde ich natürlich USB verwenden - oder sogar Bluetooth, dann kann man auch mal nur die Mechanik vom PC kontrollieren.
HannoHupmann
24.02.2014, 23:18
Ruckeln und langsam ist keine Funktion der Prozessorleistung! Viel mehr eine Frage der Programmierung und der Mathematik die dort implementiert wurde. Meine ersten Hexas liefen sehr ruckelig und langsam und mit jeder Version werden sie "geschmeidiger".
Die Geschwindigkeit hängt von den Servos ab bzw. der Stellgeschwindigkeit. Mit Modellbauservos geht nicht viel mehr als 20ms pro Richtungsänderung.
Matt Denton hat da eigentlich gezeigt was mit Modellbauservos möglich ist.
https://www.youtube.com/watch?v=quN37YskoaM&list=TLnFHNHylBhS0TmluoOLaW_5n2A0Wk--57
Die PhantomX hexas sind dann in Sachen Geschwindigkeit sehr beeindruckend schnell:
https://www.youtube.com/watch?v=lnCOLP33Te0
LeeMajors
25.02.2014, 08:38
Die PhantomX Teile sind ja beeindruckend!
Ich gebe dir auch Recht, dass das Quadcore-Board oversized ist. Allerdings bin ich (zumindest momentan) noch zu doof um C zu programmieren und möchte es über Python realisieren, was als Interpretersprache natürlich Performance schluckt. Zum anderen denke ich, dass man es über ein komplettes Betriebssystem leichter hat, den Bot mit anderen Rechnern anzubinden. Alles ist auch sicher mit µCs möglich, aber sicher nicht so komfortabel = schnell umgesetzt.
"Ruckeln und langsam ist keine Funktion der Prozessorleistung!" -> Schon, aber weiche Abläufe sind mathematisch komplexer -> geht auf die Performance, genau so wie öfter die Sensoren auslesen und auswerten. Öfter Auslesen -> man kann den Bot vermutlich schneller laufen lassen, weil Kollisionen schneller erkannt werden.
Und falls sich rausstellt, dass sich mein Quad furchtbar langweilt, kann ich ja auch wieder zurück aufs Beaglebone schwenken. :-)
HannoHupmann
25.02.2014, 10:19
Ich dachte mehr an ein kleines embedded Linux Board, z.b. das Himbeerdings. Allerdings muss ich gestehen, dass ich mit Linux persönlich nicht zurecht komme, ein paar mal habe ich schon den Umstieg versucht, aber bisher hat es nie geklappt. Auf denen läuft dann auch Python! Ansonsten würde ich sagen, dass es eine Frage der Reichweite der Sensoren ist. Bei 5m Reichweite, kann ich den Sensor auch bequem nur alle paar Meter auslesen. Hexas sind in der Regel nicht so schnell, dass sie mehrere Meter in der Sekunde überbrücken. Klar, wenn die Sensoren nur 10cm Reichweite haben wird es Probleme geben, aber wer verwendet schon solche Sensoren?
Mein Vinculum hat einen 8 Core µC bekommen mit 80MHz, damit lässt sich schon einiges machen, die Servos limitieren dann als nächstes die "geschmeidigen Bewegungen"
LeeMajors
25.02.2014, 11:25
Ich dachte auch eher an die Druck- und Kollisions-Sensoren der Füße. Das Teil soll ja durch unebenes Gelände und muss merken, wann der Boden da ist.
LeeMajors
16.03.2014, 22:12
So, das "Wandboard" hat mich doch etwas länger aufgehalten, weil ich ja auch kein Linux-Crack bin. LAN + WLAN mit automatisch verbinden ist nicht so einfach, wenn man bei Ubuntu den Klickibunti X-Desktop deinstallieren muss...
Das Hexabein ist erst mal fertig und in der ersten Version bei shapeways in Bearbeitung. Die Details zu modellieren dauert dann doch immer etwas länger...
Das Ergebnis: Vom alten großen Spiderbein aufs kleine Hexabein gibt es eine kräftige Gewichtsersparnis bzgl. der 3D-Teile. Alt = 217g, neu = 123g (Ebenso hat sich der Preis von EUR 155 auf EUR 97 reduziert.)
Auf verschraubbare Teile hab ich diesmal verzichtet - alles was "angebaut" werden muss, wird mit Schnapp-Mechanismus realisiert. Jetzt heißt es erst mal ca. 3 Wochen abwarten...
http://www.3dmax.de/forum/funstuff/no25.jpg
http://www.3dmax.de/forum/funstuff/no26.jpg
Das nächste Bild zeigt, wie der Kram zu shapeways geht. Dort gibt es kräftig Rabatt, wenn das Material mehr als 10% vom Gesamtvolumen ausmacht.
http://www.3dmax.de/forum/funstuff/no27.jpg
LeeMajors
31.03.2014, 22:22
So, der Kram ist von Shapeways angekommen.
:cheesy:
http://www.3dmax.de/forum/funstuff/no28.jpg
http://www.3dmax.de/forum/funstuff/no29.jpg
http://www.3dmax.de/forum/funstuff/no30.jpg
http://www.3dmax.de/forum/funstuff/no31.jpg
Die Halterungen für die Servos passen 1a, aber ganz ohne aber ging es auch diesmal nicht. Der stossgedämpfte Fuß scheuert an einer Stelle etwas und ich werde mich von den Kontakt-Drähten verabschieden. Die äußeren Kunststoffteile am Fuß müssten sehr viel stabiler ausgelegt werden und besser verankert werden. Außerdem ist im inneren doch zu wenig Platz. Da käme irgendeine fehleranfällige Sache raus, also weg damit.
Die Verkleidung des Beins auf der linken Seite passt leider auch nicht - kommt davon, wenn man nicht jede Schraube mit modelliert - die sind zu fett und passen nicht mehr unter das Gehäuse.
Und schließlich muss ich noch die Schlaufen für die Kabelbinder teilweise anders machen...
In der virtuellen Welt hab ich jetzt mit dem Körper angefangen:
http://www.3dmax.de/forum/funstuff/no32.jpg
...und es handelt sich nicht um Laser, sondern nur um Distanzsensoren. Die Linien zeigen in Richtung der Messung. Der oberste, sehr schräge Sensor ist dazu da, um zu sehen, ob es irgendwo abwärts geht.
HannoHupmann
01.04.2014, 08:34
Bei der Sensoranordnung könnte ich mir vorstellen, dass es zu einem "übersprechen" kommen kann. Die 4 Sensoren liegen sehr dicht zusammen und es wäre daher möglich, dass das Licht eines Sensors eine Fehlmessung auf dem Sensor des Nachbarn auslöst. Insbesondere weil IR Licht sich dann doch eher Wellenförmig ausbreitet.
Die Teile sehen natürlich klasse aus - keine Frage - aber dafür zahlt man eben auch entsprechende Preise.
Der Körper sieht klassisch aus, wie man es schon bei einigen Hexas gesehen hat. Soweit so gut, aber es gibt kaum "Grundflächen" auf der man Platinen und Co befestigen kann und er wirkt sehr "eng" In der Regel sind im Inneren jede Menge Kabel verbaut und dann kann es sehr schnell eng werden. Ich schätze mittlerweile sehr, dass ich alle Platinen ohne großen Aufwand auf einen Rutsch ausbauen kann. Wobei ich hier noch weitere Verbesserungsmöglichkeiten sehe.
LeeMajors
01.04.2014, 11:03
Mit den Sensoren sehe ich keine Probleme. Die alte Spinne hatte auch schon 4 Stück, fast genau so angeordnet, und die haben wunderbar funktioniert. (S. das Video mit dem Blatt davor).
Die Alternative wäre ein beweglicher Sensor mit 2 Servos - das nimmt wieder Platz in Anspruch und Gewicht und vor allem ist das nicht gleichzeitig auslesbar. Auch wenn sich der Hexa nur langsam bewegt, müsste er im Grunde jedesmal anhalten um die Messungen vorzunehmen. Hier kann ich das in einem Rutsch auslesen. (...und ich hab ja schon 4 Sensoren und brauche nur noch einen zusätzlichen...)
Der Körper ist noch komplett am Anfang. Die ganzen Platinen positioniere ich gerade. Unter der oberen Platte sieht man teilweise, dass da die Bein-Controller hinkommen. Da bekommt auch jeder Controller direkt einen dicken Elko zur Stabilisierung.
Meine grobe Planung ist, dass auf der unteren Platte der Akku sitzt, samt den 2 BECs (5V & 6V) und der Stabilisierungselektronik. Von da gehen dann quasi 3 Kabel nach oben (5V, 6V und Masse). Die untere Platte wird man auch einfach abbauen können, da die Beine alle unter der oberen Platte hängen. Unten sind sie nur in die Kugellager gesteckt. 12 Schrauben wird man dann lösen müssen.
Ansonsten kommt noch der UBS-Verteiler und der Beschleunigungssensor auf die obere Etage. Die Tonsensoren werde ich einplanen, aber erst einmal nicht anschließen. (Die Halterungen vor Tonsensoren und Abstandssensoren sieht man in Version 1)
HannoHupmann
01.04.2014, 12:34
Nochmal zurück zu den Sensoren. Mit deiner Anordnung wirst du nur Hindernisse direkt vor dem Roboter detektieren. Ich habe mich bei meinem Vinculum für Sensoren in alle Richtungen entschieden, insbesondere um auch Hindernisse parallel zum Roboter zu erkennen. Ich erhoffe mir davon später parallel zur Wand laufen zu können. Der Roboter könnte also den Abstand zur Wand neben sich messen und immer wieder leicht korrigieren, wenn dieser kleiner oder größer wird. Hexas können prinzipiell in jede Richtung laufen und es gibt in dem Sinne kein vorn oder hinten. Daher auch Sensoren in jede Richtung + Drehbar. Verschiedene Systeme (US, IR, Sonar) verhindern, dass durch Totalreflexion oder Sonnenlicht der Roboter blind wird.
LeeMajors
01.04.2014, 13:42
Ich kann ja später immer noch aufrüsten. Erst mal lass ich es so.
Meine Idee ist ja, dass diese Messdaten auf dem Server gespeichert und ausgewertet werden. Dazu ist das A & O, dass ich die Positionsbestimmung und Orientierung im Raum genau genug hin bekomme.
Angenommen er misst rechts, links und in der Mitte einen Abstand, der abzüglich eines vertretbaren Fehlerdeltas einer Linie folgt, dann kann man an dieser Stelle von einer Wand, o.ä. ausgehen, die sich auf unbestimmte Länge in beide Richtungen ausdehnt.
Dreht er sich in eine Richtung, wird er irgendwann ein Ende der Wand erreichen, oder eben sehr viel Platz haben.
Ich stelle mir das so vor, dass auf dem Server eine Blanko-Karte mit x * y Punkten ist, z.B. ein Punkt pro Quadratzentimeter. Bei jeder Information, die auf den Server übertragen wird, werden auf diesem Plan diese Informationen, sowie die angenommenen eingetragen. Es wird dabei ebenso gespeichert, wie valide die Daten sind. Gemessene Punkte sind sehr valide, Punkte dazwischen weniger und eine gedachte Ausdehnung nach rechts und links ist nur sehr vage.
Je mehr Infos reinkommen, desto valider werden die Ergebnisse. D.h. er wird sich im Haus sehr viel schneller orientieren können, als z.B. im Garten, wo alles krumm und schief ist.
Es wäre möglich, dass er sich dann mit diesen Daten auch orientieren kann, also nicht nur dem Server Daten gibt, sondern vom Server auch Korrekturen erhält. Wenn z.B. valide alte Daten und valide neuen Daten unterschiedlich sind, handelt es sich vermutlich um eine Fehlinterpretation der Position, oder um ein bewegliches Objekt.
(Aber es ist natürlich richtig, dass ein präzises entlanglaufen an einer Wand damit schwieriger wird, aber das ist für mich auch nicht unbedingt nötig.)
Wenn man erst mal von einer Fläche von 20 x 20m ausgeht (Welt) und einer Auflösung von 1cm² kommt man mit 4MB aus, wenn man pro Messpunkt 1 Byte verbrät - was ausreichen sollte.
Geht man in die 3. Dimension und 20m nach oben, wäre man bei 8GB - auch noch durchaus machbar... aber das ist natürlich Zukunftsmusik. :-)
LeeMajors
06.04.2014, 21:45
Die Elektronik ist (in 3D) verteilt. Es sollte jetzt alles passen, man sollte an alle Platinen & Stecker zügig dran kommen.
Jetzt muss ich noch die ganzen Halter bauen.
http://www.3dmax.de/forum/funstuff/no33.jpg
http://www.3dmax.de/forum/funstuff/no34.jpg
Links unten ist die von movido beschriebene Platine zur Spannungsglättung der 5V für die Elektronik. Ein 2. BEC liefert 6V für die Servos. Jedes Bein hat seinen eigenen Controller und dort wird der Strom noch mal jeweils mit 6800µF gepuffert.
HeXPloreR
07.04.2014, 17:08
Ich finde es klasse was alles mit der Software geht. Ich bin gesapnnt. Bitte weiter machen.
LeeMajors
17.04.2014, 18:13
Weitergemacht! Aber das Eichhörnchen ernährt sich langsam...
Die ersten Platinen haben jetzt Halter und jetzt fallen alle möglichen Fehler auf - dass z.B. Schrauben an manchen Stellen nicht passen, zu kurz sind, etc.
http://www.3dmax.de/forum/funstuff/no35big.jpg
Rabenauge
17.04.2014, 18:59
Du willst da rund nen halbes Kilo Schrauben verbauen?
Ich weiss: du lässt dir nicht gerne dreinreden aber da ich auch schon so einiges gebaut habe, weiss ich: auf den Servoscheiben wirds die Hälfte schonmal auch tun. Ganz sicher. Dann schwächst du auch die "Ausleger" des Chassis z.B. deutlich weniger, die bei deiner Variante nur noch Schweizer Käse sind.
HannoHupmann
18.04.2014, 00:50
Jetzt wo ich es lese fällt es mir auch auf. Die Servos sind viel zu überdimensioniert am Körper befestigt. Ich verwende da zwei 2,8mm Schrauben pro Servohorn und dass muss reichen! Die Kräfte sind viel zu gering die auf diesen Flansch wirken und jede Schraube bedeutet weniger Laufzeit. Abgesehen davon würde ich den ON/OFF Schalter nicht an dieser Position anbringen sondern Userfreundlich an der Oberseite. Denn an diesen Schalter will man hin kommen. Übrigens hat meine Erfahrung gezeigt, dass es ebenfalls sinnvoll ist die RESET Taster so zu legen, dass man sie von aussen drücken kann und nicht immer mit dem Schraubenzieher durch den Körper fummeln muss, um den kleinen Taster zu treffen.
Auch die Spannungsüberwachung der LiPos sollte gut sichtbar von oben sein, denn in der Regel wirst du von oben auf den Hexa sehen und dann sollte die Anzeige ins Auge fallen. Ich persönlich würde ja den USB Hub komplet zerlegen und nur die Platine auf den Hexa packen. Wieder Gewicht gespart. Ganz extreme Sparfüchse gehen sogar soweit, dass sie die Stecker auf Pinstecker umbauen und so die USB Stecker/Buchsen rauswerfen können.
Die um 90° hochstehenden Antennen finde ich nicht besonders ansprechend, die würde ich um 90° kippen und parallel zu den Boards führen. Dürfte von der Funkreichweite kaum einen Unterschied machen.
Noch mal zu Erinnerung: Bei einem Hexabot kommt es entscheident auf das Gewicht an!
Die 8 Schreiben sehen aber gut aus ;-) . Naja, ich denke im Chassis steckt nor sehr viel potential zur Gewichtsersparnis. Aber erst einmal sollte doch ein Roboter bereits laufen, bevor man so viel optimiert, denn sonst optimiert man sich böse, und das eigentlich Ziel rückt in weite Ferne.
Das schöne beim 3D Druck ist ja, dass man viele Schraubverbindungen durch Schnäpper im 3D Modell ersetzen kann. Das macht den Zusammenbau schneller und verringert u.U. sogar das Gewicht. Mit ein paar Aussparungen statt voller Materialdicke sind da noch einige Gramm drin.
LeeMajors
18.04.2014, 10:59
Total beratungsresistent bin ich doch gar nicht. Der Bot sieht doch schon mal deutlich anders aus, als am Anfang. ;)
Die Schrauben zwischen Körper und Schulter reduziere ich noch mal auf 3 Schrauben pro Servo. (Pro Schraube spare ich ein Gramm = 30g.)
Dass der Schalter da unten ist, hat den Grund, dass auf der unteren Etage Akku, BECs & Stromstabilisierung untergebracht sind. Wäre der Schalter oben, müssten die Kabel vom Akku nach oben zum Schalter und dann wieder runter in die untere Etage. Da möchte ich so wenig wie möglich stecken und lieber löten. Wenn keiner dafür eine bessere Idee hat, bleibt es so. (Das ist eine Erfahrung vom Oktopod.)
Der Reset-Schalter ist momentan ganz frei. Man sieht ihn rechts neben dem hinteren Kabelbinder. Den könnte ich in der Tat später mit einem Stift so verlängern, dass man direkt dran kommt.
Hinten am Akku ist ein Teil, welches mit 2 Gummis den Akku verriegelt. Daran ist der Lipowächter eingeklippst und kann direkt mit dem Akku verbunden werden - also quasi schon vor einsetzen in den Bot, was Fummelei vermeidet.
Ich denke, wenn man da hin und wieder mal drauf guckt, reicht das. Die Spannung wird ja nicht rapide abfallen. Außerdem überwacht der Bot selber Spannung und Strom, so dass im Regelfall vom Bot selber ne Meldung kommt, abgeschaltet zu werden.
Den USB-Hub hab ich mal aufgemacht, aber das war irgendwie komplexer, als nur eine Platine im Gehäuse. Das Gehäuse hatte tragende Wirkung für die Buchsen. Und den Kram auseinanderbauen, verlöten, oder auf Pinstecker umbauen möchte ich nicht. Da hab ich Angst, dass dann irgendwas nicht richtig abgeschirmt ist, oder ich sonst welche Probleme bekomme.
Die Antennen sind ansonsten beweglich, also drehbar und bis 90° knickbar.
LeeMajors
24.04.2014, 23:08
Ich hab die Komponenten inzwischen (virtuell) untergebracht und verschraubt. Schließlich hab ich noch ein Deckelchen gemacht und jetzt sieht das ganze irgendwie wie eine Laus aus. http://www.3dmax.de/neu/forum/neues_forum/images/smily16_03.gif
Diesmal in kleiner Auflösung, weil ichs eilig hatte. http://www.3dmax.de/neu/forum/neues_forum/images/smily16_02.gif
http://www.3dmax.de/forum/funstuff/no36.jpg
http://www.3dmax.de/forum/funstuff/no37.jpg
http://www.3dmax.de/forum/funstuff/no38.jpg
http://www.3dmax.de/forum/funstuff/no39.jpg
http://www.3dmax.de/forum/funstuff/no40.jpg
http://www.3dmax.de/forum/funstuff/no41.jpg
Rabenauge
25.04.2014, 13:05
Da würd ich aber die Servos auch noch weiss lackieren-und vielleicht nen Malteserkreuz auf den Rücken? ;)
LeeMajors
27.04.2014, 10:21
Die ilumi laus war im Fotostudio, zwar ohne Malteserkreuz, aber mit Logo. :rolleyes:
(Die Website laus.ilumi.de existiert noch nicht.)
http://www.3dmax.de/forum/funstuff/d1.jpg
http://www.3dmax.de/forum/funstuff/d2.jpg
http://www.3dmax.de/forum/funstuff/d3.jpg
http://www.3dmax.de/forum/funstuff/d4.jpg
http://www.3dmax.de/forum/funstuff/d5.jpg
http://www.3dmax.de/forum/funstuff/d6.jpg
Ooooch, die Beine sahen so geil aus, aber an den Deckel muss ich mich erst gewöhnen. Hast Du keinen Elektroniker, der Dir all deine Platinchen, die Du so verteilt hast, in eine einzige Platine umdesignen kann? Dan geht zwar die Modularität flöten, aber der Körper könnte zwei drittel kleiner sein... . Naja, im nächsten Schritt vielleicht ;-)
HannoHupmann
27.04.2014, 10:52
Über das Design lässt sich streiten: Geschmacksfrage, meines wäre es nicht, aber darum geht es nicht.
Als Tipp möchte ich aber folgendes geben: Für einen erste Version macht es keinen Sinn ein so komplexes und vor allen teures "Gehäuse" zu entwickeln. In der Regel vergisst man als Anfänger alles mögliche und muss erst mal in die Materie rein kommen. Später - mit der entsprechenden Erfahrung - kann man sich dann an ein ansprechendes Gehäuse wagen, dann weiß man bereits worauf man achten muss und welche Konstruktionen nicht funktionieren.
LeeMajors
27.04.2014, 11:34
@movido: Das wäre natürlich genial, alle Platinen zusammen zu fassen, aber ich glaube, da würde dann auch wieder ewige Entwicklungsarbeit drin stecken.
@Hanno: Das Gehäuse zu bauen war eine Arbeit von einem Tag - also vergleichsweise wenig Arbeit. Ebenso ist das 1.5mm dick und wird nicht sooo viel kosten. Aber wieso sollte die Konstruktion nicht funktionieren. Das Gehäuse selber trägt nix und wird einfach - wie bei den Beinen - mit Schnappern auf die innere Konstruktion geklipst. Das hat bei den Beinen auch auf Anhieb geklappt.
Ansonsten würde ich den psychologischen Aspekt nicht außer Acht lassen. Der Bot sieht so einfach besser aus. Ich finde das jedenfalls motivieren. :-)
Geistesblitz
27.04.2014, 14:54
Das mag ja sein, aber wozu sowas machen, wenn du eh weißt, dass es dann eine zweite/dritte/etc. Version geben wird? Prototypen müssen ja gar nicht mal schön aussehen, das kann kann man sich dann ja fürs endgültige Resultat aufheben. Ich hab ein wenig das Gefühl, dass du hier gerade das Pferd von hinten aufzäumst...
LeeMajors
27.04.2014, 15:43
Der Bau eines Prototypen geht hier einen etwas anderen Weg, da es sich um einen 3D-gedruckten Bot handelt. Würde es sich um handgefertigte Alu-Teile handeln, würde ich dir Recht geben. Ich glaube, ich würde - ohne 3D-Druck - so ein Teil sogar aus Holz bauen. Hier ist das so, dass ich eine Version ausdrucken lasse und bei Fehlern die entsprechenden Teile korrigiere. Ich fange also nicht nach einem Prototypen an, den gleichen Bot noch mal in hüppsch zu bauen. Es macht also durchaus Sinn, das alles von vorne herein zu konzipieren.
Ich hatte ja auch schon mal gesagt, dass ich am Anfang auch gar nicht alle Platinen einbauen werde. Sound, Abstands- & Neigungs-Sensoren, GPS, usw. - das kommt alles später rein. Trotzdem hab ich das soweit schon mal geplant. Falls etwas nicht passt, oder andere Platinen rein müssen, muss ich halt noch mal korrigieren, aber der Rest steht dann schon.
Eine andere Sache ist ja auch, wie der Kram befestigt wird. Diesmal gibt es z.B. ein komplexes Kunststoffteil, an dem alle möglichen Platinen dran hängen. Da habe ich auch zich mal (in 3D) geschoben und korrigiert, damit alle Klippse, Schrauben, etc. sich nicht in die Quere kommen, die Kabel noch überall her passen, möglichst kurz sind und kleine Ösen für Kabelbinder an den richtigen Stellen haben.
Ob ich das Gehäuse als solches direkt ausdrucken werde, ist eh die Frage. Erst mal kommt der Körper an die Reihe und ein Bein. Wenn das passt, kommen die restlichen 5 Beine dran.
HannoHupmann
27.04.2014, 18:53
Lieber LeeMajors, das wird dein erster oder sagen wir zweiter hexe, denn der erste würde ja nicht fertig gebaut. Ich bin nun bei meiner 6 Version eines Hexas und langsam soweit, dass ich finale Designvariante entwickeln kann. Es ist einfach unglaublich schwierig - selbst mit 3D Modelle - bereits bei der Planung an alles zu denken. Insbesondere, wenn man bisher noch keine realen Erfahrungen hat.
Lass nur ein kleines Teil an deinem Grundgestellt falsch sein und du musst den Grundkörper ändern (irgendwo klemmt oder passt was nicht), dann muss der Deckel auch neu gemacht werden und schon ist gutes Geld zum Fenster raus geworfen!
Ich persönlich würde von deiner Idee jetzt eine abgespekte Version drucken lassen. Alles weglassen (KLipse, Halter für Kabelbinder usw.) und erst mal eine Rohversion auf die man alles packen kann realisieren. Du verkünstelst dich gerade in Details und die Hauptaufgabe bleibt liegen. Es ist ganz klar erkennbar, dass du lieber 3D zeichnest, was dir ohne Frage leicht fällt, als dich mit Inverser Kinematik, Sensoransteuerung, Servoansteuerung, Leistungselektronik usw. zu beschäftigen. Ich garantiere dir, dass du eine neue Version zeichnen wirst sobald du die genannten Punkte abgearbeitet hast, denn dann wirst du erkannt haben wo man noch etwas verbesser, optimieren oder verändern muss. Es wäre utopisch anzunehmen, dass der erste Wurf gleich perfekt ist.
LeeMajors
27.04.2014, 19:41
Ja, doch. Im Prinzip mach ich es genau so. :-)
Ich drucke erst mal den Körper, so wie hier:
http://www.3dmax.de/forum/funstuff/no36.jpg
...und ein Bein, dann kommt der Rest.
Wie gesagt, in 3D ist er fertig. Das Gestellt für die Platinen oben wird nur unwesentlich viel kosten, ich brauch es aber. D.h. im Endeffekt wird alles gedruckt, außer dem Gehäuse.
Es gibt nichts, was ich sonst noch weglassen könnte.
Der Bot besteht im Grunde aus der unteren und oberen Platte, den "Abstandshaltern" und dem oberen Plastikgestell. Was sollte ich da jetzt noch weglassen? (Klippse gibts momenten nur an den Beinen und da passt auch alles. Halter für Kabelbinder sind entweder entsprechende Löcher in der Grundplatte, oder kleine Schlaufen, wo ich Kabelbinder durchziehen kann. Das kostet nicht extra. ;-) Brauch ich die nicht, benutz ich die nicht. Stören sie, kneif ich sie ab.
Und: Mir ist völlig klar, dass das Teil nicht perfekt sein wird - ich versuche es nur, aus meiner persönlichen, momentanen Sicht, perfekt zu machen. Warum sollte ich nicht ausnutzen, dass mir der 3D-Kram leicht fällt. Außerdem gibt's gerade eine Zwangspause, weil ich momentan keine Kohle für das Projekt habe. Daher ist es kein Zeitverlust, wenn ich mich weiter mit dem 3D-Modell beschäftige.
RobotDesign
28.04.2014, 02:25
Cooles Projekt =D>
Hast Du eigentlich die Elektronik schon fertig? ... Wenn Du da eine Schaltung hättest würde mich die interessieren.
Über einen 3D Drucker solltest Du noch mal nachdenken. Ich habe mir das Gehäuse für meinen ersten Roboter auch bei Shapeways drucken lassen. Kosten: 400 EUR. Ergebnis: Das Gehäuse passte perfekt. Beim Erproben des fertigen Roboters stellte ich dann fest, dass ich einige Dinge ändern musste. Kein Problem von Shapeways, sondern meine fehlende Lernkurve. Danach habe ich mir einen 3D Drucker gekauft - aus Kostengründen. Mit ein bisschen Erfahrung und einem guten Drucker (bei mir ist es der Up- Printer für damals noch 1800 EUR) bekommt man die Teile fast genauso gut wie bei Shapeways hin. Mittelfristig wird das Ganze billiger - ABS kostet pro KG weniger als 30 EUR. Und Änderungen am Konzept sind deutlich schneller implementiert + getestet.
Das Problem mit der Masshaltigkeit kann ich übrigens so nicht bestätigen - zumindest nicht wenn man ein wenig Erfahrung mit dem Druckprozess und den zugrundeliegenden Konstruktionen gemacht hat.
Den Up- Printer habe ich aufgrund eines Testberichtes in der CT ausgewählt. Der Hersteller liefert eine eigene Drucksoftware mit, die "aus einem Guss" ist. Das hat natürlich Vor- und Nachteile. Der Vorteil ist, dass man sehr schnell zu guten Ergebnissen kommt. Der Hersteller liefert übrigens seit 2 Jahren regelmäßig kostenlose Updates. Der Nachteil ist, dass man eigene Optimierungen in die Software nicht selbst einbauen kann. Allerdings habe ich bisher keine Optimierungen benötigt - das Ding tut einfach was es soll.
Die maximale Baugröße bei dem Drucker ist ca. 12x12x12 cm. Größere Objekte muss man in kleinere aufteilen, kleben (Plastikkleber) hat sich als brauchbar erwiesen.
HannoHupmann
28.04.2014, 09:47
@LeeMajors, das ist genau der Punkt den ich angesprochen haben: Es geht darum kosten zu sparen. Selbst wenn dich das Gehäuse nur 10€ extra kostet, sind es 10€ die wo anders fehlen. Manchmal muss man Lehrgeld bezahlen und Teile neu machen, aber manches Lehrgeld kann man sich auch sparen!
Wir geben hier nur Tipps, wir schreiben nix vor!
LeeMajors
28.04.2014, 09:59
@Hanno: Ich bin auch so einsichtig, den Deckel noch nicht zu drucken. :-)
@RobotDesign: Hört sich gut an, mit dem 3D-Drucker. Das ist die erste richtig positiv-klingende Aussage über die Dinger!
Zur Schaltung: Was genau meinst du? Die Komponenten, Stromfilter (das Konzept ist von movido und hier beschrieben: https://www.roboternetz.de/community/threads/64051-Oktopod-Projekt/page9 )
Ansonsten baue ich gerade an einer Microsite für das Projekt, da gibt's in Kürze mehr Infos.
Es ist und bleibt ein absolut geiles Projekt, und es macht höllisch viel Spass, es zu verfolgen ;-)
Ich würde keinen 3D Drucker nur für diesen Roboter kaufen, denn bei aller Liebe zum 3D Druck (ich mache das jetzt seit über 15 Jahren), die Qualität der Shapeways-Teile ist Lichtjahre besser als alles, was die Hoobbydrucker jemals generieren werden. Das liegt einfach am Druckverfahren. SLS ist nun eimal FDM in jeder Beziehung überlegen - aber die Maschine in der Anschaffung auch horrend teuer.
Dazu kommt, das die Einstellung und perfekte Bedienung eines FDM Druckers ähnlich viel Zeit schluckt wie die Erstellung deines ganzen Roboters. Das kann zum eigenen Hobby werden. Dein Gehäusedeckel zB. würde ein grosses Stützgerüst benötigen, dass man dann später wieder herausbrechen muss. Dazu kommen die Treppenstufen und die Fäden vom FDM Druck. Das würde niemals so schön wie in Deinen Renderings.
RobotDesign
28.04.2014, 15:48
@LeeMajors,
ich stehe gerade vor der Herausforderung einer stabilen Spannungsversorgung an meinem Roboter.
Mein Roboter hat ein deutlich einfacheren mechanischen Aufbau (2 Räder, getrennt angetrieben) und erheblich geringere elektrische Anforderungen. Allerdings habe ich festgestellt, dass beim Umkehren der Drehrichtung die Gleichstrommotoren deutlich mehr Strom aus den Akkus ziehen als erwartet. Dadurch habe ich Spannungseinbrüche. Die Filterkondensatoren habe ich bereits in der Schaltung, die Spule noch nicht, insofern Danke für die Anregung. Das ganze so zu dimensionieren, dass mir die Sicherung beim ersten Einschalten nicht durchbrennt ist die nächste Herausforderung.
Wenn Du Deine Schaltung schon fertig hast, würde mich der Schaltplan und die Dimensionierung interessieren. Verkürzt meine Lernkurve ...
@movido
SLS ist FDM in jeder Beziehung überlegen ...
Meine Erfahrung dazu:
- Treppenstufen beim FDM Druck hängen von der Auflösung ab. Auch bei 0,2 mm Auflösung sind Treppenstufen sichtbar, ein kurze Behandlung mit Schleifpapier löst dieses Problem - wenn es denn bei einem Prototypen stört.
- Meinen Up- Printer habe ich seit 2 Jahren. Ich habe 3 Konstruktionen und Drucke gebraucht bis richtig gut brauchbare (und maßhaltige) Ergebnisse produziert wurden. Das Problem mit den Fäden habe ich bei anderen Druckern gesehen. Der Up- Printer hat dieses Problem nicht. Den Deckel würde ich auf dem Kopf drucken - da ist das Entfernen des Stützmaterials leicht zu bewerkstelligen. Das Stützgerüst berechnet die Software des Up- Printers eigenständig. Der Aufwand, ein solches Stützgerüst zu entfernen, schätze ich bei so einem Bauteil auf max. 20 Minuten.
Mit anderen 3D Druckern habe ich keine praktische Erfahrung. Bei allem, was ich darüber lese scheint bei anderen 3D Druckern der Einarbeitungsaufwand doch erheblich höher zu liegen. So stand es auch in der CT - und das war für mich der Grund für den Up- Printer.
- Zu den Kosten:
Das Gehäuse von Shapeways war 19,6 x 25 x 11cm groß. Wandstärke (aus Kostengründen) nur 1 mm. Das Gehäuse hat (aus Kostengründen) viele Aussparungen. Kosten 400 EUR.
Dann stellte ich fest, dass ich den Deckel zu schwach konstruiert habe. Er bog sich durch.
Weitere Fehler:
- Der Akku saß an der falschen Stelle.
- Ein Rad hatte ich nicht 100% plan auf den antreibenden Schrittmotor gesetzt. Dadurch fuhr der Roboter nicht gerade aus.
- Die Anzahl der Schritte für eine Drehung hing von dem Untergrund ab. Schlupf gibt es auch bei Schrittmotoren durch unterschiedliche Reibkoeffizieten zwischen Rad und Bodenbelag. Eine Regelung durch Rückkopplung über die Bewegung des Robbis ist daher zielführender als die Steuerung durch Schrittmotoren (ohne Rückkopplung über die tatsächliche Bewegung). Getriebemotoren in Verbindung mit Sensoren, die die tatsächliche Bewegung des Roboters anzeigen sind daher das wahrscheinlich bessere Verfahren für einen 2 rädrigen Roboter, der mir eigenständig und planvoll die Wohnung wischen soll.
Mit allen diesen Problemen habe ich so nicht gerechnet. Auch dies ein Teil der Lernkurve ...
Ich schätze die Anzahl der weiteren Versuche auf mindestens 5, bis ich einen richtig gut funktionierenden Prototypen habe.
Shapeways würde ich dann gerne beauftragen sobald ich einen fertig getesteten Prototypen verfügbar habe. Optisch sehen die wirklich gut aus.
Shapeways beschränkt übrigens in ihren AGB's die Eignung der von ihnen erzeugten Bauteile auf dekorative Elemente. Sobald sich der Roboter bewegt ist Shapeways aus jeglicher Haftung raus.
Meine Erfahrungen mit FDM: Die mechanische Eignung eines Bauteils hängt neben der konstruktiven Gestaltung (z.B. Wanddicken) und dem verwendenten Material auch von der Positionierung im Druckraum ab. Schließlich baut FDM das Objekt aus Schichten auf, die ineinander verklebt werden.
Inzwischen würde ich sogar in frühen Phasen eines Portotypen dazu übergehen, Halbzeuge aus dem Baumarkt (z.B. Aluplatten) zu verwenden und nur die Verbindungen und Anbauteile mit dem 3D Drucker zu erstellen.
Das sind zumindest meine Beobachtungen, Erfahrungen und Schlußfolgerungen.
LeeMajors
28.04.2014, 17:44
@RobotDesign bzgl. Schaltplan:
Die Schaltung hatte ich doch schon gepostet, die ist von movido. Die Bauteile habe ich entsprechend meiner Bedürfnisse angepasst. D.h. bei Diode und Spule musste ich den relativ hohen Strom berücksichtigen. Ansonsten beschreibt movido auch, welche Elkos er verbaut hat, sowie auch Hanno. Bei hohen Strömen sollte man evtl. mehrere Elkos parallel schalten, als einen riesigen zu benutzen, damit die Belastung für den einzelnen Elko nicht zu hoch wird.
Wie gesagt, ich bin ziemlicher Laie auf diesem Gebiet, da wendest du dich am besten an movido & Hanno. (Zusammengelötet hab ich den Kram noch nicht und obs dann funktioniert, merke ich im schlimmsten Fall erst, wenn der Bot mit 6 Beinen nicht aus dem Knick kommt... ;-) )
Hallo LeeMajors,
bei all der Kritik möchte ich auch gerne mal ein positives Feedback loswerden!
Endlich mal ein Hexa, der ansprechend Aussieht. Optik finde ich irgendwie Hammer!
Meiner Ansicht nach ist auch die Herangehensweise der nahezu vollständigen 3D-Planung absolut vorteilhaft:
- Gerade beim Druck sollten die Teile möglichst vollständig sein (Bohrungen, Aussparungen, ect.). Da vergisst man leicht was wenn vorher NICHT geplant/detailliert wird. Gerade die Größe von Platinen und Bauteilen wird oft unterschätzt. Hier ist es doch sehr gut wenn man vorab die Gesamtkonstruktion vor Augen hat.
- Wie schon von dir erwähnt muss ja nicht gleich alles auf einmal gedruckt werden. Wenn bei Testaufbauten ein Detail bemerkbar wird, was nicht eingeplant ist, kann das Drucklayout noch vorab angepasst werden.
- Auch der Punkt "Motivation" ist sicherlich wichtig. Es verlaufen doch recht viele Projekte im Sand, wenn man das Ziel vor Augen hat ist man vielleicht doch noch motivierter.
Das mit dem Punkt kosten sparen sehe ich nicht so, vor allem wenn es sich um "Kleinbeträge" von 10 Euro handelt...ich vergleich zu den Gesamtkosten eher marginal. Manchmal zieht sich die Entwicklungsphase eines Projektes aus Kosten- Aufwand- oder Pirvatgründen über Monate bis hin zu Jahren hinweg...da freut man sich doch gleich umso mehr, wenn durch ein Paar Euros mehr an Details wenigstens ein Hübscher Bot vor einem steht.
Von daher weiter so. Es mach Spaß deinen Blog zu verfolgen.
Gruß Joe
- - - Aktualisiert - - -
Übrigens noch zum Thema 3D-Druck.
Es läuft gerade eine Kampange von einem vielversprechenden 3D-Drucker auf Kickstarter.
Nennt sich M3D-Drucker und soll angeblich Druckauflösungen von 0,05mm liefern...nachteilig der etwas kleine Druckbereich.
Gibts derzeit für 300 Dollar ~ 250 Euro. Auslieferung allerdings erst im Februar 2015.
https://www.kickstarter.com/projects/m3d/the-micro-the-first-truly-consumer-3d-printer
Ich hab mir schon einen vorbestellt -> Zum Testen und Spielen.
Gruß Joe
HannoHupmann
05.05.2014, 08:33
Über das Design lässt sich streiten :-D.
Mit diesen LowCost Druckern ist das immer so eine Sache. Im Moment behauptet die eine Hälfte, dass man damit gar nichts vernünftiges machen kann außer Plastikmüll, die andere ist Hälfte ist sehr davon überzeugt. In den Werbevideos sieht es bei jedem Hersteller so aus, als würde man in ein paar Sekunden perfekte Teile drucken können.
Ich fürchte der Kickstart Drucker ist ein bisschen zu klein für die meisten Teile
Rabenauge
05.05.2014, 13:40
Ich sehe das Problem hier anders- ja, es ist richtig: gute Planung ist, gerade bei so komplexen Projekten, eine feine Sache.
ABER: was, wenn am Ende _irgendwas_ nicht hinhaut?
Dann ists kaum möglich, irgendetwas zu ändern. Ich hab an der Konstruktion alleine ne Handvoll Sachen gesehen, die _ich_ so niemals machen würde (weil ich einfach weiss, das wird schlecht bis gar nicht oder nicht lange funktionieren), und dann wurde eine Menge Geld, Zeit und Aufwand in den Sand gesetzt, weil man nicht einfach mal ne Kleinigkeit ändern kann.
Grade HannoHupmann`s Projekte zeigen, dass bei sowas Dinge schiefgehen werden, mit denen man nie gerechnet hat. Da nutzt die beste Planung gar nix, wenn am Ende doch _irgendwas_ anders gemacht werden muss.
Bei sowas sollte man erstmal nen einfachen Prototyp bauen (besser: mehrere, um einzelne Komponenten auch mal zu testen), und _wenn_ dann wirklich alles wie gewünscht funktioniert, kann man es auch _richtig_ schön designen.
Natürlich: toll sieht die Spinne aus-das steht wohl völlig ausser Frage aber dass die (sollt sie mal fertig werden) auch so toll funktioniert- ich bezweifle es noch.
Werd mich aber gerne vom Gegenteil überzeugen lassen- ich fänds schön, unrecht zu haben.
LeeMajors
05.05.2014, 15:58
Warum sollte man etwas nicht ändern können? Das "Schlimmste" wäre z.B. dass in der Mitte ein anderes, größeres Board gebraucht wird. Also zu wenig Platz für alles andere.
Das sind dann zwar ein paar Tage Arbeit, aber im Grunde muss der Kram ja nur verschoben, skaliert, etc. werden. Danach neu drucken und alles ist gut. In diesem Fall wären das die 2 Hauptplatten.
Es ist ja alles relativ modular - braucht man mehr Platz, werden die Hauptplatten neu gemacht. Sind einzelne Komponenten fehlerhaft, werden die neu gemacht, usw. Es ist nicht alles im Eimer - außer vielleicht von meiner 1. auf die 2. Version, aber da war eben auch viel falsch.
Angenommen man hat einen zufriedenstellenden Prototypen, dann würde man bzgl. 3D-Druck bei 0 anfangen, inkl. aller Fehlversuche.
Viele mechanische Sachen würden auch ohne 3D-Druck so gar nicht funktionieren (teurer, aufwändiger, schwerer), wie z.B. der Einsatz der Drucksensoren und der Federung. (Bei den Drucksensoren ist das Besondere, dass man auch am Rand an den Fuß kommen kann und diese trotzdem ausschlagen. Ich kenne das sonst nur so, dass die direkt ganz unten am Fuß angebracht sind, der Bot direkt drauf läuft und die Füße dementsprechend spitz sind.)
Grüße, Marcus
Neu Drucken sagt sich bei dir ja so einfach, aber du hast je ganz am Anfang geschrieben, wieviel es kostet, da wäre das für mich nicht mal eben so "neu drucken und alles ist gut".
HeXPloreR
05.05.2014, 19:33
Es können noch eine Menge andere "schlimme" Dinge passieren. Lass Dich einfach überraschen.
HannoHupmann
06.05.2014, 11:41
@HeXPloreR hihihi... da spricht der erfahrene Roboterbastler und du hast damit völlig recht.
Scherz beiseite, es mag zwar nicht immer so klingen, aber wir sind im Forum schon sehr daran interessiert, dass die Projekte auch fertig werden die andere User vorstellen. Daher empfehlen wir allen Neulingen sparsam mit den zur Verfügung stehenden Ressourcen umzugehen. Mit einer einfachen Version kann man schon sehr viel testen und sich insbesondere in die Programmierung einarbeiten.
Lustig. Je mehr ich mir die Ilimi Laus ansehe, desto mehr mag ich sie. Du musst halt nur noch irgendwie das grosse Rechteck vorne füllen, aber ansonsten kann ich sie mir als Hausfreund durchaus vorstellen ;-)
LeeMajors
07.05.2014, 19:36
Naja, das große Rechteck ist ja schlecht zuzumachen. Edel wäre eine leicht getönte Plexi-Scheibe. Sowas könnte man mit viel Bohei tiefziehen, aber ich bezweifel, dass das die Abstandssensoren klaglos mitmachen.
Ansonsten habe ich jetzt mal eine laus-Seite gemacht: http://laus.ilumi.de/
...und ja, ich weiß, sie wird sich verändern, es wird Probleme geben, usw. und so eine Seite macht man ganz zum Schluss, aber inzwischen wisst ihr ja, dass ich einiges anders mache... :-p
http://laus.ilumi.de/img/galerie/h3.jpg
Sieht nicht schlecht aus, die Homepage, aber willst du wirklich samba auf dem Roboter laufen lassen? Das frisst einiges an Leistung, ein FTP server wäre die bessere wahl ;)
LeeMajors
07.05.2014, 23:09
Da ist eine Quadcore-CPU drauf, die der entspricht, die auch in einem htc One drin ist. Die hat schon mächtig Dampf.
Aber, sollte später Samba wirklich das Zünglein an der Waage sein, dann kann man das ja jederzeit rauskicken. In der ersten Phase ist das so erst mal praktisch für die Softwareentwicklung: Ich schreibe mit einem Editor auf dem PC, drücke Strg+S und der Kram ist auf der Laus. :-)
Powered by vBulletin® Version 4.2.5 Copyright ©2024 Adduco Digital e.K. und vBulletin Solutions, Inc. Alle Rechte vorbehalten.