schneider electric- automation bu – canopen comunicaciones canopen

54
Schneider Electric - Automation BU – CanOpen Comunicaciones CanOpen

Upload: iuceph-plasencia

Post on 28-Jan-2016

313 views

Category:

Documents


3 download

TRANSCRIPT

Page 1: Schneider Electric- Automation BU – CanOpen Comunicaciones CanOpen

Schneider Electric - Automation BU – CanOpen

ComunicacionesCanOpen

Page 2: Schneider Electric- Automation BU – CanOpen Comunicaciones CanOpen

Schneider Electric - Automation BU – CanOpen

Agenda

Generalidades

Protocolo CanOpen

Servicios de Comunicación

Page 3: Schneider Electric- Automation BU – CanOpen Comunicaciones CanOpen

Schneider Electric - Automation BU – CanOpen

Generalidades

Historia

Características generales de CanOpen

Capa física

Topología del bus

Page 4: Schneider Electric- Automation BU – CanOpen Comunicaciones CanOpen

Schneider Electric - Automation BU – CanOpen

1980: La industria del automóvil muestra la necesidad de un bus barato, de tiempo real y altamente robusto para comunicar diferentes componentes electrónicos. CAN define únicamente las capas 1 y 2 del modelo ISO.

1983: Junto con diferentes Universidades Alemanas, el fabricante BOSCH desarrolla el protocolo CAN = “Controller Area Network“

1985: Los primeros chips de CAN los comercializa INTEL

1986: Prototipos iniciales se presentan en Detroit (EEUU)

1987: Los mayores fabricantes de circuitos integrados (Intel, Motorola, ...) ofrecen una gama completa de microcontroladores que integran CAN

1989: Primeras aplicaciones industriales

Historia

Page 5: Schneider Electric- Automation BU – CanOpen Comunicaciones CanOpen

Schneider Electric - Automation BU – CanOpen

de1987 a 1991: Aparecen diferentes organizaciones que promocinan CAN en el mundo del automóbil (SAE, OSEK), y en aplicaciones industriales (CIA = “CAN in Automation”) http://www.can-cia.de/

1993: CAN de Alta Velocidad (1 Mbps/Identificadores de 11 bits) estándar ISO 11898 = CAN 2.0 A. Publicación por la CiA de las especificaciones CAL=Can Application Layer describiendo los mecanismos de transmisión sin definir cuando y como utilizarlos.

1995: identificadores de 29 bits (CAN2.0 B)

Publicación por la CiA del perfil de comunicaciones DS-301 = CANopen

1996: CAN se usa en la mayoría de coches de gama alta europeos.

1997: 300 compañías miembros de CiA (CAN en Automatización)

2001: La CiA publica el perfil DS-304 el cual se puede usar para integrar compomentes de nivel de seguridad 4 en un bus CANopen estándar (CANsafe).

Historia

Page 6: Schneider Electric- Automation BU – CanOpen Comunicaciones CanOpen

Schneider Electric - Automation BU – CanOpen

CANopen = CAN + Servicios de comunicaciones

CAN Capa Física y de enlace 1 Mbit a 40m // 50 kbit a 1 Km Par trenzado Muy Robusto y económico (se usa en los coches)

CANopen Productor / Consumidor (Con maestro gestor de red) Hasta 127 nodos Comunicaciones Implícitas (PDOs) Comunicaciones Explícitas (SDOs)

Características Generales de CanOpen

Page 7: Schneider Electric- Automation BU – CanOpen Comunicaciones CanOpen

Schneider Electric - Automation BU – CanOpen

CANopen Communicación PerfilCiA DS-301

VACIO

VACIO

VACIO

VACIO

CAN 2.0 A and B + ISO 11898

CAN 2.0 A and B = ISO 11898

ISO 11898 + DS-102

Perfiles dispositivoCiA DSP-401I/O modules

Perfiles dispositivoCiA DSP-402

Drives

Perfiles dispositivoCiA DSP-404

Dispositivos medida

Perfiles dispositivoCiA DSP-4xx

APLICACIÓN

PRESENTACIÓN

SESIÓN

TRANSPORTE

RED

ENLACE = LLC + MAC

FÍSICA

7

6

5

4

3

2

1

CA

N

es

pe

cif

ica

cio

ne

s

Características Generales de CanOpen

Page 8: Schneider Electric- Automation BU – CanOpen Comunicaciones CanOpen

Schneider Electric - Automation BU – CanOpen

CAN Protocol Specification 2.0 A: CAN Controller trabaja únicamente con identificadores de mensaje de 11-bit.

( CAN estándar )

CAN Protocol Specification 2.0 B pasivo: CAN Controller transmite sólo tramas con identificadores de 11-bit, pero chequea la recepción de tramas estándar como de tramas extendidas con identificadores de 29-bit (se envía incluso la confirmación).

( CAN extendido )

