Comunicaciones CanOpen.

1 Comunicaciones CanOpen ...
Author: Iuceph Plasencia
0 downloads 0 Views

1 Comunicaciones CanOpen

2 Agenda Generalidades Protocolo CanOpen Servicios de ComunicaciónEsta formación está dividida en los apartados siguientes: 1.- CONCEPTOS GENERALES Donde trataremos de entender los requerimientos de nuestros clientes, a la hora de plantearse una nueva instalación. Trataremos conceptos necesarios para conseguir una instalación eficiente, como el CAUDAL. Y finalmente veremos las ventajas de realizar instalaciones con variador de velocidad. 2.-NUEVOS VARIADORES En la segunda parte, veremos algunas características muy generales de lo variadores de velocidad multi-aplicación hasta 15 kW de Schneider Electric 3.-EJEMPLOS DE APLICACIONES El punto 3 trata la vertiente más práctica de la formación, ya que veremos algunos ejemplos de instalaciones sencillas de bombeo y ventilacíon 4.- PROGRAMACION En este punto parametrizaremos algunas de las aplicaciones propuestas en el apartado anterior.

3 Generalidades Historia Características generales de CanOpenInstituto Schneider Electric de Formación Generalidades Historia Características generales de CanOpen Capa física Topología del bus

4 Historia 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

5 Historia 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”) 1993: CAN de Alta Velocidad (1 Mbps/Identificadores de 11 bits) estándar ISO = 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).

6 Características Generales de CanOpenCANopen = 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)

7 Características Generales de CanOpenCANopen Communicación Perfil CiA DS-301 VACIO CAN 2.0 A and B + ISO 11898 CAN 2.0 A and B = ISO 11898 ISO DS-102 Perfiles dispositivo CiA DSP-401 I/O modules CiA DSP-402 Drives CiA DSP-404 Dispositivos medida CiA DSP-4xx APLICACIÓN PRESENTACIÓN SESIÓN TRANSPORTE RED ENLACE = LLC + MAC FÍSICA 7 6 5 4 3 2 1 CAN especificaciones

8 Características Generales de CanOpenCAN 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.

9 Características Generales de CanOpenProtocolo Multimaestro Cualquier 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 prioridades Tiempo de latencia reducido para mensajes de alta prioridad, incluso a elevada carga de bus causada por mensajes de baja prioridad. Longitud de datos limitada Suficiente 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.

10 Características Generales de CanOpenGestió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”

11 Resumen : CAN de un vistazoCaracterísticas Generales de 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 This slide is “for the student’s reference” – they should book mark it as it summarizes the main features of CAN. In summary, CAN provides a reliable and safe method to share up to 8 bytes “with everybody else” on the network. However, it does not specify data types (what is in a message and how is that data structured) and transmission types (what exactly triggers a message to be sent – a timer, COS – change-of-state, other?). All of these are defined by a HLP – Higher Layer Protocol.

12 Capa Física Características Físicas5 CAN_H 3.5 Voltaje (V) 2.5 CAN_L 1.5 Recesivo Dominante Recesivo Time 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

13 Capa Física CAN y EMI EMI Nodo A Nodo B Nodo C CAN_H CAN-Bus CAN_LCAN es insensitivo a las interferencias electromagnéticas debido al uso de una señal diferencial Nodo A Nodo B Nodo C V CAN_H U diff CAN_L t CAN_H Due to the differential nature of the signal, CAN is insensitive to electromagnetic interference, because upon disturbance both bus lines are affected in the same way which leaves the differential signal unaffected. To reduce the sensitivity against electromagnetic interference even more, the bus lines can additionally be shielded. This also reduces the electromagnetic emission of the bus itself, especially at high baud rates. CAN-Bus CAN_L EMI

14 Relación entre Velocidad (Baud Rate) y longitud del busCapa Física Relación entre Velocidad (Baud Rate) y longitud del bus Hasta 1Mbit  40m de longitud de bus o Hasta 1000m  50 kbit Bit Rate [kbps] 1000 Considerando que las líneas del Bus son eléctricas (p.ej. Par trenzado) 500 200 100 50 20 The maximum CAN bus speed is 1Mbit, which can be achieved with a bus length of up to about 40 meters when using a twisted wire pair. For bus lengths longer than 40 meters the bus speed must be reduced. A 1000 meter bus can still be realized with a 50 KBaud bus speed. Over-the-thumb rule: to double the distance, cut the speed in half. 10 5 10 40 100 200 1000 10,000 Longitud de Bus CAN [m]

15 Capa Física Características Físicas ** Secciones para 32 esclavos como máximo

16 Capa Física Conector sub DB9 Pin Señal Descripción 1: ReservadoCapa Física Conector sub DB9 Pin Señal Descripción 1: Reservado 2: CAN_L CAN_L nivel bus dominante bajo 3: CAN_GND Linea de Tierra 4: Reservado 5: CAN_SHLD Opcional malla CAN 6: GND Tierra opcional 7: CAN_H CAN_H nivel bus dominante alto 8: Reservado 9: CAN_V+ Opcional CAN alimentación externa positiva

