Asservissement

De Wiki Robotronik


L'asservissement des robots est basé sur un régulateur PID.

Modèle:Todo

Du réglage des différents paramètres dans le code de l'asser

L'asservissement est assuré par un pic.

Attention : ces conseils sont valables pour l'asser utilisé lors de la coupe 2014 et 2013.

Les étapes principales sont :

  • Régler la vitesse min
  • Régler les coefficients TICK_TO_MM/MM_TO_TICK et TICK_TOUR
  • Régler les coefficients P et D

Modèle:Warning

Régler la vitesse min

But : Les moteurs ont une certaine inertie, si on ne leur donne pas un ordre assez grand, ils ne démarrent pas.

La problème est que cette vitesse min de départ des moteurs dépend de la charge des batteries... c'est pourquoi un réglage automatique est prévu dans l'asservissement. Ce code fonctionne plus ou moins, le principe est d'augmenter l'ordre envoyé aux moteurs jusqu'à ce qu'ils démarrent. La vitesse min est alors la vitesse atteinte multiplié par un coef qui dépend de l'usure des batteries (coef élevé en ce moment ...)

Donc normalement, ce réglage est automatique ...

Régler les coefficients de distance

But : Faire que le robot se déplace précisément

Les réglages sont dans le fichier asser.h

TICK_TOUR

Mettre la valeur (long)(nbreDeTour * TICK_TOUR) à la variable AD_consAlpha. Le robot va faire nbreDeTour tours au démarrage.

En mesurant le décalage en angle et en faisant un produit en croix avec ce qui aurai dût être fait, vous pouvez régler la valeur de TICK_TOUR.

TICKS_TO_MM/MM_TO_TICKS

C'est le même principe que précédemment :

Mettre la valeur (long)(nbreDeMM * MM_TO_TICK) à la variable AD_consDelta. Le robot va faire nbreDeMM mm au démarrage.

En mesurant le décalage en mm et en faisant un produit en croix avec ce qui aurai dût être fait, vous pouvez régler la valeur de MM_TO_TICK. Il faut également mettre la valeur 1/MM_TO_TICK dans TICK_TO_MM.

Régler les coefficients P et D

Les réglages se font dans le fichier fct_asser.c

Plus de précisions à venir sur la page PID.

Après ces réglages, il faut revenir à la première étapes, les mesures de distances pouvant être faussées par de mauvais réglages des coefficients PID ... Le réglage se fait par itération de toutes ces étapes, jusqu'à obtenir un résultat satisfaisant !

Electronique

La carte asser est basé sur un microcontrôleur pic. Lors du montage de la carte faire attention à l'orientation des condensateurs tantale (à moins d'avoir un goût prononcé pour les mauvaises surprises ou les explosions).

FAQ

Le robot n'avance pas droit, c'est compliqué de calculer la distance parcourue. Je fais comment ?

Le problème vient surement d'une mauvaise correction alpha dans le mouvement delta. Fait du mieux que tu peux, tu reviendras sur ce réglage lors d'une autre itération !

Le robot ne tourne pas vraiment sur lui-même. Comment je fais pour régler l'angle du coup ?

Le problème vient surement d'une mauvaise correction delta dans le mouvement alpha. Fait du mieux que tu peux, tu reviendras sur ce réglage lors d'une autre itération !

J'ai changé le coef, mais le robot fait toujours la même erreur ...

La vitesse min est peut être mal réglé : le robot n'arrive pas à finir le mouvement, quelque soit le coef ! Peut-être que tu as oublié de sauvegarder ta modif, ou bien de reprogrammer le robot ...