Technologie

Différences codeur incrémental et absolu : lequel choisir sur votre moteur électrique ?

Voilà une question, vous avez dimensionné votre mécanique et votre motorisation, et vous devez choisir un codeur ! Et bien voyons ce qui caractérise la différences codeur incrémental et absolu. Mais avant ça, une petite mise en situation :

Imaginez. Vous vous rendez au travail avec votre voiture comme tous les matins. La pédale d’accélération vous permet de moduler la vitesse de votre voiture, en fonction de ce que vous indiquent vos sens. Dans cette situation, votre pied est la commande et vos yeux, le retour d’information. Sans cette information cruciale, je pense qu’on est d’accord pour convenir qu’il est impossible de conduire (mais dans ce cas vous n’auriez probablement pas obtenu votre permis! ).

Voiture conduite par une personne aveugle
Pas de retour d’information

Dans le domaine de l’informatique industrielle, le retour d’information est également capital. Il s’agit en effet d’être certain qu’il existe une correspondance entre :

1) l’ordre de commande,
2) l’etat estimé de l’actionneur que l’on commande,
Et 3) l’état réel de l’actionneur.

Appliqué aux moteurs électriques, ce retour d’information prend la forme d’un codeur rotatif.

 

Mais c’est quoi un codeur rotatif ?

Excellente question, commençons par la base ! Un codeur rotatif est un capteur qui permet de renvoyer l’information de l’orientation de la mécanique. En l’occurrence dans notre cas, le codeur rotatif va mesurer deux choses : la position de l’arbre moteur sur 360° et, éventuellement, le nombre de révolutions effectuées par l’arbre.

Il existe différentes technologies pour réaliser ce comptage :

  • Codeur incrémental
  • Codeur absolu, monotour ou multitour

Il en existe d’autres bien sûr, comme le résolveur, mais beaucoup moins répandu dans l’industrie donc je ne m’y attarderai pas.

 

Le codeur incrémental

C’est la technologie la plus simple, la base de la base quoi. La mesure peut être numérique comme dans un capteur optique, ou bien analogique comme dans un capteur magnétique. Voici un exemple simplifié pour une mesure optique :

Principes de fonctionnement d'un codeur incrémental
Principe de fonctionnement d’un codeur incrémental

Les trous et les pleins dans le disque vont produire un signal “créneau”. Chaque “créneau” est considéré comme un ‘top’ par le contrôleur, qui va pouvoir calculer l’angle du disque. Et même mieux: avec la fréquence des ‘top’ il peut calculer la vitesse de rotation.

 

Par exemple, si le disque contient 360 trous, le contrôleur connaitra l’angle du disque à 1° près. S’il reçoit dix top par seconde, c’est donc que disque tourne à 10°/s.

Alors ici l’exemple est très simple, notamment on ne peut pas connaitre le sens de rotation du disque. Dans ce cas, on va utiliser deux rangées de trous et non qu’une seule. Si vous voulez en savoir plus, n’hésitez pas à jeter un coup d’œil à cette animation :

Le codeur absolu monotour

Autant avec un codeur incrémental on peut connaitre la position en comptant les ‘top’, autant avec un codeur absolu on peut s’épargner cette peine. En effet cette technologie permet de remonter directement au contrôleur la position angulaire, et ça se passe comme ça :

Disque d'un codeur absolu monotour à 3 segments
Disque d’un codeur absolu monotour à 3 segments

Sur ce disque, chaque case transparente est un trou, et chaque case noire est pleine. Le disque est divisé en 8 segments et on remarque que chaque segment a un code unique. Chaque code unique se compose de 3 cases. Du coup le contrôleur connait immédiatement la position angulaire du codeur, mais dès que le code change il connait aussi le sens de rotation.

Alors ici on n’est pas super précis, mais plus on rajoute des cercles concentriques plus la lecture de la position angulaire est précise. Voilà à quoi ça ressemble pour un codage des segments sur 11 cases.

Disque d'un codeur absolu monotour à 11 segments
Disque d’un codeur absolu monotour à 11 segments

C’est beau hein ? Et le gros avantage de cette technologie de codeur, c’est qu’à sa mise sous tension le contrôleur connait exactement la position angulaire de la mécanique qu’il y a derrière. Si celle-ci bouge pendant que la machine est éteinte, ce n’est pas un problème pour le contrôleur.

Efficace, simple, précis : que demander de mieux ?

Le codeur absolu multitour

Eh bien oui il y a mieux. Notamment si la mécanique bouge de plus d’un tour, machine éteinte. Lorsque l’on rallume le tout, le contrôleur connaitra la position angulaire de la mécanique sur un tour mais impossible de savoir de combien de tours celle-ci a tourné.

Du coup la parade consiste à ajouter un autre mini-codeur qui va tourner moins vite, et qui va compter le nombre de révolutions effectuées par le premier codeur.

Comparaison entre un codeur monotour et un codeur multitours
Comparaison entre un codeur monotour et un codeur multitours

Mais alors qu’est-ce qui se passe lorsque la partie multitour du codeur arrive au maximum de son comptage possible ? Si l’information remontée au contrôleur passe de “4096 tours effectués” à “0 tours effectués”, en informatique ça s’appelle un overflow. Pas top du tout… *

 

L’heure du choix

Ok maintenant on a bien compris les différences entre les technologies, mais laquelle sélectionner au moment de choisir sa référence? On l’a vu, un codeur absolu est beaucoup plus performant qu’un codeur incrémental. Mais c’est au détriment du prix, car la technologie absolue est aussi plus performante et demande un procédé de production plus précis.

Si le codeur est embarqué dans un moteur, vous allez être déçu : le choix sera assez souvent déjà fait pour vous. Sur les moteurs pas à pas sont embarqué des codeurs incrémentaux, tandis que les moteurs type servomoteur contiennent des codeurs absolus. La raison tient en un mot : le prix. Un moteur pas à pas est… économique dirons-nous : efficace et robuste mais faut pas trop lui en demander non plus. Du coup le codeur est à l’avenant. Il faut savoir qu’au sein d’un moteur, le codeur représente un coût important car c’est la pièce la plus technologique.

Voilà, vous y voyez maintenant un peu plus clair sur les différences codeur incrémental et absolu, votre connaissance sur les codeurs est désormais absolue !

*PS: L’overflow, bête noire de l’informatique, est géré par la fonction modulo du contrôleur. Et là, tout va bien ?

Nous vous conseillons

5G, tout ce que vous avez toujours voulu savoir ! Partie 1

Arthur

Test robot Niryo One : Acculturation et formation pour l’industrie ?

Arthur

5/2, 3/2, 5/3, Comment bien choisir son électrodistributeur ?

Frédéric

Servomoteur ou moteur pas-à-pas : un guide simple

Camille

Laisser un commentaire