CAN Protocol Specification 2.0 B activo: CAN Controller puede recibir tramas estándar y extendidas.

Características Generales de CanOpen

Page 9: Schneider Electric- Automation BU – CanOpen Comunicaciones CanOpen

Schneider Electric - Automation BU – CanOpen

Protocolo MultimaestroCualquier estructura de comunicación es posible.Transmisión de mensajes orientado

a eventos: Reduce la carga de bus Tiempo de latencia corto para datos en tiempo real

Transmisión de mensajes basado en prioridadesTiempo de latencia reducido para mensajes de alta prioridad, incluso a elevada

carga de bus causada por mensajes de baja prioridad.

Longitud de datos limitadaSuficiente para comunicación de datos en coches, máquinas, automatización a nivel

de máquina. Transmisión segmentada para datos de más de 8 bytes.

Características Generales de CanOpen

Page 10: Schneider Electric- Automation BU – CanOpen Comunicaciones CanOpen

Schneider Electric - Automation BU – CanOpen

Gestión de errores CAN implementa cinco mecanismos de detección de errores, entre ellos un CRC. La probabilidad de no detectar un error local queda reducida a 3 x 10-5 Desconexión automático de nodos defectuosos para garantizar el buen funcionamiento del bus

Arbitraje de bus aleatorio libre de colisiones Si se produce una colisión, NO se destruyen los mensajes. No se desperdicia ancho de banda

en colisiones. A diferencia de Ethernet, en CAN las colisiones se resuelven. El mensaje con la prioridad más

alta gana el acceso al bus. Cada nodo debe usar un ID diferente para evitar colisiones con mensajes de la misma prioridad

Este proceso se llama “CSMA/CD con AMP”:

AMP – “Arbitraje por Prioridad de Mensaje”

Características Generales de CanOpen

Page 11: Schneider Electric- Automation BU – CanOpen Comunicaciones CanOpen

Schneider Electric - Automation BU – CanOpen

Resumen : CAN de un vistazo Máx Vel.: 1Mbit (40m) Multi-Master Las colisiones se resuelven, arbitraje por prioridad Hasta 8 bytes por mensaje Los mensajes tiene un único identificador (ID) Robusto, detecciones de errores y algoritmos de recuperación CAN2.0A: alrededor de 2k IDs La mayoría de transceivers aceptan par trenzado Implementa parcialmente la capa uno y dos del modelo OSI Finales de linea, 120 ohmios a cada extremo Máxima distancia: 1000m (50kBit)

Los mensajes son de difusión

Escribir 0 es dominante sobre escribir 1 que es recesivo

Hasta 10,000 msj. por segundo

Cada nodo debe usar un ID diferente

El ancho de banda se reduce a un 50% debido al control de errores

CAN2.0B: 500 millones IDs

Características Generales de CanOpen

Page 12: Schneider Electric- Automation BU – CanOpen Comunicaciones CanOpen

Schneider Electric - Automation BU – CanOpen

Características Físicas

Estado recesivo: VCAN_H - VCAN_L = 0V (-0.5 V a + 50 mV)

Estado Dominante: VCAN_H - VCAN_L = 2V (1.5 V a 3.5 V)

Corriente de salida en transmisión:Más alta que 25 mA

Protección: Contra cortocircuitos

Voltaje (V)

TimeRecesivo RecesivoDominante

2.5

5

3.5

1.5

CAN_H

CAN_L

Capa Física

Page 13: Schneider Electric- Automation BU – CanOpen Comunicaciones CanOpen

Schneider Electric - Automation BU – CanOpen

Nodo A

CAN-Bus

Nodo B Nodo C

CAN_H

CAN_L EMI

U diff

CAN_H

CAN_L

V

t

CAN y EMI

CAN es insensitivo a las interferencias electromagnéticas debido al uso de una señal diferencial

Capa Física

Page 14: Schneider Electric- Automation BU – CanOpen Comunicaciones CanOpen

Schneider Electric - Automation BU – CanOpen

1000500

105

Bit Rate

[kbps]

40 100 1000 10,000

Longitud de Bus CAN [m]

20

50

200

100

0 10 200

Considerando que las líneas del Bus son eléctricas

(p.ej. Par trenzado)

Relación entre Velocidad (Baud Rate) y longitud del bus

Hasta 1Mbit 40m de longitud de bus

o

Hasta 1000m 50 kbit

Capa Física

Page 15: Schneider Electric- Automation BU – CanOpen Comunicaciones CanOpen

Schneider Electric - Automation BU – CanOpen

Características Físicas

* Secciones para 32 esclavos como máximo

Data rate Bus length Cable x-section

1 Mbps 25 m 0.25 mm2 AWG 23

800 Kbps 50 m 0.34 mm2 AWG 22

500 Kbps 100 m 0.34 mm2 AWG 22

250 Kbps 250 m 0.34 mm2 AWG 22

