Représentation d'attitude

Auteur: Gary Quinsac

Introduction

L'orientation d'un satellite dans l'espace correspond à l'orientation du repère fixé sur son corps par rapport à un autre repère, tel que ceux vus précédemment. Ainsi, la détermination d'attitude d'un satellite en particulier requiert des méthodes d'estimation de la matrice orthogonale transformant des vecteurs d'un référentiel de référence fixé dans l'espace à un référentiel fixé par rapport au corps du satellite. De plus, une mission spatiale ne peut être définie par un unique référentiel. En fonction des besoins, de l'échelle à laquelle on se place, il est nécessaire d'utiliser tel ou tel référentiel. Dès lors, le passage d'un référentiel à un autre devient un aspect crucial du SCAO. L'une des plus importantes propriétés des matrices d'attitude est énoncée par le théorème d'Euler.

definitionThéorème d'Euler

L'orientation instantanée d'un objet peut toujours être décrite par une unique rotation autour d'un axe fixe.

On peut parler de pôle eulérien pour nommer le centre de rotation. Il doit son nom au mathématicien et physicien suisse Leonhard Euler. Dès lors qu'un point d'un solide reste fixe lors d'un déplacement, ce déplacement est équivalent à une rotation autour d'un axe passant par le point fixe (pôle eulérien). En algèbre linéaire, ce théorème implique que deux référentiels cartésiens partageant la même origine sont reliés par une rotation autour d'un axe fixe.

Leonhard Euler
images/Leonhar-Euler.jpg
Portrait par Johann Georg Brucker (1756).
Crédit : Domaine public

Les relations permettant de jongler entre les systèmes de coordonnées peuvent être charactérisées de différentes manières, comportant chacune leurs lots d'avantages et inconvénients. Certaines d'entre elles sont présentées dans la partie suivante :

Les démonstrations des principales relations sont proposées en exercices.


Matrice du cosinus directeur

La façon la plus évidente de donner l'orientation d'un référentiel par rapport à un autre est d'exprimer leurs vecteurs de base dans l'autre repère.

Changement de repère en 2D

Une introduction simple à ce changement de repère peut être faite en 2D. Prenons un référentiel R, avec les axes X_R et Y_R, incliné par rapport à un référentiel B, d'axes X_B et Y_B, d'un angle \theta. Le vecteur \bold {OP} peut être exprimé dans ces deux systèmes sous forme matricielle :{\bold {OP}}_R = \binom{x_R}{y_R} et {\bold {OP}}_B = \binom{x_B}{y_B}.

La relation entre les deux systèmes de coordonnées peut être décrite par une matrice de cosinus directeur (MCD), ou matrice de rotation, variant avec \theta. Cette matrice transforme le vecteur \bold{OP} du premier référentiel R vers le second B.

\binom{x_B}{y_B} = \begin{pmatrix} cos \theta & sin \theta \\ 0 & 0 \end{pmatrix} \binom{x_R}{y_R}

Les éléments de la MCD correspondent aux produits scalaires des vecteurs de base. Le produit scalaire entre deux vecteurs unitaires correspond au cosinus de l'angle formé par ces vecteurs.

activiteAppliquette interactive

Une appliquette interactive est disponible ici. Elle revient sur le changement de repère en 2D en permettant de projeter les coordonnées d'un point dans un référentiel en rotation par rapport à un autre.

Généralisation à l'espace à 3 dimensions

En 3 dimensions la MCD est une matrice de passage 3x3. L'expression d'un vecteur \bold v_B dans B à partir de son expression \bold v_R dans R s'écrit :

\bold v_B = [T]_{B|R} \bold v_R avec [T]_{B|R} = \begin{pmatrix} \bold B_x \cdot \bold R_x & \bold B_x \cdot \bold R_y & \bold B_x \cdot \bold R_z \\ \bold B_y \cdot \bold R_x & \bold B_y \cdot \bold R_y & \bold B_y \cdot \bold R_z \\ \bold B_z \cdot \bold R_x & \bold B_z \cdot \bold R_y & \bold B_z \cdot \bold R_z \end{pmatrix}

On dit que la MCD décrit l'orientation de B par rapport à R. On l'appelle également matrice de rotation ou matrice de transformation des coordonnées de R vers B.

Rotations élémentaires

Trois rotations élémentaires de R autour de chacun de ses trois axes se retrouvent décrites par les matrices de rotation suivantes :

[T(\theta_1)]_1 = \begin{pmatrix} 1 & 0 & 0 \\ 0 & c_{\theta_1} & s_{\theta_1} \\ 0 & -s_{\theta_1} & c_{\theta_1} \end{pmatrix}, [T(\theta_2)]_2 = \begin{pmatrix} c_{\theta_2} & 0 & -s_{\theta_2} \\ 0 & 1 & 0 \\ s_{\theta_2} & 0 & c_{\theta_2} \end{pmatrix} et [T(\theta_3)]_3 = \begin{pmatrix} c_{\theta_3} & s_{\theta_3} & 0 \\ -s_{\theta_3} & c_{\theta_3} & 0 \\ 0 & 0 & 1 \end{pmatrix}

