106
Appunti del Corso di Modellazione e Simulazione Dinamica dei sistemi multibody Monica Malvezzi, Andrea Rindi Dipartimento di Energetica “Sergio Stecco,” Sezione di Meccanica Applicata Universit` a di Firenze via S. Marta 3, 50139 Firenze, Italy [email protected]fi.it

Complementi meccanica applicata

Embed Size (px)

DESCRIPTION

Complementi di meccanica applicata

Citation preview

  • Appunti del Corso di Modellazione e SimulazioneDinamica dei sistemi multibody

    Monica Malvezzi, Andrea Rindi

    Dipartimento di Energetica Sergio Stecco, Sezione di Meccanica ApplicataUniversita` di Firenze

    via S. Marta 3, 50139 Firenze, [email protected]

  • 1PremessaQuesti 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 Meccanicaed Energetica dellUniversita` degli Studi di Firenze. Quanto presentato nei capitoli seguentinon esaurisce sicuramente le problematiche relative allanalisi dei sistemi multibody, costitu-isce soltanto una base per la preparazione dellesame, che puo` essere integrata con gli appuntipresi durante le lezioni e tramite la consultazione dei testi elencati in bibliografia. Si richiamalattenzione soprattutto sul libro [1], che rappresenta un compendio molto esaustivo dello statodellarte nello studio dei sistemi multibody. Gli autori ringraziano tutti coloro che con i lorosuggerimenti hanno contribuito alla stesura degli appunti.

    Firenze, 5 dicembre 2008Monica Malvezzi, Andrea Rindi

  • Indice

    Indice . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4

    1 Introduzione 71.1 Problemi di analisi e di sintesi . . . . . . . . . . . . . . . . . . . . . . . . . . 71.2 Dal modello fisico al modello matematico . . . . . . . . . . . . . . . . . . . . 71.3 I sistemi multibody . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81.4 Tipi di problema . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9

    1.4.1 Problema cinematico . . . . . . . . . . . . . . . . . . . . . . . . . . . 91.4.2 Problema dinamico . . . . . . . . . . . . . . . . . . . . . . . . . . . 121.4.3 Altri tipi di problema: sintesi e design . . . . . . . . . . . . . . . . . . 13

    2 Rappresentazione degli elementi di un sistema multibody 152.1 Coordinate dipendenti e indipendenti . . . . . . . . . . . . . . . . . . . . . . 152.2 Coordinate assolute e relative . . . . . . . . . . . . . . . . . . . . . . . . . . 16

    2.2.1 Alcuni esempi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 172.3 Sistemi piani: coordinate generalizzate . . . . . . . . . . . . . . . . . . . . . 19

    3 Cinematica del corpo rigido nello spazio 223.1 Introduzione . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 223.2 Matrice di rotazione - coseni direttori . . . . . . . . . . . . . . . . . . . . . . 22

    3.2.1 Espressione di R per rotazioni attorno agli assi coordinati . . . . . . . 233.2.2 Cambio di coordinate tra due terne con la stessa origine . . . . . . . . 253.2.3 Proprieta` della matrice di rotazione . . . . . . . . . . . . . . . . . . . 263.2.4 Angoli di Eulero . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 293.2.5 Rappresentazione asse/angolo . . . . . . . . . . . . . . . . . . . . . . 323.2.6 Parametri di Eulero . . . . . . . . . . . . . . . . . . . . . . . . . . . 33

    3.3 Velocita` di un corpo rigido nello spazio . . . . . . . . . . . . . . . . . . . . . 343.3.1 Derivata rispetto al tempo della matrice di rotazione . . . . . . . . . . 343.3.2 Velocita` angolare e angoli di Eulero . . . . . . . . . . . . . . . . . . . 353.3.3 Velocita` angolare e parametri di Eulero . . . . . . . . . . . . . . . . . 363.3.4 Coordinate generalizzate e velocita` generalizzate . . . . . . . . . . . . 37

    4 Cinematica dei sistemi piani 384.1 Sistema delle equazioni di vincolo . . . . . . . . . . . . . . . . . . . . . . . . 38

    4.1.1 Vincoli sul sistema meccanico . . . . . . . . . . . . . . . . . . . . . . 384.1.2 Gradi di liberta` nei sistemi piani . . . . . . . . . . . . . . . . . . . . . 384.1.3 Equazioni di vincolo . . . . . . . . . . . . . . . . . . . . . . . . . . . 394.1.4 Configurazione del meccanismo . . . . . . . . . . . . . . . . . . . . . 404.1.5 Velocita` del meccanismo . . . . . . . . . . . . . . . . . . . . . . . . . 414.1.6 Accelerazioni del meccanismo . . . . . . . . . . . . . . . . . . . . . . 42

    2

  • INDICE 3

    4.2 Coppie cinematiche elementari . . . . . . . . . . . . . . . . . . . . . . . . . . 424.2.1 Coppia rotoidale . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 424.2.2 Coppia prismatica . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44

    4.3 Vincoli elementari . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 464.3.1 Vincoli di moto assoluto . . . . . . . . . . . . . . . . . . . . . . . . . 464.3.2 Vincoli di moto relativo . . . . . . . . . . . . . . . . . . . . . . . . . 47

    4.4 Coppie superiori . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 494.5 Coppia ad ingranaggi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 514.6 Esempio: robot planare a due gradi di liberta` . . . . . . . . . . . . . . . . . . 524.7 Esempio: Manovellismo di spinta centrato . . . . . . . . . . . . . . . . . . . 544.8 Esempio: quadrilatero articolato . . . . . . . . . . . . . . . . . . . . . . . . . 58

    4.8.1 Equazioni di vincolo . . . . . . . . . . . . . . . . . . . . . . . . . . . 604.8.2 Jacobiano delle equazioni di vincolo . . . . . . . . . . . . . . . . . . . 614.8.3 Configurazione iniziale . . . . . . . . . . . . . . . . . . . . . . . . . . 61

    5 I vincoli: sistemi tridimensionali 665.1 Gradi di liberta` . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 665.2 Sistemi di riferimento . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 665.3 Vincoli di base . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70

    5.3.1 Vincolo di ortogonalita` - primo caso . . . . . . . . . . . . . . . . . . . 705.3.2 Vincolo di ortogonalita` - secondo caso . . . . . . . . . . . . . . . . . 715.3.3 Vincolo sferico . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 725.3.4 Vincolo di distanza . . . . . . . . . . . . . . . . . . . . . . . . . . . . 725.3.5 Vincolo di parallelismo - primo caso . . . . . . . . . . . . . . . . . . . 745.3.6 Vincolo di parallelismo - secondo caso . . . . . . . . . . . . . . . . . . 74

    5.4 Equazioni di vincolo per alcune coppie cinematiche . . . . . . . . . . . . . . . 755.4.1 Coppia rotoidale . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 755.4.2 Coppia prismatica . . . . . . . . . . . . . . . . . . . . . . . . . . . . 765.4.3 Coppia cilindrica . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 775.4.4 Coppia sferica . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78

    6 Richiami di dinamica analitica 796.1 Introduzione . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 796.2 Il principio dei lavori virtuali . . . . . . . . . . . . . . . . . . . . . . . . . . . 79

    6.2.1 Spostamenti virtuali . . . . . . . . . . . . . . . . . . . . . . . . . . . 796.2.2 Il principio dei lavori virtuali: enunciato . . . . . . . . . . . . . . . . . 80

    6.3 Equivalenza tra PLV e formulazione newtoniana per lequilibrio di un corporigido . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80

    6.4 Principio di DAlembert . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 816.5 Principio di DAlembert-Lagrange . . . . . . . . . . . . . . . . . . . . . . . . 826.6 Esempio: Applicazione del Principio di DAlembert . . . . . . . . . . . . . . . 826.7 Principio di Hamilton . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 836.8 Equazioni di Lagrange . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 846.9 Equazioni di Lagrange per sistemi non conservativi . . . . . . . . . . . . . . . 87

    7 Analisi dinamica di un sistema multibody 887.1 Minimizzazione di una funzione soggetta a vincoli . . . . . . . . . . . . . . . 887.2 Equazioni di Lagrange per un sistema multibody piano . . . . . . . . . . . . . 88

    7.2.1 Calcolo dellenergia cinetica . . . . . . . . . . . . . . . . . . . . . . . 89

  • INDICE 4

    7.2.2 Calcolo dellenergia potenziale della forza peso . . . . . . . . . . . . . 907.2.3 Equazioni di moto . . . . . . . . . . . . . . . . . . . . . . . . . . . . 907.2.4 Matrice di massa . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90

    7.3 Calcolo delle forze generalizzate . . . . . . . . . . . . . . . . . . . . . . . . . 907.3.1 Forza applicata nel baricentro e coppia ortogonale al piano . . . . . . . 907.3.2 Forza applicata in un punto generico del corpo i . . . . . . . . . . . . 927.3.3 Elementi elastici e viscosi . . . . . . . . . . . . . . . . . . . . . . . . 93

    7.4 Sistema di equazioni differenziali . . . . . . . . . . . . . . . . . . . . . . . . 947.4.1 Moltiplicatori di Lagrange e reazioni vincolari . . . . . . . . . . . . . . 957.4.2 Esempio: Formulazione delle equazioni di moto per un pendolo semplice 95

    8 Soluzione delle equazioni della dinamica 988.1 Introduzione . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 988.2 Formulazione stabilizzata di Baumgarte . . . . . . . . . . . . . . . . . . . . . 998.3 Ortogonalizzazione dei vincoli . . . . . . . . . . . . . . . . . . . . . . . . . . 100

    8.3.1 Vincoli scleronomi . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1008.3.2 Vincoli scleronomi e reonomi . . . . . . . . . . . . . . . . . . . . . . 102

    8.4 La formulazione di Udwadia Kalaba . . . . . . . . . . . . . . . . . . . . . . . 1038.4.1 Il principio di Gauss . . . . . . . . . . . . . . . . . . . . . . . . . . . 104

  • Elenco delle figure

    1.1 Quadrilatero articolato. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101.2 Configurazione iniziale del sistema, quadrilatero articolato: con il valore assegnato

    per 1 e` ammissibile una sola configurazione del meccanismo. . . . . . . . . . . . 101.3 Configurazione iniziale del sistema, quadrilatero articolato: con il valore assegnato

    per 1 non e` ammissibile nessuna configurazione del meccanismo. . . . . . . . . . 101.4 Configurazione iniziale del sistema, quadrilatero articolato: con il valore assegnato

    per 1 sono possibili due configurazioni. . . . . . . . . . . . . . . . . . . . . . . 111.5 Spostamento finito del meccanismo: quadrilatero articolato. . . . . . . . . . . . . 11

    2.1 quadrilatero articolato: con il valore assegnato per langolo 1 sono possibili dueconfigurazioni. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16

    2.2 Schema cinematico di un robot planare a tre gradi di liberta`, rappresentazione dellaconfigurazione per mezzo di coordinate relative. . . . . . . . . . . . . . . . . . . 18

    2.3 Schema cinematico di quadrilatero articolato, rappresentazione della configurazioneper mezzo di coordinate relative. . . . . . . . . . . . . . . . . . . . . . . . . . . 18

    2.4 Schema cinematico di quadrilatero articolato con giunto prismatico, rappresentazionedella configurazione per mezzo di coordinate relative. . . . . . . . . . . . . . . . 19

    2.5 Coordinate generalizzate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 202.6 Trasformazione di coordinate tra terna mobile e terna fissa . . . . . . . . . . . . . 20

    3.1 Rotazione attorno a z. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 233.2 Rotazione attorno a x. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 243.3 Rotazione attorno a y. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 253.4 Cambio di coordinate tra terne ad origine comune. . . . . . . . . . . . . . . . . . 253.5 dimostrazione della proprieta` di ortogonalit della matrice di rotazione. . . . . . . . 273.6 Angoli di Eulero. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 293.7 Angoli di Eulero: linea dei nodi. . . . . . . . . . . . . . . . . . . . . . . . . . . 303.8 Rotazioni di Eulero: rotazioni e . . . . . . . . . . . . . . . . . . . . . . . . 30

    4.1 Quadrilatero articolato . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 394.2 Manovellismo di spinta . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 404.3 Approssimazione della soluzione di unequazione non lineare per mezzo del

    metodo di Newton Raphson. . . . . . . . . . . . . . . . . . . . . . . . . . . . 414.4 Giunto rotoidale . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 434.5 Giunto prismatico . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 454.6 Vincolo sullascissa . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 474.7 Vincolo sulla posizione angolare . . . . . . . . . . . . . . . . . . . . . . . . . . 484.8 Vincolo sulla distanza tra due punti . . . . . . . . . . . . . . . . . . . . . . . . 484.9 Coppie superiori . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 494.10 Coppia di ingranaggi e portatreno . . . . . . . . . . . . . . . . . . . . . . . . . 51

    5

  • ELENCO DELLE FIGURE 6

    4.11 Manipolatore planare a due gradi di liberta`. . . . . . . . . . . . . . . . . . . . . 534.12 Manovellismo di spinta centrato: schema cinematico . . . . . . . . . . . . . . 544.13 Manovellismo di spinta centrato: configurazione iniziale (punto morto superiore) 584.14 Manovellismo di spinta centrato: ascissa del pistone durante la simulazione. . . 594.15 Manovellismo di spinta centrato: errore nella stima dellascissa del pistone. . . 594.16 Manovellismo di spinta centrato: velocita` del pistone durante la simulazione. . 594.17 Manovellismo di spinta centrato: accelerazione del pistone durante la simulazione. 604.18 Quadrilatero articolato, configurazione iniziale. . . . . . . . . . . . . . . . . . 624.19 Quadrilatero articolato, errore durante il calcolo della configurazione iniziale. . 624.20 Quadrilatero articolato, configurazione iniziale. . . . . . . . . . . . . . . . . . 624.21 Quadrilatero articolato, errore durante il calcolo della configurazione iniziale. . 634.22 Quadrilatero articolato, simulazione cinematica. . . . . . . . . . . . . . . . . . 634.23 Quadrilatero articolato, traiettoria del baricentro della biella. . . . . . . . . . . 634.24 Quadrilatero articolato, velocita` del baricentro della biella. . . . . . . . . . . . 644.25 Quadrilatero articolato, velocita` angolare della biella. . . . . . . . . . . . . . . 644.26 Quadrilatero articolato, accelerazione del baricentro della biella. . . . . . . . . 644.27 Quadrilatero articolato, accelerazione angolare della biella. . . . . . . . . . . . 65

    5.1 Coppia rotoidale . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 675.2 Coppia prismatica . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 675.3 Coppia cilindrica . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 675.4 Coppia sferica . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 675.5 Riferimento di giunto per il generico corpo rigido i. . . . . . . . . . . . . . . . 685.6 Riferimenti di giunto per i corpi i e j: nomenclatura. . . . . . . . . . . . . . . 695.7 Prima condizione di ortogonalita`. . . . . . . . . . . . . . . . . . . . . . . . . 705.8 Seconda condizione di ortogonalita`. . . . . . . . . . . . . . . . . . . . . . . . 715.9 Vincolo sferico. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 735.10 Vincolo sulla distanza tra due punti. . . . . . . . . . . . . . . . . . . . . . . . 735.11 Vincolo di parallelismo tra due vettori, primo caso. . . . . . . . . . . . . . . . 745.12 Vincolo di parallelismo tra due vettori, secondo caso. . . . . . . . . . . . . . . 755.13 Coppia rotoidale: scelta dei sistemi di riferimento. . . . . . . . . . . . . . . . 765.14 Coppia prismatica: scelta dei sistemi di riferimento. . . . . . . . . . . . . . . . 765.15 Coppia cilindrica: scelta dei sistemi di riferimento. . . . . . . . . . . . . . . . 775.16 Coppia sferica: scelta dei sistemi di riferimento. . . . . . . . . . . . . . . . . . 78

    7.1 Forza applicata nellorigine del sistema di riferimento soliale al corpo i e coppiaortogonale al piano . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91

    7.2 Forza applicata in un generico punto P solidale al corpo i . . . . . . . . . . . 917.3 Attuatore dinamico lineare tra i corpi i e j. . . . . . . . . . . . . . . . . . . . 937.4 Pendolo semplice: sistemi di riferimento e coordinate utilizzati. . . . . . . . . 96

  • Capitolo 1

    Introduzione

    1.1 Problemi di analisi e di sintesiI problemi tipici della Meccanica Applicata si possono dividere in due categorie fondamentali:

    problemi di analisi, problemi di sintesi.

    Nei problemi di analisi sono di solito dati:

    la struttura del meccanismo; la legge di moto di uno o piu` elementi (nei problemi di cinematica) o le forze/coppieagenti su uno o piu` corpi (nei problemi di dinamica);

    le condizioni iniziali del meccanismo.Utilizzando queste informazioni si risolve (di solito in forma numerica) il problema di analisicinematica o dinamica. I risultati del problema di analisi sono la configurazione, la velocita` elaccelerazione di tutti i corpi del sistema e le forze o coppie che agiscono su di essi.

    Nei problemi di sintesi si parte dalle specifiche di progetto del meccanismo, in termini di:

    legge di moto di alcuni elementi; vincoli dimensionali ed ingombri; forze, coppie, potenze erogate.

    La soluzione del problema di sintesi consiste nella definizione di un meccanismo in grado disoddisfare i requisiti delle specifiche.

    1.2 Dal modello fisico al modello matematicoIl modello fisico e` una rappresentazione del sistema reale il piu` possibile simile ad esso nellesue condizioni di funzionamento, considerando le caratteristiche significative ai fini dellanalisi,semplice e facilmente analizzabile con strumenti matematici e numerici. Labilita` del pro-gettista consiste proprio nel realizzare modelli fisici semplici ma sufficientemente accurati, enel contempo adatti ad ottenere facilmente il modello matematico per via analitica o con ilsupporto di sistemi di simulazione assistita dal calcolatore.

    Dato il modello fisico, il modello matematico puo` essere ottenuto:

    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 lasoluzione e` esatta; se sono risolte numericamente, la soluzione e` approssimata);

    utilizzando programmi di simulazione che ricavano automaticamente le equazioni delsistema e le risolvano per via numerica (soluzione approssimata).

    Dato uno stesso modello fisico, i risultati analitici e numerici devono coincidere, a menodellerrore introdotto dal programma di simulazione, che e` generalmente trascurabile se taleprogramma e` affidabile e utilizzato correttamente.

    Nel passaggio dal sistema reale al modello numerico si introducono quindi due tipi diapprossimazioni:

    le approssimazioni introdotte nel definire il modello fisico; gli errori dovuti ad una soluzione numerica del modello matematico;

    Alcune delle approssimazioni che si frequentemente vengono introdotte nel modello fisicosono:

    considerare corpi rigidi; assumere che il sistema non modifichi lambiente circostante; trascurare o gli attriti, o modellarli in maniera semplificata (attrito viscoso o coulom-biano);

    sostituire caratteristiche distribuite con altre concentrate (masse, forze, ecc.); ammettere una dipendenza lineare fra variabili del sistema nel campo di funzionamentoconsiderato (linearita` del modello);

    assumere che i parametri caratteristici di un sistema siano invarianti modello rispetto altempo;

    trascurare le incertezze ed i disturbi.E evidente che da uno stesso sistema fisico possono essere definiti diversi modelli fisici condiversi gradi di approssimazione.

    1.3 I sistemi multibodyCon il termine sistema multibody si intende un sistema meccanico costituito da un insieme dicorpi rigidi collegati tra loro in modo da avere un moto relativo.

    Gli elementi di un sistema multibody sono collegati tra loro da coppie cinematiche o giunti.Un giunto consente il moto relativo tra due elementi in certe direzioni e lo impedisce in altre.

    Gli elementi che costituiscono un sistema multibody sono pertanto:

    corpi (in genere rigidi); vincoli o coppie cinematiche; forze (esterne).

  • CAPITOLO 1. INTRODUZIONE 9

    Nei simulatori multibody si analizza generalmente il moto di sistemi composti da corpi rigidi,se la flessibilita` dei corpi non puo` essere trascurata, e` possibile ricondurre i corpi flessibili asistemi di corpi rigidi uniti da vincoli, elasticita` e smorzamenti concentrati, oppure inserire nelmodello 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:

    un sistema di riferimento ad esso solidale, detto sistema di riferimento locale, conorigine nel centro di massa del corpo e assi orientati possibilmente come gli assi principalidinerzia del corpo;

    la massa del corpo; il tensore dinerzia del corpo espresso rispetto al sistema di riferimento locale; eventuali sistemi di riferimento ausiliari, utili per la definizione dei vincoli; la definizione della geometria del corpo non e` 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 piu` corpi. Nel modello matem-atico i vincoli sono rappresentati da equazioni che egano tra loro le variabili che descrivono ilmoto del meccanismo.

    1.4 Tipi di problema

    1.4.1 Problema cinematicoNei problemi di cinematica viene analizzato il moto del sistema indipendentemente dalle forzeche vi sono applicate, quindi da un punto di vista esclusivamente geometrico.

    Nello studio del problema cinematico solitamente e` nota la configurazione o il moto di unoo piu` membri. Gli elementi del meccanismo di cui e` noto il moto vengono detti elementi diinput e sono in numero pari ai gradi di liberta` del meccanismo.

    1.4.1.1 Definizione della configurazione iniziale

    Il problema della definizione della configurazione iniziale del meccanismo consiste nel deter-minare, a partire dalla configurazione degli elementi di input, una configurazione dellinterosistema compatibile con i vincoli su di esso imposti.

    La soluzione del problema non e` immediata a causa della complessita` delle equazioni cherappresentano i vincoli imposti dalle coppie cinematiche. Il problema si riconduce infatti allasoluzione di un sistema di equazioni algebriche in genere fortemente non lineare e quindi didifficile soluzione. Si possono avere le seguenti situazioni:

    il problema puo` ammettere una soluzione; il problema puo` non ammettere soluzione; il problema puo` ammettere piu` di una soluzione.

  • CAPITOLO 1. INTRODUZIONE 10

    Il problema si manifesta anche per i cinematismi piu` semplici. Consideriamo ad esempio unquadrilatero articolato piano, cinematismo caratterizzato come noto quattro elementi (di cuiuno fisso) collegati tra loro da quattro coppie rotoidali e pertanto dotato di un solo gradodi liberta` (vedi figura 1.1), si suppone che lelemento di input sia la manovella OA, la suaconfigurazione e` identificata dallangolo 1 della coppia rotoidale in O.

    Nella figura 1.2 e` riportato il caso in cui, per il valore assegnato di 1, il cinematismo puo`assumere una sola configurazione. Questa possibilita` si verifica nel caso limite in cui i segmentiAB e O1B sono allineati.

    Nella figura 1.3 e` riportato il caso in cui, per il valore assegnato di 1 non e` ammessanessuna configurazione del meccanismo, nella figura 1.4 e` riportato infine il caso in cui, per ilvalore assegnato di 1 sono ammesse due possibili configurazioni.

    Figura 1.1: Quadrilatero articolato.

    Figura 1.2: Configurazione iniziale del sistema, quadrilatero articolato: con il valore assegnato per 1 e`ammissibile una sola configurazione del meccanismo.

    Figura 1.3: Configurazione iniziale del sistema, quadrilatero articolato: con il valore assegnato per 1non e` ammissibile nessuna configurazione del meccanismo.

    Allaumentare della complessita` del meccanismo aumenta ovviamente il numero di possibilisoluzioni del problema.

  • CAPITOLO 1. INTRODUZIONE 11

    Figura 1.4: Configurazione iniziale del sistema, quadrilatero articolato: con il valore assegnato per 1sono possibili due configurazioni.

    1.4.1.2 Spostamento finito del meccanismo

    In questo caso si vuole definire la configurazione del sistema in seguito ad uno spostamentofinito degli elementi di input, a partire da una configurazione iniziale nota. Dal punto divista matematico, anche in questo caso il problema si riconduce alla soluzione di un sistemaalgebrico di equazioni non lineari, ma rispetto al caso precedente la ricerca della soluzionerisulta semplificata dalla conoscenza della configurazione iniziale, che puo` essere utilizzatacome punto di partenza della procedura iterativa per la soluzione numerica del sistema diequazioni non lineari.

    Nella figura 1.5 si riporta lesempio di movimento finito per un quadrilatero articolato.

    Figura 1.5: Spostamento finito del meccanismo: quadrilatero articolato.

    1.4.1.3 Analisi della velocita` e dellaccelerazione

    Una volta nota la configurazione del sistema, la velocita` e laccelerazione degli elementi diinput, il problema consiste nella definizione delle velocita` e delle accelerazioni di tutti glielementi del meccanismo. Rispetto ai problemi visti in precedenza, lanalisi della velocita`e dellaccelerazione risulta di piu` semplice soluzione, in quanto, come vedremo nei capitolisuccessivi, si riconduce alla soluzione di un sistema di equazioni lineari.

    Come noto per definire la velocita` e laccelerazione di tutti i punti solidali ad un corporigido e` necessario conoscere la velocita` di uno dei punti, la velocita` angolare e laccelerazioneangolare. Indicando con p e q le coordinate di due generici punti P e Q, con la velocita`

  • CAPITOLO 1. INTRODUZIONE 12

    angolare e con laccelerazione angolare, risulta:

    vQ = vP + (q p) (1.1)aQ = aP + ( (q p)) + (q p) (1.2)

    1.4.1.4 Simulazione cinematica

    La simulazione cinematica permette di conoscere le caratteristiche del moto (configurazione,velocita` e accelerazione) di tutti gli elementi che costituiscono il sistema multibody una voltanote le leggi di moto degli elementi di input. La simulazione cinematica di fatto comprendetutti i problemi visti in precedenza.

    La simulazione cinematica permette di ottenere utili informazioni sul moto del meccanismo,puo` quindi essere utilizzata ad esempio per analizzare le traiettorie di ogni elemento, peridentificare collisioni, interferenze e cos` via.

    Dal punto di vista matematico il problema puo` essere visto come la successione di unaserie di spostamenti finiti.

    1.4.2 Problema dinamicoIn generale il problema dinamico risulta piu` difficile da risolvere rispetto a quello cinematicoin quanto coinvolge le forze che agiscono sul meccanismo e le caratteristiche inerziali (massae tensore di inerzia) di ognuno degli elementi che lo compongono.

    1.4.2.1 Equilibrio del sistema in condizioni statiche

    Il problema consiste nel definire la configurazione del sistema tale da garantirne lequilibriosotto lazione delle forze gravitazionali, delle forze esterne, delle forze esercitate dagli elementielastici e viscosi. La soluzione dipende ovviamente dalla massa e dalla posizione del baricentrodi ogni elemento.

    Il problema si riconduce alla soluzione di un sistema algebrico di equazioni in generale nonlineare, anche in questo caso quindi si possono avere piu` soluzioni.

    1.4.2.2 Analisi delle vibrazioni del sistema

    Il problema e` legato allanalisi precedente e consiste nello studio dei movimenti del meccanismoin un intorno della configurazione di equilibrio. Da questa analisi e` possibile definire le pulsazioninaturali e i modi del sistema.

    Il problema viene risolto per mezzo della linearizzazione delle equazioni di moto deglielementi del sistema in un intorno della configurazione di equilibrio. Lanalisi e` condottaquindi risolvendo un sistema di equazioni differenziali lineari a coefficienti costanti.

    1.4.2.3 Problema dinamico inverso

    Il problema dinamico inverso consiste nel determinare il sistema di forze e coppie in grado di farassumere al sistema un moto assegnato. Per la risoluzione del problema e` necessario conoscerele velocita` e le accelerazioni di tutti gli elementi del sistema, in modo da poter calcolare leforze di inerzia che dovranno essere equilibrate dalle forze esterne e vincolari.

    La soluzione della dinamica inversa consente di conoscere le forze e le coppie a cui e`soggetto un sistema multibody di cui e` noto il movimento e puo` essere utilizzato ad esempioper calcolare le azioni di controllo da applicare agli attuatori del sistema per ottenere il motodesiderato.

  • CAPITOLO 1. INTRODUZIONE 13

    1.4.2.4 Problema dinamico diretto (simulazione dinamica)

    Nel problema dinamico diretto viene calcolato il moto di un sistema multibody conoscendo leforze esterne che agiscono su di esso. Lo studio della dinamica diretta e` molto importanteperche consente di simulare e prevedere il moto effettivo del sistema sotto lazione di forzenote.

    La simulazione dinamica viene effettuata mediante lintegrazione di un sistema di equazionidifferenziali generalmente non lineare. La soluzione viene determinata pertanto per mezzo diprocedure numeriche. Il problema e` di solito complesso e pesante dal punto di vista com-putazionale e per questo particolare cura deve essere posta nella scelta del tipo di algoritmoper la risoluzione.

    1.4.2.5 Problema dinamico diretto e inverso per sistemi multibody con elementi nonperfettamente rigidi

    I sistemi meccanici reali sono costituiti da elementi che possono essere considerati rigidi solo inprima approssimazione. Per alcuni tipi di analisi e per particolari applicazioni, ad esempio nellestrutture per applicazioni spaziali, nella robotica, nelle macchine funzionanti ad alta velocita`,e` necessario tener conto anche della deformabilita` dei corpi che costituiscono il meccanismo.

    Un corpo puo` essere considerato rigido se la distanza tra due qualsiasi punti ad essoappartenenti rimane costante durante il moto. Se il corpo e` deformabile lo studio dinamico sicomplica, dato che oltre alle equazioni della dinamica si devono considerare le equazioni chedescrivono la deformazione di ciascun elemento.

    1.4.2.6 Percussioni e impatti

    Un altro interessante problema dinamico consiste nella determinazione della risposta di unsistema multibody ad una percussione, ovvero ad una forza caratterizzata da notevole entita`che agisce per un tempo brevissimo. La caratteristica che permette di quantificare le azioni diquesto tipo e` limpulso, ovvero lintegrale della forza nel tempo.

    Una caratteristica delle sollecitazioni di tipo impulsivo e` che producono una discontinuita`nella distribuzione delle velocita` del sistema, la cui entita` dipende appunto dallimpulso dellaforza applicata.

    Dal punto di vista pratico lanalisi della risposta del sistema ad una percussione non e`molto frequente, dato che molto raramente si hanno a disposizione dati affidabili relativi allaforza da applicare.

    Il problema dellimpatto o dellurto e` dal punto di vista pratico piu` importante. Limpattoconsiste nellanalisi della risposta del sistema in seguito alla collisione tra due o piu` corpi.Anche la collisione implica una discontinuita` nella distribuzione della velocita`, dovuta al fattoche nel punto in cui avviene limpatto nascono forze di tipo impulsivo, la cui entita` e` pero`incognita. Per poter risolvere il problema e` necessario introdurre ulteriori equazioni, in generedi natura sperimentale che definiscono le caratteristiche delle superfici a contatto ed il tipo diimpatto.

    1.4.3 Altri tipi di problema: sintesi e designI tipi di problemi descritti finora sono tutti di analisi, nel senso che studiano il moto diun mecanismo dal punto di vista cinematico e/o dinamico) una volta nota la sua struttura(proprieta` geometriche e inerziali, coppie cinematiche).

  • CAPITOLO 1. INTRODUZIONE 14

    Quando si vuole progettare un nuovo meccanismo, che soddisfa certe specifiche, e si hannoa disposizione soltanto strumenti di analisi e` necessario procedere in modo iterativo, si ipotizzauna certa soluzione, se ne analizza il comportamento cinematico e/o dinamico, se ne verificala compatibilita` con i requisiti in specifica, in caso di esito negativo della verifica e` necessariomodificare la soluzione e ripetere lanalisi. E evidente che questo processo risulta in generelento e i risultati dipenderanno fortemente dallesperienza 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 lintervento delprogettista, un sistema meccanico che soddisfa i requisiti della specifica, o che risulta ottimaletra tutti quelli possibili, secondo criteri specificati a priori.

    1.4.3.1 Sintesi cinematica

    La sintesi cinematica di un sistema multibody consiste nel determinare le dimensioni ottimalidi tutti gli elementi in modo da ottenere il moto desiderato, ad esempio far seguire ad unpunto appartenente ad uno dei corpi una traiettoria assegnata.

    Il problema di sintesi cinematica e` fondamentalmente di tipo geometrico ed e` stato moltoanalizzato anche in passato, fin dalla seconda meta` dellOttocento. I primi metodi sviluppatierano principalmente di tipo grafico. Sono note numerose applicazioni di sintesi cinematicaapplicate al quadrilatero articolato piano. E evidente che tali procedure hanno applicazionelimitata, troppo specifica e sono eccessivamente complesse.

    I metodi utilizzati attualmente sono di tipo numerico e hanno la caratteristica di poteressere applicati a una vasta casistica di meccanismi, sia piani che tridimensionali.

    1.4.3.2 Analisi di sensibilita` e design ottimale

    Il design ottimale di un meccanismo inizia con la definizione di una funzione obiettivo. Loscopo dellottimizzazione e` quello di ottenere il sistema con le massime performance possibili.Lobiettivo viene ottenuto massimizzando questa funzione.1

    In altri termini, la funzione obiettivo puo` essere vista come una vera e propria funzionematemaatica in piu` variabili, di cui si vuole cercare il massimo. Le variabili da cui dipendela funzione sono dette variabili o parametri di progetto. In alcuni problemi si possono avereanche dei vincoli nelle variabili di progetto che sono rappresentati per mezzo di equazioni odisequazioni e che di fatto limitano lo spazio in cui trovare la soluzione ottimale. Vincoli suiparametri di progetto possono essere ad esempio i range di variazione dei parametri, vincoli ditipo fisico (ad esempio, non si possono avere elementi con massa o lunghezza negative ) ecos`via.

    La funzione obiettivo viene definita a seconda dellapplicazione del meccanismo (ad esem-pio, realizzazione di una traiettoria, minimizzazione degli sforzi trasmessi al telaio ecc.).

    Esistono molte tecniche per la soluzione del problema di ottimizzazione, quasi tutte sonobasate sulla conoscenza delle derivate della funzione obiettivo rispetto ai parametri di progetto.

    In generale, e` evidente che il valore assunto dalla derivata della funzione obiettivo rispettoa un certo parametro fornisce una stima di quanto le variazioni del parametro hanno influenzasulle variazioni della funzione. Lo studio delle derivate parziali della funzione obiettivo rispettoai parametri di progetto e` nota con il nome di analisi di sensibilita`.

    1Talvolta, anziche di funzione obiettivo, si parla di funzione di costo.La definizione del problema dellot-timizzazione in termini di funzione di costo e` duale a quella vista per la funzione obiettivo. In questo caso lasoluzione ottimale e` quella che minimizza la funzione di costo, utilizzata per quantificare le performance di unsistema.

  • Capitolo 2

    Rappresentazione degli elementi di unsistema multibody

    2.1 Coordinate dipendenti e indipendentiIn questo capitolo verranno descritti alcuni metodi per la rappresentazione dei corpi che costi-tuiscono un sistema multibody. Il primo problema che dobbiamo affrontare nello studio dellacinematica e della dinamica dei meccanismi e` infatti la modellazione del sistema, ovvero lascelta di un insieme di parametri che ci permettono di definire in modo univoco in ogni istantela posizione, la velocita` e laccelerazione di tutti i corpi che costituiscono il meccanismo.

    Esistono differenti tipi di coordinate per la rappresentazione dei sistemi multibody, e la loroscelta non e` sempre un problema banale. Le varie possibilita` non sono tra loro equivalenti,alcune sono piu` convenienti perche sono piu` semplici da implementare, altre sono piu` efficienti,nel senso che richiedono minori risorse di calcolo.

    La prima scelta che si deve fare per la definizione di un sistema di coordinate che descrivonoil moto del sistema multibody e` tra un insieme di coordinate indipendenti e di coordinatedipendenti.

    Il numero delle coordinate indipendenti del sistema e` pari al numero di gradi di liberta` equindi il minimo necessario per descrivere completamente la configurazione del sistema.

    Il numero delle coordinate dipendenti e` invece maggiore del numero di gradi di liberta` delsistema e per questo motivo non possono essere indipendenti tra loro. Le relazioni che leganole coordinate dipendenti sono le equazioni di vincolo.

    Generalmente un sistema di coordinate indipendenti non puo` essere utilizzato per la rapp-resentazione di un sistema multibody perche non sempre permette di rispettare una delle piu`importanti condizioni, quella di rappresentare in modo univoco la posizione di un sistema multi-body. Le coordinate indipendenti infatti determinano direttamente la posizione degli elementidi input o dei gradi di liberta` guidati del sistema (per mezzo di attuatori), ma non la posizionedegli altri elementi, che deve essere determinata risolvendo il problema della definizione dellaconfigurazione del meccanismo descritto nel capitolo precedente. Si e` visto che questo tipo diproblema in generale puo` ammettere piu` soluzioni.

    Nella Figura 2.1 e` riportato a titolo desempio un quadrilatero articolato. Il meccanis-mo come noto ha un solo grado di liberta`, scegliendo come coordinats lagrangiana langolo1 riportato in figura non e` pero` possibile definire in modo univoco la configurazione delmeccanismo.

    Per superare questo problema generalmente e` piu` conveniente adottare un insieme di coor-dinate dipendenti, che permette di rappresentare in modo univoco la configurazione del sistemamultibody.

    15

  • CAPITOLO 2. RAPPRESENTAZIONE DEGLI ELEMENTI DI UN SISTEMA MULTIBODY16

    Figura 2.1: quadrilatero articolato: con il valore assegnato per langolo 1 sono possibili dueconfigurazioni.

    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 liberta` delsistema, dette equazioni di vincolo. Solitamente queste equazioni sono non lineari.

    Riassumendo, scegliendo un set di coordinate indipendenti:

    il numero di parametri e` minimo, quindi anche il numero di equazioni da risolvere e`limitato;

    le equazioni della dinamica hanno una struttura abbastanza complicata; la configurazione del meccanismo non e` sempre individuata in modo univoco; le coordinate non possono essere definite in modo sistematico.

    Daltra parte, scegliendo un set di coordinate dipendenti:

    il numero di parametri e` maggiore del numero dei gradi di liberta`; il numero di equazioni da risolvere e` maggiore; le equazioni sono pero` solitamente piu` semplici e meno accoppiate; la configurazione e` definita in modo univoco; le coordinate possono essere definite in modo sistematico.

    2.2 Coordinate assolute e relativeLe coordinate relative sono utilizzate soprattutto per lanalisi cinematica e dinamica dei mec-canismi a catena cinematica aperta (come ad esempio i robot seriali). Le coordinate rela-tive definiscono la posizione di ciascun elemento in una catena cinematica utilizzando comeparametri o coordinate lo spostamento relativo tra due elementi adiacenti.

    Nel caso di sistemi multibody planari se due elementi sono collegati con un giunto rotoidale(R), la loro posizione relativa e` definita per mezzo di un angolo, se sono collegati con un giuntoprismatico (P) la loro posizione relativa e` descritta per mezzo di una distanza.

    Nel caso di un meccanismo con catena cinematica aperta, scegliendo una rappresentazionecon coordinate relative il numero di coordinate e` pari al numero di gradi di liberta` e quindinon e` necessario definire equazioni di vincolo.

    I vantaggi della scelta di un set di coordinate relative sono:

  • CAPITOLO 2. RAPPRESENTAZIONE DEGLI ELEMENTI DI UN SISTEMA MULTIBODY17

    il numero di coordinate e` ridotto, si ha quindi una buona efficienza computazionale; e` una rappresentazione particolarmente conveniente per meccanismi con catena cine-matica aperta;

    i parametri scelti per la rappresentazione del sistema sono gli spostamenti relativi tra dueelementi adiacenti nel giunto che li unisce, questa particolarita` e` utile quando nel giuntoe` presente un attuatore o un motore, dato che e` possibile controllare direttamente ilmoto del corrispondente grado di liberta`.

    Daltra parte, questo tipo di rappresentazione presenta i seguenti inconvenienti:

    la formulazione matematica puo` essere piu` complessa, dato che la posizione di ciascunelemento e` legata a quella di tutti gli elementi che lo precedono nella catena cinematica.

    nelle equazioni di moto compaiono matrici che, pur avendo dimensioni limitate, sonopiene e talvolta richiedono consistenti risorse di calcolo;

    richiedono una fase di preprocessing (per determinare le equazioni di vincolo) e una dipostprocessing ( per determinare la posizione assoluta degli elementi).

    Nel caso di sistemi multibody planari nella formulazione con coordinate relative le equazionidi vincolo rappresentano le equazioni di chiusura dei loop cinematici.

    Un esempio di rappresentazione di meccanismi che fa uso delle coordinate relative e` quelloin cui i sistemi di riferimento solidali ai vari elementi del meccanismo sono fissati facendo usodella convenzione di Denavit Hartenberg [3].

    2.2.1 Alcuni esempiNel caso di un meccanismo a catena cinematica aperta, come ad esempio il robot planare atre gradi di liberta` mostrato in figura 2.2, non sono necessarie equazioni di vincolo.

    Nel quadrilatero articolato mostrato in figura 2.3, la configurazione e` descritta per mezzodelle tre rotazioni 1, 2, 3. Il meccanismo ha un grado di liberta` ed e` quindi necessarioscrivere due equazioni di vincolo. E possibile definire la seguente equazione vettoriale:

    OA+

    AB +

    BD OD = 0 , (2.1)

    da cui si ricavano le seguenti equazioni scalari:

    L1 cos1 + L2 cos(1 + 2) + L3 cos(1 + 2 + 3)OD = 0 , (2.2)

    L1 sin1 + L2 sin(1 + 2) + L3 sin(1 + 2 + 3) = 0 . (2.3)

    Si osserva che le equazioni di vincolo sono non lineari e contengono funzioni trascendenti,questa e` una caratteristica comune della formulazione della cinematica dei sistemi multibodycon coordinate relative.

    In figura 2.4 e` riportato lo schema di un quadrilatero articolato con un giunto prismatico.In questo caso la coordinata 3 rappresenta lo spostamento relativo dellelemento 3 rispettoal 2 ed e` pertanto una distanza. Le equazioni di vincolo derivano da unequazione vettorialeche e` la stessa dellesempio precedente (equazione di chiusura del quadrilatero):

    OA+

    AB +

    BD OD = 0 , (2.4)

  • CAPITOLO 2. RAPPRESENTAZIONE DEGLI ELEMENTI DI UN SISTEMA MULTIBODY18

    Figura 2.2: Schema cinematico di un robot planare a tre gradi di liberta`, rappresentazione dellaconfigurazione per mezzo di coordinate relative.

    Figura 2.3: Schema cinematico di quadrilatero articolato, rappresentazione della configurazione permezzo di coordinate relative.

  • CAPITOLO 2. RAPPRESENTAZIONE DEGLI ELEMENTI DI UN SISTEMA MULTIBODY19

    Figura 2.4: Schema cinematico di quadrilatero articolato con giunto prismatico, rappresentazione dellaconfigurazione per mezzo di coordinate relative.

    da cui si ricavano le seguenti equazioni scalari:

    L1 cos1 + 3 cos(1 + 2) + L3 cos(1 + 2 pi/2)OD = 0 , (2.5)

    L1 sin1 + 3 sin(1 + 2) + L3 sin(1 + 2 pi/2) = 0 . (2.6)Dagli esempi precedenti e` evidente che una formulazione che utilizza coordinate relative

    e` conveniente per meccanismi a catena cinematica aperta o con pochi loop. Se il meccan-ismo contiene piu` anelli chiusi, e` necessario scegliere correttamente quelli che sono tra loroindipendenti per scrivere le equazioni vettoriali di chiusura da cui si ricavano le equazioni divincolo.

    2.3 Sistemi piani: coordinate generalizzateIn questo paragrafo descriveremo una procedura per la definizione di un set di coordinateassolute e dipendenti per caratterizzare in modo univoco la configurazione dei sistemi multibodypiani.

    Il vantaggio di questo tipo di rappresentazione e` che permette di definire le coordinatein modo sistematico e quindi e` facilmente automatizzabile ed implementabile nei simulatorinumerici.

    Come noto un corpo rigido nello spazio ha tre gradi di liberta`, in altri termini sono necessarietre informazioni (coordinate) per descrivere in modo univoco la posizione di ogni punto adesso solidale.

    Al generico corpo rigido i-esimo e` associato un sistema di riferimento Oixiyizi, ad essosolidale, avente lorigine Oi coincidente con il centro di massa Gi del corpo stesso, comemostrato in Fig. 2.5. La posizione e lorientazione del corpo i e` univocamente determinata unavolta che siano note le due coordinate del centro di massa e lorientazione della terna Oixiyizirispetto alla terna base OXY Z. Possiamo quindi definire come coordinate generalizzatedel corpo i, le seguenti tre quantita`:

    q3i2 , q3i1: coordinate del centro di massa Gi rispetto al sistema di riferi-mento di base;

  • CAPITOLO 2. RAPPRESENTAZIONE DEGLI ELEMENTI DI UN SISTEMA MULTIBODY20

    -

    6

    X

    Y

    O

    xi

    K

    *

    yi

    Oi Gicorpo i

    .........................................

    ...................................

    q3i2

    q3i1 .............................q3i

    Figura 2.5: Coordinate generalizzate

    q3i: angolo formato tra gli assi X e xi misurato a partire da X epositivo in senso antiorario (Z positiva).

    Se xP e yP sono le coordinate, rispetto al sistema di riferimento locale Oixiyizi, di un genericopunto P appartenente al corpo i, come mostrato in Fig. 2.6, la trasformazione:

    XP = q3i2 + xP cos q3i yP sin q3i (2.7)Y P = q3i1 + xP sin q3i + yP cos q3i , (2.8)

    permette di esprimere le coordinate di P nel sistema di riferimento di base.

    -

    6

    X

    Y

    O

    xi

    K

    *

    yi

    Oi

    q3i

    P

    xP

    q3i2

    q3i1

    yP

    ....................

    ......................

    ................................. .........................

    ...................................................

    XP

    ...................................................

    ...........................................Y P .........................................

    ...

    ...

    ...

    ...

    ...

    ...

    ...

    ...

    ...

    ...

    ...

    ...

    .

    ...

    ...

    ...

    ..

    xP cos q3i yP sin q3i

    xp sin q31 + yp cos q3i

    Figura 2.6: Trasformazione di coordinate tra terna mobile e terna fissa

    Le Eq. (2.7),(2.8), possono essere scritte in forma piu` compatta definendo la matrice di

  • CAPITOLO 2. RAPPRESENTAZIONE DEGLI ELEMENTI DI UN SISTEMA MULTIBODY21

    rotazione Ri:

    Ri =

    [cos q3i sin q3isin q3i cos q3i

    ]. (2.9)

    Con notazione matriciale possiamo quindi scrivere:[XP

    Y P

    ]= Ri

    [xp

    yp

    ]+

    [q3i2q3i1

    ]. (2.10)

    Si osserva che, essendo il corpo rigido, le coordinate del punto P rispetto al sistema di rifer-imento Oixiyizi solidale al corpo sono costanti. E evidente quindi che le coordinate delgenerico punto P durante il moto possono essere univocamente determinate una volta noti iparametri q3i2 , q3i1 e q3i.

    Se il sistema meccanico e` costituito da l corpi rigidi, la configurazione del sistema e` notase sono note le coordinate generalizzate di tutti i corpi che lo compogono, quindi una voltanoti 3(l 1) parametri (uno degli l corpi funge da telaio).

    Si definisce spazio delle configurazioni linsieme di tutte le possibili configurazioni delsistema meccanico:

    Q = {q R3(l1)|q = [q1, q2, q3, ..., q3i2, q3i1, q3i, ..., q3l5, q3i4, q3(l1)]T} (2.11)

    il vettore q = [q1, q2, q3, ..., q3i2, q3i1, q3i, ..., q3l5, q3i4, q3(l1)]T rappresenta la genericaconfigurazione del sistema. Durante il moto le componenti del vettore q variano, in altritermini, ognuno degli elementi di q e` funzione del tempo. Lanalisi cinematica del mecca-nismo e` finalizzata allo studio delle coordinate generalizzate e delle loro derivate (velocita`,accelerazioni) nel tempo.

  • Capitolo 3

    Cinematica del corpo rigido nello spazio

    3.1 IntroduzioneCome noto un corpo rigido nello spazio ha 6 gradi di liberta`, quindi occorrono almeno 6parametri 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 originenel suo baricentro e assi principali dinerzia. Questa scelta semplifica Lespressione dellenergiacinetica e quindi la definizione delle equazioni della dinamica. La configurazione del corporigido e` nota quando e` nota la posizione del baricentro rispetto a un sistema di riferimentofisso (3 informazioni) e lorientazione degli assi del sistema di riferimento solidale al corporispetto agli assi del sistema di riferimento fisso.

    Esistono vari metodi per la rappresentazione dellorientazione relativa tra due sistemi diriferimento cartesiano, che si possono classificare due categorie:

    rappresentazioni ridondanti; rappresentazioni minime.

    Il numero minimo di parametri necessari a descrivere lorientazione di un corpo rigido nel-lo spazio e` pari a 3. Le rappresentazioni minime dellorientazione fanno appunto uso di 3parametri, mentre quelle ridondanti usano 4 o piu` parametri.

    3.2 Matrice di rotazione - coseni direttoriSupponiamo di avere due terne Oxyz e Oxyz, aventi origine comune in O, e di volernedescrivere lorientazione relativa.

    Siano i, j, k i versori degli assi del sistema di riferimento Oxyz e i, j, k, i versori degliassi del sistema di riferimento Oxyz.

    Scomponendo il versore i lungo le tre direzioni dei versori i, j, k si ottiene la seguenterelazione:

    i = ixi+ iyj+ i

    zk . (3.1)

    Analogamente, per i versori j e k si ottiene:

    j = jxi+ jyj+ j

    zk (3.2)

    k = kxi+ kyj+ k

    zk . (3.3)

    22

  • CAPITOLO 3. CINEMATICA DEL CORPO RIGIDO NELLO SPAZIO 23

    Le componenti dei versori i, j, k lungo gli assi del sistema Oxyz identificano completamentelorientazione terna Oxyz. Tali componenti vengono usate per formare una matrice, dettamatrice di rotazione, come segue:

    R =[i j k

    ]=

    ix jx kxiy jy kyiz j

    z k

    z

    (3.4)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:

    ix = i i = iTi

    iy = i j = iTj

    iz = i k = iTk

    (3.5)

    Gli elementi della matrice R si dicono coseni direttori in quanto ognuno di essi e` pari alprodotto scalare di un versore della terna Oxyz per un versore della terna Oxyz.

    3.2.1 Espressione di R per rotazioni attorno agli assi coordinatiRicaviamo adesso le espressioni della matrice R nel caso in cui la terna mobile sia ruotata,rispetto alla terna fissa, di un certo angolo attorno ad uno degli assi coordinati (della ternafissa).

    3.2.1.1 Rotazione attorno a z

    x

    x'

    yy'

    z z'

    i'j'

    k k'

    O

    Figura 3.1: Rotazione attorno a z.

    Con riferimento alla figura 3.1, supponiamo che la terna Oxyz abbia lasse z coincidentecon lasse z e che lasse x sia ruotato di un angolo rispetto allasse x. Dalla coincidenzadegli assi z e z segue che k = k = [0 0 1]T. I versori i e j valgono invece:

    i =

    cs0

    j =

    sc0

    .

  • CAPITOLO 3. CINEMATICA DEL CORPO RIGIDO NELLO SPAZIO 24

    Assemblando la matrice R otteniamo:

    R = Rz() =[i j k

    ]=

    c s 0s c 00 0 1

    (3.6)3.2.1.2 Rotazione attorno a x

    Dato che x e x sono coincidenti, sara` i = i. Per gli altri due versori, dalla Fig. 3.2 si osserva:

    k =

    0cs

    j =

    0sc

    .

    x x'

    y

    y'

    z'

    z

    i i'

    j'

    k'

    O

    Figura 3.2: Rotazione attorno a x.

    Assemblando la matrice R otteniamo:

    R = Rx() =[i j k

    ]=

    1 0 00 c s0 s c

    (3.7)3.2.1.3 Rotazione attorno a y

    Dato che y e y sono coincidenti, sara` j = j. Per gli altri due versori, dalla Fig. 3.3 si ottiene:

    i =

    c0s

    k =

    s0c

    .Assemblando la matrice R otteniamo:

    R = Ry() =[i j k

    ]=

    c 0 s0 1 0s 0 c

    (3.8)

  • CAPITOLO 3. CINEMATICA DEL CORPO RIGIDO NELLO SPAZIO 25

    x

    x'

    y y'

    z'z

    i'

    j j'

    k'

    O

    Figura 3.3: Rotazione attorno a y.

    3.2.2 Cambio di coordinate tra due terne con la stessa origine

    -

    6

    x y

    z

    1

    M

    z

    x

    y

    O

    OP

    P

    Figura 3.4: Cambio di coordinate tra terne ad origine comune.

    Supponiamo di conoscere le coordinate [px py p

    z]T di un punto P dello spazio rispetto ad

    un sistema di riferimento Oxyz e di voler calcolare le coordinate [px py pz]T dello stessopunto rispetto ad un altro sistema di riferimento Oxyz, avente la stessa origine del primosistema di riferimento, come mostrato in Fig. 3.4.

    Il vettore posizioneOP puo` 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 anchelungo le direzioni dei tre versori i, j, k, ottenendo la seguente relazione:

    pxi+ pyj+ pxk = pxi + pyj

    + pxk . (3.9)

    Proiettando ambo i membri dellequazione 3.9 lungo le tre direzioni i, j, k (tramite loperazionedi prodotto scalare), otteniamo:

    px = pxiT i+ pyj

    T i+ pxkT i

    py = pxiT j+ pyj

    T j+ pxkT j (3.10)

    pz = pxiTk+ pyj

    Tk+ pxkTk

  • CAPITOLO 3. CINEMATICA DEL CORPO RIGIDO NELLO SPAZIO 26

    Non e` difficile riconoscere che le Eq. 3.10 possono essere anche scritte in forma matricialecome segue: pxpy

    pz

    = iT i jT i kT iiT j jT j kT jiTk jTk kTk

    pxpypz

    , (3.11)o anche, in modo piu` compatto:

    p = Rp, (3.12)

    dove p = [px py pz]T e` il vettore posizione

    OP espresso nel sistema di riferimento Oxyz e

    p = [px py p

    z]T e` il vettore posizione

    OP espresso nel sistema di riferimento Oxyz.

    3.2.3 Proprieta` della matrice di rotazione3.2.3.1 Ortogonalita` di R

    Dato che ogni colonna della matrice R e` formata dalle componenti di un versore della ternaOxyz, il prodotto scalare tra due diverse colonne e` nullo:

    iT j = 0

    jTk = 0 (3.13)kT i = 0 .

    Dalle condizioni (3.13), unite al fatto che il prodotto scalare di un vettore per se` stesso e`pari a 1, discende una delle proprieta` piu` importanti ed utili delle matrici di rotazione, ovverola proprieta` di ortogonalita`:

    RTR = I . (3.14)

    La (3.14) puo` essere dimostrata come segue:

    RTR =

    iTjTkT

    [ i j k ] = iT i iT j iTkjT i jT j jTkkT i kT j kTk

    = 1 0 00 1 00 0 1

    = I (3.15)3.2.3.2 Ortogonalita` di R: altra dimostrazione

    Consideriamo due sistemi di riferimento con origine coincidente Ox0y0z0 e Ox1y1z1. Siano r0

    e r1 le rappresentazioni del vettore ~r rispetto alla terna 0 e 1 e s0 e s1 le rappresentazioni delvettore ~s rispetto alla terna 0 e 1 rispettivamente.

    Il modulo del vettore (~r ~s) e` lo stesso indipendentemente dal sistema di riferimentorispetto a cui si rappresentano i vettori, quindi:

    r0 s0 = r1 s1 (3.16)e` possibile scrivere le coordinate di ~r e ~s rispetto al sistema di riferimento 0 in funzione dellecoordinate rispetto al sistema di riferimento 1, tramite la matrice di rotazione.

    r0 s0 = [R10](r1 s1) ==

    ([R10](r

    1 s1))T ([R10](r1 s1)) =

    =

    (r1 s1)T [R10]T [R10](r1 s1) (3.17)

  • CAPITOLO 3. CINEMATICA DEL CORPO RIGIDO NELLO SPAZIO 27

    Figura 3.5: dimostrazione della proprieta` di ortogonalit della matrice di rotazione.

    Per definizione risulta inoltre:

    r1 s1 =(r1 s1)T (r1 s1) (3.18)

    Quindi si verifica immediatamente che:

    [R10]T [R10] = I (3.19)

    3.2.3.3 Inversa di R

    Si puo` dimostrare che il determinante di una matrice di rotazione e` pari a 1. Quindi la matriceR ammette sempre uninversa R1. Moltiplicando a destra ambo i membri della (3.14) perR1, si ottiene:

    RT RR1 I

    = IR1 , (3.20)

    ovvero:

    RT = R1 . (3.21)

    Linversa di una matrice di rotazione puo` quindi essere semplicemente calcolata tramiteunoperazione di trasposizione.

    3.2.3.4 Composizione di rotazioni successive in terna corrente

    Supponiamo di avere tre terne con origine comune:

    Ox0y0z0, terna base; Ox1y1z1 terna ottenuta dalla 0 a seguito di una rotazione R01 (specificata in terna 0);

  • CAPITOLO 3. CINEMATICA DEL CORPO RIGIDO NELLO SPAZIO 28

    Ox2y2z2 terna ottenuta dalla terna 1 a seguito di una rotazione R12 (specificata in terna1).

    Sia R02 la matrice di rotazione (incognita) che esprime lorientazione della terna Ox2y2z2rispetto alla terna base Ox0y0z0. Siano p

    0, p1, p2, le coordinate di un punto P dello spaziorispetto ad ognuna delle tre terne. Per quanto visto nel Par. 3.2.2, valgono le relazioni:

    p0 = R01p1 (3.22)

    p1 = R12p2 (3.23)

    p0 = R02p2 . (3.24)

    Sostituendo lespressione (3.23) di p1 nella (3.22) si ottiene:

    p0 = R01R12p

    2 . (3.25)

    Dovendo essere valide entrambe le equazioni (3.24) e (3.25) per ogni punto P , sara` allora:

    R02 = R01R

    12 . (3.26)

    La (3.26) e` 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 matriceRi1i , la matrice di rotazione che esprime lorientazione dellultima terna rispetto alla prima,assunta come terna base, e` data da:

    R0n = R01R

    12 . . . R

    n2n1R

    n1n . (3.27)

    3.2.3.5 Composizione in terna fissa

    Supponiamo di avere tre terne ad origine comune:

    Ox0y0z0, terna base; Ox1y1z1 terna ottenuta dalla terna 0 a seguito di una rotazione 0R01 (specificata in terna0, indicata nellapice sinistro);

    Ox2y2z2 terna ottenuta dalla terna 1 a seguito di una rotazione 0R12 (anchessa specificatain terna 0).

    Per ottenere la legge di composizione delle due rotazioni, sfruttiamo la conoscenza della legge dicomposizione in terna corrente: la rotazione complessiva puo` essere vista come una successionedelle seguenti rotazioni, tutte specificate in terna corrente:

    rotazione R1 = 0R01 che porta la terna 0 sulla terna 1; rotazione R2 = (0R01)T che riporta la terna 1 sulla terna 0; rotazione R3 = 0R12 che impone alla terna corrente la seconda rotazione; rotazione R4 = 0R01 che recupera la rotazione R2 = (0R01)T .

    Applicando la regola di composizione in terna corrente otteniamo:

    R02 = R1R2 =I

    R3R4 = R3R4 =0R12

    0R01 . (3.28)

    In pratica, la matrice di rotazione complessiva R02 si ottiene, come nel caso della composizionein terna corrente, con un prodotto matriciale delle due rotazioni successive, ma questa voltalordine di moltiplicazione va invertito, ovvero, generalizzando al caso di n rotazioni successive0Ri1i , i = 1, . . . , n specificate in terna 0.

  • CAPITOLO 3. CINEMATICA DEL CORPO RIGIDO NELLO SPAZIO 29

    3.2.4 Angoli di EuleroSupponiamo di dover descrivere lorientazione relativa di una terna Ox1y1z1 (che diremo con-venzionalmente terna mobile) rispetto ad una terna Oxyz (che diremo convenzionalmenteterna base). Il metodo degli angoli di Eulero permette di scomporre la rotazione finale inuna composizione di tre rotazioni elementari (rispetto ad assi coordinati) specificate in ternacorrente.

    Esistono 12 possibili definizioni degli angoli di Eulero, noi esamineremo gli angoli di Eulerodi tipo ZY Z. Il nome ZY Z discende dal fatto che si usano tre rotazioni elementari successiveattorno agli assi Z, Y , Z della terna corrente.

    xx'

    y

    y'

    z

    O

    z'' z

    x''

    y

    x

    1

    1

    1

    Figura 3.6: Angoli di Eulero.

    Descriviamo adesso in dettaglio il metodo.

    Date le terne Oxyz e Ox1y1z1, come mostrato in Fig.3.6 identifichiamo la retta in-tersezione tra il piano xy e il piano x1y1: tale retta si dice linea dei nodi. (Fig.3.7)

    Eseguiamo una prima rotazione della terna Oxyz di un algolo attorno allasse z, finoa che lasse y non coincida con la linea dei nodi, come mostrato in Fig.3.8, ottenendo lanuova terna corrente Oxyz che ha lasse y lungo la linea dei nodi e lasse z coincidentecon lasse z. Langolo e` langolo formato dallasse y e dalla linea dei nodi, sceltopositivo se concorde con z.

    Eseguiamo una rotazione della terna Oxyz di un angolo attorno allasse y, fino ache lasse z non coincida con lasse z1, come mostrato in Fig.3.8 ottenendo una nuovaterna corrente Oxyz che ha lasse z coincidente con lasse z1 e gli assi x e y nelpiano x1y1. Langolo e` langolo formato dallasse z e dallasse z1, scelto positivo seconcorde con y.

    Eseguiamo infine una rotazione della terna Oxyz di un angolo attorno allassez, fino a che lasse x non sia coincidente con lasse x1, come mostrato in Fig.3.8.c:

  • CAPITOLO 3. CINEMATICA DEL CORPO RIGIDO NELLO SPAZIO 30

    x x'

    y

    y'

    z z'

    O

    Figura 3.7: Angoli di Eulero: linea dei nodi.

    xx'

    y

    y' y''

    z

    O

    z''

    x''

    Figura 3.8: Rotazioni di Eulero: rotazioni e .

  • CAPITOLO 3. CINEMATICA DEL CORPO RIGIDO NELLO SPAZIO 31

    a questo punto la terna corrente e` coincidente con la terna Ox1y1z1. Langolo e`langolo formato dallasse y1 e dalla linea dei nodi orientata come y, scelto positivose concorde con z1.

    3.2.4.1 Dagli angoli di Eulero alla matrice di rotazione

    La matrice di rotazione complessiva REUL e` data dalla composizione delle tre rotazioni vistein precedenza, definite in terna corrente. La prima rotazione (spin) e` intorno allasse z di unangolo , la seconda (nutazione) e` intorno allasse y di un angolo , la terza (precessione)e` intorno allasse z di un angolo , la matrice di rotazione risultante e` pertanto data da:

    REUL =

    c s 0s c 00 0 1

    c 0 s0 1 0s 0 c

    c s 0s c 00 0 1

    ==

    cc s cssc c sss 0 c

    c s 0s c 00 0 1

    ==

    ccc ss ccs sc csscc + cs scs + cc sssc ss c

    . (3.29)3.2.4.2 Dalla Matrice di rotazione agli angoli di Eulero

    E data la matrice di rotazione:

    R =

    r1,1 r1,2 r1,3r2,1 r2,2 r2,3r3,1 r3,2 r3,3

    , (3.30)si vogliono determinare i corrispondenti angoli di Eulero.

    Confrontando la (3.29) con la (3.30) si osserva che:

    r1,3 = cs ,

    r2,3 = ss ,

    supponendo che s 6= 0 e` possibile calcolare in questo modo: = atan2(r2,3, r1,3). (3.31)

    Ricordiamo che la funzione atan2(x, y) calcola larcotangente del rapporto x/y, ma utilizza ilsegno di ciascun argomento per determinare il quadrante di appartenenza dellangolo risultante.In questo modo si determina in modo corretto langolo in un intervallo di ampiezza pariallangolo giro.

    Si osserva inoltre che:

    r21,3 + r22,3 = sin

    2 ,

    s = r21,3 + r

    22,3 ,

    se si sceglie il segno positivo per la radice quadrata (ipotizzando cioe` 0 < < pi), ricordandoche:

    r3,3 = c ,

  • CAPITOLO 3. CINEMATICA DEL CORPO RIGIDO NELLO SPAZIO 32

    langolo puo` essere calcolato in questo modo:

    = atan2(r21,3 + r

    22,3, r3,3) . (3.32)

    Con questa scelta del segno di sin langolo puo` essere calcolato dagli elementi r3,1 e r3,2in questo modo:

    = atan2(r3,2,r3,1) . (3.33)

    Se avessimo scelto il segno negativo per la radice quadrata (ovvero pi < < 0):

    = atan2(r21,3 + r

    22,3, r3,3) , (3.34)

    langolo sarebbe stato definito in questo modo:

    = atan2(r3,2, r3,1) . (3.35)

    Se sin = 0 si osserva che r1,3 = r2,3 = r3,1 = r3,2 = 0. Per le proprieta` della matricedi rotazione risultera` necessariamente r3,3 = 1. Supponiamo che r3,3 = 1 (in questo casoparticolare gli assi z iniziale e finale coincidono). La matrice di rotazione in questo caso diventapari a:

    REUL =

    cc ss cs sc 0sc + cs ss + cc 00 0 1

    = cos(+ ) sin(+ ) 0sin(+ ) cos(+ ) 0

    0 0 1

    .(3.36)Si osserva che non e` possibile in questo caso calcolare e ma solo la loro somma, visto chele due rotazioni sono effettuate rispetto allo stesso asse.

    3.2.5 Rappresentazione asse/angoloConsideriamo due sistemi di riferimento con origine comune Ox1y1z1 (che diremo conven-zionalmente terna mobile) e Oxyz (che diremo convenzionalmente terna base). E possibiledimostrare che si puo` passare dalla terna fissa alla terna mobile effettuando una rotazionedi un angolo rispetto ad un asse definito dal versore le cui componenti, nel sistema diriferimento fisso, sono [x, y, z]

    T .Calcoliamo le componenti della matrice di rotazione tra la terna fissa e la terna mobile in

    funzione delle componenti del vettore e langolo . Indichiamo con langolo della proiezionedel vettore sul piano xy e lasse x, indichiamo con langolo tra il versore e lasse z.

    Per portare la terna Oxyz a coincidere con la terna Ox1y1z1 possiamo fare le seguentirotazioni:

    ruotiamo di un angolo pari a intorno allasse z, in questo modo portiamo il versore sul piano xz;

    ruotiamo di un angolo pari a intorno allasse y, in questo modo portiamo il versore a coincidere con lasse z;

    ruotiamo intorno allasse z di un angolo ; ruotiamo intorno allasse y di un angolo pari a ;

  • CAPITOLO 3. CINEMATICA DEL CORPO RIGIDO NELLO SPAZIO 33

    ruotiamo intorno allasse z di un angolo pari a , queste due ultime rotazioni servonoper riportare il versore nella configurazione iniziale.

    Le cinque operazioni appena descritte sono effettuate in terna fissa, per cui la matrice dirotazione complessiva puo` essere calcolata in questo modo:

    R = Rz()Ry()Rz()Ry()Rz() =

    =

    c s 0s c 00 0 1

    c 0 s0 1 0s 0 c

    c s 0s c 00 0 1

    c 0 s0 1 0s 0 c

    c s 0s c 00 0 1

    (3.37)

    E possibile sostituire a sin(), cos(), sin() e cos() le seguenti espressioni:

    sin =y

    2x + 2y

    , (3.38)

    cos =x

    2x + 2y

    , (3.39)

    sin =2x +

    2y , (3.40)

    cos = z . (3.41)

    La matrice di rotazione puo` quindi essere scritta in questo modo:

    R =

    2x(1 c) + c xy(1 c) zs xz(1 c) + ysxy(1 c) + zs 2y(1 c) + c yz(1 c) xsxz(1 c) ys yz(1 c) + xs 2z(1 c) + c

    (3.42)Si osserva che la rotazione di un angolo intorno al versore coincide con una rotazione diun angolo intorno allasse .

    3.2.6 Parametri di EuleroConsideriamo un corpo rigido che ruota intorno ad un punto fisso. Sia Oxyz una terna fissa,rispetto alla quale vogliamo descrivere il moto del corpo rigido e Oxyz una terna solidale alcorpo rigido. Le due terne hanno origine comune in O.

    Si e` visto nel paragrafo precedente che per portare la terna Oxyz a coincidere con la ternaOxyz e` sufficiente effettuare una rotazione di un angolo rispetto a un certo asse . Lecomponenti del versore possono essere espresse nel sistema di riferimento fisso:

    = xi+ yj+ zk . (3.43)

    I PARAMETRI DI EULERO sono quindi definiti in questo modo:

    1 = x sin(/2) , (3.44)2 = y sin(/2) , (3.45)3 = z sin(/2) , (3.46)

    4 = cos(/2) . (3.47)

    E evidente che i parametri di Eulero non sono tra loro indipendenti essendo legati dallaseguente relazione:

    21 + 22 +

    23 +

    24 = 1 . (3.48)

  • CAPITOLO 3. CINEMATICA DEL CORPO RIGIDO NELLO SPAZIO 34

    3.2.6.1 Matrice di rotazione e parametri di Eulero

    E possibile verificare che la matrice di rotazione tra la terna puo` essere espressa in funzionedei parametri di Eulero:

    [R] =

    (21 22 23 + 24) 2(12 34) 2(13 24)2(12 34) (21 + 22 23 + 24) 2(23 14)2(13 24) 2(23 14) (21 22 + 23 + 24)

    (3.49)3.3 Velocita` di un corpo rigido nello spazio

    3.3.1 Derivata rispetto al tempo della matrice di rotazioneConsideriamo un corpo B che ruota intorno ad un punto fisso O, sia Ox1y1z1 un sistema diriferimento ad esso solidale, sia Ox0y0z0 il sistema di riferimento di base. Consideriamo quindiun punto P solidale al corpo B, siano:

    p =

    p0xp0yp0z

    (3.50)le sue coordinate rispetto alla terna fissa. La velocita` di P e` data da:

    p =dp

    dt= p = []p . (3.51)

    Ricordiamo che la matrice [] e` cos`definita:

    [] =

    0 z yz 0 xy x 0

    (3.52)Sia [R] la matrice di rotazione che lega la terna mobile alla fissa, per definizione risulta: p0xp0y

    p0z

    = [R] p1xp1yp1z

    ; (3.53)Le coordinate di P rispetto alla terna mobile risultano costanti (il punto P e` solidale al corpoB). La velocita` di P puo` essere quindi scritta in questa forma:

    p = [][R]p1 . (3.54)

    Derivando membro a membro lequazione (3.53) si ha:

    p = [R]p1 + [R]p1 , (3.55)

    ma essendo il punto P solidale al corpo B risulta p1 = 0, per cui risulta:

    p = [R]p1 . (3.56)

    Confrontando la (3.56) con la (3.54) si ottiene:

    [R] = [][R] . (3.57)

  • CAPITOLO 3. CINEMATICA DEL CORPO RIGIDO NELLO SPAZIO 35

    3.3.2 Velocita` angolare e angoli di EuleroConsideriamo un corpo rigido che ruota intorno a un punto fisso O con velocita` angolare ~. Siaquindi la rappresentazione del vettore ~ nel sistema di riferimento fisso Oxyz. Utilizziamola regola di addizione delle velocita` angolari per esprimere in funzione delle derivate degliangoli di Eulero , , .

    La rotazione del corpo rigido con velocita` puo` essere vista come risultante di tre rotazioni:

    una rotazione intorno allasse z con velocita` angolare ; una rotazione intorno allasse y con velocita` angolare una rotazione intorno allasse z1 con velocita` angolare .

    In altri termini: = k+ j + k1 ; (3.58)

    Le componenti del versore j possono essere espresse rispetto alla terna base:

    j =

    sincos0

    ; (3.59)analogamente per il versore z1 risulta:

    z1 =

    cos () sin ()

    sin () sin ()

    cos ()

    ; (3.60)Sostituendo le (3.59) e (3.60) nella (3.58) si ottiene quindi:

    = k+

    sincos0

    + cos () sin ()

    sin () sin ()

    cos ()

    =

    =

    0 sin cos () sin ()0 cos sin () sin ()1 0 cos ()

    (3.61)La precedente espressione puo` essere invertita, in altri termini e` possibile esprimere le derivatedegli angoli di Eulero in funzione delle componenti del vettore velocita` angolare rispetto allaterna fissa. E possibile verificare che:

    = cos() cos()

    sin() sin() cos()

    sin()1

    sin () cos () 0cos()sin()

    sin()sin()

    0

    123

    (3.62)Si osserva che lespressione (3.62) risulta singolare quando sin = 0, ovvero quando = 0oppure = pi. Tutte le sequenze di rotazione di questo tipo presentano problemi di singolarita`in alcune configurazioni. Per questo motivo la rappresentazione dellorientazione per mezzodegli angoli di Eulero (per mezzo di tre rotazioni successive) non viene utilizzata nelle procedurenumeriche su cui si basano i software multibody.

  • CAPITOLO 3. CINEMATICA DEL CORPO RIGIDO NELLO SPAZIO 36

    3.3.3 Velocita` angolare e parametri di EuleroConsideriamo lespressione della derivata della matrice di rotazione definita in precedenza(equazione (3.57)):

    [R] = [][R] ,

    post-moltiplichiamo per la trasposta della matrice di rotazione:

    [R][R]T = [][R][RT ] ,

    ricordando che [R][R]T = [I], si ha:

    [R][R]T = [] . (3.63)

    Gli elementi della matrice [] rappresentano le componenti del vettore :

    ] =

    0 z yz 0 xy x 0

    , (3.64)Le componenti della velocita` angolare possono quindi essere calcolate in questo modo:

    x = 3,2 =3i=1

    R3,iRi,2 (3.65)

    y = 1,3 =3i=1

    R1,iRi,3 (3.66)

    z = 2,1 =3i=1

    R2,iRi,1 (3.67)

    Ricordando lespressione della matrice di rotazione in funzione dei parametri di Eulero e` possi-bile verificare che la relazione che lega le componenti della velocita` angolare alle derivate deiparametri di Eulero e` la seguente:

    1230

    = 2[E]1234

    , (3.68)dove:

    [E] =

    4 3 2 13 4 1 22 1 4 32 2 3 4

    . (3.69)A titolo desempio ricaviamo lespressione della prima componente del vettore velocita`

    angolare:

    1 = 3,2 = R3,1R1,2 + R3,2R2,2 + R3,3R3,2 =

    =

    [d

    dt(2(13 24))

    ](2(12 34)) +

    [d

    dt(2(23 14))

    ] (21 + 22 23 + 24)++

    [d

    dt

    (21 22 + 23 + 24)] (2(23 14)) == 4 (12 + 34) (13 + 13 24 24) ++ 2

    (21 + 22 23 + 24) (23 + 23 + 14 + 14) ++ 2(23 14) (211 222 + 233 + 244) ;

  • CAPITOLO 3. CINEMATICA DEL CORPO RIGIDO NELLO SPAZIO 37

    sviluppando i prodotti e ricordando poi che risulta 21 + 22 +

    23 +

    24 = 1 si ricava facilmente

    che:

    1 = 2(41 32 + 23 14) .

    E possibile verificare inoltre che risulta:

    [E]1 = ET , (3.70)

    e che quindi lespressione (3.68) puo` essere invertita in questo modo:1234

    = 12[E]1230

    . (3.71)Si osserva che non esistono singolarita` nelle equazioni cinematiche mostrate in precedenza,per questo molte procedure numeriche utilizzano i parametri di Eulero come rappresentazionedellorientazione.

    3.3.4 Coordinate generalizzate e velocita` generalizzatePer lanalisi della cinematica e della dinamica dei sistemi multibody abbiamo visto che e`necessario definire, per ogni corpo rigido, un set di almeno sei coordinate, dette coordinategeneralizzate, in grado di descrivere completamente la posizione e lorientazione del corpo nellospazio. Sia quindi qi il vettore delle coordinate generalizzate relative al corpo i, contenente laposizione del baricentro del corpo rispetto alla terna base e gli angoli di Eulero che descrivonolorientazione della terna baricentrica rispetto agli assi della terna base:

    qi =

    xiyiziiii

    , (3.72)

    Definiremo quindi le velocita` generalizzate del corpo i come le derivate temporali delle coor-dinate generalizzate:

    qi =

    xiyiziiii

    . (3.73)

    Per descrivere la velocita` del corpo rigido nello spazio potremmo comunque scegliere unaqualsiasi combinazione lineare delle velocita` generalizzate.

    Ad esempio, potremmo scegliere le componenti della velocita` angolare anziche le derivatedegli angoli di Eulero per descrivere la parte rotazionale della velocita`. La relazione (3.61)permette di esprimere le componenti del vettore velocita` angolare rispetto alle derivate degliangoli di Eulero.

  • Capitolo 4

    Cinematica dei sistemi piani

    4.1 Sistema delle equazioni di vincolo

    4.1.1 Vincoli sul sistema meccanicoIn questo contesto, indicheremo con il termine vincolo una relazione matematica tra le co-ordinate generalizzate dei corpi, che in un certo senso limitano le possibilita` di moto delsistema.

    I vincoli sulla posizione vengono definiti olonomi; i vincoli in cui compare anche la velocita` vengono detti anolonomi

    I vincoli possono essere ulteriormente classificati in:

    Scleronomi: vincoli strutturali dovuti alla presenza delle coppie cinematiche,dal punto di vista matematico sono caratterizzati dal fatto di nonavere dipendenza esplicita dal tempo. In altri termini, questitipi di vincolo saranno rappresentati da una relazione del tipok(q) = 0.

    Reonomi: vincoli dovuti alle leggi di moto assegnate ad alcuni membridel meccanismo. Questo tipo di vincolo e` rappresentato dauna relazione in cui compare esplicitamente il tempo, del tipok(q, t) = 0.

    Le equazioni relative ai vincoli reonomi sono equazioni nelle quali compare esplicitamentela variabile temporale t e vengono quindi imposte dal progettista, mentre le equazioni relativeai vincoli scleronomi vengono generate in maniera sistematica, con il metodo che ci accingiamoa descrivere, una volta che sia specificata la topologia del meccanismo e la geometria dei suoimembri.

    4.1.2 Gradi di liberta` nei sistemi pianiConsideriamo un meccanismo piano composto da l corpi rigidi (compreso il telaio) mutuamentevincolati da j1 coppie elementari

    1 e j2 coppie superiori.

    1Ricordiamo che le coppie elementari, nel caso piano in oggetto, sono esclusivamente di tipo rotoidale oprismatico, ognuna e` caratterizzata da due equazioni di vincolo

    38

  • CAPITOLO 4. CINEMATICA DEI SISTEMI PIANI 39

    Il numero di gradi di liberta` del sistema e` costituito dalla differenza tra il numero totale dicoordinate generalizzate del sistema (dimensione dello spazio delle configurazioni) e il numerodi relazioni che possono essere scritte per i vincoli reonomi. In altri termini, il numero di gradidi liberta` F del sistema risulta quindi:

    F = 3(l 1) 2j1 j2 . (4.1)

    Questa relazione vale nel caso di configurazioni non singolari.In totale, per i vincoli scleronomi, sara` possibile scrivere un numero di equazioni di vincolo

    pari a 2j1 + j2. Nelle equazioni di vincolo compariranno le 3(l 1) coordinate generalizzatedel sistema.

    Affinche il problema dellanalisi cinematica del meccanismo possa essere risolto, dovrannoessere fornite F = 3(l 1) 2j1 j2 equazioni corrispondenti ai vincoli reonomi presenti(leggi di moto).

    4.1.3 Equazioni di vincoloLanalisi cinematica del meccanismo (in termini di definizione della configurazione del sistemadurante il moto) si esaurisce quindi con la soluzione numerica delle equazioni ordinarie nonlineari simultanee:

    k(q, t) = 0 , k = 1, . . . , 3(l 1) , (4.2)

    dove q = [q1 q2 q3 . . . q3i2 q3i1 q3i . . . q3(l1)2 q3(l1)1 q3(l1)]T R3(l1) e` il vettoredelle coordinate generalizzate del meccanismo. Di tutte le equazioni (4.2), le prime 2j1 + j2rappresentano le equazioni dei vincoli scleronomi, mentre le rimanenti F rappresentano leequazioni dei vincoli reonomi, ovvero le leggi di moto di alcuni degli elementi del meccanismo.

    4.1.3.1 Esempio 1: quadrilatero articolato

    Supponiamo di voler eseguire lanalisi cinematica di un quadrilatero articolato col metodo delleequazioni di vincolo: si devono scrivere 8 equazioni di vincolo (due per ognuna delle coppierotoidali e per la coppia prismatica) e 1 equazione di moto per un totale di 9 equazioni.

    = (t)

    .................................................0

    3

    2

    1

    l = 4, j1 = 4, j2 = 0F = 3(l 1) 2j1 j2 = 3(4 1) 2 4 = 1

    Figura 4.1: Quadrilatero articolato

  • CAPITOLO 4. CINEMATICA DEI SISTEMI PIANI 40

    Figura 4.2: Manovellismo di spinta

    4.1.3.2 Esempio 2: Manovellismo di spinta

    Supponiamo di voler eseguire lanalisi cinematica di un manovellismo di spinta col metododelle equazioni di vincolo: anche in questo caso si devono scrivere 8 equazioni di vincolo (dueper ognuna delle coppie rotoidali) e 1 equazione di moto per un totale di 9 equazioni.

    4.1.4 Configurazione del meccanismoLe (4.2), raccolte in un sistema, si possono scrivere come:

    (q, t) = 0 , (4.3)

    dove = [1 . . . 3(l1)]T .Si osserva che (4.3) rappresenta un sistema di 3(l 1) equazioni non lineari.Il sistema di equazioni puo` essere risolto per via numerica, ad esempio per mezzo del metodo

    di Newton Raphson. Supponiamo di voler determinare la configurazione del meccanismo inun certo istante t0 assegnato, dobbiamo in questo caso risolvere il sistema:

    (q) = 0 , (4.4)

    (la variabile tempo in questo caso non compare, dato che stiamo analizzando la configurazionedel sistema in un istante fissato). Il metodo di risoluzione di Newton - Raphson e` basatosulla linearizzazione del sistema, in altri termini si approssimano le funzioni non lineari checostituiscono il sistema, in una certa configurazione di partenza qi, per mezzo dei primi duetermini dellespansione in serie di Taylor. Con questa ipotesi il sistema da risolvere diventa:

    (q) = (qi) + [q(qi)] (q qi) = 0 , (4.5)avendo definito la matrice [q(q)] come:

    [q(q)] =(q, t)

    q(4.6)

    ovvero la matrice Jacobiana della funzione non lineare (q), valutata nella configurazioneqi. Supponendo di conoscere una configurazione approssimata qi, per mezzo della (4.5) e`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) e` invertibile, puo` 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 unequazione non lineare per mezzo del metododi Newton Raphson.

    La configurazione del meccanismo viene determinata iterando il sistema (4.8) fino alla con-vergenza della soluzione (ovvero fintantoche la differenza tra la nuova configurazione qi+1 equella vecchia qi non diventa trascurabile).

    Il metodo di Newton Raphson e` caratterizzato da convergenza di tipo quadratico in unintorno della soluzione. Nella figura 4.3 si riporta schematicamente il funzionamento delmetodo per una funzione in una variabile.

    Come accennato nel primo capitolo, il problema della definizione della configurazione in-iziale in generale puo` ammettere piu` di una soluzione. La soluzione verso cui convergera` ilmetodo numerico dipende dalla stima iniziale.

    Si osserva inoltre che il metodo di Newton - Raphson non sempre converge verso la soluzionedellequazione non lineare, se la configurazione iniziale non e` sufficientemente vicina allasoluzione, si possono avere problemi di divergenza dellalgoritmo numerico.

    Un ulteriore problema nasce dal fatto che il problema della configurazione iniziale puo` nonammettere 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 metodonumerico necessariamente divergera`.

    Il metodo di soluzione proposto e` basato sulla inversione della matrice Jacobiana. L-efficienza dellalgoritmo per la soluzione del problema della configurazione iniziale dipendeessenzialmente dallefficienza con cui viene risolto il sistema lineare (4.7).

    4.1.5 Velocita` del meccanismoSe deriviamo la 4.3 rispetto al tempo otteniamo:

    d

    dt=(q, t)

    qq+

    (q, t)

    t= 0 . (4.9)

    Ricordando la definizione della matrice Jacobiana:

    [q] =(q, t)

    q(4.10)

    e definendo il vettore

    t=(q, t)

    t(4.11)

  • CAPITOLO 4. CINEMATICA DEI SISTEMI PIANI 42

    la (4.9) puo` essere riscritta:

    [q]q = t . (4.12)

    La (4.12) rappresenta un sistema di 3(l 1) equazioni in 3(l 1) incognite (le componentidel vettore q), di tipo lineare, la cui soluzione, se la matrice [q] risulta non singolare (se cioe`il suo determinante e` diverso da zero), risulta data da:

    q = [q]1t . (4.13)

    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.

    4.1.6 Accelerazioni del meccanismoPer quanto riguarda le accelerazioni, derivando rispetto al tempo il primo membro della (4.12),si ottiene:

    d

    dt([q]q) =

    q([q]q)q+

    t([q]q) =

    =

    q([q]q)q+ [q,t]q+ [q]q . (4.14)

    Mentre la derivata rispetto al tempo del secondo membro della (4.12) fornisce:

    d

    dt(t) =

    q(t)q+

    d

    dt(t) = [t,q]q+ tt . (4.15)

    Ricordando che [q,t] = [t,q] e definendo il vettore come:

    = q

    ([q]q)q 2[q,t]q tt , (4.16)

    il problema dellanalisi delle accelerazioni del meccanismo si conclude con la soluzione, per ungenerico tempo t, del sistema lineare di equazioni:

    [q]q = . (4.17)

    4.2 Coppie cinematiche elementariNei prossimi paragrafi verranno in dettaglio definite le equazioni di vincolo relative alle principalicoppie cinematiche.

    4.2.1 Coppia rotoidaleCome e` noto la coppia rotoidale permette solo la rotazione relativa tra i due membri checollega; nel caso piano tale coppia toglie due gradi di liberta` al sistema e, quindi e` necessarioscrivere due equazioni di vincolo che legano tra di loro le due terne di coordinate generalizzatedei due membri collegati.

    Con riferimento alla figura 4.4, siano i e j i due corpi rigidi vincolati dalla coppia rotoidalee sia il punto A la traccia nel piano del moto dellasse di rotazione della coppia. Le coordinate

  • CAPITOLO 4. CINEMATICA DEI SISTEMI PIANI 43

    -

    6

    X

    Y

    O

    K

    *

    yi

    Oi

    q3i2

    q3i1

    Y

    xi xj

    yj

    Oj

    A

    .................................................................

    ......

    ..

    ............

    Y P

    .......................yAj

    xAj

    ........................

    xAi

    yAi

    .......................................

    .........................

    .......................

    q3j1

    q3j2

    Figura 4.4: Giunto rotoidale

    assolute del punto A visto come appartenente al corpo i devono coincidere con quelle dellostesso 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 Oixiyizi e una volta attraversoil sistema Ojxjyjzj ed imponiamo che coincidano. Le due equazioni di vincolo si scrivonodunque:

    XAi XAj = 0 (4.18)Y Ai Y Aj = 0 . (4.19)

    Scrivendo le coordinate del punto A in termini di coordinate generalizzate per mezzo delleEq. (2.7) e (2.8), si ottiene:

    XAi = q3i2 + xAi cos q3i yAi sin q3i (4.20)

    Y Ai = q3i1 + xAi sin q3i + y

    Ai cos q3i (4.21)

    e quindi le equazioni di vincolo diventano:

    k = q3i2 + xAi cos q3i yAi sin q3i [q3j2 + xAj cos q3i yAj sin q3j] , (4.22)k+1 = q3i1 + xAi sin q3i + y

    Ai cos q3i [q3j1 + xAj sin q3i yAj cos q3j] . (4.23)

    Si puo` osservare che per scrivere le due equazioni di vincolo di cui sopra, e` sufficiente conoscerela posizione della traccia dellasse di rotazione della coppia nei due sistemi di riferimento solidalicon i corpi i e j. Per tale ragione il metodo delle equazioni di vincolo risulta particolarmenteadatto ad essere utilizzato in un ambiente multibody. Per concludere lanalisi cinematica dellacoppia e` necessario calcolare gli elementi della matrice [q] e del vettore introdotti dallacoppia.

    Osserviamo inoltre che, per un generico punto A, risulta:

  • CAPITOLO 4. CINEMATICA DEI SISTEMI PIANI 44

    - q3i2 q3i1 q3i q3j2 q3j1 q3jk 1 0 q3i1 Y Ai -1 0 Y Aj q3j1

    k + 1 0 1 XAi q3i2 0 -1 q3j1 XAjTabella 4.1: Componenti della k e k + 1 -esima riga della matrice Jacobiana relative a unacoppia rotoidale

    q3i(XAi ) = xAi sin q3i yAi cos q3i = q3i1 Y Ai , (4.24)

    q3i(Y Ai ) = x

    Ai cos q3i yAi sin q3i = XAi q3i2 . (4.25)

    Dalla definizione di [q] (??) otteniamo i risultati riassunti nella tabella 5.2Dalla definizione di (4.16) otteniamo:

    (k) = [q23i(q3i2 XAi ) q23j(q3j2 XAj )] (4.26)(k + 1) = [q23i(q3i1 Y Ai ) q23j(q3j2 Y Aj )] . (4.27)

    Ancora una volta osserviamo che gli elementi della matrice [q] e del vettore relativi allacoppia in esame sono individuati dalla semplice conoscenza della posizione dellasse di rotazionedella coppia rotoidale rispetto ai due sistemi di riferimento solidali con i corpi i e j.

    4.2.2 Coppia prismaticaAnche la coppia prismatica toglie, nel caso piano, due gradi di liberta` al sistema; con il metododelle equazioni di vincolo si scrivono dunque due equazioni che legano tra di loro le coordinategeneralizzate dei due corpi tra loro vincolati. In riferimento alla seguente figura si impongonole due seguenti condizioni