125 Kbps 500 m 0.5 mm2 AWG 20

50 Kbps 1000 m 0.75 mm2 AWG 18

20 Kbps 1000 m 0.75 mm2 AWG 18

10 Kbps 1000 m 0.75 mm2 AWG 18

*

Capa Física

Page 16: Schneider Electric- Automation BU – CanOpen Comunicaciones CanOpen

Schneider Electric - Automation BU – CanOpen

Pin Señal Descripción

1: Reservado2: CAN_L CAN_L nivel bus dominante bajo3: CAN_GND Linea de Tierra4: Reservado5: CAN_SHLD Opcional malla CAN 6: GND Tierra opcional7: CAN_H CAN_H nivel bus dominante alto8: Reservado9: CAN_V+ Opcional CAN alimentación externa positiva

Conector sub DB9

  

Capa Física

Page 17: Schneider Electric- Automation BU – CanOpen Comunicaciones CanOpen

Schneider Electric - Automation BU – CanOpen

Pin Señal Descripción

1: CAN_GND Tierra / 0 V/V-

2: CAN_L CAN_L nivel bus (dominante bajo)

3: CAN_SHLD Opcional malla CAN

4: CAN_H CAN_H nivel bus (dominante alto)

5: CAN_V+ Opcional CAN alimentación externa positiva

Conector abierto

Capa Física

Page 18: Schneider Electric- Automation BU – CanOpen Comunicaciones CanOpen

Schneider Electric - Automation BU – CanOpen

Un bus CANopen se puede dividir en distintos segmentos

Cada segmento se puede conectar por medio de un repetidor.

Cada segmento debe tener una resistencias de terminación (LT) en los dos extremos.

Tipos de conexión entre nodos:

Por derivación (drop), mediante drops conectados a Taps de puerto simple o múltiple.

En línea (daisy-chain), con un conector (Nodos 2, 8) o con dos conectores (Nodo 7).

ATENCIÓN: El uso de dos conectores no se recomienda ya que el cambio de un equipo provocaría el corte del bus.

Topología del bus CANopen

Page 19: Schneider Electric- Automation BU – CanOpen Comunicaciones CanOpen

Schneider Electric - Automation BU – CanOpen

LT

M ulti-T ap

D rop

LT LTT ap

N ode 2

N ode 3 N ode 4

R EP LT

D ropC hain

D rop

N ode 11 N ode 12

LT

N ode 1 N ode 5 N ode 6 N ode 7 N ode 8 N ode 9 N ode 10

C A N open B us

S egm ent 1 S egm ent 2

Topología del bus CANopen

Page 20: Schneider Electric- Automation BU – CanOpen Comunicaciones CanOpen

Schneider Electric - Automation BU – CanOpen

En un segmento se pueden conectar hasta 64 equipos CANopen

El uso de repetidores permite tener más de 64 equipos en una red CANopen, dividiendo el bus en más segmentos

=SE= provee cables para realizar la conexión en línea y para conexión en drop.

El cable CANopen debe tener dos pares trenzados y cada par con pantalla propia, para reducir las perturbaciones del cable de potencia a los cables de señal.

Topología del bus CANopen

Page 21: Schneider Electric- Automation BU – CanOpen Comunicaciones CanOpen

Schneider Electric - Automation BU – CanOpen

Para minimizar el efecto de las reflexiones desde el final del cable, se debe añadir una terminación de línea cerca de los dos finales. Cada terminación de línea se debe conectar entre los dos conectores CAN_H y CAN_L.

La terminación de línea debe ser una resistencia de 120, 5% de 1/4W

ATENCIÓN: Es recomendable que la resistencia de final de línea no esté en el dispositivo, ya que si esté se elimina del bus, se perdería la resistencia de final de línea.

N ode 1 N ode 2 N ode n

C AN _H

C AN _L

C AN _G N D

LT LTBalanced tw isted Pair

LT = L ine T erm ination

Topología del bus CANopen

Page 22: Schneider Electric- Automation BU – CanOpen Comunicaciones CanOpen

Schneider Electric - Automation BU – CanOpen

Longitud máxima del bus debido a la carga del segmento

Parámetros a tener en cuenta:

Sección del cable CANopen Mínimo valor de la resistencia de terminación Número de nodos en el bus Distintas tensiones de salida del nodo emisor Distintas tensiones de entrada del nodo receptor Distintas resistencias de entrada de los nodos

Sección de cable (mm²)

Tipo de cable 16 nodos max 32 nodos max 64 nodos max

0,25 AWG 24 210 m 195 m 170 m 0,34 AWG 22 345 m 320 m 275 m 0,75 AWG 18 575 m 530 m 460 m

Topología del bus CANopen

Page 23: Schneider Electric- Automation BU – CanOpen Comunicaciones CanOpen

Schneider Electric - Automation BU – CanOpen

Protocolo CanOpen

Capa de enlace

COB-ID. Arbitraje del bus

