Principio del protocolo CANopen
Introducción a la red CANopen
CANopen es un sistema de red basado en el bus serie Controller Area Network (CAN). El perfil de comunicación de CANopen (CiA DS-301) admite tanto acceso directo a los parámetros del dispositivo como comunicación de datos de proceso de tiempo crítico.
El perfil del dispositivo CANopen para los controladores LTMR es específico del fabricante. En él se definen los estándares de la funcionalidad básica del dispositivo al tiempo que se proporcionan amplias posibilidades para otras características del dispositivo específicas del proveedor.
CANopen emplea toda potencia de CAN al permitir el intercambio de datos directo peer-to-peer entre nodos de una manera organizada y, si fuese necesario, determinista.
Protocolo CANopen
El protocolo CANopen se basa en la especificación CAN 2.B passive (identificador codificado en 11 bits).
La interfaz del controlador LTMR CANopen cumple las especificaciones CANopen (DS301 V4.02).
Los controladores se describen en los archivos EDS (Electronic Data Sheet) que deberán estar incrustados en las herramientas de configuración.
Trama de mensaje CANopen
A continuación se muestra una descripción de la trama de mensaje estándar de CANopen:
SOF |
ID de COB |
RTR |
CTRL |
Segmento de datos |
CRC |
ACK |
EOF |
---|---|---|---|---|---|---|---|
1 bit |
11 bits |
1 bit |
5 bits |
0-8 bytes |
16 bits |
2 bits |
7 bits |
SOF |
Inicio de la trama |
ID de COB |
Campo de identificación del mensaje CAN, compuesto por un código de función (4 bits) y un ID de módulo (7 bits). El código de función determina la prioridad del objeto. Esto permite la comunicación entre el administrador de la red y 127 estaciones. El código de función se determina con un diccionario de objetos en el perfil del dispositivo. La difusión se indica mediante un ID de módulo de cero. |
RTR |
Solicitud de transmisión a distancia |
CTRL |
Campo de control (es decir, longitud de datos) |
CRC |
Comprobación de redundancia cíclica |
ACK |
Acuse |
EOF |
Fin de la trama |
Servicios CANopen
Los objetos de comunicación de CANopenCANopen transmitidos a través de la red CAN se describen mediante servicios:
-
GESTIÓN DE RED
Inicio del bus, configuración de parámetros, supervisión.
-
TRANSMISIÓN DE DATOS DE PROCESO A GRAN VELOCIDAD
PDO (objetos de datos de proceso) para comando de control en tiempo real.
-
TRANSMISIÓN DE DATOS DE SERVICIO A VELOCIDAD REDUCIDA.
SDO (objetos de datos de servicio) para configuración, ajuste y diagnóstico.
Gestión de red (NMT)
La gestión de la red CANopen está orientada a nodos y sigue una estructura cliente/servidor. Requiere un dispositivo en la red, que cumpla la función de cliente NMT. Los demás nodos son servidores NMT.
(1) |
En el encendido, el dispositivo entra en estado de inicialización. |
(2) |
Cuando la inicialización ha terminado, se entra automáticamente en el estado preoperativo (es posible enviar parámetros). Nota: En el estado preoperativo, se pueden escribir algunos parámetros seleccionados mediante la configuración. |
(3) (6) |
Start_Remote_Node |
(4) (7) |
Enter_Pre-Operational_State, y aplicar recuperación. |
(5) (8) |
Stop_Remote_Node |
(9) (10) (11) |
Reset_Node |
(12) (13) (14) |
Reset_Communication |
Objetos de datos de proceso (PDO)
La transferencia de datos en tiempo real se realiza por medio de telegramas de Process Data Object (PDO). Process Data son datos de tiempo crítico que sirven para supervisar y controlar el dispositivo.
Características del módulo de comunicaciones del controlador CANopen:
PDO |
Descripción |
Estado |
---|---|---|
PDO1 de transmisión |
Para supervisar (datos transmitidos por el servidor) |
Preconfigurado y activado |
PDO1 de recepción |
Para controlar (datos transmitidos por el cliente) |
|
PDO2 de transmisión |
Para intercambiar datos (definidos en la configuración) |
Para configurar y activar |
PDO2 de recepción |
||
PDO3 de transmisión |
||
PDO3 de recepción |
||
PDO4 de transmisión |
Para acceso (de lectura o escritura) a cualquier registro mediante programación |
Preconfigurado y activado |
PDO4 de recepción |
Los objetos RPDO (PDO de recepción) y TPDO (PDO de transmisión) se pueden configurar de modo que incluyan 8 bytes de datos (organizados como cuatro registros de 16 bits o un objeto de 64 bits, por ejemplo).
Los objetos RPDO tienen acceso de escritura.
Defina el modo de comunicación de PDO como asíncrona, cíclica o síncrona acíclica, según la aplicación.
En la comunicación síncrona, la transmisión de PDO está relacionada con el objeto SYNC, que es emitido cíclicamente por el cliente CANopen. No incluye ningún dato. Su ajuste de fábrica es 0x080.
El modo de transmisión es:
Tipo de transmisión |
Transmisión de PDO |
|||
---|---|---|---|---|
Cíclica |
Acíclica |
Síncrona |
Asíncrona |
|
0 PDO enviado de forma síncrona con el objeto SYNC, activado por un cambio en el valor de los datos |
√ |
√ |
||
1-240 PDO enviado por el módulo de comunicaciones una vez cada 1 a 240 recepciones del objeto SYNC |
√ |
√ |
||
255 Ajuste de fábrica del modo de comunicación |
√ |
√ |
Para obtener más información sobre los PDO, consulte Using PDOs.
Objetos de datos de servicio (SDO)
Los objetos de datos de servicio (SDO) se emplean para configurar el dispositivo y para definir el tipo y formato de la información transmitida a través de los PDO.
Los SDO permiten acceder a cualquier objeto del diccionario de objetos del dispositivo.
La mensajería acíclica de los clientes CANopen se realiza a través de SDO. Estos también se utilizan para solicitudes asincrónicas y periódicas. Por ejemplo, un SDO puede utilizarse para leer una identificación de unidad de control.
El módulo de comunicaciones CANopen gestiona un servidor SDO, que recibe dos ID de COB:
-
Uno para las solicitudes (telegramas que envía el cliente al LTMR CANopen).
-
Otro para las respuestas (telegramas que el LTMR CANopen envía de vuelta al cliente).
Para obtener más información sobre los SDO, consulte Using SDOs.