[T(\theta_i)]_i indique une rotation d'angle \theta_i autour du i-ème axe du référentiel fixé sur le corps.

Propriétés de la MCD

La MCD est une matrice orthogonale, ce qui signifie que son inverse est égal à sa transposée :

[T]^{-1} = [T]^T et [T][T]^T = [I] = [T]^T[T]

\bold v_R = [T]_{R|B}^T \bold v_B = \begin{pmatrix} \bold B_x \cdot \bold R_x & \bold B_y \cdot \bold R_x & \bold B_z \cdot \bold R_x \\ \bold B_x \cdot \bold R_y & \bold B_y \cdot \bold R_y & \bold B_z \cdot \bold R_y \\ \bold B_x \cdot \bold R_z & \bold B_y \cdot \bold R_z & \bold B_z \cdot \bold R_z \end{pmatrix}

Les transformations successives entre référentiels peuvent être déterminées par une série de multiplications matricielles. Par exemple, la transformation du référentiel inertiel au référentiel du satellite peut être décomposée de la manière suivante : transformation du référentiel inertiel au référentiel fixé sur la Terre multipliée par la transformation du référentiel fixé sur la Terre au référentiel orbital, le tout multiplié par la transformation du repère orbital au repère du satellite.

[T]_{sat|inertiel} = [T]_{sat|orbite} [T]_{orbite|Terre} [T]_{Terre|inertiel}

Limitations de cette représentation

Malgré certains avantages, la MCD n'est pas toujours la représentation la plus adaptée. Elle utilise 9 paramètres pour décrire une orientation, parmi lesquels seulement 3 sont indépendants.


Angles d'Euler

Présentation des angles d'Euler

Les angles d'Euler sont les angles introduits par Leonhard Euler pour décrire l'orientation d'un solide. Ils peuvent être utilisés pour définir l'orientation d'un référentiel par rapport à un autre. On obtient une rotation en faisant varier l'un des trois angles d'Euler et une séquence de 3 rotations est suffisante pour décrire n'importe quelle transformation. La première rotation est effectuée selon n'importe quel axe, tandis que les deux suivantes ne peuvent jamais être effectuées autour d'un axe utilisé par la rotation précédente. Au total, 12 jeux d'angles d'Euler existent : (1,2,1), (1,2,3), (1,3,1), (1,3,2), (2,1,2), (2,1,3), (2,3,1), (2,3,2), (3,1,2), (3,1,3), (3,2,1), (3,2,3). L'ordre des rotations et la valeur des angles ne sont pas uniques et sont sujets à des singularités mathématiques.

Exemples

activiteAppliquette interactive

Une appliquette interactive est disponible ici. Elle permet de visualiser dans l'espace les séquences d'Euler qui sont introduites dans cette section à titre d'exemple.

Les angles d'Euler décrivent une rotation unique, ce qui est généralement un avantage par rapport à la MCD. Cependant, à une orientation donnée correspondent plusieurs jeux d'angles d'Euler.

De la séquence d'Euler à la MCD

Quelle que soit la séquence d'Euler, la MCD peut facilement être obtenue en multipliant les matrices de rotation élémentaires. Soit la séquence particulière suivante, décrivant l'orientation du référentiel B par rapport au référentiel A :

[T(\theta_1)]_1 \leftarrow [T(\theta_2)]_2 \leftarrow [T(\theta_3)]_3

[T]_{B|A} = [T(\theta_1)]_1 [T(\theta_2)]_2 [T(\theta_3)]_3, donc : [T]_{B|A} = \begin{pmatrix} c_{\theta_2} c_{\theta_3} & c_{\theta_2} s_{\theta_3} & -s_{\theta_2} \\ s_{\theta_1} s_{\theta_2} c_{\theta_3} - c_{\theta_1} s_{\theta_3} & s_{\theta_1} s_{\theta_2} s_{\theta_3} + c_{\theta_1} c_{\theta_3} & s_{\theta_1} c_{\theta_2} \\ c_{\theta_1} s_{\theta_2} c_{\theta_3} +s_{\theta_1} s_{\theta_3} & c_{\theta_1} s_{\theta_2} s_{\theta_3} - s_{\theta_1} c_{\theta_3} & c_{\theta_1} c_{\theta_2} \end{pmatrix}

Nous avons utilisé les notations c_{\theta} = cos \ \theta et s_{\theta} = sin \ \theta.

Limites de cette représentation

D'une manière générale, les angles d'Euler déterminent une orientation unique, ce qui est un avantage sur la MCD. Des singularités apparaissent lorsque le deuxième angle d'Euler aligne les premier et troisième axes de rotation. Dans ce cas, cette description d'attitude à 3 degrés dégénère en une description à seulement 2 degrés de liberté. Cette condition est réalisée lorsque l'angle vaut 90 et 270 degrés pour les 6 rotations où les premier et troisième axes sont différents, et lorsque l'angle vaut 0 et 190 degrés pour les 6 rotations où les premier et troisième axes sont identiques.

