Il convient de noter qu'avec l'introduction de CAN FD, CANopen FD, en tant que norme CANopen de la prochaine génération, pourrait jouer un rôle de plus en plus important.
Par rapport au bus CAN et au protocole J1939, le protocole CANopen ajoute les six concepts fondamentaux suivants :
Il existe trois modes de communication appareil/nœud : maître/esclave, client/serveur et producteur/consommateur.
Protocoles utilisés pour la communication, tels que la configuration des nœuds (SDO) ou la transmission de données en temps réel (PDO), etc.
Un même appareil peut prendre en charge différents états. Un nœud "maître" peut modifier un nœud "esclave", y compris par des opérations telles que la réinitialisation.
Chaque appareil possède un OD avec des entrées spécifiant la configuration de l'appareil, etc., auquel on peut accéder via SDO.
L'EDS est un format de fichier standard pour les entrées OD, qui permet aux outils de service de mettre à jour les appareils.
fichier de configuration de l'appareil
Décrit l'indépendance vis-à-vis des fournisseurs, comme les modules d'E/S (CiA 401) et le contrôle des mouvements (CiA 402).
Dans un réseau CANopen, plusieurs dispositifs doivent communiquer. Par exemple, dans une installation d'automatisation industrielle, vous pouvez avoir un bras robotique avec plusieurs nœuds de servomoteurs et un nœud d'interface de contrôle/PC. Afin de faciliter la communication, il existe trois modes dans CANopen, chacun d'eux étant étroitement lié au protocole CANopen dont nous parlons. Les trois modes sont brièvement décrits ci-dessous :
Trois modes de communication CANopen
Un nœud (tel que l'interface de contrôle) joue le rôle de maître d'application ou de contrôleur principal. Il demande des données à des dispositifs esclaves tels que des servomoteurs. Ce processus est utilisé pour le diagnostic ou la gestion de l'état. Dans les applications standard, il peut y avoir de 0 à 127 esclaves. Remarque : dans un même réseau CANopen, plusieurs contrôleurs hôtes peuvent partager la même couche de liaison de données.Exemple de service : NMT
Le client envoie une demande de données au serveur, et le serveur répond avec les données demandées. Par exemple, utilisez ce mode lorsque l'application maître doit obtenir des données du DO de l'esclave. La lecture à partir du serveur est un "chargement" et l'"écriture" est un "téléchargement" (le terme est pris du point de vue du serveur).Exemple de service : SDO
03 Consommateur/Producteur
Dans ce mode, les nœuds producteurs diffusent des données sur le réseau qui sont consommées par les nœuds consommateurs. Les producteurs envoient ces données sur demande (modèle "pull") ou sans demande spécifique (modèle "push").Exemple de service : Rythme cardiaque