Open Source Robotics

Una raccolta curata di progetti, strumenti e software di robotica open source di alta qualità per la comunità della robotica.

Hybrid system

  • Detto anche: hybrid dynamical system
  • Categoria: Control › Feedback control
  • Tag: dynamics, hybrid-dynamics, contact, locomotion, optimal-control

Un sistema dinamico che combina dinamica continua e commutazioni discrete tra modi, come un robot con gambe che alterna appoggio e volo, o una mano che stabilisce e interrompe il contatto.

Definizione

Un sistema ibrido (hybrid system) ha uno stato che evolve in modo continuo all'interno di ciascuno di diversi modi discreti e salta da un modo all'altro quando sono soddisfatte certe condizioni. Ogni modo ha una propria dinamica continua, di solito equazioni differenziali. Una guardia, una superficie o regione dello spazio degli stati, innesca una transizione quando lo stato la raggiunge, e una mappa di reset fornisce lo stato immediatamente dopo la transizione, che può essere discontinuo. Un esempio classico è una palla che rimbalza: il volo libero è il modo, la guardia è la palla che raggiunge il pavimento mentre scende, e il reset inverte e riduce la velocità verticale.

I robot sono pieni di comportamenti ibridi. Un robot che cammina cambia dinamica ogni volta che un piede tocca terra o si solleva, e gli impatti causano variazioni di velocità quasi istantanee. Un manipolatore che spinge un oggetto passa da contatto aderente a contatto strisciante. Un velivolo VTOL passa tra volo a punto fisso, transizione e volo di crociera, ciascuno con un'aerodinamica diversa. Anche la logica discreta in un controllore, come una macchina a stati che cambia comportamento, rende ibrido il sistema ad anello chiuso.

I salti discreti mettono in crisi gli strumenti che presuppongono una dinamica regolare. La sensibilità di una traiettoria alle condizioni iniziali o ai controlli cambia bruscamente attraverso una guardia, e la matrice di saltazione fornisce la linearizzazione corretta attraverso un reset. I metodi di ottimizzazione trattano i sistemi ibridi in vari modi: fissando la sequenza dei modi e ottimizzando ogni fase con la sua durata come variabile, codificando le scelte di modo con variabili intere in programmi interi misti oppure, per il contatto, con formulazioni a contatto implicito che esprimono la commutazione tramite vincoli di complementarità. L'analisi di stabilità di comportamenti periodici come le andature usa le mappe di Poincaré, e alcuni modelli mostrano un comportamento di Zenone, un numero infinito di commutazioni in un tempo finito, da cui i simulatori devono proteggersi.

Perché è importante

Locomozione, manipolazione e molti veicoli volanti sono ibridi. Trattarli come regolari porta a controllori e ottimizzatori che falliscono negli eventi di commutazione, quindi riconoscere la struttura ibrida decide quali strumenti di pianificazione, stima e stabilità sono validi.

Applicazioni principali

  • Pianificazione e controllo della locomozione con gambe
  • Pianificazione della manipolazione ricca di contatti
  • Controllo di velivoli VTOL e a transizione
  • Analisi di stabilità di andature periodiche
  • Verifica di robot gestiti da macchine a stati di supervisione

In pratica

Un team che sviluppa un robot saltatore a una gamba lo modella come un sistema ibrido. Nel modo di volo il corpo segue una dinamica balistica; nel modo di appoggio segue la dinamica di una gamba a molla. La guardia di atterraggio scatta quando il piede raggiunge il suolo, quella di stacco quando la molla della gamba torna alla sua lunghezza a riposo, e il reset di atterraggio rimuove la velocità persa nell'impatto del piede. Il team fissa la sequenza dei modi e ottimizza la traiettoria di appoggio insieme alle durate delle fasi. Per linearizzare il moto per un controllore stabilizzante usa la matrice di saltazione all'atterraggio invece delle differenze finite attraverso l'evento, e in simulazione usa il rilevamento di eventi per localizzare con precisione gli attraversamenti delle guardie, dato che un integratore a passo fisso che manca l'istante esatto del contatto introduce errori.

Idee sbagliate comuni

  • Ibrido significa combinare due metodi di controllo — in dinamica significa evoluzione continua mescolata a commutazioni discrete di modo, senza relazione con il controllo ibrido posizione/forza o con le trazioni ibride elettriche
  • La commutazione si può eliminare con uno smoothing senza conseguenze — lo smoothing può aiutare gli ottimizzatori, ma cambia il modello, e gli impatti e le transizioni di aderenza-strisciamento (stick-slip) richiedono comunque attenzione nel controllore finale
  • I sistemi ibridi sono rari al di fuori dei robot con gambe — qualsiasi robot che stabilisce o interrompe un contatto, o che esegue un controllore a cambio di modo, è ibrido

Chi dovrebbe saperlo

  • Ingegneri del controllo di robot con gambe
  • Ricercatori di pianificazione della manipolazione
  • Ingegneri che lavorano su velivoli a transizione
  • Sviluppatori di simulazione che implementano la gestione di contatti ed eventi

Tecnologie correlate

  • Automi ibridi (Hybrid Automata)
  • Matrice di saltazione (Saltation Matrix)
  • Mappa di Poincaré (Poincaré Map)
  • Vincoli di complementarità (Complementarity Constraints)
  • Rilevamento di eventi nei solver di ODE (Event Detection in ODE Solvers)

Termini correlati

  • Contact mode
  • Spring-Loaded Inverted Pendulum
  • Mixed-Integer Programming
  • Gait
  • Differential dynamic programming
  • Region of attraction

Progetti correlati

  • Open Duck Mini V2: An open-source mini duck robot you 3D-print and build, inspired by Disney's BDX droid
  • Drake: MIT robotics toolbox for model-based dynamics, optimization, and control system design
  • mjlab: Isaac Lab API on top of GPU-accelerated MuJoCo Warp for RL and robotics research
  • ROBOTO ORIGIN: RoboParty's open-source 1.25 m bipedal humanoid with 23 DOF and a full assembly manual
  • ASAP: Sim-to-real framework for agile humanoid whole-body skills using delta action models
  • Berkeley Humanoid Lite: Open-source sub-$5K humanoid robot with 3D-printed gearboxes and full sim-to-real pipeline

Questo sito richiede JavaScript. Attiva JavaScript per esplorare i nostri progetti di robotica open source.