Contenu

Codeur rotatif incrémental Couverture de l'article

Codeur rotatif incrémental : Tout ce qu'il faut savoir

Dans la vague de la numérisation et de l'automatisation, les codeurs rotatifs incrémentaux jouent un rôle essentiel. Cet article se penche sur les principes, les types et les scénarios d'application réels des codeurs incrémentaux afin de vous aider à mieux comprendre cette technologie importante.

Codeur rotatif incrémental

Table des matières

Qu'est-ce qu'un codeur rotatif incrémental ?

Codeurs rotatifs incrémentaux sont des capteurs capables de convertir la vitesse de rotation, la direction du mouvement et le déplacement d'objets rotatifs ou linéaires en signaux d'impulsion qui peuvent être transmis et stockés.

Principe de fonctionnement du codeur rotatif incrémental

Le principe de fonctionnement du codeur incrémental consiste à compter le signal reçu de la tête de détection optique ou magnétique en fonction des bandes ou des espaces sur le disque, mesurant ainsi la distance et la direction de la rotation ou du déplacement. Lorsque le disque du codeur tourne, la tête de détection optique génère des signaux d'impulsion au fur et à mesure que les bandes ou les espaces se déplacent. Chaque impulsion représente un certain angle de rotation du disque encodeur. Les codeurs incrémentaux ont généralement deux signaux de sortie, à savoir les signaux de phase A et de phase B. En comptant les signaux de phase A et de phase B, le codeur incrémental peut générer des signaux de sortie. En comptant les signaux de phase A et de phase B et en mesurant la différence de phase, il est possible de calculer l'angle de rotation ou la distance de déplacement linéaire de l'objet mesuré.

Types de codeurs rotatifs incrémentaux

En fonction des différences de principe de fonctionnement, il existe 3 types de codeurs rotatifs incrémentaux : le codeur magnétique, le codeur optique et le codeur mécanique. Voici la description de chacun d'entre eux :

Codeur rotatif magnétique incrémental

Codeur rotatif magnétique incrémental

Codeur incrémental magnétique : Le codeur incrémental magnétique utilise des lignes de force magnétiques pour générer des signaux d'impulsion. Sur la roue codeuse en rotation, les changements alternatifs des lignes de champ magnétique sont détectés et convertis en signaux d'impulsion.

Par rapport aux codeurs optiques incrémentaux traditionnels, les codeurs magnétiques incrémentaux ne nécessitent pas de disque de codage ni de source lumineuse, ont moins de composants et ont une structure de détection plus simple. En même temps, l'élément Hall lui-même présente de nombreux avantages, tels que : structure solide, petite taille, poids léger, longue durée de vie, résistance aux vibrations, et ne craint pas la pollution ou la corrosion due à la poussière, à l'huile, à la vapeur d'eau, au brouillard salin, etc.

Codeur rotatif optique incrémental

Structure d'un codeur rotatif

Codeur incrémental optique : Ce codeur utilise des principes optiques pour générer des signaux d'impulsion. La lumière passe à travers un réseau situé sur une roue codeuse en rotation, créant une alternance de zones claires et sombres, ce qui génère un signal d'impulsion.

Codeur rotatif mécanique incrémental

Codeur incrémental mécanique : Le codeur incrémental mécanique utilise un contact mécanique pour générer des signaux d'impulsion. Lorsque le corps du codeur tourne, les points de contact glissent sur la feuille métallique conductrice, générant ainsi un signal d'impulsion.

Codeur rotatif incrémental code arduino

