Qual è un buon approccio all'andatura quadruplicata?


12

Ho un quadrupede piccolo con tre gradi di libertà su cui ho lavorato: 3DOF Mini Quadruped .

Il mio codice originale era un semplice servo controller sull'arduino, e il codice Scala che avrebbe inviato comandi servo via cavo. Ho fatto tutta la cinematica inversa e la logica dell'andatura alla Scala, e l'ho fatta camminare: 3d di quadruped prima andatura .

La mia logica dell'andatura alla Scala era alquanto ingenua; dipendeva dal fatto che le gambe fossero nella posizione giusta all'inizio (un lato si estendeva avanti e indietro, l'altro lato l'uno verso l'altro). La logica era semplicemente tradurre tutti i quattro piedi all'indietro di 1 mm lungo y, e ogni volta che un angolo di coxa diventava eccessivamente all'indietro, fermarsi ed eseguire una piccola routine in cui quel piede veniva sollevato di 10 mm in z, quindi tradotto in avanti di 60 mm lungo y, e arretrato. Ingenuo, ma efficace.

Ora, ho riscritto il mio codice IK in arduino C e sto cercando di decidere come andare avanti con la dinamica di Gait. Ho avuto difficoltà a trovare risorse buone e facili da capire sulle andature. Ho una certa conoscenza della differenza tra andature dinamicamente stabili (come andature striscianti) in cui il corpo è sempre un treppiede stabile e andature dinamicamente instabili (camminare, trotto), dove due gambe sono sollevate da terra alla volta e il corpo sta essenzialmente cadendo in avanti nella gamba che avanza.

Ho avuto alcune riflessioni sulle macchine a stati e ho cercato di calcolare se il centro del corpo rientra in un triangolo creato dai piedi rimanenti per decidere quale piede è sicuro da sollevare, ma non sono sicuro che si tratti di idee che vale la pena esplorare.

So che questa è una domanda troppo generica, ma sono interessato a vedere come altre persone hanno attaccato questo problema, e tutto ciò che sono riuscito a trovare sono documenti di ricerca.


Sono impressionato dal lavoro che hai svolto sui robot. Ho un disperato bisogno del tuo aiuto per cercare soluzioni preziose. Ho cercato soluzioni negli ultimi 6 mesi per risolvere la cinematica dell'esapode senza risultati positivi. Sono riuscito a trovare equazioni per tutti i servo angoli con il corpo parallelo al pavimento, ma non sono riuscito a farlo con il corpo inclinato su un lato. Apprezzare se si sarebbe in grado di aiutare :-) Saluti Gary

Benvenuto in R.Se @ user2350 - per favore non porre domande supplementari (non importa quanto correlate) come risposte
Andrew

Risposte:


5

L'andatura che hai in realtà non è poi così male, anche se i piedi non hanno abbastanza trazione, quindi è difficile vedere quanto sia davvero buona.

Non sono sicuro della tua terminologia di andature dinamicamente stabili. Come ho sempre capito, l'andatura a due cavalletti è conosciuta come andatura staticamente stabile, mentre una buona camminata biped come Petman usa un'andatura dinamicamente stabile. Mai sentito parlare di un'andatura dinamicamente instabile. Sembra più l'ubriachezza.

Due gambe a terra sono probabilmente il limite inferiore per questo progetto di robot. In generale, è più facile farlo funzionare con robot umanoidi alti, che impiegano molto tempo a cadere. I robot piatti larghi devono sollevare e posizionare i piedi abbastanza rapidamente se non ne lasciano molti sul pavimento.

Ma come sviluppare un gair per il tuo robot. In primo luogo, dovresti decidere cosa vuoi ottenere dall'andatura. Stai cercando la massima velocità su una superficie piana o la massima stabilità su superfici irregolari?

Se il tuo obiettivo è la stabilità, allora sicuramente penso che valga la pena che il robot sia consapevole del suo centro di gravità in relazione ai suoi piedi. Per aiutarlo a sapere questo, potrebbe anche valere la pena aggiungere alcuni sensori di forza ai suoi piedi in modo da poterlo calcolare facilmente.

Se il tuo obiettivo è solo la massima velocità, mi concentrerei semplicemente sul finanziamento di un andamento ottimale. Questo è più difficile da fare. Ci sono due buoni modi per affrontarlo:

  1. Modellazione. Creare un modello computerizzato completo del robot, inclusi massa, rigidità, coppia, ecc. Utilizzare questo modello per comprendere appieno il comportamento dinamico.

  2. Prova ed errore. Puoi farlo nel modo più duro, programmando andature casuali, regolandole in una curva e misurando le loro prestazioni. Prova a farlo camminare sia in avanti, sia in diagonale. Oppure puoi utilizzare un algoritmo genetico per aiutarti a cercare automaticamente andature migliori. La difficoltà di usare un GA è che devi avere un modo per misurare automaticamente le prestazioni dell'andatura.

Un terzo modo è trasformare il robot in uno scienziato che esegue esperimenti concreti su se stesso per convalidare le ipotesi su se stesso e capire come camminare, come il robot delle stelle marine della Cornell University .

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.