Robot con ridondanza cinematica

Documenti analoghi
Cinematica differenziale inversa Statica

Inversione della cinematica differenziale

Corso di Robotica 1 Cinematica inversa

Introduzione al controllo

Cinematica differenziale

CINEMATICA DIFFERENZIALE

Laboratorio di Automatica Alcuni temi per tesi BIAR in Automazione e Robotica

PIANIFICAZIONE DI TRAIETTORIE

Robotica: Errata corrige

Lezione 3: Le strutture cinematiche. Vari modi per fare un braccio

Modello dinamico dei robot:

Cinematica dei robot

SISTEMI DI CONTROLLO CINEMATICA E DINAMICA DEI ROBOT

Modello dinamico dei robot: approccio Lagrangiano

UNIVERSITÀ DEGLI STUDI DI NAPOLI FEDERICO II

Sistemi lineari - Parte Seconda - Esercizi

Metodi e Modelli per l Ottimizzazione Combinatoria Ripasso sulla Programmazione Lineare e il metodo del Simplesso (parte I)

Richiami di algebra delle matrici a valori reali

Soluzione dei Problemi di Programmazione Lineare

Integrazione delle equazioni del moto

Robot Mobili su Ruote Generalità e Cinematica

Capitolo 3: Ottimizzazione non vincolata parte III. E. Amaldi DEI, Politecnico di Milano

Proprietà strutturali: Controllabilità e Osservabilità

Cenni di ottimizzazione dinamica

Introduzione al Metodo del Simplesso. 1 Soluzioni di base e problemi in forma standard

Controlli automatici per la meccatronica

Analisi Matematica II Corso di Ingegneria Gestionale Compito del f(x, y) = e (x3 +x) y

Esercizi su ottimizzazione vincolata

Metodi computazionali per i Minimi Quadrati

1. Funzioni implicite

Esercizi di ottimizzazione vincolata

Metodi di riduzione del modello dinamico Dott. Lotti Nevio

Corso di Percezione Robotica Modulo B. Fondamenti di Robotica

Sistemi sovradeterminati

DEDUZIONE DEL TEOREMA DELL'ENERGIA CINETICA DELL EQUAZIONE SIMBOLICA DELLA DINAMICA

Gestione della produzione e della supply chain Logistica distributiva

Corso di Percezione Robotica (PRo) Modulo B. Fondamenti di Robotica

Sistemi di Controllo Multivariabile

Massimi e minimi vincolati

Adams, Calcolo Differenziale I, Casa Editrice Ambrosiana

Esercizi di ripasso: geometria e algebra lineare.

Funzioni di più variabili a valori vettoriali n t m

Modello dinamico dei robot: approccio di Newton-Eulero

Esercizi svolti. delle matrici

Asservimento visuale

Robotica industriale. Richiami di statica del corpo rigido. Prof. Paolo Rocco

Cinematica e Controllo di un robot mobile

Raccolta di esercizi di Calcolo Numerico Prof. Michela Redivo Zaglia

ESTRAZIONE DI DATI 3D DA IMMAGINI DIGITALI. (Visione 3D)

Corso di Matematica per la Chimica

Risoluzione di sistemi lineari

Progetto e Realizzazione di un Robot a Cinematica Parallela per Applicazioni Mediche

Robotica Modellistica, pianificazione e controllo

Parte V: Rilassamento Lagrangiano

SISTEMI LINEARI. x y + 2t = 0 2x + y + z t = 0 x z t = 0 ; S 3 : ; S 5x 2y z = 1 4x 7y = 3

trovare un percorso senza collisioni per passare da una configurazione ad un altra del sistema robotico

Risposta in vibrazioni libere di un sistema lineare viscoso a più gradi di libertà. Prof. Adolfo Santini - Dinamica delle Strutture 1

Controllo dei robot. I testi. Introduzione al corso. Sito web con materiale aggiuntivo: home.dei.polimi.it/rocco/controllorobot

Luigi Piroddi

Primi esercizi sulla ricerca di punti di estremo assoluto

Si consideri il sistema a coefficienti reali di m equazioni lineari in n incognite

1 Cinematica del punto Componenti intrinseche di velocità e accelerazione Moto piano in coordinate polari... 5

Programmazione Lineare: problema del trasporto Ing. Valerio Lacagnina

Geometria BIAR Esercizi 2

Algebra di Boole: minimizzazione di funzioni booleane

