Vai al contenuto

Robotica e automazione/Matrici di rotazione

Wikibooks, manuali e libri di testo liberi.
Indice del libro


Una rotazione antioraria di un vettore attraverso l'angolo , dove il vettore è inizialmente allineato con l'asse .

Una matrice di rotazione è una matrice di trasformazione che esegue una rotazione nello spazio euclideo. Per esempio, utilizzando la seguente convenzione, la matrice

ruota i punti nel piano in senso antiorario di un angolo rispetto all'origine di un sistema di coordinate cartesiane bidimensionale.

Per eseguire la rotazione su un punto del piano con coordinate standard , è necessario moltiplicare la matrice per il vettore stesso, ottenendo:

Se e rappresentano le coordinate finali di un vettore, dove è il coseno e è il seno, le equazioni precedenti diventano l'identità trigonometrica. Infatti, una matrice di rotazione può essere letta come le formule trigonometriche della somma degli angoli in forma matriciale. Un modo per capirlo è supporre di avere un vettore con un angolo di 30° rispetto all'asse e volerlo ruotare di altri 45°. È sufficiente calcolare le coordinate del punto finale del vettore a 75°.

Le matrici di rotazione sono matrici quadrate con elementi reali. Più specificatamente, possono essere caratterizzate come matrici ortogonali con determinante pari a 1; pertanto, una matrice quadrata è una matrice di rotazione se e solo se e . L'insieme di tutte le matrici ortogonali di dimensione con determinante +1 è una rappresentazione di un gruppo noto come gruppo ortogonale speciale . Un esempio è il gruppo di rotazione in tre dimensioni .

Singola rotazione bidimensionale

[modifica | modifica sorgente]

Come premesso, nelle due dimensioni, la matrice di rotazione standard assume la seguente forma:

La rotazione dei vettori avviene mediante la seguente moltiplicazione di matrici,

Pertanto, le nuove coordinate di un punto dopo la rotazione sono:

La direzione di rotazione del vettore è antioraria se è positivo (per esempio 90°), e oraria se è negativo (ad esempio −90°) per . Pertanto, la matrice di rotazione in senso orario si determina con

Tipiche rotazioni bidimensionali

[modifica | modifica sorgente]

Particolarmente utili risultano essere le matrici

equivalenti alle rotazioni in senso antiorario di 90°, 180° e 270°. Naturalmente, la rotazione di un angolo giro è data dalla matrice identità.

Singola rotazione tridimensionale

[modifica | modifica sorgente]

Per ottenere una rotazione tridimensionale di base (nota anche rotazione elementare) si procede con una rotazione attorno a uno degli assi di un sistema di coordinate. Pertanto, si hanno tre matrici di rotazione di base che ruotano i vettori di un angolo attorno agli assi , o

Per i vettori, ciascuna di queste rotazioni di base appare in senso antiorario quando l'asse, attorno al quale si verificano, punta verso l'osservatore, il sistema di coordinate è destrorso e l'angolo è positivo. , per esempio, ruoterebbe verso l'asse un vettore allineato con l'asse , come si può facilmente verificare operando con sul vettore :

Ciò è simile alla rotazione prodotta dalla matrice di rotazione bidimensionale menzionata precedentemente.

Rotazioni tridimensionali generalizzate

[modifica | modifica sorgente]

Combinando queste tre matrici si possono ottenere altre matrici di rotazione tridimensionali utilizzando il prodotto matriciale. Per esempio, il prodotto

rappresenta una rotazione i cui angoli di imbardata, beccheggio e rollio sono rispettivamente , e . Più formalmente, si tratta di una rotazione i cui angoli di Eulero sono , e , rispetto agli assi , e .