Séquence d'Euler pour les paramètre orbitaux
images/euler-313.png
La séquence d'Euler (3-1-3) correspond aux paramètres orbitaux habituellement utilisés pour un satellite en orbite terrestre : le nœud ascendant (\Omega), l'inclinaison (i) et l'anomalie vraie (\nu).
Crédit : Gary Quinsac
Séquence d'Euler pour les roulis, tangage et lacet
images/Satellite-roulis-tangage-lacet.png
La séquence d'Euler (3-1-2) correspond aux angles de roulis, tangage et lacet. Ils sont illustrés avec le satellite d'observation de la Terre SPOT 3.
Crédit : Gary Quinsac

Quaternions

Auteur: Gary Quinsac

Représentation 3D

Afin de s'affranchir du problème de singularité rencontré avec les angles d'Euler, une représentation de l'attitude composée de 4 éléments est introduite sous le nom de quaternion (dont les éléments sont appelés paramètres d'Euler). Cette construction mathématique est présentée plus en détail dans la partie suivante.

Présentation des quaternions

Considérons l'axe fixe de la rotation présentée dans le théorème d'Euler, ou vecteur propre \bold e. C'est un vecteur unité possédant les mêmes composantes dans les référentiels de départ et d'arrivée : \bold e_r = \bold e_b. Ainsi, 4 grandeurs sont requises pour décrire de façon non-ambigüe l'orientation par rapport à un référenciel : les 3 composantes de \bold e et l'angle de la rotation, \theta.

Les quaternions sont une combinaison de ces éléments disposés dans un vecteur de 4 éléments \bold q. Le quaternion contient la même information qu'une MCD à 9 éléments, tout en s'affranchissant des problèmes de singularité rencontrés avec les angles d'Euler. Ils sont à la fois compacts et une représentation efficace de l'orientation pour la détermination d'attitude. Une même rotation est représentée par les quaternions \bold q et - \bold q. On note également que les quatre paramètres d'Euler ne sont pas indépendants, mais contraints par la relation suivante :

\bold q^T \bold q = q_0^2 + q_1^2 + q_2^2 + q_3^2

Pour le vecteur propre \bold e_R = \bold e_B = \begin{pmatrix} e_1 \\ e_2 \\ e_3 \end{pmatrix}, les paramètres d'Euler sont : \bold q = \begin{pmatrix} q_0 \\ q_1 \\ q_2 \\ q_3 \end{pmatrix}, avec q_0 = cos({\theta \over 2}), q_1 = e_1 sin({\theta \over 2}), q_2 = e_2 sin({\theta \over 2}) et q_3 = e_3 sin({\theta \over 2}).

Des quaternions à la MCD

De la même façon que l'on peut exprimer la MCD en fonction des angles d'Euler, elle peut être paramétrée en fonction d'un quaternion de la manière suivante :

[T]_{B|R} = [T(\bold q)] = \begin{pmatrix} 1-2(q_2^2+q_3^2) & 2(q_1q_2+q_3q_0) & 2(q_1 q_3 - q_2 q_0) \\ 2(q_2q_1-q_3q_0) & 1-2(q_1^2+q_3^2) & 2(q_2q_3+q_1q_0) \\ 2(q_3q_1+q_2q_0) & 2(q_3q_2-q_1q_0) & 1-2(q_1^2+q_2^2) \end{pmatrix}

Propriétés des quaternions

Avantage des quaternions

Un avantage inhérent à cette représentation est que les équations de la cinématique deviennent purement algébriques et ne contiennent plus de fonctions trigonométriques.


Présentation mathématique

Les quaternions sont un système de nombres premièrement décrits par William Rowan Hamilton en 1843 appliqué à la mécanique et à l'espace à 3 dimensions.

complementWilliam Rowan Hamilton

Sir William Rowan Hamilton (04/08/1805 - 02/09/1865) est un mathématicien, physicien et astronome irlandais (né et mort à Dublin). Outre sa découverte des quaternions, il contribua également au développement de l'optique, de la dynamique et de l'algèbre. Ses recherches se révélèrent importantes pour le développement de la mécanique quantique.

William Rowan Hamilton
images/Hamilton_painting.jpg
Peinture de Sir William Rowan Hamilton.
Crédit : Domaine public

Définition mathématique

Autre représentation

Une autre façon de présenter un quaternion consiste à dire que q_0 est la partie scalaire de vecteur(q) et q_1 i + q_2 j + q_3 k est la partie vectorielle. Ainsi, la partie scalaire est toujours réelle et la partie vectorielle toujours purement imaginaire. Bien que l'on ait dit qu'un quaternion est un vecteur dans un espace à 4 dimensions, il est courant de définir un vecteur pour la partie imaginaire d'un quaternion : \bold q_{1:3} = q_1 i + q_2 j + q_3 k et \bold q = q_0+\bold q_{1:3}