Detección de errores

Fichero EDS .Perfiles. Diccionario de objetos

Page 24: Schneider Electric- Automation BU – CanOpen Comunicaciones CanOpen

Schneider Electric - Automation BU – CanOpen

Multi-Master

Mensajes “BroadCast” (Productor/Consumidor)

Las colisiones se resuelven por prioridad. 0 es dominante frente al 1

Cada mensaje tiene un identificador (cuanto más bajo, más ceros tiene y más prioritario)

Cada mensaje lleva 8 bytes de datos

Los protocolos de alto nivel definen los servicios de comunicaciones:

ej: Propios de VW, Propios de Mercedes, Devicenet, CANopen ...

Capa de Enlace

Page 25: Schneider Electric- Automation BU – CanOpen Comunicaciones CanOpen

Schneider Electric - Automation BU – CanOpen

Usado por cualquier nodo para transmitir de 0 a 8 bytes “broadcast” a todo el mundo

Capa de Enlace Trama

Page 26: Schneider Electric- Automation BU – CanOpen Comunicaciones CanOpen

Schneider Electric - Automation BU – CanOpen

• Inicio de trama (SOF): Bit siempre dominante que indica inicio de la transmisión. Los nodos receptores se sincronizan con el flanco de bajada de este bit.

• Identificador : 11 bits más el bit RTR. En una trama de datos el bit RTR es dominante, en trama remota es recesivo

• Control : El bit IDE se utiliza para indicar si la trama es CAN Estandar (IDE dominante) o CAN Extendido (IDE recesivo).El bit RBO es siempre recesivo ( reservado ).Los cuatro bits de código indican en binario el número de bytes de datos de mensaje ( 0 a 8 ).

• Datos : Campo de 0 a 8 bytes ( 0 a 64 bits ).

• CRC : Código que genera el transmisor . Los receptores comprueban este código, se incluye un bit recesivo ( delimitador de CRC ).

• Campo de reconocimiento : ( ACK ) Campo de dos bits que el transmisor pone como recesivos, el primero se sobrescribe por un bit dominante por los nodos que han recibido el mensaje correctamente.

• Fin de trama (EOF) : Cierre de trama consta de 7 bits recesivos sucesivos.

• Espaciado entre tramas : mínimo de 3 bits recesivos.

Estructura de la trama 2.0 A

RBO CRC

Page 27: Schneider Electric- Automation BU – CanOpen Comunicaciones CanOpen

Schneider Electric - Automation BU – CanOpen

El COB-ID, en realidad será el Identificador del mensaje CAN en el bus CAN

El COB-ID es un número que es una combinación entre el numero de nodo CANopen y el servicio de comunicaciones que se desea (4+7 bits)

El COB-ID serían los canales por los que los dispositivos envían y reciben información

Por ejemplo:

Un PDO de un dispositivo tiene un COB-ID único

Un dispositivo tiene dos COB-ID para los SDO (comunicaciones explícitas), uno para recibir información y otro para enviarla

COB-ID – Arbitraje del Bus

Page 28: Schneider Electric- Automation BU – CanOpen Comunicaciones CanOpen

Schneider Electric - Automation BU – CanOpen

El identificador COB-ID (Communication Object Identifier) tiene dos funciones principales.

Arbitraje del bus especificación de las prioridades de transmisión. El objeto de comunicación con el COB_ID más bajo es el de mayor prioridad en la red.

Identificación de los objetos de comunicación, el equipo de red reconoce el tipo de servicio que se demanda ( NMT, SYNC, TxPDO, RxPDO , SDO, EMCY )

Se compone de 2 partes:

Código de función, 4 bits

Node-ID, 7 bits

COB-ID – Arbitraje del Bus

Page 29: Schneider Electric- Automation BU – CanOpen Comunicaciones CanOpen

Schneider Electric - Automation BU – CanOpen

102 4

ide n

tif i

cad

ore

sM

áxim

o r

eser

v ad

os

pa r

a P

DO

s.

COB-ID – Definición de los Identificadores

Page 30: Schneider Electric- Automation BU – CanOpen Comunicaciones CanOpen

Schneider Electric - Automation BU – CanOpen

El protocolo CAN maneja el acceso al bus siguiendo el concepto de “Carrier Sense Multiple Access with Collision Detection”

¡Si se produce una colisión, NO se destruyen los mensajes! No se desperdicia ancho de banda en colisiones

A diferencia de Ethernet, en CAN las colisiones se resuelven. El mensaje con la prioridad más alta gana el acceso al bus

Cada mensaje tiene un identificador que determina su prioridad

Cada nodo debe usar un ID diferente para evitar colisiones con mensajes de la misma prioridad

Este proceso se llama “CSMA/CD con AMP”:

AMP – “Arbitraje por Prioridad de Mensaje”

CSMA/CD – Acceso al Bus

