esclavo en una red CANopen es identificado a través de su dirección, o Node-ID, que debe ser único para cada
esclavo de la red, y puede cambiar de 1 hasta 127.
1.3.2
Acceso a los Datos
Cada esclavo de la red CANopen posee un listado, denominado diccionario de objetos, que contiene todos los
datos que son accesibles vía red. Cada objeto de este listado es identificado a través de un índice, y durante la
configuración del equipamiento e intercambio de mensajes, este índice es utilizado para identificar lo que esta siendo
transmitido.
1.3.3
Transmisión de Datos
La transmisión de datos numéricos a través de telegramas CANopen es hecha utilizando la representación hexade-
cimal del número, y enviando el byte menos significativo del dato primer.
Ejemplo: transmisión de un entero con señal de 32 bits (12345678h = 305419896 decimal), más un entero con señal
de 16 bits (FF00h = -256 decimal), en un frame CAN.
1.3.4
Objetos Responsables por la Comunicación - COB
Existe un determinado conjunto de objetos que son responsables por la comunicación entre los dispositivos de la
red. Estos objetos estás divididos de acuerdo con los tipos de datos y el modo como son enviados o recibidos por
un dispositivo. El dispositivo soporta los siguientes objetos de comunicación (COBs):
Tipo de Objeto
Service Data Object (SDO)
Process Data Object (PDO)
Emergency Object (EMCY)
Syncronization Object (SYNC)
Network Management (NMT)
Identificador
entero 32 bits
11 bits
byte 0
byte 1
78h
56h
Tabla 1.1: Tipos de objetos de comunicación (COBs)
Los SDOs son objetos responsables por el acceso directo al diccionario de objetos de un dispositi-
vo. A través de mensajes utilizando los SDOs, es posible indicar explícitamente (a través del índice
del objeto), cual el dato que está siendo manipulado. Existen dos tipos de SDOs: Cliente SDO, res-
ponsable por hacer una requisición de lectura o de escrita para un dispositivo de la red, y el Servidor
SDO, responsable por atender esta requisición. Como los SDOs son utilizados generalmente para
configuración de un nudo de la red, son menos prioritarios que otros tipos de mensajes.
Los PDOs son utilizados para acceder datos del equipamiento sin la necesidad de indicar explícita-
mente cual es el objeto del diccionario que está siendo accedido. Para eso, es necesario configurar
previamente cuales son los datos que el PDO estará transmitiendo (mapeo de los datos). También
existen dos tipos de PDOs: PDO de recepción y PDO de transmisión. PDOs usualmente son utili-
zados para transmisión y recepción de datos utilizados durante la operación del dispositivo, y por
eso son más prioritarios que los SDOs.
Este objeto es responsable por el envío de mensajes para indicar la ocurrencia de errores en el
dispositivo. Cuando un error ocurre en un determinado dispositivo (Productor EMCY), este puede
enviar un mensaje para la red. Caso algún dispositivo de la red se encuentre monitoreando este
mensaje (Consumidor EMCY), es posible programar para que una acción sea tomada (deshabilitar
demás dispositivos de la red, reset de errores, etc.).
En la rede CANopen es posible programar un dispositivo (Productor SYNC) para enviar, periódi-
camente, un mensaje de sincronización para todos los dispositivos de la red. Estos dispositivos
(Consumidores SYNC) pueden entonces, por ejemplo, enviar un determinado dato que necesita
estar disponible periódicamente.
Toda la red CANopen precisa tener un maestre que haga el control de los demás dispositivos de
la red (esclavos). Este maestre será responsable por un conjunto de servicios que controlan la
comunicación de los esclavos y su estado en la red CANopen. Los esclavos son responsables
por recibir los comandos enviados por el maestre y ejecutar las acciones solicitadas. El protocolo
describe dos tipos de servicios que el maestro puede utilizar: servicio de control del dispositivo,
donde el maestro controla el estado de cada esclavo en la red, y servicios de control de errores
(Node Guarding), donde el esclavo envía mensajes periódicas para el maestro para informar que la
conexión está activa.
Introdución a la Comunicación CANopen
6 bytes de datos
entero 16 bits
byte 2
byte 3
byte 4
34h
12h
00h
Descripción
byte 5
FFh
CFW300 | 8