La Dinamica di un robot

La Dinamica di un robot studia le cause che ne generano il movimento. Questa materia ricopre un ruolo fondamentale in numerosi ambiti tra cui: la simulazione del moto, il progetto meccanico di prototipi e la sintesi di algoritmi di controllo.

La possibilità di simulare un manipolatore permette di testare strategie di controllo e tecniche di pianificazione del moto senza aver bisogno di utilizzare un robot reale. L’analisi del modello dinamico e il calcolo delle forze/coppie necessarie per l’esecuzione di un movimento, forniscono invece informazioni utili per il progetto meccanico dei giunti, delle trasmissioni e degli attuatori.

In questo numero di Didattica nella Robotica spiegheremo cosa si intende per modello dinamico di un robot facendo riferimento ai due approcci più noti con cui può essere ricavato: l’approccio Lagrangiano e quello di Newton-Eulero.

Verranno poi mostrate due proprietà notevoli del modello dinamico, tra cui quella di linearità nei parametri dinamici permette di adottare un’opportuna tecnica di identificazione sperimentale. Infine chiariremo la differenza tra dinamica diretta e dinamica inversa.

Il modello dinamico

Il modello dinamico di un manipolatore fornisce una descrizione matematica della relazione esistente tra le forze generalizzate agenti sul robot e il movimento risultante della sua struttura meccanica, cioè le configurazioni spaziali q(t) assunte nel tempo. Per forze generalizzate intendiamo sia le coppie di attuazione applicate ai motori (τ1, τ2,…τn) (raggruppate nel vettore τ, sia le forze e i momenti esercitati dall’ambiente esterno sul robot, raggruppate nel vettore h.

Esistono numerosi formalismi e principi della meccanica in base ai quali derivare il modello dinamico di un robot, come il principio di D’Alembert, di Hamilton, dei lavori virtuali, tuttavia i più noti sono l’approccio Lagrangiano e l’approccio di Newton-Eulero. Il primo è concettualmente semplice e sistematico, mentre il secondo è più efficiente da un punto di vista computazionale.

Approccio Lagrangiano

Quello di Lagrange è un approccio energetico che permette di derivare le equazioni della dinamica in forma simbolica (o forma chiusa), cioè non numerica, facilitando così lo studio delle proprietà e l’analisi degli schemi di controllo.

Dato un sistema meccanico, inteso come un sistema di corpi rigidi, l’approccio Lagrangiano si basa sul calcolo di una quantità chiamata lagrangiana  del sistema meccanico. La lagrangiana è pari alla differenza tra l’energia cinetica T e l’energia potenziale U del sistema:

L = T – U

Questa quantità dipende sia da parametri dinamici (masse e momenti di inerzia dei link) sia da parametri geometrici (lunghezza dei link) e può essere calcolata in forma simbolica attraverso un  procedimento sistematico. Una volta ottenuta l’espressione della lagrangiana, il modello dinamico del robot può essere ottenuto mediante una serie di equazioni, chiamate di Eulero-Lagrange, ricavabili a partire dalla lagrangiana stessa.

licando le equazioni di Eulero-Lagrange, il modello dinamico di un robot si può esprimere in termini vettoriali attraverso un’equazione molto nota in robotica:

B (q)q + C (q,q)q + g(q) = Jt(1)h

Dove q e q sono le velocità e le accelerazioni di giunto, rispettivamente, B (q) è la matrice d’inerzia del manipolatore, C(q,q) q  è un termine in velocità che descrive gli effetti centrifughi e di Coriolis, mentre g (q) è un termine gravitazionale dipendente solo dalla configurazione. Infine Jt (q) h descrive l’effetto di eventuali forze e momenti esercitati dall’ambiente esterno sul robot.

Il modello dinamico del manipolatore, così come mostrato nell’equazione precedente, è stato formulato nello spazio dei giunti. Ciò nonostante è possibile ricavarne una formulazione anche nello spazio operativo.

E’ importante notare infine che nella derivazione del modello dinamico non si è tenuto conto del sistema di attuazione, costituito da motori e sistema di trasmissione. Il sistema di attuazione contribuisce agli effetti dinamici in vari modi: cambiando ad esempio i parametri di inerzie e masse dei link, e introducendo dinamiche proprie (elettromeccaniche) e possibili effetti non lineari come giochi, attriti ed elasticità. Tutti questi effetti possono comunque essere considerati introducendo opportune modifiche al modello dinamico. Sul manipolatore possono inoltre agire coppie di attrito viscoso e coppie di attrito statico.

Approccio di Newton-Eulero

La scrittura del modello dinamico basata sulle equazioni di Lagrange, pur dando luogo ad un modello in forma chiusa, facilmente interpretabile ed utilizzabile nella sintesi del controllore, costituisce un procedimento inefficiente dal punto di vista computazionale. Una strada alternativa per la formulazione del modello dinamico è quella che va sotto il nome di metodo di Newton-Eulero.

Questo metodo si basa sull’utilizzo di due equazioni: l’equazione dinamica di Newton, secondo cui la somma delle forze agenti su un sistema meccanico è pari alla variazione della quantità di moto, e l’equazione dinamica di Eulero, secondo cui la somma dei momenti è pari alla variazione del momento della quantità di moto.

L’approccio di Newton-Eulero consiste quindi nello scrivere i bilanci di forze (equazioni di Newton) e di momenti (equazioni di Eulero) agenti su ciasun link, mettendo in evidenza le interazioni con i link contigui nella catena cinematica. In questo modo si ottiene un sistema di equazioni che possono essere risolte in modo ricorsivo, propagando le velocità e le accelerazioni dalla base verso l’organo terminale, e le forze e i momenti in senso opposto (vedi figura 2).

Queste formule ricorsive possono essere valutate sia in modo simbolico che numerico, tuttavia è solo nella seconda modalità, quella numerica, che la ricorsività rende l’algoritmo di Newton-Eulero particolarmente efficiente da un punto di vista computazionale.

Lagrange vs. Newton-Eulero

Nonostante l’approccio Lagrangiano e quello di Newton-Eulero, risolto in forma simbolica, producano alla fine lo stesso modello matematico per la dinamica di un manipolatore, è possibile evidenziare alcune differenze tra queste due formulazioni.

Formulazione di Lagrange:

  • è sistematica e facilmente comprensibile
  • fornisce le equazioni del moto in forma analitica compatta, mettendo in 
evidenza la matrice di inerzia, i termini centrifughi e di Coriolis, ed i termini gravitazionali. Questi elementi sono utili ai fini del progetto di un controllore basato sul modello.
  • si presta all’introduzione nel modello di effetti dinamici più complessi (deformabilità ai giunti o nei link)

Formulazione di Newton-Eulero:

  • è un metodo ricorsivo, efficiente dal punto di vista computazionale
  • è raccomandato per l’uso in tempo reale

Proprietà del modello dinamico

Il modello dinamico presenta due proprietà notevoli, che risultano particolarmente utili  per l’identificazione dei parametri dinamici e per la sintesi degli algoritmi di controllo del moto.

Per prima cosa è importante sapere che la scelta della matrice C non è unica. Una possibilità è quella di calcolare C attraverso opportuni coefficienti chiamati simboli di Christoffel. Questa scelta permette di dimostrare un’importante proprietà del modello dinamico, ovvero l’anti-simmetria di una particolare matrice: B(q) – 2 C(q,q) che, come vedremo in uno dei prossimi numeri, ricorre nella sintesi degli algoritmi di controllo del moto.

La seconda proprietà notevole del modello dinamico è invece la linearità rispetto ad un insieme opportuno di parametri dinamici (masse, momenti primi di inerzia, momenti di inerzia).E’ sempre possibile infatti riscrivere il modello dinamico nella seguente forma lineare:

τ = Y (q,q,q) π

dove π è il vettore dei parametri dinamici del robot, mentre Y (q,q,q) è una matrice che dipende da posizioni velocità e accelerazioni dei giunti, nota come matrice di regressione. Questa proprietà è particolarmente importante perché consente di adottare una procedura per l’identificazione del vettore π

L’uso del modello dinamico per risolvere problemi di simulazione del moto e di controllo richiede infatti una buona conoscenza del valore dei parametri dinamici del modello del manipolatore, di solito sconosciuti o incerti. Al tempo stesso il calcolo di questi parametri a partire dai dati di progetto della struttura meccanica non è semplice. Un possibile approccio consiste nell’adottare tecniche di modellazione CAD che permettono di calcolare il valore dei parametri di inerzia dei diversi componenti (link, attuatori, trasmissioni) a partire dalla geometria e dal tipo di materiale utilizzato. Tuttavia le stime ottenute con queste tecniche sono generalmente inaccurate a causa delle semplificazioni introdotte dalla modellazione geometrica e dalla mancata modellazione di effetti dinamici, come l’attrito ai giunti. Un approccio alternativo consistere invece nello smontare le diverse componenti del manipolatore e nell’eseguire una serie di misurazioni per calcolare i parametri dinamici. Con questa tecnica di non immediata implementazione, può risultare tuttavia difficoltoso misurare le quantità di interesse.

Una stima accurata può essere invece ottenuta grazie ad una tecnica di identificazione sperimentale che sfrutta proprio la proprietà di linearità del modello dinamico del manipolatore rispetto al vettore dei parametri dinamici. Tale procedura prevede che si eseguano opportune traiettorie di moto lungo le quali si misurano le posizioni dei giunti q, le velocità q e si ricavano le accelerazioni q. Si misurano anche le coppie τ, direttamente (con opportuni sensori) o indirettamente dalle misure di corrente nei motori. Avendo a disposizione le misure di tutte queste variabili è quindi possibile identificare i parametri incogniti mediante una tecnica di ottimizzazione.

Dinamica diretta ed inversa

Analogamente a quanto visto per la cinematica nei numeri precedenti di Didattica nella Robotica, anche per lo studio della dinamica è importante trovare la soluzione di due tipi di problemi: la dinamica diretta e quella inversa.

Dinamica diretta

Il problema dinamico diretto consiste nel determinare le accelerazioni ai giunti q (t) assegnate le coppie ai giunti τ (t) e, note le posizioni iniziali q (t0) e le velocità iniziali q (t0) le posizioni q(t) e le velocità q(t).

La soluzione del problema dinamico diretto è utile per la simulazione numerica della dinamica, ed è ottenibile sia con l’approccio di Lagrange sia con l’approccio di Newton-Eulero.

Dinamica inversa

Il problema dinamico inverso consiste invece nel determinare le coppie ai giunti τ (t) necessarie alla generazione del movimento, assegnate le accelerazioni q(t) le velocità q(t) e le posizioni q(t) .

La sua soluzione è utile per la pianificazione della traiettoria e per il controllo basato sul modello, ed è ottenibile in efficiente ed in tempo reale con l’approccio di Newton-Eulero. (Matteo Parigi Polverini)

LASCIA UN COMMENTO

Please enter your comment!
Please enter your name here