Un codeur rotatif incrémental ABZ dispose de trois canaux : A, B et Z (également appelé canal d'index). Les canaux A et B sont utilisés pour déterminer la position et la direction, comme dans un codeur AB standard. Le canal Z fournit une seule impulsion par tour et est souvent utilisé pour une position "d'origine" ou "zéro".

Voici un extrait de code Arduino simple pour lire un codeur rotatif incrémental ABZ :

// Définir les connexions des broches du codeur et les valeurs initiales
const int encoderPinA = 2 ;

// Connecté à la broche du canal A du codeur
const int encoderPinB = 3 ;

// Connecté à la broche du canal B du codeur
const int encoderPinZ = 4 ; // Connecté à la broche du canal Z sur l'encodeur (Index)
volatile int encoderPos = 0 ; // Compteur de position
int lastReportedPos = 0 ; // Dernière position signalée
int aState ;
int aLastState ;

void setup() {
// Configuration du moniteur sériel
Serial.begin(9600) ;

// Configurer les broches du codeur en tant qu'entrées
pinMode(encoderPinA, INPUT_PULLUP) ;
pinMode(encoderPinB, INPUT_PULLUP) ;
pinMode(encoderPinZ, INPUT_PULLUP) ;

// Lecture de l'état initial de l'encodeurPinA
aLastState = digitalRead(encoderPinA) ;

// Attacher des interruptions
attachInterrupt(digitalPinToInterrupt(encoderPinA), readEncoder, CHANGE) ;
attachInterrupt(digitalPinToInterrupt(encoderPinZ), resetEncoder, RISING) ;
}

void loop() {
// Vérifier si la position a changé depuis le dernier rapport
if (lastReportedPos != encoderPos) {
Serial.print("Position : ") ;
Serial.println(encoderPos) ;
lastReportedPos = encoderPos ;
}
}

// Fonction d'interruption pour la lecture des canaux A et B du codeur
void readEncoder() {
aState = digitalRead(encoderPinA) ; // Lit l'état "actuel" de l'encoderPinA
// Si l'état précédent et l'état actuel de l'encodeurPinA sont différents, cela signifie qu'une impulsion s'est produite.
if (aState != aLastState) {
// Si l'état de la voie B est différent de l'état de la voie A, cela signifie que le codeur tourne dans le sens des aiguilles d'une montre.
if (digitalRead(encoderPinB) != aState) {
encoderPos++ ;
} else {
encoderPos- ;
}
Serial.print("Position = ") ;
Serial.println(encoderPos) ;
}
aLastState = aState ; // Met à jour l'état précédent de l'encodeur avec l'état actuel
}

// Fonction d'interruption pour la lecture du canal Z du codeur (Index)
void resetEncoder() {
encoderPos = 0 ; // Remise à zéro de la position de l'encodeur
Serial.println("Index détecté, position remise à zéro") ;
}

Comment utiliser ce code Arduino

  1. Connectez les canaux A, B et Z de votre encodeur rotatif incrémental ABZ aux broches 2, 3 et 4 de votre Arduino, respectivement.
  2. Téléchargez le code sur votre Arduino.
  3. Ouvrez le moniteur série pour visualiser la position du codeur et les réinitialisations d'index.

Codeur rotatif incrémental ou absolu

Il existe 14 différences entre un codeur rotatif incrémental et un codeur rotatif absolu. Les tableaux ci-dessous présentent toutes les différences entre ces deux types de codeurs :

Applications des codeurs incrémentaux

Applications des codeurs rotatifs incrémentaux

Lignes de production automatisées: Dans les lignes de production automatisées, les codeurs incrémentaux sont utilisés pour mesurer et contrôler la position des machines. Par exemple, sur une ligne d'assemblage, les codeurs peuvent contrôler avec précision la position des composants pour assurer un assemblage correct.

Robotique: Les codeurs incrémentaux jouent un rôle important dans la robotique, en fournissant un retour d'information précis sur les mouvements afin que les robots puissent contrôler avec précision leurs propres mouvements.

Contrôle des servomoteurs: Les servomoteurs ont besoin d'un retour d'information précis sur leur position pour un contrôle précis. Les codeurs incrémentaux sont un élément clé pour fournir ce retour d'information,

Conclusion

Les codeurs incrémentaux sont un élément important des applications industrielles et d'automatisation modernes. Une connaissance approfondie des principes, des types et des applications des codeurs incrémentaux permet de mieux comprendre leur rôle important dans divers scénarios d'automatisation industrielle. Bien qu'il y ait quelques défis à relever, avec les progrès continus de la technologie, nous avons des raisons de croire que les codeurs incrémentaux joueront un rôle plus important à l'avenir et favoriseront les progrès dans le domaine de l'automatisation industrielle. Nous espérons que cet article vous a aidé à mieux comprendre les codeurs incrémentaux et qu'il a éveillé votre intérêt pour cette technologie importante.

Image de Shon Xu

Shon Xu

" Bonjour, je suis l'auteur de cet article et le fondateur de Lorentzzi Electric. Je dispose de près de 10 ans d'expérience dans la vente de produits d'automatisation industrielle, avec une expertise particulière dans les services B2B. N'hésitez pas à me contacter si vous avez des questions ! "

Contactez nous maintenant :

Partagez-le avec :

Continuer à apprendre

Entrées et sorties des automates programmables : ce qu'elles sont et comment les utiliser couverture du blog
Entrées et sorties PLC : Ce qu'elles sont et comment les utiliser

Avez-vous déjà observé une chaîne de montage automatisée, avec des dizaines de moteurs, de capteurs et d'actionneurs se déplaçant dans un ordre parfait, sans la moindre erreur ? Qu'est-ce qui les maintient tous en phase ? Pas par hasard, mais grâce à un conducteur caché. Beaucoup de gens pensent que les microprocesseurs ou les puces électroniques sont les véritables contrôleurs, mais les systèmes industriels de contrôle de la qualité de l'air et de l'eau ne sont pas les seuls.

Lire la suite
Les capteurs inductifs : principe de fonctionnement et applications
Les capteurs inductifs : principe de fonctionnement et applications

Avec le progrès et le développement continus de la technologie, la technologie des capteurs joue un rôle crucial dans la société moderne. Les capteurs inductifs, qui constituent un type de capteur important, détectent les propriétés ou l'état d'objets cibles en mesurant les changements dans les éléments inductifs. Basés sur les caractéristiques de l'inductance, les capteurs inductifs offrent les avantages suivants

Lire la suite
DC Vs AC 6 Things You Must Know blog cover
CC et CA : 6 choses à savoir

Dans le monde réel, il existe deux principaux types de courant : Le courant continu et le courant alternatif. Mais qu'est-ce que ces deux types de courant ? Quelle est la différence entre eux ? Et comment convertir le courant continu en courant alternatif ou le courant alternatif en courant continu ? Cet article vous fournira

Lire la suite
Panier d'achat
Logo Lorentzzi - Fabricant chinois de régulateurs de température, SSR, encodeurs rotatifs

Renforcer l'automatisation industrielle!