Page 31: Schneider Electric- Automation BU – CanOpen Comunicaciones CanOpen

Schneider Electric - Automation BU – CanOpen

Nodo X

Nodo A

Nodo B

Nodo C

CSMA/CD – Acceso al Bus

Se compara el Identificador y por prioridad va saliendo una u otra trama

Orden de Transmisión de las tramas

Petición deTransmisión

Resto

Nodo A

Nodo B

Nodo C

Fase deArbitraje

Bus CAN

1erBit

Nodo B sepierde

Nodo C se pierde

Campo de identificación1

0 0 0 0

0

0 0

0 0

0

0

1 1 1

1 1

1 1 1

1 10

Page 32: Schneider Electric- Automation BU – CanOpen Comunicaciones CanOpen

Schneider Electric - Automation BU – CanOpen

Node AIdleRecibeTransmite

Node BIdleRecibeTransmite

CAN Bus

Recesivo

Recesivo

Recesivo

Dominante

Dominante

Dominante

TX

TX

IdleActivo

Acknowledge Slot

Ack. Delimiter

CampoAck.

Detección de errores / Reconocimiento

Cada trama tiene que ser reconocida por todos los nodos receptores

Con que un único nodo no reciba el mensaje correctamente, en lugar de reconocerlo, generará una trama de error

CampoCRC

Campo de fin de Frame

Page 33: Schneider Electric- Automation BU – CanOpen Comunicaciones CanOpen

Schneider Electric - Automation BU – CanOpen

Estandarizado por CiA (www.can-cia.com) CAN en la Automatización

Protocolo de alto nivel de CAN. Define servicios de comunicación orientados a soluciones industriales de automatización

Cada dispositivo de un cierto tipo, sea del fabricante que sea, comunica sus funciones básicas mediante el mismo perfil (DS)

La información de cada nodo se estructura en un Diccionario

Productor / Consumidor para datos (PDO = Comunicaciones Implícitas)

Maestro / Esclavo para configuraciones y comunicaciones explícitas (SDO)

Maestro / Esclavo para gestión de red (NMT)

Protocolo CANopen

Page 34: Schneider Electric- Automation BU – CanOpen Comunicaciones CanOpen

Schneider Electric - Automation BU – CanOpen

Protocolo CANopen

Page 35: Schneider Electric- Automation BU – CanOpen Comunicaciones CanOpen

Schneider Electric - Automation BU – CanOpen

Un equipo CANopen se puede dividir en tres partes:

Comunication interface: provee los servicios de envío y recepción de objetos de

comunicación por el bus.

Object dictionary: Define todos los tipos de datos, objetos de comunicación y objetos

de aplicación utilizados por el equipo. Esta información se encuentra en el archivo

EDS.

Application: Contiene la funcionalidad de control del equipo y el interfase con el

hardware del equipo

Protocolo CANopen

Page 36: Schneider Electric- Automation BU – CanOpen Comunicaciones CanOpen

Schneider Electric - Automation BU – CanOpen

En los EDS se especifica la implementación exacta.

Se especifica el Diccionario de Objetos completo para un determinado dispositivo

El formato EDS es similar a los INI de Windows o a los GSD de Profibus.

Para que el Master pueda conocer el Diccionario de Objetos de cada nodo, necesita poder acceder al EDS localmente.

Un master que corre en un controlador “embedded” tendrá la información guardada en su memoria.

Una herramienta de configuración accederá directamente al fichero EDS.

Ficheros EDS

Page 37: Schneider Electric- Automation BU – CanOpen Comunicaciones CanOpen

Schneider Electric - Automation BU – CanOpen

[FileInfo]

FileName=A58_F.eds

FileVersion=1

FileRevision=2

Description=Carte Option ATV58

CreationTime=00:00AM

CreationDate=12-05-2000

CreatedBy=Marie-Annick Menanteau, Schneider Electric

[DeviceInfo]

VendorName=Schneider Electric

ProductName=ATV58_F

ProductVersion=1

ProductRevision=1

BaudRate_10=0

BaudRate_20=0

BaudRate_50=0

BaudRate_100=0

BaudRate_125=1

BaudRate_250=1

BaudRate_500=1

BaudRate_800=0

BaudRate_1000=1

Granularity=0x8

VendorNumber=0x0200005a

ProductNumber=0

SimpleBootUpMaster=0

ExtendedBootUpMaster=0

SimpleBootUpSlave=1

ExtendedBootupSlave=0….

[Comments]

Lines=6

Line1=Used profile: 402

Line2=Manufacturer device name: VW3A58306

Line3=Hardware version: 1.0

Line4=Software version: 1.0

Line6= This is the EDS file for the CANopen Schneider Electric ATV58 drive module CAN Communication Adapter

[MandatoryObjects]

SupportedObjects=12

1=0x1000

2=0x1001

3=0x6040

4=0x6041

5=0x6042

6=0x6043

7=0x6044

8=0x6046