Inversa di una matrice

0.1 Arco di curva regolare

Economia, Corso di Laurea Magistrale in Ing. Elettrotecnica, A.A Prof. R. Sestini SCHEMA DELLE LEZIONI DELLA QUINTA E SESTA SETTIMANA

Geometria analitica di base. Equazioni di primo grado nel piano cartesiano Funzioni quadratiche Funzioni a tratti Funzioni di proporzionalità inversa

Analisi e Controllo di un manipolatore S.C.A.R.A.

Analisi del moto dei proietti

Sistemi lineari. Lorenzo Pareschi. Dipartimento di Matematica & Facoltá di Architettura Universitá di Ferrara

Sintesi Sequenziale Sincrona Sintesi Comportamentale di reti Sequenziali Sincrone

Applicazioni lineari e diagonalizzazione. Esercizi svolti

MECCANICA DEI ROBOT E DELLE MACCHINE AUTOMATICHE LM Anno accademico (ing. M. Troncossi)

FORMALISMO LAGRANGIANO PER SISTEMI VINCOLATI (Schema del contenuto delle lezioni e riferimenti bibliografici)

ossia può anche essere localizzato univocamente sul piano complesso con la sua forma polare.

MINIMIZZAZIONE DEI COSTI

Transcript:

Corso di Robotica 2 Robot con ridondanza cinematica Prof. Alessandro De Luca A. De Luca

Robot ridondanti cinematica diretta del compito r = f(q) f: Q R spazio dei giunti (dim Q = N) spazio del compito (dim R = M) robot ridondante se N > M (più gradi di libertà di quelli necessari ad eseguire il compito) r può essere la posizione e/o orientamento dell organo terminale o qualsiasi altra parametrizzazione del compito (anche non nello spazio di lavoro) si parla quindi propriamente di ridondanza solo rispetto a un compito (task) A. De Luca 2

Alcuni compiti e la loro dimensione TASK (per l organo terminale) dimensione M posizionamento nel piano 2 posizionamento nello spazio 3 orientamento nel piano 1 puntamento nello spazio 2 posizione e orientamento nello spazio 6 un robot planare con N = 3 giunti è ridondante rispetto al posizionamento nel piano (M = 2), ma non rispetto al posizionamento + orientamento nel piano (M = 3) A. De Luca 3

Casi tipici di robot ridondanti robot 6R montato su binario robot a 6-dof usato per saldature ad arco il compito non richiede di specificare l angolo finale di roll manipolatore su base mobile mano robotica ad elevata destrezza squadre di robot mobili cooperanti la ridondanza cinematica non è l unico tipo ridondanza di componenti (attuatori, sensori) ridondanza nell architettura di controllo e supervisione A. De Luca 4

Robot del DLR: LWR-III e Justin manipolatore 7R 2 bracci 7R + tronco 3R + 2 mani A. De Luca 5

Esempi video - 1 Dexter 8R: automovimento Planare 6R: obstacle avoidance su cammino assegnato dell E-E A. De Luca 6

Esempi video - 2 Uniciclo + planare 2R: controllo di traiettoria con compito su link 1 Magellan + 3R: controllo di traiettoria con puntamento dell E-E A. De Luca 7

Esempi video - 3 Magellan + 3R: visual servoing nello spazio immagine di 2 features (M=4) A. De Luca 8

La ridondanza può essere usata per evitare ostacoli (nello spazio cartesiano) o singolarità cinematiche (nello spazio dei giunti) aumentare la manipolabilità in determinate direzioni distribuire uniformemente/limitare le velocità di giunto rimanere entro i limiti di fondo corsa dei giunti minimizzare il consumo di energia ottimizzare il tempo di percorrenza, le coppie richieste aumentare l affidabilità rispetto a guasti obiettivi misurabili vantaggi ottenibili al costo di A. De Luca 9

Svantaggi della ridondanza maggiore complessità strutturale meccanica (bracci, trasmissioni) di attuazione algoritmi di cinematica inversa e di controllo più complessi A. De Luca 10

Problema cinematico inverso trovare q(t) che realizzi f(q(t)) = r(t) (il compito nel tempo) esistono infinite soluzioni se il robot è ridondante (anche per r(t) = r = costante) N = 3 > 2 = M r = posizione E-E costante esistono movimenti interni che sono inosservabili dal punto di vista dell esecuzione del compito (es., moto dell E-E) possono essere scelti in modo da ottimizzare in qualche modo il comportamento del sistema automovimento (self-motion): riconfigurazione del braccio che lascia inalterato il valore delle variabili r del compito A. De Luca 11

