Cabe señalar que con la introducción de CAN FD, CANopen FD, como norma CANopen de próxima generación, puede desempeñar un papel cada vez más importante.
En comparación con el bus CAN y el protocolo J1939, el protocolo CANopen añade los siguientes seis conceptos básicos:
Existen 3 modos de comunicación dispositivo/nodo: maestro/esclavo, cliente/servidor y productor/consumidor.
Protocolos utilizados para la comunicación, como la configuración de nodos (SDO) o la transmisión de datos en tiempo real (PDO), etc.
Un mismo dispositivo admite diferentes estados. Un nodo "maestro" puede modificar un nodo "esclavo", incluyendo operaciones como el reinicio.
Cada dispositivo tiene un OD con entradas que especifican la configuración del dispositivo, etc., al que se puede acceder a través de SDO.
EDS es un formato de archivo estándar para las entradas OD, que permite a las herramientas de servicio actualizar los dispositivos.
archivo de configuración del dispositivo
Describe la independencia del proveedor, como los módulos de E/S (CiA 401) y el control de movimiento (CiA 402)
En una red CANopen, es necesario que se comuniquen varios dispositivos; por ejemplo, en una configuración de automatización industrial puede haber un brazo robótico con varios nodos de servomotor y un nodo de interfaz de control/PC. Para facilitar la comunicación, existen tres modos en CANopen, cada uno de los cuales está estrechamente relacionado con el protocolo CANopen que estamos tratando. A continuación se describen brevemente los tres modos:
Tres modos de comunicación CANopen
Un nodo (como la interfaz de control) actúa como maestro de la aplicación o controlador maestro. Solicita datos a dispositivos esclavos, como los servomotores. Este proceso se utiliza para el diagnóstico o la gestión del estado. En aplicaciones estándar, puede haber de 0 a 127 esclavos. Nota: En una misma red CANopen, puede haber diferentes controladores host que compartan la misma capa de enlace de datos.Ejemplo de servicio: NMT
El cliente envía una solicitud de datos al servidor y éste responde con los datos solicitados. Por ejemplo, utilice este modo cuando el maestro de la aplicación necesite obtener datos del OD del esclavo. Leer del servidor es una "subida" y "escribir" es una "descarga" (el término se toma desde la perspectiva del servidor).Ejemplo de servicio: SDO
En este modo, los nodos productores emiten datos a la red y son consumidos por los nodos consumidores. Los productores envían estos datos previa petición (modelo pull) o sin petición específica (modelo push).Ejemplo de servicio: Heartbeat