- LiFePO4 Speicher Test         
Ergebnis 1 bis 10 von 17

Thema: Hexapod

Hybrid-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #1
    Erfahrener Benutzer Roboter Genie Avatar von malthy
    Registriert seit
    19.04.2004
    Ort
    Oldenburg
    Beiträge
    1.379
    Die Datenmenge die pro Zeit verschickbar ist, ist ein Maß dafür, in welchem absoluten Zeitfenster die unterschiedlichen Slaves mit Steuerdaten versorgt werden können. Wenn dieses Fenster hinreichend klein wird - und das ist für diese Anwendung mMn bei I2C der Fall - ist damit kein praktisches Problem mehr verbunden. Die Leute haben früher (mich eingeschlossen) mit analogen Servos gebaut, deren Regelung lief bei ca. 50 Hz! Und die standard Digitalservos kann man maximal auch nur mit etwa 300 Hz updaten. Wenn man ein verlässliches Timing in dieser Größenordnung hinbekommt, ist alles im grünen Bereich. Und das geht mit I2C. Wegen der eher lächerlichen Trigonometrie die man für eine Hexapoden-IK benötigt gleich einen riesigen Controller zu verwenden finde ich auch nicht gerade elegant. Okay, ob's ökonomisch ist, für jedes Bein einen eigenen Controller einzusetzen, darüber kann man natürlich auch streiten .

    Gruß
    Malte
    Geändert von malthy (23.04.2014 um 19:25 Uhr)

  2. #2
    Neuer Benutzer Öfters hier
    Registriert seit
    23.04.2014
    Beiträge
    10
    Das sich das mit dem Timing beim I2C ausgeht denk ich nämlioch auch. Es werden ja keine große Datenmengen verrschickt(wahrscheinlich nur ServoID und Winkel). Das sollte dann kein Problem sein.
    Natürlich muss auf die Latenz geachtet werden. Allerdings kommt dann auch wieder die Reaktionszeit der Servos hinzu, was das Ganze weniger kritisch macht.

    Die LiPos die wir haben sind recht schwer und brauchen einen haufen platz, da sind mir normale Akku batterien lieber...

    Edit: werden hier eigentlich auch irgendwo laufalgorithmen behandelt? hab bis jetzt noch nichts gefunden
    Geändert von wrock (23.04.2014 um 20:13 Uhr)

  3. #3
    Moderator Robotik Einstein Avatar von HannoHupmann
    Registriert seit
    19.11.2005
    Ort
    München
    Alter
    42
    Beiträge
    4.534
    Blog-Einträge
    1
    Dann hast du die falschen LiPos :-P. Ganz in ernst, es gibt im Moment keine Akkus die annähernd an das Energie/Gewichtsverhältnis der Lipos ran kommen und bezahlbar sind! Abgesehen davon bekommt man heute Lipos schon für 30 bis 50€ mit ausreichender Leistung. Dann kann man schwächere Servos einsetzen und spart sich dort wieder einiges. Die grundsätzliche Herangehensweise ist einfach immer: so leicht wie nur möglich!

    Laufalgos gibt es mehr als genug im Forum. In meinem Vinculum Projekt gibt es sogar einige Seiten dazu, wo ich über verschiedene Versionen diskutiere. Für eine genauere Aussage, solltest du die Frage etwas näher spezifizieren.

    EDIT: Die Fragestellung ist übrigens fast schon so alt wie die Entwicklung von Hexas selbst: Modulares Konzept bei der Steuerung oder doch lieber ein zentraler Controller? Bisher habe ich im Forum immer wieder beide Lösungen gefunden und auch genug User die von modular auf zentral gewechselt haben oder in die andere Richtung von zentral zu modular. Ist also immer eine Frage der persönlichen Vorlieben, denn die Aufgabe bleibt ähnlich komplex.
    Geändert von HannoHupmann (24.04.2014 um 09:21 Uhr)

  4. #4
    Neuer Benutzer Öfters hier
    Registriert seit
    23.04.2014
    Beiträge
    10
    So, erst mal zur Ansteuerung...hab mir folgendes Überlegt:

    Aktuell sieht die Befehlstruktur so aus:

    1. CommandForward wird aufgerufen
    2. neue Position wird per IK aus der aktuellen Position berechnet
    3. Laufalgorithmus startet
    4. bei fertigstellung des kompletten wird auf den nächsten Befehl gewartet.


    Vorteil: einfach implementiertung
    Nachteil: Feedback der Servos kann nicht verarbeitet werden, neue Befehle werden erst nach Abschluss des Algos neu verarbeitet-->sehr langsame Reaktionszeit


    Neuer Ansatz:

    1. CommandForward wird aufgerufen
    2. neue Position wird per IK aus der aktuellen Position berechnet
    3. befehl für Fuß1 wird geschickt
    4. es wird auf fertigstellung per Polling gewartet(in unserem Fall bekommen wir die Winkel zurück)
    5. die IST-Position wird mit der SOLL-Position verglichen,
    6. falls unterschiedlich oder neue wir bekommen einen neuen Befehl(z.b richtungsänderung) wird die Position neu berechnet,
    7. ansonsten wird der Laufalgorithmus abgearbeitet-->befehl für Fuß2 wird geschickt

    Vorteil: Nach jedem Schritt kann reagiert werden, ob nun auf Unebenheiten, Blockierungen oder neue Befehle.
    Nachteil: Es kann immer nur ein Fuß bewegt werden-->Geschwindikeits defizit


    Kompromiss[beste Lösung?]

    1. CommandForward wird aufgerufen
    2. neue Position wird per IK aus der aktuellen Position berechnet
    3. Befehl für Fuß1, Fuß3, und Fuß6 werden geschickt, abhängig vom Laufalgorithmus können sowieso nur eine gewisse Anzahl an Füßen in Bewegung sein(dirty bit)-->kein Zeitverlust
    4. Polling auf Fuß1, Fuß2 und Fuß3 für Rückmeldung
    5. Sobald 1 Fuß rückmeldung gibt, wird die IST-Position wird mit der SOLL-Position verglichen,
    6. falls unterschiedlich oder wir bekommen einen neuen Befehl(z.b richtungsänderung) wird die Position neu berechnet,
    7. ansonsten wird der Laufalgorithmus abgearbeitet


    Vorteil: keine Leerzeit, Feedback/Reaktionsfähigkeit sehr hoch
    Nachteil: kompliziertere Implementierung?

  5. #5
    Moderator Robotik Einstein Avatar von HannoHupmann
    Registriert seit
    19.11.2005
    Ort
    München
    Alter
    42
    Beiträge
    4.534
    Blog-Einträge
    1
    Klassischerweise wird für Roboter die Steuerung durch mehre Ebenen gegliedert. Im Thread zu meinem Vinculum habe ich ausführlich beschrieben wie sowas bei einem Hexabot aussieht. Die meisten Projekte hier im Forum sind ähnlich aufgebaut, wenn auch vielleicht nicht ganz so klar differenziert. Deine Vorschläge sehen mir ehrlich gesagt etwas zu umständlich aus.
    Mit einer Rückgabe der tatsächlichen Winkelposition baut der Fachmann einen Regelkreis auf und lässt diesen parallel zur Berechnung laufen.

  6. #6
    Neuer Benutzer Öfters hier
    Registriert seit
    23.04.2014
    Beiträge
    10
    Zitat Zitat von HannoHupmann Beitrag anzeigen
    Mit einer Rückgabe der tatsächlichen Winkelposition baut der Fachmann einen Regelkreis auf und lässt diesen parallel zur Berechnung laufen.
    Regelkreis funktioniert in diesem Fall glaub ich nicht, weil wirs ja entkoppelt haben und mit I2C ansteuern. Aber die 2te/3te Steuerungsmethode sollte auf eine ähnliche funktionalität hinauslaufen

  7. #7
    Moderator Robotik Einstein Avatar von HannoHupmann
    Registriert seit
    19.11.2005
    Ort
    München
    Alter
    42
    Beiträge
    4.534
    Blog-Einträge
    1
    Regelkreis funktioniert immer, wenn man ihn richtig implementiert! Der wird schon auf den µC pro Bein untergebracht, alles andere macht keinen Sinn. Das hat mit der Vorgabe über I2C gar nichts zu tun, von dort kommt der Soll-Wert, der wirt mit dem Ist-Wert verglichen und der µC Regelt auf den Soll-Wert. Ein wunderbar geschlossenes System, welches sich ganz wunderbar modular aufbauen lässt, wenn es schon dabei bleiben soll.

Ähnliche Themen

  1. 3-Servo-Hexapod
    Von erik_wolfram im Forum Vorstellungen+Bilder von fertigen Projekten/Bots
    Antworten: 7
    Letzter Beitrag: 29.03.2010, 18:35
  2. Newbie Hexapod
    Von Hummer im Forum Vorstellung+Bilder+Ideen zu geplanten eigenen Projekten/Bots
    Antworten: 27
    Letzter Beitrag: 19.08.2008, 08:35
  3. Hexapod extrem?
    Von Skull im Forum Allgemeines zum Thema Roboter / Modellbau
    Antworten: 6
    Letzter Beitrag: 11.02.2008, 20:06
  4. Hexapod
    Von . . . . . im Forum Allgemeines zum Thema Roboter / Modellbau
    Antworten: 3
    Letzter Beitrag: 08.07.2007, 17:40
  5. Hexapod
    Von unathome im Forum Vorstellung+Bilder+Ideen zu geplanten eigenen Projekten/Bots
    Antworten: 5
    Letzter Beitrag: 30.09.2006, 15:11

Berechtigungen

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

fchao-Sinus-Wechselrichter AliExpress