9=0x6048

10=0x6049

11=0x6060

12=0x6061

[1000]

ParameterName=Device Type

ObjectType=7

DataType=0x0007

AccessType=RO

DefaultValue=0x10192

PDOMapping=0

Ficheros EDS

Page 38: Schneider Electric- Automation BU – CanOpen Comunicaciones CanOpen

Schneider Electric - Automation BU – CanOpen

CANopen communication profile (DSP-301- perfil básico ): Define una serie de parámetros

necesarios para comunicar con un equipo CANopen. Todos los equipos CANopen requieren

tener implementado el DSP-301. Índices asignados dentro del OD en el rango 1000h-1FFFh

CANopen device profiles (DSP-4xx): Define la funcionalidad de un tipo de equipo en particular

y como acceder a esa funcionalidad por medio del bus CAN. Los perfiles disponibles hasta ahora

son: DSP 401 (modulos E/S), DSP 402 (Control de drives y Motion), DSP 403 ( HMI ), DSP 405

(Equipos programables IEC1131) y DSP 406 (Encoders). Índices asignados dentro del OD en el

rango 6000h-9FFFh

CANopen Application profiles: Define la funcionalidad y la relaciones de comunicación de

todos los equipos CANopen del bus. Perfiles de aplicación disponibles: DS414 (maquinaria

textil), DS417 (Ascensores) y DS422 (Sistemas municipales).

En la capa aplicación se pueden definir los siguiente grupos de perfiles:

Perfiles CANopen

Page 39: Schneider Electric- Automation BU – CanOpen Comunicaciones CanOpen

Schneider Electric - Automation BU – CanOpen

DS301DS301

DS4xxDS4xx

Propio APropio A

Cada registro del diccionario tiene un índice y un subíndice (ej: 6000:01)

Cada registro puede tener el tamaño que se quiera

La parte de configuración de las comunicaciones sigue la norma DS 301

La parte de datos sigue la norma DS 4xx (xx dependiendo del tipo de dispositivo)

Existe una tercera parte propia del dispositivo (Definida en el fichero EDS)

Todos los dispositivos CANopen tienen el perfil de comunicaciones DS301

Todos los dispositivos de UN MISMO TIPO, tienen el perfil de datos DS4xx

Cada Dispositivo tiene una parte del diccionario propia. (Descrita en el fichero EDS)

                                                                                                     

Diccionario de objetos (OD)

Page 40: Schneider Electric- Automation BU – CanOpen Comunicaciones CanOpen

Schneider Electric - Automation BU – CanOpen

El diccionario de Objetos contiene todos los parámetros del equipo que son accesibles mediante comunicaciones por medio del bus

Hay una serie de parámetros comunes a todo equipo CANopen y que vienen definidos según el perfil del equipo: DS301, DS4xx. Todo equipo con perfil DS4xx contiene los parámetros del perfil DS301.

Hay una serie de parámetros que son de libre definición por parte del fabricante.

La descripción del OD se realiza en forma de un archivo EDS (Electronic Data Sheet) en formato ASCII. Este archivo sigue una sintaxis estricta y se puede utilizar en todos los configuradores de bus CANopen (Sycon etc.)

Cada objeto del diccionario se puede acceder mediante:

Un índice de 16-bitUn subíndice de 8-bit.

Diccionario de objetos (OD)

Page 41: Schneider Electric- Automation BU – CanOpen Comunicaciones CanOpen

Schneider Electric - Automation BU – CanOpen

Variables de ajuste del ATV312

Rampa de aceleración

Rampa de deceleración

Diccionario de objetos (OD)

Page 42: Schneider Electric- Automation BU – CanOpen Comunicaciones CanOpen

Schneider Electric - Automation BU – CanOpen

Servicios de Comunicación

Comunicaciones implícitas ( PDO )

Comunicaciones explícitas ( SDO )

Page 43: Schneider Electric- Automation BU – CanOpen Comunicaciones CanOpen

Schneider Electric - Automation BU – CanOpen

¿Qué servicios de comunicaciones están disponibles?

SDO – Objetos de comunicación punto a punto: (Service Data Objects)

PDO – Objetos de comunicación implícita: (Process Data Objects)

Objetos de comunicaciones especiales: (Special Function Objects)

Sincronización

Emergencia

Objetos de gestión de la red: (Network Management Objects)

Mensajes NMT

“Node Guarding”

“Heartbeat”

En CAN, estos objetos se asocian con mensajes con identificadores específicos. Ciertos

identificadores están reservados para ciertos objetos de comunicaciones

Servicios de comunicación CANopen

Page 44: Schneider Electric- Automation BU – CanOpen Comunicaciones CanOpen

Schneider Electric - Automation BU – CanOpen

PDO: Productor / Consumidor

El PRODUCTOR es una entidad individual que produce información

El CONSUMIDOR es una entidad que usa la información para hacer algo (diferentes entidades pueden usar la misma información)

