ELECINF344/381

Partie interactive du site pédagogique ELECINF344/ELECINF381 de Télécom ParisTech (occurrence 2011).

Catégories

RoseWheel : Simulation filtre de Kalman

Aujourd’hui, et depuis le début de la semaine nous avons travaillé à simuler notre système sur Matlab. Voici les premiers résultats :

Simulation

Nous avons tout d’abord repris les équations de mouvement de Rich Chi Ooi afin de les adapter à notre système, les équations étant en fait sensiblement les même, seuls les paramètres changaient. Nous avons cependant eu quelques soucis pour en déterminer certains :

  • Le moment d’inertie du corps humain. Aussi étonnant que cela puisse paraitre, il nous a été très difficile de trouver un papier sur le net dans lequel sont  mesurés avec précision le moment d’inertie du corps humain ainsi que la position de son centre de gravité. Nous sommes finalement tombés sur un document déclassifié de la défense américaine, publié en 1963, avec des données qui nous semblent fiables. Pour les gens intéressés, c’est ici !
  • La détermination de la constante de couple ainsi que la BEMF (Back ElectroMotive Force) ne devait plus poser de soucis après les éclaircissements d’Alexis sur ce sujet. Mais d’après nos calculs, on trouve seulement 0.06 N.M/A pour la constante de couple qui est égale à la BEMF. Cette valeur nous semble un peu faible dans la mesure ou lors de la modélisation de notre modèle, lorsqu’on applique la tension de commande de 24V aux moteurs avec ces paramètres et alors que le RoseWheel est en train de tomber (donc que l’angle entre le manche et la verticale augmente), cela ne rectifie pas du tout l’angle. Nous avons attribué cela au fait que vu la valeur de la constante de couple, le couple généré par le moteur, même à pleine puissance, n’était pas capable de redresser le manche.

Filtrage de Kalman

Afin de nous familiariser un peu plus avec le filtrage de Kalman et pouvoir déterminer notamment quelle répartition choisir entre les capteurs participant à l’évolution du système et ceux servant vraiment de mesure, nous avons ajouté aux équations d’état de notre système du bruit blanc centré dont nous connaissions la variance et nous avons implémenté un filtrage de Kalman afin de pouvoir faire varier les différents paramètres et voir comment le filtre réagissait.

Pour le moment le filtre est assez basique dans la mesure ou aucune optimisation n’est apportée. Il utilise un vecteur d’état comportant 4 termes : x, x_dot, theta, theta_dot et un vecteur de mesure comportant lui aussi les 4 termes mesurés x_m, x_dot_m, theta_m, theta_dot_m. Ce qui nous oblige, notamment à travailler avec des matrices 4 *4. Voilà un petit printscreen :

Ce graphique représente l’évolution de l’angle du manche du RoseWheel par rapport à la verticale et soumis à un petit angle initial. Dans ce cas de figure, le Rosewheel n’est pas asservi. Il tombe donc de plus en plus rapidement vers le sol jusqu’à atteindre un angle de pi/2

dt est le pas d’échantillonnage.

On voit ici que l’on  a choisi d’accorder plus de confiance à la valeur estimé par le filtre de Kalman (W représentant la variance du bruit de processus et V représentant la variance du bruit de mesure) par rapport à la valeur mesurée. Ce qui se traduit par W < V.

Perspectives

Il faut maintenant définir le modèle définitif du filtre de Kalman qui sera implémenté dans le RoseWheel, celui ci devra

  • Tenir compte du biais du gyroscope en l’incluant comme variable d’état.
  • Dans un souci de simplicité et de facilité de calcul, utiliser des équations d’état pour lesquelles, le RoseWheel est toujours immobile. Afin de tenir compte du fait qu’en vérité il ne l’est pas, on augmentera le bruit de processus afin de signifier au filtre de Kalman que le modèle utilisé est faux et qu’il doit accorder plus d’importance aux mesures. D’où la nécessité de bénéficier de mesures fiables.
  • Faire la juste répartition entre les mesures participant à l’évolution du système et celles utilisées en tant que « vraies » mesures.  A priori, seule la mesure provenant de l’accéléromètre tiendra lieu de « vraie » mesure.
  • Faire le choix d’une implémentation alternative, ou non, de Kalman, nécessitant un peu plus de calculs mais plus robustes aux erreurs de calcul en virgule fixe.

 

Sur le même sujet :

  1. [RoseWheel] Implémentation du filtre de Kalman
  2. RoseWheel : banc de tests et filtre de Kalman
  3. RoseWheel prend la route !
  4. Kalman, encore du Kalman…
  5. Rosewheel restructure son planning

Commentaires fermés.