Risoluzione della ridondanza (come ottimizzazione di una funzione obiettivo) Locale Globale. note r(t) e q(t), t = kt s note r(t), t [t 0, t 0 + T], q(t 0 ) (ottimizzazione di H(q, q& )) t 0 + T (ottimizzazione di H(q, q )d") # t 0 q&(t) ON-LINE q(t), t [t 0, t 0 + T] q ((k +1)T s ) = q(kt s ) + T s " q (kt s ) OFF-LINE A. De Luca 12

Metodi di risoluzione locale Tre classi di metodi per risolvere r = J(q) q 1 2 3 metodi basati sullo Jacobiano (qui, analitico!) tra le infinite soluzioni, si sceglie ad esempio quella che minimizza una certa norma (eventualmente) pesata metodi con lo spazio nullo si aggiunge alla soluzione a norma minima un contributo che non modifica la traiettoria del compito, ovvero che ℵ(J(q)) metodi basati sul compito aumentato si riduce/elimina la ridondanza aggiungendo S N-M compiti ausiliari (se S = N-M, si quadra il problema) A. De Luca 13

Metodi Jacobian-based si cerca una soluzione di J = 1 N M r = J(q) q q = K(q) r K = nella forma requisito minimo per K: J(q)K(q)J(q) = J(q) ( K inversa generalizzata di J) M N " r #$( J(q) ) J(q) [ K(q) r ] = J(q)K(q)J(q) q = J(q) q = r # ad es., se J = [J a J b ], det(j a ) 0, un inversa (destra) di J è K r = J a % $ 0 "1 & ( ' A. De Luca 14

Pseudoinversa q = J # (q) r scelta per K = J # J # esiste sempre ed è l unica matrice che soddisfa J J # J = J J # J J # = J # (J J # ) T = J J # (J # J) T = J # J se J è a rango pieno, J # = J T (J J T ) -1 ; altrimenti va calcolata numericamente mediante SVD (Singular Value Decomposition) della J la soluzione q minimizza la norma 1 2 q 2 = 1 2 q T q A. De Luca 15

Pseudoinversa pesata q& = J # w (q)p& scelta per K = J # w se J è a rango pieno, = W -1 J T (J W -1 J T ) -1 la soluzione q minimizza la norma pesata 1 2 T 2 q& = w 1 2 q& # J w Wq& W > 0, simmetrica (spesso diagonale) peso W i grande piccola q i (ad es., pesi scelti inversamente proporzionali alle escursioni dei giunti) non è una pseudoinversa (non soddisfa la IV a relazione) A. De Luca 16.

Svantaggi dei metodi Jacobian-based non è detto che si evitino globalmente le singolarità durante l esecuzione del compito potrebbero fornire soluzioni non ripetibili cammini ciclici nello spazio del compito non corrispondono a cammini ciclici nello spazio dei giunti dopo 1 giro q in q fin q in q(t) = q in + t # K(q) r (")d" 0 A. De Luca 17

Robustezza a singolarità: Inversa Smorzata ottimizzazione non vincolata min q " 2 q 2 + 1 2 J q # r 2 = H( q ) minimi quadrati smorzati (DLS) SOLUZIONE q = J T ( JJ T + "I) #1 r è robusta rispetto alle singolarità (si può usare anche per N = M), ma ne risulta un errore sulla traiettoria del compito scelta del fattore di smorzamento λ 0 di compromesso fra minima norma delle velocità di giunto q& e minimo errore di traiettoria r " J q (scelta ragionevole: λ(q) 0 funzione del minimo valore singolare di J distanza da una singolarità) A. De Luca 18

2 una soluzione particolare (qui la pseudoinversa) Metodi con lo spazio nullo.. soluzione generale di J q = r q = J # r + ( I " J # J) q 0 più in generale proiettore nel ℵ(J) simmetrica q = K 1 r + I "K 2 J idempotente: [I J # J] 2 = [I J # J] [I J # J] # = [I J # J] ( ) q 0. come scegliere q 0? tutte le soluzioni dell equazione omogenea associata Jq = 0 (automovimenti) proprietà di [I J # J] K 1, K 2 inverse generalizzate di J (J K i J = J) A. De Luca 19.

Ottimizzazione lineare-quadratica Generalità 1 min x ( 2 x " x 0) T W( x " x 0 ) = H(x) c. nec. minimo + c. suff. s.t. J x = y L(x, ") T M x N = H(x) + " " x L = #L #x " % L = Jx $ y = 0 2! x L = W > ( Jx! y) = W( x $ x 0 ) + J T % = 0 0 " = ( JW #1 J T ) #1 ( Jx 0 # y) T M x M invertibile x!ir (simmetrica) A. De Luca 20 N, W > 0 M y!i R, ρ(j) = M Lagrangiana! 1 x = x Jx0! JW J "! y = T x = x 0 " W "1 J T " 1 T 0 " W J 0! ( JW "1 J T ) "1 ( Jx 0 " y)

Ottimizzazione lineare-quadratica Applicazione ai robot ridondanti PROBLEMA min q 1 q 2 " ( ) T W( q " ) = H( q 0 J(q) q = r q 0 q ). q 0 è una velocità di giunto privilegiata SOLUZIONE q = q 0 " W "1 J T ( ) ( JW "1 J T ) "1 J q 0 " r # J W q = J W# r + ( I " J # W J) q 0 soluzione a minima. norma pesata (per q 0 = 0) proiettore nel nucleo ℵ(J) A. De Luca 21

Gradiente proiettato (PG) q = J # r + ( I " J # J) q 0. la scelta q 0 = q H(q) funzione obiettivo differenziabile realizza un passo di un algoritmo di ottimizzazione vincolata mentre si muove lungo il compito r(t) il robot tende ad aumentare il valore di H(q) gradiente proiettato q 3 q H - ad es., per r fissato. q - S q = {q IR N : f(q) = r - }. q = (I - J # J) q H S q q 2 Robotica 2 q 1 A.A. 2008-2009 A. De Luca 22

Tipiche funzioni obiettivo H(q) manipolabilità (massimizza la distanza dalle singolarità) H man (q) = det J(q)J T (q) joint range (minimizza la distanza dal centro delle escursioni di giunto) H range (q) = 1 2. N # q i " q i & ) 2N % $ q M,i " q ( i=1 m,i ' q 0 = - q H(q) obstacle avoidance (massimizza la distanza dagli ostacoli) H obs (q) = min a"robot b"ostacoli a(q) #b 2 possibili problemi di differenziabilità in questo problema di max-min A. De Luca 23

in un compito di posizionamento Singolarità 3R planare H(q) = sin 2 q 2 + sin 2 q 3 -π non è la H man ma ha gli stessi minimi! curve di livello H(q) π q 3 -π q 2 q 3 π -π π q 3 -π q 2 π q 2 indipendente da q 1! A. De Luca 24

Commenti sui metodi con lo spazio nullo il proiettore nel nullo (I J # J) ha dimensione N x N ma rango solo N M (se J ha rango pieno), con spreco di informazione metodo effettivo di calcolo della soluzione q = J # r + ( I " J # J) q 0 = q 0 + J # r - J viene comunque richiesto il calcolo della pseudoinversa, oneroso computazionalmente (sia se a rango pieno che non) la complessità di un metodo di risoluzione della ridondanza dovrebbe in effetti dipendere solo dal grado di ridondanza N M esiste un metodo di ottimizzazione vincolata più efficiente del gradiente proiettato (PG) nel caso di Jacobiano a rango pieno q 0 ( ) A. De Luca 25

Gradiente ridotto (RG) se ρ(j(q)) = M, allora esiste una partizione dei giunti (a valle di un eventuale riordinamento dei giunti) M x M " q = q a % $ # q ' M b & N-M tale che J a (q) = " f " q a per il teorema delle funzioni implicite, una funzione g f(q a, q b ) = r q a = g(r, q b ) è nonsingolare " g $ con = # " f " q & b %" q a ' ) ( #1 " f = # J #1 a (q) J b (q) " q b si usano le N-M variabili indipendenti q b per ottimizzare un criterio H(q) ( ridotto tramite la g ad una funzione delle sole q b ) con il metodo del gradiente si scelgono poi le q a = g(r, q b ) per assicurare l esecuzione del compito A. De Luca 26

Algoritmo del gradiente ridotto H(q) = H(q a,q b ) = H(g(r,q b ),q b ) = H (q b ) (con r al valore corrente) gradiente ridotto (rispetto alle sole q b ) [ " q b H' = #( J #1 a J ) T ] b I " qh ( " # q b H!! ) ALGORITMO q b = " q b H' J a q a + J b q b = r "1 q a = J a ( r " J b ) q b passo nella direzione del gradiente nello spazio ridotto (N-M)-dim soddisfacimento degli M vincoli del compito A. De Luca 27

Confronto tra i metodi PG e RG Projected Gradient (PG) Reduced Gradient (RG) q = " q a % $ # q ' = " J a $ b & # 0 q = J # r + ( I " J # J)# q H (1 % ' " r + (J a $ & # I (1 J b % ' ( J a & ( ( (1 J ) T ) b I ) H q RG più conveniente di PG sia dal punto di vista analitico che numerico, ma richiede l individuazione di un minore non singolare (J a ) nello Jacobiano. se r = cost & N-M=1 stessa direzione di q, ma passo RG più lungo altrimenti, RG e PG forniscono evoluzioni diverse A. De Luca 28

Esempio analitico: robot PPR l q 1 q 2 q 3 # J = 1 0 "ls 3 & % $ 0 1 lc ( 3 ' = J a J b RG: q = " 1 0% $ 0 1 ' $ # 0 0 ' & r + " $ $ # ( ) ls 3 (lc 3 1 " q a = q 1 % $ # q ' q b = q 3 2 & q = J "1 # a & % ( $ 0 # r + "J a % ' $ I "1 J b % '( ls 3 (lc 3 1)) q H ' & ( ( "1 J b ) T I) ) H q & ( " J a ' PG: q = J # r + ( I " J # J)# q H J # = 1 1 + l 2 1 + l 2 2 # c 3 l 2 s 3 c 3 & % l 2 s 3 c 3 1 + l 2 2 ( s 3 % $ "ls 3 lc ( 3 ' ( I " J # J) = 1 1 + l 2 l 2 2 # s 3 sym& % "l 2 s 3 c 3 l 2 2 ( c 3 % $ ls 3 "lc 3 1 ( ' < 1!! A. De Luca 29

" 1 0 0 0% $ 1 1 0 0 ' q = $ ' ( = T( $ 1 1 1 0' $ # 1 1 1 1 ' & coordinate assolute relative # 1 0 0 0& % -1 1 0 0 ( " = % ( q = T -1 q % 0-1 1 0( % $ 0 0-1 1 ( ' Limiti di giunto "90 # $ i # +90 "90 # q i " q i"1 # +90 G q 2 q 4 S compito: moto dell E-E da S a G q 1 confronto fra metodo della pseudoinversa (PS), gradiente proiettato (PG) e gradiente ridotto (RG) A. De Luca 30

Simulazione numerica 1 giunto 2 giunto 3 giunto 4 giunto A. De Luca 31

Obstacle avoidance gradiente ridotto pseudoinversa q = J # r r r ostacolo x con massimizzazione di H(q) = x sinq 4 " 3 # i=1 l i sin( q 4 " q i ) A. De Luca 32

Automovimento con manipolabilità (ottima) max H(q) = 3 # i=1 sin 2 ( q i+1 " q i ) in realtà, non è proprio la funzione di manipolabilità r 0 passi di integrazione RG più veloce di PG (a parità di accuratezza su r) A. De Luca 33

3 Metodi con compito aumentato si aggiunge un compito ausiliario (task augmentation) S f y (q) = y S N-M corrispondente a qualche aspetto desiderabile della soluzione " r A = r % $ # y ' & = " f(q) % $ # f y (q) ' & r A = " J(q) % $ # J y (q) ' q = J A (q) q & si cerca ancora una soluzione nella forma q = K A (q) r A J A N M+S o con l aggiunta di un termine nel nullo di J A A. De Luca 34

Con un compito aumentato vantaggio: maggiore controllo sulla soluzione inversa svantaggio: si introducono singolarità algoritmiche quando ρ(j) = M ρ(j y ) = S ma ρ(j A ) < M+S dovrebbe essere sempre "( J T ) # "( T J ) y = $ difficile da ottenere globalmente! righe di J e righe di J y linearmente indipendenti A. De Luca 35

Compito aumentato esempio r(t) N = 4, M = 2 coordinate di giunto assolute f y (q) = q 4 = π/2 (S = 1) ultimo braccio mantenuto verticale A. De Luca 36

Jacobiano esteso (S = N M) J A quadrato: in assenza di singolarità algoritmiche, si può prendere q = J A "1 (q) r A lo schema è evidentemente ripetibile se f y (q) = 0 corrisponde a condizioni necessarie (& sufficienti) di ottimo vincolato per una certa funzione H(q), lo schema assicura permanenza dell ottimalità durante l esecuzione del compito in presenza di singolarità algoritmiche, l esecuzione sia del compito originario che dei compiti aggiuntivi risulta affetta da errore A. De Luca 37

Jacobiano esteso esempio manipolatore MACRO-MICRO r(t) N = 4, M = 2 y(t) ( ) r = J q 1,Kq 4 q y = J y ( q 1,q 2 ) q " J A = * * % $ #* 0& ' 4 x 4 A. De Luca 38

Priorità di compito se il compito originale r = J(q) q ha una priorità maggiore del compito ausiliario y = J y (q) q si fa prima in modo che venga eseguito il compito prioritario q = J # r + (I " J # J)v e poi si sceglie v in modo da soddisfare (se possibile) anche il compito secondario y = J y (q) q = J y J # r + J y (I " J # J)v = J y J # r + J y v la soluzione generale per v è nella forma usuale v = J # y ( y " J y J # r ) + (I " J # y J y )w a disposizione per eventuali ulteriori compiti a priorità più bassa A. De Luca 39

Priorità di compito (cont.) sostituendo l espressione di v in q q = J # r + (I " J # J) J # y ( y " J y J # r ) + (I " J # J)(I " J # y J y )w J y # poiché C [BC] # = [BC] # eventualmente = 0 se C idempotente vantaggio della strategia: compito principale non più affetto dalle singolarità algoritmiche Task 1: seguire Task 2: terzo link verticale SENZA priorità di compito CON priorità di compito A. De Luca 40

Estensioni la trattazione dei metodi di risoluzione della ridondanza svolta finora: è definita al primo ordine differenziale (velocità) possibile lavorare in accelerazione non tiene conto di errori nell esecuzione del compito possibile usare un controllo cinematico si applica ai robot manipolatori a base fissa possibile considerare manipolatori mobili (su ruote) A. De Luca 41

Risoluzione al secondo ordine r = f(q) r = J(q) q posto nella forma J(q) q = r " J (q) q Δ = x da scegliere assegnata (al tempo t) r = J(q) q + J (q) q. note q e q (al tempo t) il problema è formalmente equivalente a prima, con l accelerazione al posto della velocità ad esempio, nel metodo con lo spazio nullo q = J # (q) x + ( I - J # (q)j(q) ) q 0 soluzione a minima norma di accelerazione 1 = " H #K 2 q 2 q D q stabilizzazione automovimenti A. De Luca 42

Controllo cinematico dato un compito desiderato r d (t) (M-dimensionale), per recuperare un errore e = r d - r, iniziale o successivo dovuto a disturbi linearizzazione intrinseca nello Jacobiano (moto al primo ordine) implementazione a tempo discreto è necessario chiudere un anello di feedback sul compito, sostituendo (con guadagni K o K P, K V > 0 e diagonali) r r r d + K r d "r ( ) r d + K v con r = f(q), r = J(q) q r d " r ( ) + K ( P r d "r) nei metodi in velocità in accelerazione A. De Luca 43

Manipolatori mobili si combinano coordinate della base q b e del manipolatore q m si utilizza il legame differenziale con i comandi effettivi u b disponibili sulla base e u m sul manipolatore q m r = f(q) (ad es., posa dell E-E) " q = q % b $ ' ( IR N # & q m q b = G(q b )u b q m = u m modello cinematico della base (con vincoli anolonomi) q b " u = u % b $ ' ( R N u I # & A. De Luca 44 u m N u N

Jacobiano manipolatore mobile r = f(q) = f(q b,q m ) r = " f(q) q b + " f(q) q m = J b (q) q b + J m (q) q m " q b " q m = J b (q)g(q b )u b + J m (q)u m = J b (q)g(q b ) J m (q) = J NMM (q)u e tutto segue sostituendo. J J NMM q u ( ) u b Nonholonomic Mobile Manipulator Jacobian (M x N u ) A. De Luca 45 # % $ u m (ridondanza se N u - M > 0) ossia gli effettivi comandi disponibili & ( '