CONSUMIDOR N°1

Voy a perder el tren!!!

CONSUMIDOR N°2

Vamos a ver una pelicula...

PRODUCTOR

Son las 6 pm

Comunicación implícita PDO

Page 45: Schneider Electric- Automation BU – CanOpen Comunicaciones CanOpen

Schneider Electric - Automation BU – CanOpen

PDO: Productor / Consumidor

PDO: “Process Data Objects”

Comunicaciones implícitas

El servicio más importante de CANopen

Pensado para aplicaciones de tiempo real.

PDOs de recepción y PDOs de transmisión

Cada nodo lanza sus PDOs de transmisión al bus para que los consuma quien quiera

Con el SyCon configuramos cada nodo para que:

reciba los PDOs que nosotros queramos

transmita en PDOs los índices de su diccionario que nosotros queramos

Comunicación implícita PDO

Page 46: Schneider Electric- Automation BU – CanOpen Comunicaciones CanOpen

Schneider Electric - Automation BU – CanOpen

Por defecto, cada nodo tiene acceso a solo 4 PDOs

Dos tipos de parámetros para los PDOs:

Parámetros de configuración de los PDO

¿Que ID de mensaje CAN se usa?

Define el “linking” (qué ID se usa para Transmitir o Recibir datos)

¿Cuando se lanza el mensaje?(modo de transmisión)

Parámetros de mapeado del PDO

Qué objetos del diccionario están “mapeados” (incluidos) en el PDO

Máximo de 8 bytes por mensaje

Comunicación implícita PDO

Page 47: Schneider Electric- Automation BU – CanOpen Comunicaciones CanOpen

Schneider Electric - Automation BU – CanOpen

ID CANopen 2

Indi

ce/S

ubÍn

dice

Dicc

iona

rio

Datos PDO

ID CANopen 1

Dispositivo A: Productor (Entradas Digitales)

PLCConsume los datos del dispositivo A

Bus CANopenLos datos están actualizados en el bus en tiempo real

%MW

En SyCon se seleccionan los datos a comunicar

En UNITY se selecciona donde se dejan los datos

PDO

Comunicación implícita PDO

Page 48: Schneider Electric- Automation BU – CanOpen Comunicaciones CanOpen

Schneider Electric - Automation BU – CanOpen

MAPEADO DE PDOs

Una de las ventajas que ofrece CANopen respecto a otros buses es la posibilidad de configurar el contenido de los parámetros que se envían/reciben en un PDO. A esto de le denomina “mapeado dinámico”. Los objetos mapeables permitidos por el equipo se encuentran contenidos en el archivo EDS que se proporciona con cada equipo de CANopen.

Diccionario de Objetos (OD)

ATENCIÓN: No todos los PDOs de un equipo se pueden mapear. En ciertos PDOs su contenido es fijo y no puede ser cambiado por el usuario. A esto de le denomina “mapeado fijo”. Por ello es importante leer la documentación del equipo y ver cual de los PDOs del equipo ofrecen la posibilidad de ser mapeados.

Page 49: Schneider Electric- Automation BU – CanOpen Comunicaciones CanOpen

Schneider Electric - Automation BU – CanOpen

6000h0 UNSIGNED8

Process data, digital inputs

1 UNSIGNED8 8-bit digital input2 UNSIGNED8 8-bit digital input

= 2 (Number of sub-index entries)

1A00h0 UNSIGNED8 = 4 (Number of used map entries)1 UNSIGNED32 = 6000 01 08h (Idx 6000, SubIdx 1, 8 bit)

1st Transmit PDO - Mapping

2 UNSIGNED32 = 6000 02 08h (Idx 6000, SubIdx 2, 8 bit)

6401h0 UNSIGNED8

Process data, analog inputs

1 UNSIGNED16 16-bit analog input2 UNSIGNED16 16-bit analog input

= 2 (Number of sub-index entries)

3 UNSIGNED32 = 6401 01 10h (Idx 6401, SubIdx 1, 16 bit)4 UNSIGNED32 = 6401 02 10h (Idx 6401, SubIdx 2, 16 bit)

Índice SubIndTipo Descripción

6000h0 UNSIGNED8

Process data, digital inputs

1 UNSIGNED8 8-bit digital input1 UNSIGNED8 8-bit digital input2 UNSIGNED8 8-bit digital input2 UNSIGNED8 8-bit digital input

= 2 (Number of sub-index entries)

1A00h0 UNSIGNED8 = 4 (Number of used map entries)1 UNSIGNED32 = 6000 01 08h (Idx 6000, SubIdx 1, 8 bit)1 UNSIGNED32 = 6000 01 08h (Idx 6000, SubIdx 1, 8 bit)

1st Transmit PDO - Mapping

2 UNSIGNED32 = 6000 02 08h (Idx 6000, SubIdx 2, 8 bit)2 UNSIGNED32 = 6000 02 08h (Idx 6000, SubIdx 2, 8 bit)

