CANopen
CARACTÉRISTIQUES GÉNÉRALES, INTRODUCTION
L'AC 58 est un codeur rotatif absolu (codeur, codeur angulaire) qui, dans la version décrite ici, transmet sa position actuelle à un autre appareil connecté au bus via le support de transmission d'un bus CAN (physiquement : un câble torsadé et blindé à 2 fils).
Le système de bus série CAN (Controller Area Network), développé à l'origine par Bosch / Intel pour les applications automobiles, est de plus en plus utilisé dans les technologies d'automatisation industrielle. Il est multi-maître, c'est-à-dire que plusieurs appareils connectés au bus CAN peuvent envoyer des signaux au bus en même temps. Le message ayant la priorité la plus élevée (déterminée par l'identifiant) sera transmis en premier sans perte de temps.
Le transfert de données est régi par la priorité des messages. Avec le bus CAN, il n'y a pas d'adresses pour les appareils ou les systèmes connectés, mais seulement des identificateurs de messages. Les messages envoyés peuvent être reçus par tous les appareils connectés en même temps (système de diffusion).
Grâce au filtrage d'acceptation, les dispositifs connectés n'acceptent que les messages qui leur sont destinés. Le critère de ces décisions est l'identifiant transmis avec chaque message. La connexion de bus est normalisée au niveau international selon ISQ-DIS 11898 (CAN High Speed) et permet des taux de transmission de données allant jusqu'à 1 Mbit par seconde.
La caractéristique la plus remarquable du protocole de bus CAN est son niveau élevé de sécurité de transmission (distance de Hamming = 6). Le contrôleur CAN Intel 82527 que nous utilisons convient à la fois aux applications de base et aux applications de base.CAN completet prend en charge la spécification CAN 2.0 partie B (protocole standard avec identificateur de 11 bits et protocole étendu avec identificateur de 29 bits).
Jusqu'à présent, seuls des identificateurs de 11 bits ont été utilisés avec CANopen.
DOMAINE D'APPLICATION
Dans les systèmes où la position d'un entraînement ou d'une autre partie de la machine doit être enregistrée et communiquée à un système de commande, cette tâche peut être effectuée par un codeur AC 58. Les tâches de positionnement peuvent ainsi être résolues, par exemple lorsque le retour d'information sur la position actuelle de l'entraînement est communiqué par un codeur AC 58 à l'unité de positionnement par l'intermédiaire du bus CAN.
MODÈLE ET PROFILS DE COMMUNICATION CANOPEN
Couche 1 (couche physique) : ISO-DIS 11898 (CAN High Speed)Couche 2 (couche de liaison de données) : ISO-DIS 11898 (CAN High Speed)Couche 7 (couche application) : CiA DS 301 (CAN in Automation Draft Standard, CANopen CAL-based Communication Profile) + profils d'appareils, CiA DS 4xx (CANopen Device Profile for xx)
Des profils existent déjà pour les appareils suivants :
- CiA Draft Standard Proposal 401 pour les modules d'entrée/sortie
- CiA Draft Standard Proposal 402 for Drives and Motion Control (Proposition de norme 402 pour les entraînements et le contrôle du mouvement)
- Point de travail 403 du CiA pour les interfaces homme-machine
- CiA Work Draft 404 for Closed-Loop Controllers and Transformers (Projet de travail 404 de la CiA pour les régulateurs et les transformateurs en boucle fermée)
- Point de travail 405 du CiA pour les interfaces IEC-1 131
- Projet de norme 406 de l'ICA pour les codeurs
- Point de travail 407 du CiA pour les transports publics
- Point de travail 408 du CiA pour les chariots élévateurs à fourche
LE PROFIL CANOPEN
Environ 2½ ans après l'adoption de la couche d'application CAN (CAL) par CAN in Automation (CiA), l'association des utilisateurs et des fabricants de produits CAN, il est devenu possible de développer des systèmes ouverts en utilisant CANopen et les profils d'appareils correspondants. CANopen a été développé sous la direction technique du Steinbeis Transfer Center for Automation (STA Reutlingen, Allemagne) sur la base des spécifications de la couche 7 de la couche d'application CAL. Par rapport à la couche CAL, CANopen ne contient que les fonctions adaptées à cette application. CANopen est donc un sous-ensemble de la couche CAL optimisé pour l'application spécifique et permet donc une conception simplifiée du système et l'utilisation d'appareils simplifiés. CANopen est optimisé pour l'échange rapide de données dans les systèmes en temps réel et est normalisé pour différents profils d'appareils.
L'association de fabricants et d'utilisateurs CAN in Automation (CiA) est responsable de la création et de la normalisation des profils correspondants.
Le codeur AC 58 avec CANopen répond aux exigences du profil de communication (CiA DS 301) et du profil d'appareil pour les codeurs (CiA DSP 406).
CANopen active
- l'auto-configuration du réseau et
- un accès aisé à tous les paramètres de l'appareil.
- Synchronisation des appareils,
- le trafic de données de processus cycliques et contrôlées par des événements,
- et la lecture ou la sortie simultanée de données.
CANopen utilise quatre objets de communication(COB) avec différentes caractéristiques:
- Objets de données de processus (PDO) pour les données en temps réel,
- des objets de données de service (SDO) pour la transmission de paramètres et de programmes,
- la gestion de réseau (NMT, life guarding)
- des objets prédéfinis (pour la synchronisation, les horodatages, les messages d'urgence)
Tous les paramètres de l'appareil sont classés ou stockés dans un répertoire d'objets. Ce répertoire d'objets contient la description, le type de données et la structure des paramètres, ainsi que les adresses (index). Le répertoire est divisé en une section communication et une section profil de l'appareil, ainsi qu'une section spécifique au fabricant.
PROFIL DU CODEUR (avant-projet de norme CiA DS P406)
Ce profil donne une définition contraignante indépendante du fabricant de l'interface des codeurs rotatifs. Ce profil définit quelles sont les fonctions CANopen utilisées et comment elles sont utilisées. Cette norme permet de développer un système de bus ouvert et indépendant du fabricant.
Le profil de l'appareil est divisé en trois classes d'objets:
- la classe standard C1 décrit toutes les fonctions de base que doit réaliser le codeur
- et la classe étendue C2 inclut un grand nombre d'autres fonctions devant être soit prises en charge par les codeurs de cette classe (obligatoires) soit qui sont facultatives.
Les appareils de classe C2 peuvent donc réaliser toutes les fonctions obligatoires C1 et C2, ainsi que d'autres fonctions facultatives utilisées par des fabricants différents. Une plage d'adresses est également définie dans le profil, et des fonctions spéciales correspondant à des fabricants spécifiques peuvent être affectées à ces adresses.
TRANSMISSION DES DONNÉES
Avec CANopen, les données sont transmises en utilisant deux types de communication différents (COB = Objets de communication) dotés de différentes caractéristiques:
- les objets données process (PDO)
- et les objets données service (SDO)
La priorité des objets message est déterminée par l'identificateur COB!
Les objets données process (PDO) sont utilisés pour l'échange hautement dynamique des données en temps réel (par ex. les positions du codeur) avec une longueur maximale de 8 octets. Ces données sont transmises avec une priorité haute (identificateur COB bas). Les PDO sont des messages de diffusion qui rendent leurs données en temps réel disponibles à tous les destinataires requis en même temps. Les objets données service (SDO) forment le canal de communications servant à la transmission des paramètres de l'appareil (par ex. la programmation de la résolution du codeur). Ces paramètres n'étant pas transmis de manière cyclique (par ex. uniquement au démarrage du réseau), les objets SDO ont une priorité basse (identificateur COB haut)
IDENTIFICATEUR COB
Pour faciliter la gestion des identificateurs, CANopen utilise « l'ensemble de connexion maitre/esclave prédéfini ». Tous ces identificateurs sont définis avec des valeurs standard dans le répertoire d'objets./p>
L'identifiant de 11 bits se compose d'un code de fonction de 4 bits et d'un numéro de nœud de 7 bits.
1x = valeur binaire librement sélectionnable (0 ou 1) ; 0 = valeur 0 fixe
Plus la valeur de l'identifiant COB est élevée, plus sa priorité est faible!
NUMÉRO DE NODE
Le numéro de nœud de 7 bits est défini dans le matériel via 5 commutateurs DIP au dos de l'encodeur.