ROCKETRY FRANCE
Vous souhaitez réagir à ce message ? Créez un compte en quelques clics ou connectez-vous pour continuer.
Le Deal du moment : -20%
-20% Récupérateur à eau mural 300 ...
Voir le deal
79 €

Aide sur l'intégration des quaternions

4 participants

Aller en bas

Aide sur l'intégration des quaternions Empty Aide sur l'intégration des quaternions

Message par Taranis Sam 5 Aoû - 11:30

Bonjour à tous,

Désolé de vous déranger pour une question qui est assez complexe.
Y a-t-il quelqu'un qui a déjà du utiliser des quaternions ?

J'ai un problème d'intégration des quaternions sur mes données de vol.

Je cherche désespérément quelqu'un qui peut m'aider sur ce sujet assez spécial.

Taranis

Messages : 6
Date d'inscription : 22/05/2023

Antoine aime ce message

Revenir en haut Aller en bas

Aide sur l'intégration des quaternions Empty Re: Aide sur l'intégration des quaternions

Message par Antoine Sam 5 Aoû - 17:10

Salut Taranis, jamais utilisé pour ma part (angles d'euler...). Mais Patrick a peut etre deja joué avec ces complexes
Antoine
Antoine

Messages : 1068
Date d'inscription : 13/01/2019
Age : 48
Localisation : Chateau Thierry

Revenir en haut Aller en bas

Aide sur l'intégration des quaternions Empty Re: Aide sur l'intégration des quaternions

Message par bdureau Dim 6 Aoû - 8:28

Bonjour
Je les utilise dans mes gimbals, c'est très pratique. Ce sont des nombres complexes à 3 dimensions donc tu peux meme les conjuguer comme un nombre complexe ...
En fait ce n'est pas si compliqué que ça. Comme tu le sais sans doute tu as une representation polaire des nombres complexes. Pour decrire une rotation tu es dans l'espace donc 3 angles. Un quaternion est un nombre complexe avec une partie réelle et 3 parties imaginaires.
ça simplifie tout tes calculs, cela t'evite d'utiliser des matrices et d'avoir des gimbal lock
J'enregistre mes vols de cette façon ce qui me permet de les rejouer.

Tu peux jeter un oeil sur mon code
Pour le MPU6050
https://github.com/bdureau/RocketMotorPIDGimbal
Pour le BNO055
https://github.com/bdureau/RocketMotorPIDGimbal_bno055

Je suis en train de faire un portage pour l'ADXL375 et l'ESP32

Et pour l'affichage mon programme Android qui converti les quaternions en angle d'Euler
https://github.com/bdureau/MotorGimbalConsole

C'est très utilisé pour le déplacement d'un personnage dans un monde 3D dans les jeux vidéos.
C'est très bien documenté sur youtube, j'avais regardé il y a quelques années des vidéos en anglais faites par des prof
bdureau
bdureau

Messages : 5018
Date d'inscription : 28/03/2016
Age : 52
Localisation : 92150 Suresnes (Région parisienne)

http://rocket.payload.free.fr/

Taranis aime ce message

Revenir en haut Aller en bas

Aide sur l'intégration des quaternions Empty Re: Aide sur l'intégration des quaternions

Message par Taranis Dim 6 Aoû - 18:04

bdureau a écrit:Bonjour
Je les utilise dans mes gimbals, c'est très pratique. Ce sont des nombres complexes à 3 dimensions donc tu peux meme les conjuguer comme un nombre complexe ...
En fait ce n'est pas si compliqué que ça. Comme tu le sais sans doute tu as une representation polaire des nombres complexes. Pour decrire une rotation tu es dans l'espace donc 3 angles.  Un quaternion est un nombre complexe avec une partie réelle et 3 parties imaginaires.
ça simplifie tout tes calculs, cela t'evite d'utiliser des matrices et d'avoir des gimbal lock
J'enregistre mes vols de cette façon ce qui me permet de les rejouer.

Tu peux jeter un oeil sur mon code
Pour le MPU6050
https://github.com/bdureau/RocketMotorPIDGimbal
Pour le BNO055
https://github.com/bdureau/RocketMotorPIDGimbal_bno055

Je suis en train de faire un portage pour l'ADXL375 et l'ESP32

Et pour l'affichage mon programme Android qui converti les quaternions en angle d'Euler
https://github.com/bdureau/MotorGimbalConsole

C'est très utilisé pour le déplacement d'un personnage dans un monde 3D dans les jeux vidéos.
C'est très bien documenté sur youtube, j'avais regardé il y a quelques années des vidéos en anglais faites par des prof

D'accord, je n'ai pas très bien compris le code sur github (je ne suis pas encore habité, il faudrait que je m'y mette).

Est-ce que tu prends directement les quaternions qui sont donnés par le DMP du MPU6050 ?
On nous avait dits que ceux-ci n'étaient pas adaptés au manque de gravité qu'on retrouve lors d'un vol de fusée donc on a décidé d'intégrer les quaternions à partie des données au sol, après le vol.

Pour être plus clair, j'ai mes gx gy gz et j'essaye de les intégrer dans le temps en quaternions puis d'en faire une animation.

Voici les données + une vidéo du vol pour comparaison (+ un code Matlab pour l'animation) : https://www.mediafire.com/file/pgycmvt2n7l5xk1/Donnees_du_vol.rar/file

Cordialement,
Taranis

Taranis

Messages : 6
Date d'inscription : 22/05/2023

Revenir en haut Aller en bas

Aide sur l'intégration des quaternions Empty Re: Aide sur l'intégration des quaternions

Message par bdureau Dim 6 Aoû - 18:41

Oui je prend ceux directement du MPU6050
Pour le BNO055 il me semble que j'ai ecrit le code
pour l'animation voila ce que j'ai fait
https://www.youtube.com/watch?v=Ut-qxi6n0Iw
J'enregistre plusieurs mesures par seconde et ensuite je fais un replay d'un vol en convertissant les quaternions en angles au moment ou j'affiche.
Je n'utilise pas Matlab, mon animation est en Java/processing sous Android
bdureau
bdureau

Messages : 5018
Date d'inscription : 28/03/2016
Age : 52
Localisation : 92150 Suresnes (Région parisienne)

http://rocket.payload.free.fr/

Antoine aime ce message

Revenir en haut Aller en bas

Aide sur l'intégration des quaternions Empty Re: Aide sur l'intégration des quaternions

Message par lem75pat Mar 8 Aoû - 21:53

Bonsoir

Boris j'aurais besoin de cours et même d'un coach, moi qui suis limité à Re + j Im
lem75pat
lem75pat

Messages : 781
Date d'inscription : 08/04/2016
Localisation : Paris

Antoine aime ce message

Revenir en haut Aller en bas

Aide sur l'intégration des quaternions Empty Re: Aide sur l'intégration des quaternions

Message par lem75pat Mer 9 Aoû - 20:11

Bonsoir

https://fr.wikipedia.org/wiki/Quaternion

i² = j² = k² = -1
i j k = -1
d'ou i j = +k, j i = -k, j k = +i, k j = -i, k i = +j, i k = -j

q = a + b i + c j + d k
partie réelle = a
partie imaginaire = b i + c j + d k

(norme de q)² = q /q = a² + b² + c² + d²


https://fr.wikipedia.org/wiki/Quaternions_et_rotation_dans_l%27espace
lem75pat
lem75pat

Messages : 781
Date d'inscription : 08/04/2016
Localisation : Paris

Revenir en haut Aller en bas

Aide sur l'intégration des quaternions Empty Re: Aide sur l'intégration des quaternions

Message par Contenu sponsorisé


Contenu sponsorisé


Revenir en haut Aller en bas

Revenir en haut

- Sujets similaires

 
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum