Conversion angles repère fixe->repère rotatif

rotation 3d

a marqué ce sujet comme résolu.

Bonjour,

Je fais suite à mon message sur les matrice de rotation. En gros j’ai un problème de compatibilité logiciel

En gros j’ai mes paramètres de rotation dans un repère fixe : rotation autour de zz, de yy, et de xx.

Après divers essais, j’en suis venu à la conclusion que le logiciel considère les angles d’entrée dans un repère mobile : après la rotation autour de zz de α°α°, le second paramètre est une rotation autour de yy’, lui-même tourné de α°α° par rapport à yy (je ne suis pas encore certain de l’ordre dans lequel le logiciel en question effectue les rotations, mais il y a de bonnes chances que ce soit zz, yy’, puis x’’x’’).

Je crains d’avoir besoin d’un petit peu d’aide pour faire la conversion.

J’ai vu l’article, mais il y a des choses que je ne comprends pas.

Mettons:

Rz(ψ)=(cosψsinψ0sinψcosψ0001)R_z(ψ) = \begin{pmatrix} \cos{ψ} & -\sin{ψ} & 0 \\ \sin{ψ} & \cos{ψ} & 0 \\ 0 & 0 & 1 \end{pmatrix}

Est-ce que la matrice (cosθ0sinθ010sinθ0cosθ)\begin{pmatrix} \cos{θ} & 0 & \sin{θ} \\ 0 & 1 & 0 \\ -\sin{θ} & 0 & \cos{θ} \end{pmatrix}représente Ry(θ)R_y(θ) ou Ry(θ)R_{y’}(θ) ? J’ai l’impression que dans l’article sur les matrices de rotation on est dans le premier cas et dans celui sur les angles d’Euler on est dans le deuxième. Et du coup, si c’est l’un, comment je trouve l’autre ?

Si je comprends bien, je dois résoudre Rz(ψ)Ry(θ)Rx(φ)=Rz(ψ)Ry(θ)Rx’’(φ’’)R_z(ψ) \circ R_y(θ) \circ R_x(φ) = R_z(ψ) \circ R_{y’}(θ’) \circ R_{x’’}(φ’’), ce qui dans mon cas peux se simplifier en Ry(θ)=Ry(θ)Rx’’(φ’’)R_y(θ) = R_{y’}(θ’) \circ R_{x’’}(φ’’).

+0 -0

Si je comprends bien, je dois résoudre Rz(ψ)Ry(θ)Rx(φ)=Rz(ψ)Ry(θ)Rx’’(φ’’)R_z(ψ) \circ R_y(θ) \circ R_x(φ) = R_z(ψ) \circ R_{y’}(θ’) \circ R_{x’’}(φ’’), ce qui dans mon cas peux se simplifier en Ry(θ)=Ry(θ)Rx’’(φ’’)R_y(θ) = R_{y’}(θ’) \circ R_{x’’}(φ’’).

1e49ba0eba

oui tu dois faire ça avec quelques bémols.

Les angles d’Euler (en reprenant tes notations), c’est une rotation autour de zz puis de xx' (et non yy') puis zz'' (et non xx''). Regarde bien les dessins à la fin de l’article wiki.

Et attention à l’ordre des matrices car elles ne commutent pas ! Quand on utilise les angles d’Euler c’est d’abord z puis x' puis z’' donc : RzRxRzR_{z''}R_{x'}R_{z} et non RzRxRzR_{z}R_{x'}R_{z''} comme tu as écrit précédemment !

Ensuite j’ai dis un truc "faux", attention a l’article wiki. Il donne la matrice de passage AA et pas la matrice de rotation. La matrice de rotation est la matrice de passage inverse A1A^{-1} qui est ici la transposée ATA^T.

Après tu dois juste calculer ta matrice de rotation R=RxRyRzR=R_xRyR_z (j’ai pris un ordre de rotation au pif, je sais pas lequel tu utilise) et puis identifier terme à terme ta matrice de rotation avec la matrice théorique exprimé avec les angles d’Euler (c’est à dire ATA^T) qui est forcement la même (ie ton post sur l’unicité des matrices). Par exemple tu obtiens directement θ=arccos(R33)\theta= \arccos(R_{33}) puisque R33=A33TR_{33}=A^{T}_{33} et que A33T=cos(θ)A^{T}_{33}=\cos(\theta).

Connectez-vous pour pouvoir poster un message.
Connexion

Pas encore membre ?

Créez un compte en une minute pour profiter pleinement de toutes les fonctionnalités de Zeste de Savoir. Ici, tout est gratuit et sans publicité.
Créer un compte