Documentos de Académico
Documentos de Profesional
Documentos de Cultura
net/publication/267787776
Article
CITATIONS READS
0 1,139
2 authors:
Some of the authors of this publication are also working on these related projects:
All content following this page was uploaded by Monica Malvezzi on 28 January 2015.
Premessa
Questi appunti riassumono le lezioni del corso di Modellazione e Simulazione dei Sistemi Mec-
canici previsto nei curricola dei Corsi di Laurea Specialistica (3CFU) in Ingegneria Meccanica
ed Energetica dell’Università degli Studi di Firenze. Quanto presentato nei capitoli seguenti
non esaurisce sicuramente le problematiche relative all’analisi dei sistemi multibody, costitu-
isce soltanto una base per la preparazione dell’esame, che può essere integrata con gli appunti
presi durante le lezioni e tramite la consultazione dei testi elencati in bibliografia. Si richiama
l’attenzione soprattutto sul libro [1], che rappresenta un compendio molto esaustivo dello stato
dell’arte nello studio dei sistemi multibody. Gli autori ringraziano tutti coloro che con i loro
suggerimenti hanno contribuito alla stesura degli appunti.
Firenze, 31 gennaio 2008
Monica Malvezzi, Andrea Rindi
Indice
Indice . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
1 Introduzione 7
1.1 Problemi di analisi e di sintesi . . . . . . . . . . . . . . . . . . . . . . . . . . 7
1.2 Dal modello fisico al modello matematico . . . . . . . . . . . . . . . . . . . . 7
1.3 I sistemi multibody . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
1.4 Tipi di problema . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
1.4.1 Problema cinematico . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
1.4.2 Problema dinamico . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
1.4.3 Altri tipi di problema: sintesi e design . . . . . . . . . . . . . . . . . . 13
2
INDICE 3
2.1 quadrilatero articolato: con il valore assegnato per l’angolo θ1 sono possibili due
configurazioni. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
2.2 Schema cinematico di un robot planare a tre gradi di libertà, rappresentazione della
configurazione per mezzo di coordinate relative. . . . . . . . . . . . . . . . . . . 18
2.3 Schema cinematico di quadrilatero articolato, rappresentazione della configurazione
per mezzo di coordinate relative. . . . . . . . . . . . . . . . . . . . . . . . . . . 18
2.4 Schema cinematico di quadrilatero articolato con giunto prismatico, rappresentazione
della configurazione per mezzo di coordinate relative. . . . . . . . . . . . . . . . 19
2.5 Coordinate generalizzate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
2.6 Trasformazione di coordinate tra terna mobile e terna fissa . . . . . . . . . . . . . 20
5
ELENCO DELLE FIGURE 6
7.1 Forza applicata nell’origine del sistema di riferimento soliale al corpo i e coppia
ortogonale al piano . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91
7.2 Forza applicata in un generico punto P solidale al corpo i . . . . . . . . . . . 91
7.3 Attuatore dinamico lineare tra i corpi i e j. . . . . . . . . . . . . . . . . . . . 93
7.4 Pendolo semplice: sistemi di riferimento e coordinate utilizzati. . . . . . . . . 96
Capitolo 1
Introduzione
7
CAPITOLO 1. INTRODUZIONE 8
• scrivendo le equazioni della cinematica e della dinamica del sistema, generalmente par-
tendo dalle leggi della meccanica classica (se le equazioni sono risolte analiticamente la
soluzione è esatta; se sono risolte numericamente, la soluzione è approssimata);
Dato uno stesso modello fisico, i risultati analitici e numerici devono coincidere, a meno
dell’errore introdotto dal programma di simulazione, che è generalmente trascurabile se tale
programma è affidabile e utilizzato correttamente.
Nel passaggio dal sistema reale al modello numerico si introducono quindi due tipi di
approssimazioni:
Alcune delle approssimazioni che si frequentemente vengono introdotte nel modello fisico
sono:
• ammettere una dipendenza lineare fra variabili del sistema nel campo di funzionamento
considerato (linearità del modello);
E’ evidente che da uno stesso sistema fisico possono essere definiti diversi modelli fisici con
diversi gradi di approssimazione.
• forze (esterne).
CAPITOLO 1. INTRODUZIONE 9
Nei simulatori multibody si analizza generalmente il moto di sistemi composti da corpi rigidi,
se la flessibilità dei corpi non può essere trascurata, è possibile ricondurre i corpi flessibili a
sistemi di corpi rigidi uniti da vincoli, elasticità e smorzamenti concentrati, oppure inserire nel
modello multibody un modello di corpo flessibile generato tramite una precedente analisi FEM
(Finite Element Method).
Gli elementi necessari per definire un corpo appartenente ad un sistema multibody sono:
• la definizione della geometria del corpo non è in genere necessaria, a meno che nel-
ladefinizione dei vincoli non si tenga conto degli eventuali contatti tra i vari corpi.
I vincoli sono dispositivi che limitano il moto relativo tra due o più corpi. Nel modello matem-
atico i vincoli sono rappresentati da equazioni che egano tra loro le variabili che descrivono il
moto del meccanismo.
Figura 1.2: Configurazione iniziale del sistema, quadrilatero articolato: con il valore assegnato per θ1 è
ammissibile una sola configurazione del meccanismo.
Figura 1.3: Configurazione iniziale del sistema, quadrilatero articolato: con il valore assegnato per θ1
non è ammissibile nessuna configurazione del meccanismo.
Figura 1.4: Configurazione iniziale del sistema, quadrilatero articolato: con il valore assegnato per θ1
sono possibili due configurazioni.
1.4.2.5 Problema dinamico diretto e inverso per sistemi multibody con elementi non
perfettamente rigidi
I sistemi meccanici reali sono costituiti da elementi che possono essere considerati rigidi solo in
prima approssimazione. Per alcuni tipi di analisi e per particolari applicazioni, ad esempio nelle
strutture per applicazioni spaziali, nella robotica, nelle macchine funzionanti ad alta velocità,
è necessario tener conto anche della deformabilità dei corpi che costituiscono il meccanismo.
Un corpo può essere considerato rigido se la distanza tra due qualsiasi punti ad esso
appartenenti rimane costante durante il moto. Se il corpo è deformabile lo studio dinamico si
complica, dato che oltre alle equazioni della dinamica si devono considerare le equazioni che
descrivono la deformazione di ciascun elemento.
Quando si vuole progettare un nuovo meccanismo, che soddisfa certe specifiche, e si hanno
a disposizione soltanto strumenti di analisi è necessario procedere in modo iterativo, si ipotizza
una certa soluzione, se ne analizza il comportamento cinematico e/o dinamico, se ne verifica
la compatibilità con i requisiti in specifica, in caso di esito negativo della verifica è necessario
modificare la soluzione e ripetere l’analisi. E’ evidente che questo processo risulta in genere
lento e i risultati dipenderanno fortemente dall’esperienza del progettista.
Le procedure di sintesi o design dei sistemi multibody permettono di superare questi prob-
lemi o per lo meno di ridurli. Queste procedure forniscono direttamente, senza l’intervento del
progettista, un sistema meccanico che soddisfa i requisiti della specifica, o che risulta ottimale
tra tutti quelli possibili, secondo criteri specificati a priori.
1
Talvolta, anziché di funzione obiettivo, si parla di funzione di costo.La definizione del problema dell’ot-
timizzazione in termini di funzione di costo è duale a quella vista per la funzione obiettivo. In questo caso la
soluzione ottimale è quella che minimizza la funzione di costo, utilizzata per quantificare le performance di un
sistema.
Capitolo 2
15
CAPITOLO 2. RAPPRESENTAZIONE DEGLI ELEMENTI DI UN SISTEMA MULTIBODY16
Figura 2.1: quadrilatero articolato: con il valore assegnato per l’angolo θ1 sono possibili due
configurazioni.
Le coordinate dipendenti sono legate tra loro da una serie di relazioni di tipo algebrico,
in numero pari alla differenza tra il numero di coordinate e il numero di gradi di libertà del
sistema, dette equazioni di vincolo. Solitamente queste equazioni sono non lineari.
Riassumendo, scegliendo un set di coordinate indipendenti:
• il numero di parametri è minimo, quindi anche il numero di equazioni da risolvere è
limitato;
• le equazioni della dinamica hanno una struttura abbastanza complicata;
• la configurazione del meccanismo non è sempre individuata in modo univoco;
• le coordinate non possono essere definite in modo sistematico.
D’altra parte, scegliendo un set di coordinate dipendenti:
• il numero di parametri è maggiore del numero dei gradi di libertà;
• il numero di equazioni da risolvere è maggiore;
• le equazioni sono però solitamente più semplici e meno accoppiate;
• la configurazione è definita in modo univoco;
• le coordinate possono essere definite in modo sistematico.
• i parametri scelti per la rappresentazione del sistema sono gli spostamenti relativi tra due
elementi adiacenti nel giunto che li unisce, questa particolarità è utile quando nel giunto
è presente un attuatore o un motore, dato che è possibile controllare direttamente il
moto del corrispondente grado di libertà.
• la formulazione matematica può essere più complessa, dato che la posizione di ciascun
elemento è legata a quella di tutti gli elementi che lo precedono nella catena cinematica.
• nelle equazioni di moto compaiono matrici che, pur avendo dimensioni limitate, sono
piene e talvolta richiedono consistenti risorse di calcolo;
Nel caso di sistemi multibody planari nella formulazione con coordinate relative le equazioni
di vincolo rappresentano le equazioni di chiusura dei loop cinematici.
Un esempio di rappresentazione di meccanismi che fa uso delle coordinate relative è quello
in cui i sistemi di riferimento solidali ai vari elementi del meccanismo sono fissati facendo uso
della convenzione di Denavit Hartenberg [3].
Figura 2.2: Schema cinematico di un robot planare a tre gradi di libertà, rappresentazione della
configurazione per mezzo di coordinate relative.
Figura 2.3: Schema cinematico di quadrilatero articolato, rappresentazione della configurazione per
mezzo di coordinate relative.
CAPITOLO 2. RAPPRESENTAZIONE DEGLI ELEMENTI DI UN SISTEMA MULTIBODY19
Figura 2.4: Schema cinematico di quadrilatero articolato con giunto prismatico, rappresentazione della
configurazione per mezzo di coordinate relative.
yi K
*
Y 6 xi
q3i
q3i−1 ...............................................................
...
Oi ≡ ... Gi
...
corpo ... i
...
...
...
...
...
...
...
...
...
.. -
O q 3i−2 X
Le Eq. (2.7),(2.8), possono essere scritte in forma più compatta definendo la matrice di
CAPITOLO 2. RAPPRESENTAZIONE DEGLI ELEMENTI DI UN SISTEMA MULTIBODY21
rotazione Ri :
· ¸
cos q3i − sin q3i
Ri = . (2.9)
sin q3i cos q3i
Si osserva che, essendo il corpo rigido, le coordinate del punto P rispetto al sistema di rifer-
imento Oi xi yi zi solidale al corpo sono costanti. E’ evidente quindi che le coordinate del
generico punto P durante il moto possono essere univocamente determinate una volta noti i
parametri q3i−2 , q3i−1 e q3i .
Se il sistema meccanico è costituito da l corpi rigidi, la configurazione del sistema è nota
se sono note le coordinate generalizzate di tutti i corpi che lo compogono, quindi una volta
noti 3(l − 1) parametri (uno degli l corpi funge da telaio).
Si definisce spazio delle configurazioni l’insieme di tutte le possibili configurazioni del
sistema meccanico:
Q = {q ∈ R3(l−1) |q = [q1 , q2 , q3 , ..., q3i−2 , q3i−1 , q3i , ..., q3l−5 , q3i−4 , q3(l−1) ]T } (2.11)
il vettore q = [q1 , q2 , q3 , ..., q3i−2 , q3i−1 , q3i , ..., q3l−5 , q3i−4 , q3(l−1) ]T rappresenta la generica
configurazione del sistema. Durante il moto le componenti del vettore q variano, in altri
termini, ognuno degli elementi di q è funzione del tempo. L’analisi cinematica del mecca-
nismo è finalizzata allo studio delle coordinate generalizzate e delle loro derivate (velocità,
accelerazioni) nel tempo.
Capitolo 3
3.1 Introduzione
Come noto un corpo rigido nello spazio ha 6 gradi di libertà, quindi occorrono almeno 6
parametri per descriverlo completamente. Analogamente a quanto visto per i sistemi piani,
possiamo fissare per ogni corpo rigido un sistema di riferimento ad esso solidale, con origine
nel suo baricentro e assi principali d’inerzia. Questa scelta semplifica L’espressione dell’energia
cinetica e quindi la definizione delle equazioni della dinamica. La configurazione del corpo
rigido è nota quando è nota la posizione del baricentro rispetto a un sistema di riferimento
fisso (3 informazioni) e l’orientazione degli assi del sistema di riferimento solidale al corpo
rispetto agli assi del sistema di riferimento fisso.
Esistono vari metodi per la rappresentazione dell’orientazione relativa tra due sistemi di
riferimento cartesiano, che si possono classificare due categorie:
• rappresentazioni ridondanti;
• rappresentazioni minime.
22
CAPITOLO 3. CINEMATICA DEL CORPO RIGIDO NELLO SPAZIO 23
Le componenti dei versori i0 , j0 , k0 lungo gli assi del sistema Oxyz identificano completamente
l’orientazione terna Ox0 y 0 z 0 . Tali componenti vengono usate per formare una matrice, detta
matrice di rotazione, come segue:
0 0 0
£ ¤ ix j x k x
R = i0 j0 k0 = i0y jy0 ky0 (3.4)
0 0 0
iz jz kz
Proiettando ognuna delle tre equazioni (3.1), (3.2), (3.3) lungo le direzioni dei versori i,
j, k, si ottengono nove relazioni del tipo:
T
i0x = i0 • i = i0 i
T
i0y = i0 • j = i0 j
T
i0z = i0 • k = i0 k
(3.5)
Gli elementi della matrice R si dicono “coseni direttori” in quanto ognuno di essi è pari al
prodotto scalare di un versore della terna Ox0 y 0 z 0 per un versore della terna Oxyz.
y' θ y
x'
j'
i'
θ
x
O
k k'
z z'
Con riferimento alla figura 3.1, supponiamo che la terna Ox0 y 0 z 0 abbia l’asse z 0 coincidente
con l’asse z e che l’asse x0 sia ruotato di un angolo θ rispetto all’asse x. Dalla coincidenza
degli assi z e z 0 segue che k0 = k = [0 0 1]T . I versori i0 e j0 valgono invece:
cθ
i0 = s θ
0
−sθ
j0 = c θ .
0
CAPITOLO 3. CINEMATICA DEL CORPO RIGIDO NELLO SPAZIO 24
y' θ
j'
O x x'
i i'
k'
θ
z
z'
y y'
j j'
x'
i'
θ x
O
k'
θ
z z'
P
¸
−→
OP
z0 M 6z
y0
1
-
x O y
¼
À x0
Supponiamo di conoscere le coordinate [p0x p0y p0z ]T di un punto P dello spazio rispetto ad
un sistema di riferimento Ox0 y 0 z 0 e di voler calcolare le coordinate [px py pz ]T dello stesso
punto rispetto ad un altro sistema di riferimento Oxyz, avente la stessa origine del primo
sistema di riferimento, come mostrato in Fig. 3.4.
−→
Il vettore posizione OP può essere scomposto lungo 3 qualsiasi direzioni a due a due non
parallele. In particolare possiamo scomporlo lungo le direzioni dei tre versori i, j, k, ma anche
lungo le direzioni dei tre versori i0 , j0 , k0 , ottenendo la seguente relazione:
px i + py j + px k = p0x i0 + p0y j0 + p0x k0 . (3.9)
Proiettando ambo i membri dell’equazione 3.9 lungo le tre direzioni i, j, k (tramite l’operazione
di prodotto scalare), otteniamo:
T T T
px = p0x i0 i + p0y j0 i + p0x k0 i
T T T
py = p0x i0 j + p0y j0 j + p0x k0 j (3.10)
T T T
pz = p0x i0 k + p0y j0 k + p0x k0 k
CAPITOLO 3. CINEMATICA DEL CORPO RIGIDO NELLO SPAZIO 26
Non è difficile riconoscere che le Eq. 3.10 possono essere anche scritte in forma matriciale
come segue: 0T 0
px i i j0 T i k 0 T i px
py = i0 T j j0 T j k0 T j p0y , (3.11)
pz i0 T k j0 T k k 0 T k p0z
o anche, in modo più compatto:
p = Rp0 , (3.12)
−→
dove p = [px py pz ]T è il vettore posizione OP espresso nel sistema di riferimento Oxyz e
−→
p0 = [p0x p0y p0z ]T è il vettore posizione OP espresso nel sistema di riferimento Ox0 y 0 z 0 .
Dalle condizioni (3.13), unite al fatto che il prodotto scalare di un vettore per sè stesso è
pari a 1, discende una delle proprietà più importanti ed utili delle matrici di rotazione, ovvero
la proprietà di ortogonalità:
RT R = I . (3.14)
3.2.3.3 Inversa di R
Si può dimostrare che il determinante di una matrice di rotazione è pari a 1. Quindi la matrice
R ammette sempre un’inversa R−1 . Moltiplicando a destra ambo i membri della (3.14) per
R−1 , si ottiene:
RT RR −1
| {z } = IR
−1
, (3.20)
I
ovvero:
RT = R−1 . (3.21)
L’inversa di una matrice di rotazione può quindi essere semplicemente calcolata tramite
un’operazione di trasposizione.
• Ox1 y1 z1 terna ottenuta dalla 0 a seguito di una rotazione R10 (specificata in terna 0);
CAPITOLO 3. CINEMATICA DEL CORPO RIGIDO NELLO SPAZIO 28
• Ox2 y2 z2 terna ottenuta dalla terna 1 a seguito di una rotazione R21 (specificata in terna
1).
Sia R20 la matrice di rotazione (incognita) che esprime l’orientazione della terna Ox2 y2 z2
rispetto alla terna base Ox0 y0 z0 . Siano p0 , p1 , p2 , le coordinate di un punto P dello spazio
rispetto ad ognuna delle tre terne. Per quanto visto nel Par. 3.2.2, valgono le relazioni:
p0 = R10 p1 (3.22)
p1 = R21 p2 (3.23)
p0 = R20 p2 . (3.24)
Sostituendo l’espressione (3.23) di p1 nella (3.22) si ottiene:
p0 = R10 R21 p2 . (3.25)
Dovendo essere valide entrambe le equazioni (3.24) e (3.25) per ogni punto P , sarà allora:
R20 = R10 R21 . (3.26)
La (3.26) è la legge di composizione di rotazioni successive in terna corrente. Generalizzando,
se abbiamo n + 1 terne, numerate da 0 ad n, ognuna legata alla precedente da una matrice
Rii−1 , la matrice di rotazione che esprime l’orientazione dell’ultima terna rispetto alla prima,
assunta come terna base, è data da:
Rn0 = R10 R21 . . . Rn−1
n−2 n−1
Rn . (3.27)
In pratica, la matrice di rotazione complessiva R20 si ottiene, come nel caso della composizione
in terna corrente, con un prodotto matriciale delle due rotazioni successive, ma questa volta
l’ordine di moltiplicazione va invertito, ovvero, generalizzando al caso di n rotazioni successive
0 i−1
Ri , i = 1, . . . , n specificate in terna 0.
CAPITOLO 3. CINEMATICA DEL CORPO RIGIDO NELLO SPAZIO 29
z
z'' z 1
y1
y'
ψ
O φ
y
φ
θ ψ
x
x'
x1
x''
z z'
y'
O φ
y
x x'
z
z''
θ
y' y''
O φ
y
φ
θ
x
x'
x''
r1,3 = cφsθ ,
r2,3 = sφsθ ,
Ricordiamo che la funzione atan2(x, y) calcola l’arcotangente del rapporto x/y, ma utilizza il
segno di ciascun argomento per determinare il quadrante di appartenenza dell’angolo risultante.
In questo modo si determina in modo corretto l’angolo in un intervallo di ampiezza pari
all’angolo giro.
Si osserva inoltre che:
2 2
r1,3 + r2,3 = sin2 θ ,
q
2 2
sθ = ± r1,3 + r2,3 ,
se si sceglie il segno positivo per la radice quadrata (ipotizzando cioè 0 < θ < π), ricordando
che:
r3,3 = cθ ,
CAPITOLO 3. CINEMATICA DEL CORPO RIGIDO NELLO SPAZIO 32
Con questa scelta del segno di sin θ l’angolo ψ può essere calcolato dagli elementi r3,1 e r3,2
in questo modo:
Se avessimo scelto il segno negativo per la radice quadrata (ovvero −π < θ < 0):
q
2 2
θ = atan2(− r1,3 + r2,3 , r3,3 ) , (3.34)
Se sin θ = 0 si osserva che r1,3 = r2,3 = r3,1 = r3,2 = 0. Per le proprietà della matrice
di rotazione risulterà necessariamente r3,3 = ±1. Supponiamo che r3,3 = 1 (in questo caso
particolare gli assi z iniziale e finale coincidono). La matrice di rotazione in questo caso diventa
pari a:
cφcψ − sφsψ −cφsψ − sφcψ 0 cos(φ + ψ) − sin(φ + ψ) 0
REU L = sφcψ + cφsψ −sφsψ + cφcψ 0 = sin(φ + ψ) cos(φ + ψ) 0 (3.36) .
0 0 1 0 0 1
Si osserva che non è possibile in questo caso calcolare φ e ψ ma solo la loro somma, visto che
le due rotazioni sono effettuate rispetto allo stesso asse.
• ruotiamo intorno all’asse z di un angolo pari a α, queste due ultime rotazioni servono
per riportare il versore λ nella configurazione iniziale.
Le cinque operazioni appena descritte sono effettuate in terna fissa, per cui la matrice di
rotazione complessiva può essere calcolata in questo modo:
R = Rz (α)Ry (β)Rz (θ)Ry (−β)Rz (−α) =
cα −sα 0 cβ 0 s β cθ −sθ 0 cβ 0 −sβ cα sα 0
= sα cα 0 0 1 0 sθ cθ 0 0 1 0 −sα cα 0
0 0 1 −sβ 0 cβ 0 0 1 sβ 0 cβ 0 0 1
(3.37)
E’ possibile sostituire a sin(α), cos(α), sin(β) e cos(β) le seguenti espressioni:
λy
sin α = p , (3.38)
λ2x + λ2y
λx
cos α = p , (3.39)
λ2x + λ2y
q
sin β = λ2x + λ2y , (3.40)
cos β = λz . (3.41)
La matrice di rotazione può quindi essere scritta in questo modo:
λ2x (1 − cθ ) + cθ λx λy (1 − cθ ) − λz sθ λx λz (1 − cθ ) + λy sθ
R = λx λy (1 − cθ ) + λz sθ λ2y (1 − cθ ) + cθ λy λz (1 − cθ ) − λx sθ (3.42)
λx λz (1 − cθ ) − λy sθ λy λz (1 − cθ ) + λx sθ λ2z (1 − cθ ) + cθ
Si osserva che la rotazione di un angolo θ intorno al versore λ coincide con una rotazione di
un angolo −θ intorno all’asse −λ.
Le coordinate di P rispetto alla terna mobile risultano costanti (il punto P è solidale al corpo
B). La velocità di P può essere quindi scritta in questa forma:
ṗ = [ω̃][R]p1 . (3.54)
ṗ = [Ṙ]p1 . (3.56)
sviluppando i prodotti e ricordando poi che risulta ²21 + ²22 + ²23 + ²24 = 1 si ricava facilmente
che:
[E]−1 = E T , (3.70)
Si osserva che non esistono singolarità nelle equazioni cinematiche mostrate in precedenza,
per questo molte procedure numeriche utilizzano i parametri di Eulero come rappresentazione
dell’orientazione.
Definiremo quindi le velocità generalizzate del corpo i come le derivate temporali delle coor-
dinate generalizzate:
ẋi
ẏi
żi
q̇i = . (3.73)
φ̇
i
θ̇i
ψ̇i
Per descrivere la velocità del corpo rigido nello spazio potremmo comunque scegliere una
qualsiasi combinazione lineare delle velocità generalizzate.
Ad esempio, potremmo scegliere le componenti della velocità angolare anziché le derivate
degli angoli di Eulero per descrivere la parte rotazionale della velocità. La relazione (3.61)
permette di esprimere le componenti del vettore velocità angolare rispetto alle derivate degli
angoli di Eulero.
Capitolo 4
Le equazioni relative ai vincoli reonomi sono equazioni nelle quali compare esplicitamente
la variabile temporale t e vengono quindi imposte dal progettista, mentre le equazioni relative
ai vincoli scleronomi vengono generate in maniera sistematica, con il metodo che ci accingiamo
a descrivere, una volta che sia specificata la topologia del meccanismo e la geometria dei suoi
membri.
38
CAPITOLO 4. CINEMATICA DEI SISTEMI PIANI 39
Il numero di gradi di libertà del sistema è costituito dalla differenza tra il numero totale di
coordinate generalizzate del sistema (dimensione dello spazio delle configurazioni) e il numero
di relazioni che possono essere scritte per i vincoli reonomi. In altri termini, il numero di gradi
di libertà F del sistema risulta quindi:
dove q = [q1 q2 q3 . . . q3i−2 q3i−1 q3i . . . q3(l−1)−2 q3(l−1)−1 q3(l−1) ]T ∈ R3(l−1) è il vettore
delle coordinate generalizzate del meccanismo. Di tutte le equazioni (4.2), le prime 2j1 + j2
rappresentano le equazioni dei vincoli scleronomi, mentre le rimanenti F rappresentano le
equazioni dei vincoli reonomi, ovvero le leggi di moto di alcuni degli elementi del meccanismo.
3
1
θ = θ(t)
.................................................
0
l = 4, j1 = 4, j2 = 0
⇓
F = 3(l − 1) − 2j1 − j2 = 3(4 − 1) − 2 × 4 = 1
ψ(q, t) = 0 , (4.3)
ψ(q) = 0 , (4.4)
(la variabile tempo in questo caso non compare, dato che stiamo analizzando la configurazione
del sistema in un istante fissato). Il metodo di risoluzione di Newton - Raphson è basato
sulla linearizzazione del sistema, in altri termini si approssimano le funzioni non lineari che
costituiscono il sistema, in una certa configurazione di partenza qi , per mezzo dei primi due
termini dell’espansione in serie di Taylor. Con questa ipotesi il sistema da risolvere diventa:
ψ(q) ∼
= ψ(qi ) + [Ψq (qi )] (q − qi ) = 0 , (4.5)
∂ψ(q, t)
[Ψq (q)] = (4.6)
∂q
ovvero la matrice Jacobiana della funzione non lineare ψ(q), valutata nella configurazione
qi . Supponendo di conoscere una configurazione approssimata qi , per mezzo della (4.5) è
possibile determinare una nuova stima della configurazione:
¡ ¢
[Ψq ]qi+1 = − ψ(qi ) − [Ψq ]qi , (4.7)
La (4.7) costituisce un sistema lineare, che, se la matrice ψ(q) è invertibile, può essere risolto:
¡ ¢
qi+1 = −[Ψq ]−1 ψ(qi ) − [Ψq ]qi , (4.8)
CAPITOLO 4. CINEMATICA DEI SISTEMI PIANI 41
Figura 4.3: Approssimazione della soluzione di un’equazione non lineare per mezzo del metodo
di Newton Raphson.
La configurazione del meccanismo viene determinata iterando il sistema (4.8) fino alla con-
vergenza della soluzione (ovvero fintantoché la differenza tra la nuova configurazione qi+1 e
quella vecchia qi non diventa trascurabile).
Il metodo di Newton Raphson è caratterizzato da convergenza di tipo quadratico in un
intorno della soluzione. Nella figura 4.3 si riporta schematicamente il funzionamento del
metodo per una funzione in una variabile.
Come accennato nel primo capitolo, il problema della definizione della configurazione in-
iziale in generale può ammettere più di una soluzione. La soluzione verso cui convergerà il
metodo numerico dipende dalla stima iniziale.
Si osserva inoltre che il metodo di Newton - Raphson non sempre converge verso la soluzione
dell’equazione non lineare, se la configurazione iniziale non è sufficientemente ’vicina’ alla
soluzione, si possono avere problemi di divergenza dell’algoritmo numerico.
Un ulteriore problema nasce dal fatto che il problema della configurazione iniziale può non
ammettere soluzione, questo problema si verifica se ai parametri di input (vincoli reonomi)
vengono assegnati valori non compatibili con la geometria del sistema, in questo caso il metodo
numerico necessariamente divergerà.
Il metodo di soluzione proposto è basato sulla inversione della matrice Jacobiana. L’-
efficienza dell’algoritmo per la soluzione del problema della configurazione iniziale dipende
essenzialmente dall’efficienza con cui viene risolto il sistema lineare (4.7).
dψ ∂ψ(q, t) ∂ψ(q, t)
= q̇ + =0 . (4.9)
dt ∂q ∂t
Ricordando la definizione della matrice Jacobiana:
∂ψ(q, t)
[Ψq ] = (4.10)
∂q
e definendo il vettore
∂ψ(q, t)
ψt = (4.11)
∂t
CAPITOLO 4. CINEMATICA DEI SISTEMI PIANI 42
Si osserva inoltre che la matrice [Ψq ] dipende da q, ovvero dalla configurazione del meccan-
ismo. Le configurazioni per le quali risulta det[Ψq ] = 0 sono dette configurazioni singolari.
Mentre la derivata rispetto al tempo del secondo membro della (4.10) fornisce:
d ∂ d
(ψt ) = (ψt )q̇ + (ψt ) = [Ψt,q ]q̇ + ψ tt . (4.15)
dt ∂q dt
∂
γ=− ([Ψq ]q̇)q̇ − 2[Ψq,t ]q̇ − ψ tt , (4.16)
∂q
il problema dell’analisi delle accelerazioni del meccanismo si conclude con la soluzione, per un
generico tempo t, del sistema lineare di equazioni:
yi K
Y 6 xi * ± xj
xA i
YP ...
...
A .
O ... . ..............
q3i−1......................i..... ..... ..... .....
... ........Y ......
.A .. y .
.. .... A
... . j
A xj
yi.. y j
...
q3j−1......................................................................
... ... Oj
... ...
... ...
... ...
... ...
... ...
.. .. -
q3i−2 q3j−2 X
O
assolute del punto A visto come appartenente al corpo i devono coincidere con quelle dello
stesso punto A, ma visto come appartenente al corpo j. In altri termini esprimiamo le co-
ordinate assolute del punto A una volta attraverso il sistema Oi xi yi zi e una volta attraverso
il sistema Oj xj yj zj ed imponiamo che coincidano. Le due equazioni di vincolo si scrivono
dunque:
Scrivendo le coordinate del punto A in termini di coordinate generalizzate per mezzo delle
Eq. (2.7) e (2.8), si ottiene:
XiA = q3i−2 + xA A
i cos q3i − yi sin q3i (4.20)
YiA = q3i−1 + xA A
i sin q3i + yi cos q3i (4.21)
ψk = q3i−2 + xA A A A
i cos q3i − yi sin q3i − [q3j−2 + xj cos q3i − yj sin q3j ] , (4.22)
ψk+1 = q3i−1 + xA A A A
i sin q3i + yi cos q3i − [q3j−1 + xj sin q3i − yj cos q3j ] . (4.23)
Si può osservare che per scrivere le due equazioni di vincolo di cui sopra, è sufficiente conoscere
la posizione della traccia dell’asse di rotazione della coppia nei due sistemi di riferimento solidali
con i corpi i e j. Per tale ragione il metodo delle equazioni di vincolo risulta particolarmente
adatto ad essere utilizzato in un ambiente multibody. Per concludere l’analisi cinematica della
coppia è necessario calcolare gli elementi della matrice [Ψq ] e del vettore γ introdotti dalla
coppia.
Osserviamo inoltre che, per un generico punto A, risulta:
CAPITOLO 4. CINEMATICA DEI SISTEMI PIANI 44
Tabella 4.1: Componenti della k e k + 1 -esima riga della matrice Jacobiana relative a una
coppia rotoidale
∂
(X A ) = −xA A
i sin q3i − yi cos q3i = q3i−1 − Yi
A
, (4.24)
∂q3i i
∂
(YiA ) = xA A A
i cos q3i − yi sin q3i = Xi − q3i−2 . (4.25)
∂q3i
Dalla definizione di [Ψq ] (4.1.5) otteniamo i risultati riassunti nella tabella 5.2
Dalla definizione di γ (4.14) otteniamo:
2
γ(k) = −[q̇3i (q3i−2 − XiA ) − q̇3j
2
(q3j−2 − XjA )] (4.26)
2
γ(k + 1) = −[q̇3i (q3i−1 − YiA ) − q̇3j
2
(q3j−2 − YjA )] . (4.27)
Ancora una volta osserviamo che gli elementi della matrice [Ψq ] e del vettore γ relativi alla
coppia in esame sono individuati dalla semplice conoscenza della posizione dell’asse di rotazione
della coppia rotoidale rispetto ai due sistemi di riferimento solidali con i corpi i e j.
• Tra i due corpi non è possibile la rotazione relativa cioè le due coordinate q3i e q3j
differiscono di una quantità ∆φij .
In altri termini: ¯ A ¯
¯ Xi YiA 1 ¯
¯ B ¯
ψk = ¯¯ Xi YiB 1 ¯¯ = 0 (4.28)
¯ XjC YjC 1 ¯
ψk+1 = q3i − q3j − ∆φij = 0 . (4.29)
Svolgendo il determinante indicato nell’eq. 4.24, si ottiene:
ψk = XiA (YiB − YjC ) − YiA (XiB − XjC ) + XiB YjC − YiB XjC =
= XiA YiB − XiA YjC − YiA XiB + YiA XjC + XiB YjC − YiB XjC . (4.30)
Dalla quale, sostituendo i valori delle coordinate dei punti nel sistema di riferimento inerziale in
funzione delle coordinate nei sistemi solidali con i corpi i e j per mezzo delle Eq. (2.7 e 2.8) si
ottiene l’equazione di vincolo cercata. L’equazione 4.25 non necessita ulteriori manipolazioni.
CAPITOLO 4. CINEMATICA DEI SISTEMI PIANI 45
yi K
Y 6 xi * ± xj
YP Cj Bi
Ai
q3i−1...................O
...i.....
...
... yY
j
...
...
q3j−1......................................................................
... ... Oj
... ...
.... ....
... ...
... ...
... ...
. . -
q3i−2 q3j−2 X
O
Tabella 4.2: Componenti della k e k + 1 -esima riga della matrice Jacobiana relative a una
coppia rotoidale
CAPITOLO 4. CINEMATICA DEI SISTEMI PIANI 46
L’analisi cinematica della coppia si conclude con il calcolo degli elementi della matrice Ψq e
del vettore γ introdotti dalla coppia.
Dalla definizione di Ψq (4.1.5) otteniamo i risultati riassunti nella tabella 5.3 Dalla definizione
di γ (4.14) otteniamo:
γ(k) = 2q̇3i [(YiA − YiB )(q̇3i−1 − q̇3j−1 ) + (XiA − XiB )(q̇3i−2 − q̇3j−2 )] +
2
+ q̇3i [(XiA − XiB )(q3i−1 − q3j−1 ) + (YiB − YiA )(q3i−2 − q3j−2 )] (4.31)
γ(k + 1) = 0 . (4.32)
ψk = dT d − d2AM = 0 . (4.35)
VINCOLI SULLE COORDINATE CARTESIANE
Talvolta, in un modello multibody di un meccanismo, risulta utile introdurre equazioni vincolari
direttamente agenti sulle coordinate di un punto M di un corpo i. Per esempio si può imporre
che l’ascissa (o l’ordinata) del punto M sia pari ad un valore prefissato dx (o dy ).
Le equazioni di vincolo si scrivono immediatamente come:
yi M
Y 6
1
M xi
yiM
xM
i
Oi
-
O XiM X
Si può pensare che le distanze dx e dy non siano fisse, ma variabili nel tempo, cioè che sia
dx =dx (t) e dy = dy (t). In tal caso gli elementi dei vettori γ e ψt introdotti da questi due
vincoli risultano:
γ ax = 2
q̇3i (xM M ¨ ,
i cos q3i − yi sin q3i ) + dx (4.40)
γ ax = 2
q̇3i (xM M ¨ ,
i sin q3i + yi cos q3i ) + dy (4.41)
ψt ax = d˙x , (4.42)
ψt ay = d˙y . (4.43)
Se, come nel caso precedente, supponiamo che φi =φi (t), gli elementi di γ e ψt introdotti dal
vincolo sono :
ψt aφ = φ̇i , (4.47)
γ = φ̈i . (4.48)
yi M
Y 6
1
xi
φi
................................
Oi
-
O XiM X
6
Y
yi O dij
yj
µ
Mi : Mj
xi Oj
:
µ Oi
rj
ri
xj R
-
O X
ψk = dT d − d2ij = 0 . (4.50)
VINCOLI SULLE COORDINATE CARTESIANE RELATIVE
In maniera del tutto simile a quanto fatto per le coordinate assolute di un punto si possono
ricavare le equazioni di vincolo sulle coordinate relative di due punti appartenenti a corpi diversi.
CAPITOLO 4. CINEMATICA DEI SISTEMI PIANI 49
Y 6
ti
yik ± 6 yjk
]
n M
¾i 1Uy i
θj >
xk i
xi ± ri rj Pj
Pi qθi
xki. ?
tj yj
o
>
xj
Oi y z
i
Oj
-
O X
di riferimento solidali con i due corpi formanti la coppia superiore (Pi xik yik zik e Pj xjk yjk zjk );
tali sistemi di riferimento, rispetto ai quali si suppone di conoscere le equazioni parametriche
dei due profili Ci e Ci , hanno origine, rispettivamente, nei punti Pi e Pj e sono orientati come
i due corrispondenti sistemi con origine nei baricentri (Oi xi yi zi e Oj xj yj zj ). Le coordinate di
un generico punto M appartenente al profilo Ci sono dunque espresse dalle seguenti equazioni
parametriche nel riferimento Pi xik yik zik :
xM
ik = ri (θi ) cos θi (4.51)
M
yik = ri (θi ) sin θi , (4.52)
quindi, poiché i due sistemi Pi xik yik zik e Oi xi yi zi hanno la stessa orientazione si ha:
xM
i = xPi i + ri (θi ) cos θi (4.53)
xM
i = yiPi + ri (θi ) sin θi , (4.54)
le cui coordinate sono espresse nel sistema Oi xi yi zi . Se definiamo l’operatore matriciale R̂:
· ¸
0 −1
R̂ = , (4.58)
1 0
ti = Ri ti (i) (4.60)
ni = Ri ni (i) (4.61)
Le condizione di contatto dei due profili Ci e Cj risultano dunque le seguenti:
1. le coordinate del punto M visto una volta appartenente al profilo Ci e una volta
appartenente al profilo Cj devono essere uguali, ovvero:
· M ¸
Xi − XjM = 0
(4.62)
YiM − YjM = 0
ni T tj = 0 (4.63)
· ¸ · ¸ · ¸ · ¸ · ¸
ψk q3i−2 xMi q3j−2 xMj
= + Ri − − Rj (4.64)
ψk+1 q3i−1 yiM q3j−1 yjM
Dalle quali, con successive derivazioni si possono ottenere la matrice Jacobiana [Ψq ] e il vettore
γ.
CAPITOLO 4. CINEMATICA DEI SISTEMI PIANI 51
rj *
j
k
ri *
dove con ωik e ωjk abbiamo indicato le velocità angolari delle due ruote relative al portatreno
e con ri ed rj i due raggi.
Dalla definizione di coordinate generalizzate,
da cui:
Y x2
y1 O1 = (q1 , q2 )
A X y2 O2 = (q4 , q5 )
q6
O2
O1
2L q3 B 2L
x1
q1 − L cos q3 = 0 ,
q2 − L sin q3 = 0 .
xB B
i = x1 = L ,
yiB = y1B = 0 ,
xB B
j = x2 = −L ,
yjB = y2B = 0 ,
ed il vettore ψt :
0
0
0
ψt =
. (4.78)
0
ḣ(t)
ġ(t)
Membro i Membro j xi yi xj yj
1 4 -1 0 0 0
1 2 1 0 -1.75 0
2 3 1.75 0 0 0
Tabella 4.3: Manovellismo di spinta, riepilogo dei dati relativi alle coppie rotoidali
function vincolo =
rotoidale2d(xP_i,yP_i,xP_j,yP_j,xi,yi,thetai,xj,yj,thetaj)
% riporto i punti nelle coordinate di base
posP_0i = local2base(xP_i,yP_i,xi, yi, thetai);
pos=posi_0 + Ri*posP_i;
La seconda, rot2d, ha come input un angolo theta e fornisce come output la matrice di
rotazione corrispondente a quell’angolo:
function R = rot2d(theta)
R = [cos(theta) -sin(theta);
sin(theta) cos(theta)];
ψ1 = q1 − cos q3 = 0 ,
ψ2 = q2 − sin q3 = 0 ; (4.80)
CAPITOLO 4. CINEMATICA DEI SISTEMI PIANI 56
ψ5 = q4 + 1.75 cos q6 − q7 = 0 ,
ψ6 = q5 + 1.75 sin q6 − q8 = 0 ; (4.82)
Nella tabella 4.4 si riassumono i dati relativi alla coppia prismatica che collega l’elemento
3 al telaio 4, i dati necessari per scrivere le equazioni di vincolo sono le coordinate di tre punti,
tra loro allineati, due appartenenti all’elemento i e uno all’elemento j, e l’angolo ∆φ tra le
direzioni di xi e j.
matrice = [posP_0’ 1;
posQ_0’ 1;
posR_0’ 1];
ψ7 = q7 sin q9 − q8 cos q9 = 0 ,
ψ8 = q9 = 0 ; (4.83)
Per quanto riguarda l’equazione di vincolo reonomo, si suppone, a titolo di esempio, che
l’elemento 1 ruoti intorno al punto O con velocità angolare ω costante, risulta quindi:
ψ9 = q3 − ωt = 0 ; (4.84)
CAPITOLO 4. CINEMATICA DEI SISTEMI PIANI 57
q1 − cos q3
q2 − sin q3
q1 + cos q3 − q4 + 1.75 cos q6
q2 + sin q3 − q5 + 1.75 sin q6
Ψ= q4 + 1.75 cos q6 − q7 =0 (4.85)
q5 + 1.75 sin q6 − q8
q7 sin q9 − q8 cos q9
q9
ωt − q3
∂Ψ(q,t)
E’ possibile quindi calcolare la matrice Jacobiana Ψq = ∂q
:
1 0 sin q3 0 0 0 0 0 0
0 1 − cos q3 0 0 0 0 0 0
1 0 − sin q3 −1 0 −1.75 sin q6 0 0 0
0 1 cos q3 0 −1 1.75 cos q6 0 0 0
Ψq (q) =
0 0 0 1 0 −1.75 sin q6 −1 0 0 (4.86)
,
0 0 0 0 1 1.75 cos q6 0 −1 0
0 0 0 0 0 0 sin q9 − cos q9 q7 cos q9 + q8 sin q9
0 0 0 0 0 0 0 0 1
0 0 −1 0 0 0 0 0 0
∂Ψ(q,t)
ed il vettore Ψt = :
∂t
0
0
0
0
Ψt =
0
(4.87)
0
0
0
ω
Il vettore γ, per il calcolo delle accelerazioni, è dato da:
− cos q3 q̇32
− sin q3 q̇32
cos q3 q̇32 + 1.75 cos q6 q̇62
sin q3 q̇32 + 1.75 sin q6 q̇62
γ= 1.75 cos q6 q̇26
2
(4.88)
1.75 sin q6 q̇6
−2q̇9 q̇7 cos q9 − 2q̇9 q̇8 sin q9 + q̇ 2 q7 sin q9 − q̇ 2 q8 cos q9
9 9
0
0
I risultati ottenuti sono stati utilizzati per l’analisi cinematica del meccanismo, ovvero per
determinare, durante il moto, posizione, velocità e accelerazione di tutti gli elementi del
meccanismo.
CAPITOLO 4. CINEMATICA DEI SISTEMI PIANI 58
Figura 4.13: Manovellismo di spinta centrato: configurazione iniziale (punto morto superiore)
q̇(t) = −Ψ−1
q Ψt , (4.89)
q̈(t) = Ψ−1
q γ , (4.90)
• l1 = 0.2m;
• l2 = 0.35m;
• l3 = 0.25m;
5.5
4.5
2.5
1.5
1
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
tempo
Figura 4.14: Manovellismo di spinta centrato: ascissa del pistone durante la simulazione.
−4
x 10
8
6
errore nella stima della posizione
0
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
Figura 4.15: Manovellismo di spinta centrato: errore nella stima dell’ascissa del pistone.
25
20
15
10
velocità del pistone
−5
−10
−15
−20
−25
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
tempo
Figura 4.16: Manovellismo di spinta centrato: velocità del pistone durante la simulazione.
CAPITOLO 4. CINEMATICA DEI SISTEMI PIANI 60
200
100
−200
−300
−400
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
tempo
Figura 4.17: Manovellismo di spinta centrato: accelerazione del pistone durante la simulazione.
q1 − l1 cos q3 = 0 ;
q2 − l1 sin q3 = 0 ;
q1 + l1 cos q3 − q4 + l2 cos q6 = 0 ;
q2 + l1 sin q3 − q5 + l2 sin q6 = 0 ;
q4 + l2 cos q6 − q7 + l3 cos q9 = 0 ;
q5 + l2 sin q6 − q8 + l3 sin q9 = 0 ;
q7 + l3 cos q9 = 0 ;
q8 + l3 sin q9 = 0 ;
q3 = θ(t) ;
CAPITOLO 4. CINEMATICA DEI SISTEMI PIANI 61
La procedura è stata ripetuta finché la differenza tra le configurazioni calcolate in due iterazioni
successive è risultata inferiore ad un valore fissato (pari a 0.0001).
Ricordiamo che il problema della definizione della configurazione iniziale non presenta in
generale una sola soluzione. Nelle figure 4.18 e 4.20 si riportano le due configurazioni ottenute,
entrambe compatibili con le condizioni di vincolo imposte, mentre nelle figure 4.19 e 4.21 si
riporta la somma dei valori assoluti delle differenze tra i componenti del vettore configurazione
in due iterazioni successive. Come si vede in entrambi i casi il metodo iterativo raggiunge la
convergenza (errore totale inferiore a 0.0001) in cinque e sei iterazioni.
La configurazione finale ottenuta (tra le due possibili) dipende dalla configurazione di
partenza q0 .
CAPITOLO 4. CINEMATICA DEI SISTEMI PIANI 62
0.15
y3
0.1
O
3
y0
y2 x
2
0.05
[m]
x
3
O
2
y0
x0
0
O0
y1
−0.05
O
1
x1
−0.1
140
120
100
80
|qi − qi−1|
60
40
20
0
1 1.5 2 2.5 3 3.5 4 4.5 5 5.5 6
iterazione
Figura 4.19: Quadrilatero articolato, errore durante il calcolo della configurazione iniziale.
0.1
y0
0.05
x
O0 0
0
y1
x3
−0.05
[m]
O1
y0
−0.1 O
x1 y1 y3 3
−0.15
−0.2
O2
x2
−0.25
|qi − qi−1|
4
0
1 1.5 2 2.5 3 3.5 4 4.5 5
iterazione
Figura 4.21: Quadrilatero articolato, errore durante il calcolo della configurazione iniziale.
1.5
0.5
−0.5
−1
−1.5
−2
−2.5
−3
−1 0 1 2 3 4
1.5
0.5
−0.5
y
−1
−1.5
−2
−2.5
−3
−1 0 1 2 3 4
x
3
componente lungo x
componente lungo y
vel.
−1
−2
−3
−4
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
tempo
0.5
0.45
0.4
0.35
vel.angolare
0.3
0.25
0.2
0.15
0.1
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
tempo
5
componente lungo x
componente lungo y
4
1
acc.
−1
−2
−3
−4
−5
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
tempo
−0.2
−0.4
acc.angolare
−0.6
−0.8
−1
−1.2
−1.4
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
tempo
Nella tabella 5.1 si riportano le principali coppie cinematiche ed i gradi di libertà associati a
ciascuno.
66
CAPITOLO 5. I VINCOLI: SISTEMI TRIDIMENSIONALI 67
Per la caratterizzazione dei vincoli è utile introdurre degli ulteriori sistemi di riferimento.
Per la generica coppia cinematica k che lega il corpo i al corpo j definiremo due nuovi sistemi
di riferimento (che chiameremo sistemi di riferimento di giunto):
Pik xik yik zik , con origine nel punto Pik , solidale al corpo i;
Pjk xjk yjk zjk , con origine nel punto Pjk ,solidale al corpo j.
Per il corpo i, (vedi figura 5.5)l’orientamento del sistema di riferimento di giunto è individuata
→
− −
→
per mezzo dei tre coseni direttori dei versori f ik , → −
g ik e h ik associati ai tre assi xik , yik e
−
→
zik rispettivamente. Il versore h ik è individuato dal punto Qik , posto a distanza unitaria da
−
→
Pik , analogamente il versore f ik è individuato dal punto Rik , posto a distanza unitaria da
Pik , rispetto al sistema di riferimento solidale al corpo i avremo quindi:
(i) (i) (i)
fik = Rik − Pik ,
(i) (i) (i)
hik = Qik − Pik .
−
→ −
→
Il versore −
→
g ik può essere determinato come prodotto vettoriale di h ik e f ik rispettivamente:
−
→ −
→ −
→
g ik = h ik × f ik ,
ovvero, in termini di componenti rispetto al sistema di riferimento i:
(i) (i)
gik = [h̃ik ](i) fik ;
(i) (i) (i) (i) →
−
indicando con hik = [hx , hy , hz ]T i coseni direttori del versore h ik rispetto al sistema di
riferimento i, la matrice [h̃ik ](i) risulta cosı̀definita:
(i) (i)
0 −hz hy
(i)
[h̃ik ](i) = hz(i) 0 −hx .
(i) (i)
−hy hx 0
Per semplificare la trattazione dei vincoli di base, descritta nei paragrafi successivi, è opportuno
adottare una notazione unica per tutte le coppie cinematiche. Con riferimento alla figura 5.6,
si evidenziano i seguenti vettori:
CAPITOLO 5. I VINCOLI: SISTEMI TRIDIMENSIONALI 69
~ri ,~rj : i vettori che congiungono le origini dei sistemi di riferimento sol-
idali ai corpi, oi e oj rispettivamente, con l’origine del sistema di
riferimento di base O;
In termini di coseni direttori dei vettori rispetto alla terna base risulta:
Indicando quindi con aii e con ajj i coseni direttori dei vettori rispetto alle terne solidali ai
sistemi di riferimento solidali ai corpi i e j rispettivamente e con [R0i ] e [R0j ] le matrici di
rotazione delle terne mobili rispetto alla terna base, risulta:
L’equazione che esprime il vincolo di ortogonalità tra i due vettori è quindi data la seguente:
• ~hi e ~hj devono essere paralleli, questa condizione porta alla formulazione di 2 equazioni
scalari.
• ~hi e ~hj devono essere paralleli, questa condizione porta alla formulazione di 2 equazioni
scalari;
• ~hi e d~ij devono essere paralleli, questa condizione porta alla formulazione di 2 equazioni
scalari;
• f~i e f~j devono essere perpendicolari, questa condizione porta alla formulazione di un’e-
quazione scalare;
• ~hi e ~hj devono essere paralleli, questa condizione porta alla formulazione di 2 equazioni
scalari;
• ~hi e d~ij devono essere paralleli, questa condizione porta alla formulazione di 2 equazioni
scalari;
• P~i e P~j devono essere coincidenti, questa condizione porta alla formulazione di 3 equazioni
scalari;
6.1 Introduzione
In questo capitolo si introduce il problema dello studio della dinamica dei sistemi multibody. In
particolare verranno richiamati sinteticamente i metodi analitici su cui si basano le procedure
per la derivazione delle equazioni di moto dei sistemi multicorpo.
L’applicazione diretta delle equazioni di Newton può risultare difficoltosa, specialmente per
i sistemi costituiti da un numero elevato di corpi. La difficoltà maggiore consiste nel definire
una procedura sistematica che permetta la generazione delle equazioni di moto per qualsiasi
sistema meccanico.
Un approccio più conveniente dal punto di vista computazionale è quello che fa uso del
principio di Hamilton e delle equazioni di Lagrange. Questo approccio di tipo energetico
consente di giungere ad una formulazione delle equazioni della dinamica in termini variazionali,
che si presta ad essere utilizzata con l’ausilio di un calcolatore.
• infinitesimo,
Più in dettaglio:
si definisce spostamento virtuale δ~ri di un punto Pi ,in una certa posizione Pi0 all’istante
t0 , ciascuno degli infiniti spostamenti elementari tangenti alle taiettorie passanti per Pi0 che
il punto Pi può compiere con i vincoli irrigiditi all’istante ti .
Si definiscono quindi spostamenti virtuali reversibili quelli tali che se è δ~ri è uno sposta-
mento virtuale, lo è anche -δ~ri .
Definiremo quindi lavoro virtuale di una generica forza F~i il lavoro fatto in corrispondenza
di uno spostamento virtuale δ~ri del suo punto di applicazione, ovvero:
79
CAPITOLO 6. RICHIAMI DI DINAMICA ANALITICA 80
∂r ∂r
[riq ] = ∂qiy1 ... ∂qiyn . (6.3)
∂riz
∂q1
... ∂r
∂qn
iz
Se, dunque, indichiamo la forza esterna agente sul generico corpo i appartenente al sistema
con F~i , (l’indice i varia da 1 ad n, avendo indicato con n il numero di corpi che costituiscono
il sistema), il Principio dei Lavori Virtuali può essere cosı̀ formulato:
n
X
δW = F~i · δ~ri = 0 (6.5)
i=1
osserviamo che, se tutte le forze agenti sul sistema sono conservative, la funzione lavoro W
può essere sostituita con la funzione potenziale V e, quindi il “PLV” può essere cosı̀ riscritto:
δV = 0 (6.6)
Quindi, perchè δWt sia nullo, essendo δ~rj del tutto arbitrario, deve risultare:
n
X
F~ = F~j = 0 (6.8)
j=1
ed essendo δθû del tutto arbitrario, perchè risulti δWr = 0 deve essere:
n
X
~ =
M ~rj ∧ F~j = 0 (6.10)
j=1
Può apparire contraddittorio il fatto che un sistema in movimento venga trattato come se
fosse in equilibriio, ma l’apparente contraddizione viene eliminata se si pensa che in 6.14 si fa
esplicitamente riferimento a spostamenti virtuali e non effettivi.
x = l sin θ ,
y = l cos θ .
δx = l cos θδθ ,
δy = −l sin θδθ .
T sin θl cos θδθ − T cos θl sin θδθ − mgl sin θδθ − mẍδx − mÿδy = 0 .
Se ipotizziamo che le forze esterne siano conservative, il lavoro svolto da tali forze è pari alla
differenza di potenziale, cioè all’opposto della diffetenza di energia potenziale V :
Z t2 Xn Z t2
[ (Fk )δrk )]dt = − δV dt . (6.17)
t1 k=1 t1
Z t2 X n Z t2 X n
d
[ mk vk (δrk ]dt = [ mk vk (δvk )]dt =
t1 k=1
dt t 1 k=1
Z t2 X n
1
= mk (δvk )(δvk )dt =
2 t1 k=1
Z t2 X n
= δ mk vk2 dt =
t1 k=1
Z t2
= δT dt , (6.20)
t1
L=T −V , (6.22)
CAPITOLO 6. RICHIAMI DI DINAMICA ANALITICA 84
la 6.21 diventa:
Z t2 Z t2 n
X
δW dt = δ(T − V )dt − mk vk δrk \t=t
t=t1 =
2
t1 t1 k=1
Z t2 n
X
= δ Ldt − mk vk δrk \t=t
t=t1
2
. (6.23)
t1 k=1
δrk (t1 ) = 0 ,
δrk (t2 ) = 0 ,
si ha:
Z t2 Z t2
δW dt = δ Ldt = 0 , (6.24)
t1 t1
Infine, se consideriamo che sul sistema agiscano anche forze non conservative, dobbiamo
mettere in conto il lavoro virtuale Wn da esse compiuto e il principio di Hamilton si generalizza
nel modo seguente:
Z t2 Z t2
δ Ldt + δWn dt = 0 . (6.26)
t1 t1
rk = rk (q1 , q2 , . . . , qn , t) . (6.27)
CAPITOLO 6. RICHIAMI DI DINAMICA ANALITICA 85
Le velocità delle masse ed i relativi spostamenti virtuali si possono dunque esprimere in funzione
delle coordinate nel modo seguente:
Xn
drk ∂rk dqj ∂rk
= + , (6.28)
dt j=1
∂qj dt ∂t
n
X ∂rk
δrk = δqj . (6.29)
j=1
∂qj
Il primo termine della 6.14, cioè il lavoro virtuale compiuto dalle forze esterne si scrive:
N
X N
X n
X N X
X n n
X
∂rk ∂rk
Fek δrk = Fek δqj = Fek δqj = Qj δqj (6.30)
k=1 k=1 j=1
∂qj k=1 j=1
∂qj j=1
Dove si è indicata con Qj la forza generalizzata della direzione della j − esima coordinata
lagrangiana, cioè:
n
X ∂rk δW e
Fek = , (6.31)
j=1
∂qj δqj
dove δW e è il lavoro compiuto da tutte le forze esterne per una variazione della sola coordinata
qj .
Resta da considerare il secondo termine della 6.14:
N
X N
X XX N n
d2 {bf rk d2 rk ∂rk
mk ak δrk = mk δrk = mk δqj . (6.32)
k=1 k=1
dt2 k=1 j=1
dt 2 ∂q
j
N
1X drk drk
T = mk (6.33)
2 k=1 dt dt
N
X N
X X d ∂T n
d2 rk ∂T
mk ak δrk = mk 2 δrk = [ ( )− ]δqj . (6.34)
k=1 k=1
dt j=1
dt ∂ q̇j ∂q j
che poichè deve valere per qualsiasi spostamento virtuale δqj risulta nulla solo se sono nulli
tutti gli addendi:
µ ¶
d ∂T ∂T
− = Qj , (6.35)
dt ∂ q̇j ∂qj
per j = 1, . . . , n.
CAPITOLO 6. RICHIAMI DI DINAMICA ANALITICA 87
Per quanto riguarda le forze conservative si osserva che la loro espressione può essere ottenuta
direttamente differenziando la funzione energia potenziale V ad esse associata, ovvero:
N
X n
X ∂V
Fck δrk = − δqj . (6.37)
k=1 j=1
∂qj
Il contributo delle forze non conservative viene invece considerato calcolando le forze general-
izzate: n
X ∂rk
nc
Qj = Fnc
k . (6.38)
j=1
∂qj
Newline per j = 1, . . . , n
per j = 1, . . . , n.
Osserviamo che questa nuova scrittura delle equazioni di Lagrange di fatto non aggiunge nulla
rispetto alle eq. 7.2, ma può risultare utile per una più spedita scrittura delle equazioni di
moto.
Capitolo 7
L∗ = L − λΨ(q1 , q2 ) . (7.1)
e di trattarla come una funzione nelle variabili q1 , q2 , λ, essendo λ una variabile artificialmente
introdotta detta “moltiplicatore di Lagrange”.
Le condizioni di stazionarietà per la funzione L∗ risultano:
∂L∗ ∂L ∂Ψ
= −λ =0 , (7.2)
∂q1 ∂q1 ∂q1
∂L∗ ∂L ∂Ψ
= −λ =0 , (7.3)
∂q2 ∂q2 ∂q2
∂L∗
= Ψ=0 . (7.4)
∂λ
Si può dimostrare che la soluzione del sistema di equazioni precedente coincide necessariamente
con la soluzione del problema di ottimizzazione vincolata.
88
CAPITOLO 7. ANALISI DINAMICA DI UN SISTEMA MULTIBODY 89
Partendo dal principio dei lavori virtuali e dal principio di D’Alembert, si arriva alla formu-
lazione di Hamilton (par.6.7), secondo la quale le equazioni della dinamica si possono formulare
imponendo la stazionarietà dell’integrale (eq. 6.25):
Z t2
δ Ldt = 0 . (7.5)
t1
sia reso stazionario, con le condizioni che siano nulle le variazioni delle variabili agli estre-
mi di integrazione, (cioè δqj (t1 ) = δqj (t2 ) = 0) è che sia verificato il sistema di equazioni
differenziali: µ ¶
d ∂T ∂T
− = Qj , (7.7)
dt ∂ q̇j ∂qj
con j = 1, . . . , n.
Se però, come nel nostro caso, il sistema meccanico è soggetto a vincoli, cioè le variazioni δqj
non sono più tra loro indipendenti, come dobbiamo formulare le equazioni di Lagrange ?
Il problema si risolve osservando che, grazie alla formulazione di Hamilton, il problema di
scrivere le equazioni di moto di un sistema meccanico soggetto a vincoli si riconduce ad un
problema di ottimizzazione di una funzione vincolata.
In altri termini, con il metodo dei moltiplicatori di Lagrange possiamo definire una funzione
lagrangiana estesa L∗ :
L∗ = T − V − (λ1 Ψ1 , . . . , λp Ψp ) , (7.8)
dove λ1 , . . . , λp sono i moltiplicatori di Lagrange da determinare e Ψ1 , . . . , Ψp sono le equazioni
di vincolo.
essendo δW il lavoro virtuale delle forze non conservative e δj la variazione virtuale della
coordinata qj .
Figura 7.1: Forza applicata nell’origine del sistema di riferimento soliale al corpo i e coppia
ortogonale al piano
δW = δqTi Qi , (7.17)
avendo indicato con qi il vettore [q3i−2 , q3i−1 , q3i ]T e con Q il vettore [Fx , Fy , C]T . Il contributo
della forza F~ e della coppia C nel vettore delle forze generalizzate sarà quindi dato da:
• Fx nella posizione 3i − 2,
• Fy nella posizione 3i − 1,
le coordinate del punto P nel sistema di riferimento di base risultano date da:
· ¸ · ¸ · i ¸
xP q3i−2 xP
rP = = + [Ri ] . (7.19)
yP q3i−1 ypi
avendo indicato con [Bi ] la matrice che si ottiene derivando gli elementi della [Ri ] rispetto a
q3i : · ¸
− sin q3i − cos q3i
[Bi ] = . (7.21)
cos q3i − sin q3i
Calcoliamo quindi il lavoro virtuale della forza F~ :
· ¸ · ¸
T Fx ¡ i i T
¢ Fx
δW = δrP = [δq3i−2 , δq3i−1 ] + [xP , yP ][Bi ] δq3i , (7.22)
Fy Fy
δW = δqTi Qi , (7.23)
Il contributo della forza F~ nel vettore delle forze generalizzate sarà quindi dato da:
• Fx nella posizione 3i − 2,
• Fy nella posizione 3i − 1,
· ¸
i i T Fx
• [xP , yP ][Bi ] nella posizione 3i.
Fy
CAPITOLO 7. ANALISI DINAMICA DI UN SISTEMA MULTIBODY 93
Sono ovviamente note le coordinate dei punti di attacco A e B nei sistemi di riferimento locali:
· i ¸ · j ¸
i xA j xB
sA = , sB = . (7.26)
i
yA yBj
Le coordinate dei due punti possono essere calcolate nel sistema di riferimento di base:
· ¸
q3i−2
rA = + [Ri ]siA ,
q3i−1
· ¸
q3j−2
rB = + [Rj ]sjB , (7.27)
q3j−1
δW = −F δl (7.30)
CAPITOLO 7. ANALISI DINAMICA DI UN SISTEMA MULTIBODY 94
il segno negativo è dovuto al fatto che per gli elementi elastici la forza tende ad opporsi alla
deformazione.
Si calcola quindi la variazione δl della distanza tra A e B, osservando che:
Il passo successivo consiste nel calcolo del lavoro virtuale, dalla cui espressione si esplicitano i
termini del vettore delle forze generalizzate. In particolare si avrà:
δW
δq3i−2
δW
Qi = δq3i−1 , (7.32)
δW
δq3i
δW
δq3j−2
δW
Qj = δq3j−1 . (7.33)
δW
δq3j
(7.34)
(avente come incognite i vettori q1 , ..., qn e λ1 , ..., λp ) e dalle p equazioni algebriche di vincolo
Ψ1 , ..., Ψp presenta un numero di incognite pari a quello delle equazioni, ovvero n + p.
Tale sistema può essere risolto in più modi; spesso per i sistemi meccanici si usa differenziare
due volte le equazioni di vincolo:
che costituisce un sistema di equazioni che possono essere risolte simultaneamente con 7.37,
posto: · ¸½ ¾ ½ ¾
M ΨTq q̈ Q
= , (7.39)
Ψq 0 λ γ
che noti al tempo t posizione e velocità di tutti i corpi presenta quali incognite lineari il vettore
q̈ e λ. Una volta risolto fornisce le accelerazioni e le reazioni vincolari, dalle quali si possono
calcolare posizione e velocità al tempo t + ∆t, con cui si risolve nuovamente il sistema 8.4.
CAPITOLO 7. ANALISI DINAMICA DI UN SISTEMA MULTIBODY 95
L∗ = V ∗ − (λ1 Ψ1 , . . . , λp Ψp ) . (7.40)
In questo modo abbiamo aggiunto all’energia potenziale delle forze conservative quella dovuta
ai vincoli sulle coordinate generalizzate; possiamo quindi calcolare le reazioni vincolari dovute
alla variazione della generica coordinata generalizzata qj come:
∂Ψ1 ∂Ψp
Qvinc
j = λ1 + · · · + λp , (7.41)
∂qj ∂qj
dalla quale risulta evidente come i moltiplicatori di Lagrange si possano interpretare come le
componenti generalizzate delle forze di reazione dovute alla presenza dei vincoli cinematici.
Riferendosi a sitemi piani, conviene eplicitare le componenti generalizzate della reazione
vincolare dovuta al vincolo k − esimo in un riferimento solidale a generico corpo i − esimo
detto riferimento del giunto Pk , xik , yik , zik .
Per fissare le idee consideriamo una coppia rotoidale: il riferimento del giunto è un rifer-
imento solidale a uno dei due corpi che la coppia vincola, con l’origine coincidente con l’
asse della coppia e gli assi comunque orientati. Ricordiamo che, in generale, il numero delle
componenti delle forze di reazione introdotte da una coppia è ugaale al grado di vincolo della
coppia stessa. (Per esempio la coppia rotoidale, nel caso piano, introduce due componenti,
cioè due forze , mentre la coppia lungo l’asse della coppia è, in assenza di attrito, nulla).
Ψ1 ≡ q1 − xG cos q3 = 0 , (7.42)
Ψ2 ≡ q2 − xG sin q3 = 0 . (7.43)
1 1
L = m(q̇12 + q̇22 ) + IG q̇32 − λ1 Ψ1 − λ2 Ψ2 . (7.44)
2 2
7.4.2.3 Calcolo del lavoro virtuale compiuto dalle forze esterne in corrispondenza di vari-
azioni delle coordinate generalizzate infinitesime e compatibili con i vincoli del
sistema.
mq̈1 + λ1 = 0 , (7.46)
mq̈2 + λ2 + mg = 0 , (7.47)
IG q̈3 + λ3 − λ2 xG cos q3 = T . (7.48)
m 0 0 1 0 q¨1
0 m 0 0 1 q¨2
0 0 IG xG sin q3 −xG cos q3 q¨3 =
1 0 xG sin q3 0 0 λ1
0 1 −xG cos q3 0 0 λ2
0
−mg
=
T
−xG q̇32 cos q3
xG q̇32 sin q3
Capitolo 8
8.1 Introduzione
Come si visto nel capitolo precedente, applicando le equazioni di Lagrange ad un sistema
multibody descritto tramite un set di coordinate ridondanti, si ottiene il seguente sistema di
equazioni differenziali:
[M ]q̈ + [ψq ]T λ = Q , (8.1)
che devono essere risolte insieme alle equazioni di vincolo:
ψ(q, t) = 0 , (8.2)
che costituisce un sistema di equazioni che possono essere risolte simultaneamente con (8.1),
posto: · ¸½ ¾ ½ ¾
M ΨTq q̈ Q
= , (8.4)
Ψq 0 λ γ
che noti al tempo t posizione e velocità di tutti i corpi presenta quali incognite lineari il vettore
q̈ e λ. Una volta risolto fornisce le accelerazioni e le reazioni vincolari, dalle quali si possono
calcolare posizione e velocità al tempo t + ∆t, con cui si risolve nuovamente il sistema 8.4. E’
opportuno sottolineare che le condizioni iniziali su posizione e velocità q(0) = q0 e q̇(0) = v0
devono soddisfare le equazioni di vincolo.
Per la soluzione del sistema (8.4), supponiamo che lo Jacobiano [Ψq ] abbia rango pieno.
1
Definiamo quindi la matrice [L] = [M ] 2 , tale che:
1 1
[M ] = [M ] 2 [M ] 2 = [L][L] . (8.5)
98
CAPITOLO 8. SOLUZIONE DELLE EQUAZIONI DELLA DINAMICA 99
Con queste definizioni il sistema (8.4) può essere riscritto in questa forma:
· ¸· T ¸½ ¾ ½ ¾
L 0 L H q̈ Q
= , (8.8)
H T −LT1 0 L1 λ γ
E’ possibile dimostrare quindi che il vettore dei moltiplicatori di Lagrange può essere
calcolato in questo modo:
{λ} = [L]−1 {λ1 } , (8.9)
essendo:
{λ1 } = [L1 ]−1 ([H]T [L]−1 Q − γ) . (8.10)
Quindi è possibile calcolare il vettore delle accelerazioni:
Questa procedura, pur essendo molto semplice, non consente di garantire che durante la
simulazione le equazioni di vincolo (8.2) siano rispettate. Se il passo di integrazione ∆t non
è sufficientemente piccolo con questo tipo di integrazione si ottengono errori non accettabili.
ψ(q, t) = 0 , (8.12)
rispettivamente nelle incognite q̇ e q̈. Con questo metodo si cerca di controllare la dinamica
delle violazioni delle equazioni di vincolo, inserendole nel sistema di equazioni differenziali da
risolvere. Si impone che le violazioni delle equazioni di vincolo siano governate dal seguente
sistema lineare a coefficienti costanti:
ψ̈ + 2αψ̇ + β 2 ψ = 0 , (8.15)
essendo α e β due costanti positive scelte dall’utente. Per assicurare la stabilità del metodo e lo
smorzamento delle violazioni delle equazioni di vincolo conviene scegliere α = β (solitamente
si scelgono pari al reciproc del passo di integrazione). Sostituendo nell’equazione (8.15) l’
espressione (8.14) si ottiene:
Che possono essere inserite nel sistema di equazioni differenziali della dinamica:
· ¸½ ¾ ½ ¾
M ΨTq q̈ Q
= . (8.17)
Ψq 0 λ γ − 2αψ̇ − β 2 ψ
CAPITOLO 8. SOLUZIONE DELLE EQUAZIONI DELLA DINAMICA 100
Partendo dalla configurazione q(ti ) e dalla velocità q̇(ti ) al tempo ti , tramite il sistema (8.17)
si stima l’accelerazione q̈(ti ). La velocità e la configurazione al tempo ti+1 possono quindi
essere stimate tramite integrazione numerica:
• per la risoluzione dei sistemi ODE sono disponibili numerosi ed efficienti algoritmi
numerici;
essendo:
∂Γ
[Γv ] = ∈ Rm+F ×F , (8.23)
∂v
CAPITOLO 8. SOLUZIONE DELLE EQUAZIONI DELLA DINAMICA 101
∂Γ
[Γq ] = ∈ Rm+F ×nq . (8.24)
∂q
Si osserva che se la matrice Jacobiana [Ψq ] ha rango pieno, r = m, la matrice [Γq ] è quadrata.
Se [Γq ] è non singolare è possibile definire la matrice:
Se non esiste una dipendenza esplicita dal tempo nelle equazioni di vincolo (vincoli sclerono-
mi) le derivate rispetto al tempo delle coordinate generalizzate devono soddisfare il seguente
sistema di equazioni:
[Ψq ]q̇ = 0 . (8.27)
Confrontando la (8.26) con la (8.27) si ottiene la seguente condizione di ortogonalità:
Per eliminare i moltiplicatori di Lagrange dalle equazioni della dinamica si premoltiplica l’e-
quzione (8.1) per [V ]T :
Tenendo conto della condizione di ortogonalità (8.28) l’equazione precedente può essere
semplificata in questo modo:
[V ]T [M ]q̈ = [V ]T Q , (8.31)
Sfruttando quindi l’espressione delle derivate seconde delle coordinate generalizzate in funzione
delle coordinate indipendenti (8.29) si ottiene:
Per ottenere un’espressione del termine [V̇ ]v̇ si suddivide il vettore q ∈ Rnq ×1 in due parti
u ∈ Rnq −F ×1 e v ∈ RF ×1 contenenti rispettivamente le coordinate dipendenti e indipendenti:
½ ¾
u
q= . (8.34)
v
Le equazioni di vincolo espresse in termini di accelerazione:
essendo [Ψu ] ∈ Rm×nq −F e [Ψv ] ∈ Rm×F . Se le equazioni di vincolo sono indipendenti (se lo
Jacobiano Ψq ha rango pieno), si è visto in precedenza che F = nq − m e quindi la matrice
[Ψu ] risulta quadrata e non singolare. E’ possibile quindi scrivere:
v̇ = [B]q̇ , (8.42)
essendo B una matrice F × nq . A causa delle singolarità il numero di gradi di libertà del mec-
canismo e quindi il numero di righe della matrice B possono cambiare durante la simulazione.
La matrice B ha F righe indipendenti dalle righe della matrice Jacobiana [Ψq ]. Assemblando
le equazioni (8.41) e (8.42) si ottiene:
· ¸ ½ ¾
[Ψq ] −ψt
q̇ = . (8.43)
[B] v̇
Per quanto visto in precedenza la matrice a primo membro dell’equazione (8.43) è non
singolare, risolvendo il sistema si ottiene:
· ¸−1 ½ ¾
[Ψq ] −ψt
q̇ = = −[S]ψt + [V ]v̇ . (8.44)
[B] v̇
· ¸−1
[Ψq ]
La matrice [S] ha dimensioni nq ×m ed è data dalle prime m colonne della matrice ,
[B]
la matrice [V ] ha dimensioni nq × F . Si osserva inoltre che l’equazione (8.26) è un caso
particolare della (8.44). Si ossera inoltre che:
· ¸· ¸−1 · ¸
[Ψq ] [Ψq ] [Ψq ]
= [[S][V ]] =
[B] [B] [B]
· ¸ · ¸
[Ψq ] [S] [Ψq ] [V ] I 0
= = , (8.45)
[B] [S] [B] [V ] 0 I
CAPITOLO 8. SOLUZIONE DELLE EQUAZIONI DELLA DINAMICA 103
Si indica con:
q̈f = M −1 Q , (8.55)
l’accelerazione che il meccanismo avrebbe se non ci fossero i vincoli, l’espressione (8.54) si
può riscrivere come:
¡ ¢¡ ¢
q̈ = q̈f + M −1 ΨTq (Ψq M −1 ΨTq )−1 γ − Ψq q̈f . (8.56)
si ottiene infine:
1 ¡ ¢
q̈ = q̈f + [M ]− 2 [D]+ γ − Ψq q̈f . (8.63)
Questa formulazione è stata proposta originariamente da Udwadia e Kalaba [4] che la derivarono
partendo dal principio di Gauss.
Bibliografia
[1] E. Pennestrı̀, F. Cheli, Cinematica e Dinamica dei Sistemi Multibody, Casa Editrice
Ambrosiana, Milano, 2006.
[3] B. Allotta, Appunti del Corso di Complementi di Meccanica Applicata alle Macchine,
Università degli Studi di Firenze, 2004.
[4] F.E. Udwadia and R.E. Kalaba, Analytical dynamics, a new approach, Cambridge University
Press, Cambridge, 1996.
[5] L. Vita, Sviluppo e implementazione di formulazioni per l’analisi dinamica di sistemi multi-
body, Università degli Studi di Roma Tor Vergata, Dottorato di Ricerca in Progettazione
dei Sistemi Meccanici, Tesi di Dottorato, XVII Ciclo, 2005.
[6] A. A. Shabana, Computational Dynamics, second edition, John Wiley & Sons, Inc. New
York USA, 2001.
105