Résolution exprimée des encodeurs (pour PID)

Echangez ici sur vos idées ou vos problèmes concernant vos circuits électroniques et électriques.
Discuss here the problems concerning your electronic and electrical circuits.
mightywarrior
Posts: 239
Joined: Sat 28 Oct 2006, 22:44

Re: Résolution exprimée des encodeurs (pour PID)

Post by mightywarrior » Thu 14 Aug 2014, 09:43

C'est déjà beaucoup plus clair :) (je cracherai pas non plus sur un schéma)
Le problème avec ton schéma courant est que tu as pris comme consigne de vitesse/d'angle le retour des codeurs directement.
Il te manque un petit bloc pour faire le changement de repere et avoir la position du robot, pas seulement l'angle des codeurs.
Peut-être... sans doute... je vous fait confiance, en tout cas pour la partie polaire de mon schéma j'ai simplement remis en forme celui de rcva (pour éviter d'avoir 2 fois chaque moteur) qui m'avait été conseillé au départ. Je n'ai rien ajouté ni rien enlevé :
Image
On constate qu'en retour de la partie distance on a (positionD + positionG) /2 et en retour de la partie angle on a positionD - position G. C'est la même chose sur mon schéma.
La boucle d'asservissement polaire doit être faite dans le repère associé à la table. Dans ce repère, ton robot à 2 coordonnées correspondant à sa position sur la table, que j'appelle x et y. Par exemple, x peut être la distance entre le bord de la table et le robot suivant la largeur de la table et y la distance entre le bord de la table suivant la longueur de la table.
Mon robot n'est pas destiné à évoluer sur une table (c'est pas pour participer à une coupe ou autre concours) mais par terre (sur terrain plat tout de même). Dans l'absolu ça ne change pas grand chose au problème, c'est simplement pour clarifier (et je suis tout seul sur ce projet).

Keuronde
PMI
Posts: 500
Joined: Mon 25 Jan 2010, 22:48

Re: Résolution exprimée des encodeurs (pour PID)

Post by Keuronde » Thu 14 Aug 2014, 10:11

Pour tenir un cap (aller droit), ta solution est suffisante !
Équipe Poivron
Coupe 2014 : Équipe Poivron (67e)
Coupe 2012 : Équipe Poivron (73e)
Coupe 2011 : Équipe Poivron (122e) - Prix des équipes !
Coupe 2010 : Équipe Poivron (78e)


Passez voir le Portail des équipes

mightywarrior
Posts: 239
Joined: Sat 28 Oct 2006, 22:44

Re: Résolution exprimée des encodeurs (pour PID)

Post by mightywarrior » Fri 15 Aug 2014, 17:56

Bonjour,

J'ai arrêter de me poser des questions et j'ai réaliser un petit asservissement de vitesse sous cette forme:
Image

Ça semble déjà bien marcher, et j'ai beaucoup moins galéré que ce que j'imaginais donc je suis assez satisfait! Quand je me serais assez familiariser avec tout ça, j'essaierai de passer au polaire pour voir ce que ça donne... d'ailleurs pour un asservissement polaire, c'est obligé d'avoir des codeurs sur des roues folles? .

Juste une dernière question, le sens de rotation qu'on détermine avec la quadrature des signaux des encodeurs, il sert à quoi dans un asservissement ?

Keuronde
PMI
Posts: 500
Joined: Mon 25 Jan 2010, 22:48

Re: Résolution exprimée des encodeurs (pour PID)

Post by Keuronde » Sun 17 Aug 2014, 11:09

mightywarrior wrote:Juste une dernière question, le sens de rotation qu'on détermine avec la quadrature des signaux des encodeurs, il sert à quoi dans un asservissement ?
Ça te permet de laisser l'asservissement gérer le sens de rotation de tes moteurs. Si tu roule à une vitesse de 100 imp/s et que tu envoies une consigne de 2 imp/s, ton asservissement risque de passer par des commandes négatives. Si tu ne satures pas ta commande à 0 et que tu ne tiens pas compte du sens de rotation, tu risques d'avoir des soucis. Si tu satures ta commande à 0, tu perds en performances.

Bref, disons que normalement, ça sert. Mais qu'il y a des moyens de s'en passer.
Équipe Poivron
Coupe 2014 : Équipe Poivron (67e)
Coupe 2012 : Équipe Poivron (73e)
Coupe 2011 : Équipe Poivron (122e) - Prix des équipes !
Coupe 2010 : Équipe Poivron (78e)


Passez voir le Portail des équipes

RISC
Posts: 409
Joined: Sun 19 Nov 2006, 19:25

Re: Résolution exprimée des encodeurs (pour PID)

Post by RISC » Sat 13 Dec 2014, 19:28

Salut,

Pour info, il existe une nouvelle famille de PIC16 (les PIC16F161x ) qui possède un PID hardware intégré capable de faire des calculs 16 x 16 avec résultat sur 34/35 bits. Ce PID hardware est 30 à 40 fois plus rapide que la version logicielle. Voir la présentation ci-jointe.

De plus une autre nouvelle unité appelée Angular timer, est capable de mesurer avec une précision de 0.3% un angle et ce en diminuant la charge CPU de façon drastique. Cette videohttps://www.youtube.com/watch?v=pUFPv90TSA0 montre l'intérêt de l'angular timer pour la réalisation d'un POV dont le message reste lisible quelque soit la vitesse de rotation.

Ces nouvelles unités internes déchargent le processeur de façon significative qui a une consommation très faible de l'ordre de 50uA / MHz n mode run. Elles sont bien sûr intéressantes pour les fonctions électroniques des robots.

a+
You do not have the required permissions to view the files attached to this post.
Les bonnes pratiques...Bonjour,....pas de texte style SMS.....Merci...et ne pas oublier GOOGLE avant tout ;=)

mightywarrior
Posts: 239
Joined: Sat 28 Oct 2006, 22:44

Re: Résolution exprimée des encodeurs (pour PID)

Post by mightywarrior » Thu 09 Apr 2015, 11:07

Bonjour,

Je passe en vitesse histoire de vous remercier pour l'aide que vous m'avez apporté. J'ai finalement réussi à me dépatouiller et me voilà avec un truc qui fonctionne. 8)

Merci RISC pour cette info, je vais regarder ça de plus près.

Post Reply