17 Capa Física Conector abierto 1: CAN_GND Tierra / 0 V/V-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

18 Topología del bus CANopenUn 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. 2

19 Topología del bus CANopen2

20 Topología del bus CANopenEn 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. 2

21 Topología del bus CANopenPara 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. 2

22 Topología del bus CANopenLongitud 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 2

23 Protocolo CanOpen Capa de enlace COB-ID. Arbitraje del busInstituto Schneider Electric de Formación Protocolo CanOpen Capa de enlace COB-ID. Arbitraje del bus Detección de errores Fichero EDS .Perfiles. Diccionario de objetos

24 Capa de Enlace Multi-MasterMensajes “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 ...

25 Capa de Enlace Trama Usado por cualquier nodo para transmitir de 0 a 8 bytes “broadcast” a todo el mundo A "Data Frame" is generated by a CAN node when the node wishes to transmit data. The Standard CAN Data Frame is shown above. The frame begins with a dominant Start Of Frame bit for hard synchronization of all nodes. The Start of Frame bit is followed by the Arbitration Field consisting of 12 bits: The 11-bit Identifier, which reflects the contents and priority of the message, and the Remote Transmission Request bit. The Remote transmission request bit is used to distinguish a Data Frame (RTR = dominant) from a Remote Frame (RTR = recessive). NOTE: The CiA does not recommend to use RTR, as there are some “known incompatibilities” between different CAN chips. The next field is the Control Field, consisting of 6 bits. The first bit of this field is called the IDE bit (Identifier Extension) and is at dominant state to specify that the frame is a Standard Frame. The following bit is reserved and defined as a dominant bit. The remaining 4 bits of the Control Field are the Data Length Code (DLC) and specify the number of bytes of data contained in the message (0 - 8 bytes). The data being sent follows in the Data Field which is of the length defined by the DLC above (0, 8, 16, ...., 56 or 64 bits). The Cyclic Redundancy Field (CRC field) follows and is used to detect possible transmission errors. The CRC Field consists of a 15 bit CRC sequence, completed by the recessive CRC Delimiter bit. The next field is the Acknowledge Field. During the ACK Slot bit the transmitting node sends out a recessive bit. Any node that has received an error free frame acknowledges the correct reception of the frame by sending back a dominant bit (regardless of whether the node is configured to accept that specific message or not). From this it can be seen that CAN belongs to the "in-bit-response" group of protocols. The recessive Acknowledge Delimiter completes the Acknowledge Slot and may not be overwritten by a dominant bit. Seven recessive bits (End of Frame) end the Data Frame.

26 Estructura de la trama 2.0 ARBO CRC 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.

27 COB-ID – Arbitraje del BusEl 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

28 COB-ID – Arbitraje del BusEl 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

29 COB-ID – Definición de los IdentificadoresMáximo reservados para PDOs.

30 CSMA/CD – Acceso al Bus 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 is used by Ethernet However, Ethernet jams the bus after a collision detection. The nodes try again later. The higher the usage, the higher the risk of collisions. At a certain point Ethernet is unusable if to many nodes are connected.

31 Orden de Transmisión de las tramasCSMA/CD – Acceso al Bus Nodo X Orden de Transmisión de las tramas Nodo A Nodo B Nodo C Petición de Transmisión Resto Nodo A Nodo B Nodo C Fase de Arbitraje Bus CAN 1er Bit Nodo B se pierde Nodo C se pierde Campo de identificación 1 The arbitration concept avoids collisions of messages whose transmission was started by more than one node simultaneously and makes sure the most important message is sent first without time loss. In the picture above you see the trace of the transmit pins of three bus nodes called A, B and C, and the resulting bus state according to the wired-AND principle. If two or more bus nodes start their transmission at the same time after having found the bus to be idle, collision of the messages is avoided by bitwise arbitration. Each node sends the bits of its message identifier and monitors the bus level. At a certain time nodes A and C send a dominant identifier bit. Node B sends a recessive identifier bit but reads back a dominant one. Node B loses bus arbitration and switches to receive mode. Some bits later node C loses arbitration against node A. This means that the message identifier of node A has a lower binary value and therefore a higher priority than the messages of nodes B and C. In this way, the bus node with the highest priority message wins arbitration without losing time by having to repeat the message. Nodes B and C automatically try to repeat their transmission once the bus returns to the idle state. Node B loses against node C, so the message of node C is transmitted next, followed by node B’s message. It is not permitted for different nodes to send messages with the same identifier as arbitration could fail leading to collisions and errors. Se compara el Identificador y por prioridad va saliendo una u otra trama