6401h0 UNSIGNED8

Process data, analog inputs

1 UNSIGNED16 16-bit analog input2 UNSIGNED16 16-bit analog input1 UNSIGNED16 16-bit analog input2 UNSIGNED16 16-bit analog input

= 2 (Number of sub-index entries)

3 UNSIGNED32 = 6401 01 10h (Idx 6401, SubIdx 1, 16 bit)4 UNSIGNED32 = 6401 02 10h (Idx 6401, SubIdx 2, 16 bit)3 UNSIGNED32 = 6401 01 10h (Idx 6401, SubIdx 1, 16 bit)4 UNSIGNED32 = 6401 02 10h (Idx 6401, SubIdx 2, 16 bit)

Índice SubIndTipo Descripción

Diccionario de objetos del nodo

Datos PDO

En SyCon se seleccionan los datos a comunicar, es decir, cuando arranca el gestor de la red, el maestro escribe en los dispositivos esclavo (mediante SDOs) que datos formaran cada PDO (definición de los PDOs )

En este caso se dejan sin usar 2 bytes de los 8 bytes disponibles en cada PDO

D In 2

Byte 2TPDO1

A In 1 A In 2

Byte 3 Byte 4 Byte 5 Byte 6 Byte 7 Byte 8

UnusedD In 1

Byte 1

D In 2

Byte 2

D In 2

Byte 2TPDO1

A In 1 A In 2

Byte 3 Byte 4 Byte 5 Byte 6

A In 1 A In 2

Byte 3 Byte 4 Byte 5 Byte 6 Byte 7 Byte 8

Unused

Byte 7 Byte 8

UnusedD In 1

Byte 1

D In 1

Byte 1

Trama final

Cada PDO puede contener hasta 8 bytes de datos

Cada PDO puede tener su tiempo de ciclo particular

Mapeado de PDO’s

Page 50: Schneider Electric- Automation BU – CanOpen Comunicaciones CanOpen

Schneider Electric - Automation BU – CanOpen

Configuración hardware – Via nEntradas: num. Palabras y Índice 1º

Salidas: num. Palabras y Índice 1º

Selección Base de datos: Proyecto.co

Modo Carga configuración: UNITY

En la pantalla de configuración de CanOpen en Unity parametrizamos la PCMCIA TSX CPP 110 módulo CanOpen

Comunicación implícita PDO

Page 51: Schneider Electric- Automation BU – CanOpen Comunicaciones CanOpen

Schneider Electric - Automation BU – CanOpen

Sirven para que el Gestor o Maestro de red, configure los PDOs de cada dispositivo al arrancar

Sirve para establecer comunicaciones explícitas entre dispositivos, comunicación punto a punto entre el maestro y los nodos.

Podemos acceder a todos los objetos del diccionario de cualquier nodo del bus

Podemos gestionar los SDO’s por programa, con lo que si algún dato no lo necesitamos en tiempo real, podremos acceder a él en cualquier momento y sin haber configurado nada

Los SDOs se pueden lanzar desde la pantalla de depuración de UNITY, se puede leer y escribir

Comunicación explícita SDO

Page 52: Schneider Electric- Automation BU – CanOpen Comunicaciones CanOpen

Schneider Electric - Automation BU – CanOpen

IDs de CAN usados por defecto para la comunicación SDO

Las transferencias SDO se usan por el Maestro o por la herramienta de

configuración para acceder al Diccionario de objetos de los esclavos

Implementa una comunicación punto a punto

Maestro

Envía una petición SDO a cada

nodo usando el ID CAN:

600h + ID Nodo

Espera respuestaen ID CAN:

580h + ID Nodo

Nodo 3Rx SDO: 603h Tx SDO: 583h

Nodo 2Rx SDO: 602h Tx SDO: 582h

Nodo 1Rx SDO: 601hTx SDO: 581h

Comunicación explícita SDO

Page 53: Schneider Electric- Automation BU – CanOpen Comunicaciones CanOpen

Schneider Electric - Automation BU – CanOpen

Consultar el índice y subíndice de la entrada en el diccionario del nodo CANopen que se quiere leer.

Ejemplo:

ID nodo=3

Índice=6200 / SubÍndice= 01 (Tamaño 1 word)

Comunicación explícita SDO. READ_VAR

Param.Gestión

DatosLectura

Page 54: Schneider Electric- Automation BU – CanOpen Comunicaciones CanOpen

Schneider Electric - Automation BU – CanOpen

Consultar el índice y subíndice de la entrada en el diccionario del nodo CANopen

Ejemplo:

ID nodo=3

Índice=6200 / SubÍndice= 01 (Tamaño 1 word)

DatosEscritura

Param.Gestión

Se debe inicializar el num de palabras a

enviar

Comunicación explícita SDO.WRITE_VAR