Guide des protocoles de communications pour codeurs absolus
2021-03-31
L'automatisation continue de révolutionner le monde moderne. Elle s'étend au-delà de l'automatisation industrielle et de l'Industrie 4.0 pour inclure les domaines commerciaux et grand public. C'est là que l'IoT au sens large entre en jeu, en automatisant des tâches autrefois physiques mais aujourd'hui de plus en plus électromécaniques.
En termes très généraux, les moteurs électriques permettent de contrôler le monde physique. Cependant, la majorité des moteurs électriques sont relativement basiques, ce qui signifie qu'ils ne fournissent généralement aucun retour sur leur position. Cela est particulièrement vrai pour les moteurs bon marché utilisés pour simplement déplacer une charge. Cela peut paraître surprenant, mais il peut s'agir d'applications relativement sophistiquées, comme des sièges automobiles qui ajustent automatiquement leur position en fonction de la clé utilisée pour ouvrir et démarrer le véhicule.
C'est grâce aux codeurs que ces moteurs de base obtiennent l'intelligence nécessaire pour savoir où se trouve le siège et comment le régler. Si certains moteurs sont équipés de codeurs, ceux qui ne le sont pas peuvent utiliser des codeurs externes conçus pour être fixés à l'extérieur de l'arbre du moteur. Il existe différents types de codeurs utilisés dans ces applications, chacun ayant son propre type de détection de mouvement. Il peut s'agir de codeurs optiques qui comptent les impulsions lumineuses lorsqu'un objet passe devant une source lumineuse, ou de codeurs qui comptent les impulsions générées par un commutateur à effet Hall lorsqu'un aimant le traverse.
Certains codeurs, comme les codeurs absolus série AMT de Same Sky, combinent la haute résolution offerte par un codeur optique avec la robustesse d'un codeur magnétique. Ils y parviennent grâce à un codage capacitif, qui utilise deux plaques : un émetteur et un récepteur, séparés par une troisième plaque fixée au rotor. Lorsque la plaque centrale tourne, elle interfère avec un signal conduit de manière capacitive entre l'émetteur et le récepteur. Comme l'interférence ne dépend pas du mouvement, la position absolue de la plaque du rotor peut être détectée même lorsqu'elle ne bouge pas.
Les applications courantes exigent que le codeur détecte la vitesse du moteur ou interprète la position de ce que le moteur déplace en fonction du nombre de tours. Il peut également être nécessaire de détecter le sens de la marche. La manière dont la position est indiquée peut également varier. Comme mentionné ci-dessus, un codeur rotatif absolu ne dépend pas de la connaissance de la position précédente, car il fournit une valeur unique pour chaque position quantifiable du rotor. Cela peut être utile dans les applications qui doivent connaître la position du moteur après un cycle d'alimentation, par exemple lorsque quelqu'un monte dans un véhicule.
Protocoles utilisés dans les codeurs rotatifs
Quelle que soit la méthode utilisée pour capturer le mouvement physique, les informations doivent ensuite être transmises à un contrôleur. Ceci est réalisé par un autre niveau de codage, qui convertit les impulsions brutes en un protocole de transmission.
La connexion physique influence le choix du protocole et son fonctionnement. En général, le protocole est soit synchrone, c'est-à-dire qu'il utilise un signal d'horloge, soit asynchrone (sans signal d'horloge). En outre, la connexion physique peut être asymétrique, ou, pour plus de robustesse, différentielle. Cette combinaison donne lieu à quatre alternatives possibles et les protocoles les plus populaires les couvrant sont SPI (asymétrique, synchrone), RS-485, également appelé TIA/EIA-485 (différentiel, asynchrone), et SSI (différentiel, synchrone).
Les protocoles sont choisis pour de nombreuses raisons. D'une part, ils fournissent un niveau d'interopérabilité et d'autre part, ils augmentent également la robustesse du canal de communication, en particulier dans les applications électriquement bruyantes, telles que la commande de moteurs industriels. Cependant, la question se pose de savoir quel protocole est le mieux adapté à une application donnée. Heureusement, la série AMT inclut des modèles fournissant les trois protocoles mentionnés précédemment. Il est donc utile d'étudier chacun d'entre eux plus en détail pour bien comprendre leurs attributs respectifs et simplifier le processus de sélection.
Le bus SPI
En tant que bus synchrone, l'une des connexions sur un bus SPI est un signal d'horloge dédié (SCLK). Le protocole prend également en charge le fonctionnement en duplex intégral grâce à des connexions dédiées pour le dispositif maître et le dispositif esclave. Comme tous les échanges de données sont coordonnés par le signal d'horloge, le maître et les esclaves peuvent communiquer sans avoir à négocier au préalable des paramètres tels que le débit de données ou la longueur du message. Chaque esclave présente une broche de sélection de circuit (Figure 1), qui permet au maître de contrôler le dispositif avec lequel il communique à un moment donné.
Par exemple, la série AMT22 est dotée d'un codeur SPI qui peut être configuré pour fonctionner avec un signal d'horloge de 2 MHz. Cela signifie que lorsqu'un maître le demande, le codeur peut répondre avec sa position actuelle en seulement 1500 ns. La configuration de câblage pour le protocole SPI est également simple avec des connexions dédiées pour Master Out, Slave In (MOSI), et Master In, Slave Out (MISO) sur chaque dispositif. Toutes ces connexions sont câblées ensemble, comme illustré à la Figure 1, tandis que le maître dispose de connexions dédiées pour les broches de sélection de circuit individuelles.
Figure 1 : Le protocole SPI utilise des connexions communes pour l'horloge et les données, avec des connexions dédiées pour la sélection de circuit. (Source de l'image : Same Sky)
En tant que bus asymétrique, le protocole SPI est bien adapté aux connexions sur des distances relativement courtes, de l'ordre de 1 mètre ou moins, lorsqu'il utilise l'horloge haute vitesse. Cette distance peut être étendue si la vitesse d'horloge est réduite, afin de préserver l'intégrité du signal. Cela rend le protocole SPI extrêmement polyvalent et adapté à de nombreuses applications.
Le bus RS-485
Si l'application implique des distances supérieures à 1 mètre, ou si l'environnement présente une quantité importante de bruit électrique, un bus différentiel peut être une meilleure option. En effet, un signal différentiel est intrinsèquement plus robuste qu'un signal asymétrique. Une autre technique contribuant à augmenter la robustesse consiste à éliminer le besoin d'un signal d'horloge propre sur le bus. C'est là que le bus RS-485 et le protocole associé peuvent s'avérer un choix approprié.
L'interface RS-485 utilise un câblage à paire torsadée et, comme elle est différentielle, elle nécessite des terminaisons appropriées à chaque extrémité du câble. Cependant, comme elle est asynchrone, il n'y a pas de signal d'horloge dédié sur le bus. Elle ne requiert donc que deux conducteurs (Figure 2) et peut atteindre des débits de données de 10 Mb/s, voire plus. En tant que bus, l'interface prend en charge des connexions multiples, mais chacune doit être terminée et adaptée en impédance au câble. Pour maintenir les performances, chaque dispositif doit être connecté au bus en utilisant la longueur de câble la plus courte possible.
La série AMT21 utilise le bus/protocole RS-485, n'exigeant que deux connexions pour la paire torsadée et deux autres pour l'alimentation. Comme il s'agit d'un protocole asynchrone, tous les dispositifs doivent savoir comment le protocole est configuré. Par défaut, la série AMT21 utilise 8N1, ce qui signifie 8 bits de données, pas de parité et 1 bit d'arrêt. Dans cette configuration, les six bits les plus significatifs sont utilisés comme adresse, ce qui signifie qu'une connexion peut prendre en charge jusqu'à 64 dispositifs adressables individuellement. Les deux bits les moins significatifs sont utilisés pour l'instruction. Lorsqu'on lui demande de fournir des données de position, la série AMT21 peut répondre en trois microsecondes. Il existe également des instructions pour réinitialiser le codeur et définir la position zéro.
Figure 2 : Le protocole RS-485 prend en charge plusieurs dispositifs sur une seule paire torsadée. (Source de l'image : Same Sky)
Le bus SSI
Dans sa configuration standard, le bus SSI peut être considéré comme une extension du bus RS-485, en ajoutant une paire différentielle qui transporte un signal d'horloge à une paire différentielle pour les données. Cela signifie que l'interface SSI standard utilise deux paires différentielles, ou quatre connexions, pour l'horloge et les données. Same Sky a développé une variation de cette conception, en supprimant l'aspect différentiel mais en ajoutant une broche de sélection de circuit. Cela réduit le nombre de broches de quatre à trois par connexion tout en ajoutant une sélection de circuit dédiée (Figure 3).
Cette variante est compatible avec les contrôleurs SSI prenant en charge la sélection de circuit, et offre des niveaux de performances similaires à ceux de SPI. La série AMT23 de Same Sky utilise cette variante SSI et peut être configurée comme illustré à la Figure 3.
Figure 3 : Cette variante SSI requiert moins de fils mais prend en charge la sélection de circuit. (Source de l'image : Same Sky)
Conclusion
L'utilisation de l'automatisation ne fait qu'augmenter. Les codeurs absolus, conçus pour être montés sur des moteurs électriques, permettent un meilleur contrôle dans les applications d'automatisation. La technologie de codage capacitif développée par Same Sky et disponible dans la série AMT utilise trois protocoles de communications, chacun ayant ses propres caractéristiques et avantages. Cela offre aux ingénieurs une plus grande liberté de conception lors de la sélection de la meilleure technologie pour leur application.
Avertissement : les opinions, convictions et points de vue exprimés par les divers auteurs et/ou participants au forum sur ce site Web ne reflètent pas nécessairement ceux de DigiKey ni les politiques officielles de la société.