32 Detección de errores / ReconocimientoCada 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 Campo CRC Campo Ack. Campo de fin de Frame Node A Recesivo Idle Recibe Transmite TX Dominante Node B Recesivo Idle Recibe Transmite TX Dominante The ACK field is set to “1” (recessive) by the transmitter of a message. HOWEVER, it expects to read back a “0” (dominant) In CAN low-level hardware every node receives EVERY message on the bus and EVERY node will actively set the ACK field to zero if it received the message successfully. If a single node detects a CRC checksum error or any other error it will actively destroy the message instead (so called error frame) in which case all other nodes recognize the error and discard the message. CAN Bus Recesivo Idle Activo Dominante Ack. Delimiter Acknowledge Slot

33 Protocolo 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)

34 Protocolo CANopen

35 Protocolo 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

36 Ficheros EDS 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. Electronic datasheets are electronically readable specifications. There is a free EDS Checker (checks if EDS syntax of an EDS is correct) available for download. Go to for links to download it.

37 Ficheros EDS [FileInfo] [Comments] FileName=A58_F.eds Lines=6FileVersion=1 FileRevision=2 Description=Carte Option ATV58 CreationTime=00:00AM CreationDate= 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=0x a 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: Line4=Software version: 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

38 Perfiles CANopen En la capa aplicación se pueden definir los siguiente grupos de perfiles: 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).

39 Diccionario de objetos (OD)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                                                                                                       DS301 Todos los dispositivos de UN MISMO TIPO, tienen el perfil de datos DS4xx DS4xx Propio A Cada Dispositivo tiene una parte del diccionario propia. (Descrita en el fichero EDS)

40 Diccionario de objetos (OD)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-bit Un subíndice de 8-bit.

41 Diccionario de objetos (OD)Variables de ajuste del ATV312 Rampa de aceleración Rampa de deceleración

42 Servicios de ComunicaciónInstituto Schneider Electric de Formación Servicios de Comunicación Comunicaciones implícitas ( PDO ) Comunicaciones explícitas ( SDO )

43 ¿Qué servicios de comunicaciones están disponibles?Servicios de comunicación 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 SDO: Read or write accesses to single OD entries. Master driven. Configuration data AND process data accessible. PDO: Slave driven communication of multiple process data variables.

44 Vamos a ver una pelicula...Comunicación implícita PDO 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) PRODUCTOR Son las 6 pm CONSUMIDOR N°1 Voy a perder el tren!!! CONSUMIDOR N°2 Vamos a ver una pelicula...

45 Comunicación implícita PDOPDO: 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

46 Comunicación implícita PDOPor 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 In general, a PDO is a completely configurable CAN message. It can be configured what the data contents is (mapping, almost any combination of process data possible), it can be configured which CAN message ID is used (the default setting are those from the predefined connection set) and it can be configured when the message is transmitted (time driven, event driven or poll).

47 Comunicación implícita PDOEn SyCon se seleccionan los datos a comunicar ID CANopen 2 ID CANopen 1 Datos PDO %MW Indice/SubÍndice Diccionario En UNITY se selecciona donde se dejan los datos Dispositivo A: Productor (Entradas Digitales) Bus CANopen Los datos están actualizados en el bus en tiempo real PLC Consume los datos del dispositivo A

48 Diccionario de Objetos (OD)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. 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.

49 Mapeado de PDO’s Datos PDO Diccionario de objetos del nodo Trama finalEn 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 ) Diccionario de objetos del nodo Cada PDO puede contener hasta 8 bytes de datos Cada PDO puede tener su tiempo de ciclo particular Trama final En este caso se dejan sin usar 2 bytes de los 8 bytes disponibles en cada PDO

50 Comunicación implícita PDOEn la pantalla de configuración de CanOpen en Unity parametrizamos la PCMCIA TSX CPP 110 módulo CanOpen Configuración hardware – Via n Entradas: num. Palabras y Índice 1º Salidas: num. Palabras y Índice 1º Selección Base de datos: Proyecto.co Modo Carga configuración: UNITY

51 Comunicación explícita SDOSirven 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

52 IDs de CAN usados por defecto para la comunicación SDOComunicación explícita SDO IDs de CAN usados por defecto para la comunicación SDO Maestro Envía una petición SDO a cada nodo usando el ID CAN: 600h + ID Nodo Espera respuesta en ID CAN: 580h + ID Nodo Nodo 1 Rx SDO: 601h Tx SDO: 581h Nodo 2 Rx SDO: 602h Tx SDO: 582h Nodo 3 Rx SDO: 603h Tx SDO: 583h In order to reserve a 2-way communication channel between two nodes two CAN identifiers need to be reserved. If that is done using a “global” scheme (one pair for each node), every node will know which message IDs are reserved. It only uses the ones assigned to it and may ignore all others. For SDO communication one message pair is used for each node to implement a 2-way channel between the master and the individual slaves (127). 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

53 Comunicación explícita SDO. READ_VARConsultar 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) Datos Lectura Param. Gestión

54 Se debe inicializar el num de palabras a enviarComunicación explícita SDO.WRITE_VAR 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) Se debe inicializar el num de palabras a enviar Datos Escritura Param. Gestión