Site ELEC344/ELEC381

Partie interactive du site pédagogique ELEC344/ELEC381 de Télécom ParisTech (occurrence 2010).

Catégories

Quel fourbe cet accéléromètre !

En ce début de semaine nous avons travaillé à essayer de faire tenir Wheely en équilibre. Ce n’est pas convainquant du tout pour l’instant.

Nous avons passé une journée entière à jouer sur les paramètres du PID pour essayer de stabiliser le robot, mais en vain. Impossible.

Suite à une remarque d’Alexis, j’ai trouvé d’où venait le problème. Bien qu’ayant scrupuleusement testé l’accéléromètre, je l’avais fait en rotation et non en translation. Or puisque on utilisait bêtement l’équation g*sin(theta) = acc_x, lorsque l’on translate le capteur ça fausse tout.

Hier j’ai établi avec Fabien et Sam une équation plus complète :

z=g*cos(t)+(x+g*sin(t))*tan(t)

où : z = acc_z, x = acc_x, t = theta

Je l’ai ensuite donnée à MATLAB qui l’a résolue ainsi :

>> solve(‘z=g*cos(t)+(x+g*sin(t))*tan(t)’,'t’)
ans =
(-2)*atan((x + (- g^2 + x^2 + z^2)^(1/2))/(g + z))
(-2)*atan((x – (- g^2 + x^2 + z^2)^(1/2))/(g + z))

C’est là que ça se corse. Il y a deux solutions. J’essaie la première. Zut ça marche pas. La seconde ? Non plus.

Je me suis rendu compte que je faisais la racine carrée d’un nombre négatif en pratique en utilisant cette formule. En théorie ça n’arrive jamais, mais avec le bruit ça peut déborder un peu. Je corrige en prenant la racine de 0 si le nombre est négatif. Toujours pas. Je réfléchis un peu, et je tente une combinaison des deux solutions, en prenant la première si x est négatif, la deuxième sinon.

C’est beaucoup mieux. Maintenant, en translation, si la carte est horizontale, l’angle reste bien égal à 0. Super ! C’est normal, dans ce cas précis z = g et donc on fait atan(0)

Mais en translation inclinée, ça ne fait toujours pas ce que je veux. L’angle varie de 7 ou 8 degrés… Alors qu’il ne devrait pas d’après la démarche que nous avons faite. J’ai passée toute la journée à creuser la dessus, à tenter différentes combinaisons des solutions, à tracer les courbes de chacune des deux solutions pour trouver une idée… En vain.

J’ai l’impression d’avoir tout essayé, je ne sais plus quoi faire… :( Je suis désespéré !

Commentaires fermés.