Parcial 3 COM merged - PDF
Document Details
Uploaded by UseableFermat9903
Universidad Pública de Navarra
Ignacio Del Villar
Tags
Summary
This document provides notes about industrial networks. It covers topics like communication protocols and industrial automation.
Full Transcript
Grado en Ingeniería en Tecnologías Industriales - Comunicaciones e instalaciones industriales 4. REDES DE CONTROL: PROFINET, ETHERCAT Y MODBUS Ignacio Del Villar 4. REDES DE CONTROL: PROFINET, ETHERCAT Y MODBUS 5.1. Introducción 5.2. Pro...
Grado en Ingeniería en Tecnologías Industriales - Comunicaciones e instalaciones industriales 4. REDES DE CONTROL: PROFINET, ETHERCAT Y MODBUS Ignacio Del Villar 4. REDES DE CONTROL: PROFINET, ETHERCAT Y MODBUS 5.1. Introducción 5.2. Profibus 5.3. Ethernet Industrial 5.4. Profinet 5.5. Ethercat 5.6. Ethernet/IP 5.7. Modbus 5.8. Resumen 4. REDES DE CONTROL: PROFINET, ETHERCAT Y MODBUS 5.1. Introducción 5.2. Profibus 5.3. Ethernet Industrial 5.4. Profinet 5.5. Ethercat 5.6. Ethernet/IP 5.7. Modbus 5.8. Resumen Introducción Fue desarrollado por la empresa Modicon (actual Schneider Electric) en el año 1979 En sus orígenes tenía como tarea comunicar los PLCs de la empresa Modicon. Se trata de un estándar de facto que por su simplicidad de implementación y de mantenimiento se emplea en muchas aplicaciones industriales Versiones Modbus RTU serie Modbus ASCII Modbus TCP Ethernet Modbus+ Cerrado Modbus IDA está soportado por la Modbus Organization (www.modbus.org), un grupo de usuarios independientes y suministradores de dispositivos cuyo objetivo es dirigir el protocolo de comunicaciones Modbus de cara a su utilización en sistemas distribuidos de automatización Introducción Pila de protocolos Capa de aplicación de Device Modbus Profiles and Application Objects Modbus on TCP TCP IP RS-485 Ethernet Otras versiones Modbus+ Maestro-esclavo IEEE 802.3 MODBUS es un protocolo de capa de aplicación, por lo que su objetivo es definir reglas que permitan organizar e interpretar datos, con lo que se erige como un sistema que soporta el envío de mensajes, sin que tenga importancia la capa física. Esto le confiere una gran versatilidad, hasta el punto de que se pueden transferir mensajes a través de otras redes mediante técnicas de encapsulación y desencapsulación. Modbus Serie Capa física MODBUS serie puede ir sobre cualquier medio aunque está fundamentalmente diseñado para RS-485 Se basa en topología maestro-esclavo sin discriminación entre tráfico en tiempo real y en tiempo no real La dirección en los dispositivos se pone manualmente Utiliza resistencias de fin de línea para evitar reflexiones de la señal transmitida Longitud máxima recomendada del bus: 1200 metros Número de dispositivos máximo que se puede conectar: 247 (cuando se supera la cifra de 30 dispositivos se recomienda el empleo de repetidores) Modbus Serie Capa de enlace de datos Entre el maestro y el esclavo se intercambian tramas del siguiente tipo Campos Dirección: 1 byte que se rellena con valores del 1 y el 247, dejando libre el 0 para los mensajes de difusión. Función: 1 byte que indica el tipo de mensaje Por ejemplo el código 3 indica solicitud de lectura de registros del esclavo y en la zona de datos se indica a partir de qué dirección se leen los datos y cuántos byte se desea leer, mientras que el mismo código enviado por el esclavo contiene los datos solicitados por el maestro Datos: varios byte dependiendo de la función (puede ir vacío si el tipo de función de la trama enviada por el maestro sólo requiere asentimiento por el esclavo) CRC: dos bytes finales de código de comprobación de errores (CRC) Modbus Serie Añadido de bits a la trama de enlace datos A la trama de nivel de enlace de datos: Dirección Código Código de control Datos enviados (N) Esclavo (1) Función (1) de error (2) se le añade información adicional cuando se manda a nivel físico por el cable: 1. Delimitadores: se coloca un espacio de como mínimo 1.75 bytes al inicio y al final de cada trama. 2. La transmisión a nivel físico se realiza enviando, por cada byte de la trama, 1 bit de inicio, 8 de datos (el bit menos significativo se envía como primero), 1 bit de paridad o ningún bit de paridad, y 1 o 2 bits de parada dependiendo de que se use o no el bit de paridad Modbus Serie Código de control de error El campo de control de error en Modbus Serie RTU se llama CRC y se compone de dos bytes. Tiene cierta complejidad. Así que aprenderemos solo el campo de control de error de Modbus Serie ASCII, una versión obsoleta pero más sencilla de entender. En Modbus Serie ASCII el campo de errores tiene solo un byte y se llama LRC. En el siguiente ejemplo es el byte 7E: Para obtenerlo se cogen todos los datos que hay hasta el LRC sin incluirlo, y se suman en binario byte a byte sin considerar el último de los acarreos, el del bit más significativo. Al resultado de 8 bit obtenido se le hace el complemento A 2, que es cambiar todos los bits de 0 a 1 y después sumar 1 Conclusiones sobre el código LRC: - Es sensible a ráfagas de errores. Si por 00010001 ejemplo el último de los bytes sumados es 00000011 11100011 en vez de 00000011, entonces se 00000000 obtiene como resultado final 10011110 (en + cursiva figuran los bits que son incorrectos) 01101011 - En cambio cuando cambian bits de la misma 00000000 posición en bytes diferentes se pueden dar 00000011 Cambio de 0s por 1s situaciones como que si en vez de que los 10000010 01111101 últimos bytes sean 00000000 y 00000011 son + 1 10000000 y 10000011, a pesar del error el 01111110 = 7E LRC no cambia Modbus TCP Encapsulamiento Como MODBUS trabaja a nivel de aplicación sin importar la capa física, para su adaptación a las redes Ethernet se emplea un encapsulado de la trama MODBUS RTU: Trama MODBUS Dirección Código Código de control Datos enviados (N) Esclavo (1) Función (1) de error (2) Se elimina Código Se elimina Datos enviados (N) Función (1) Identificador de Identificador de Identificad. Código Longitud (2) Datos enviados (N) Transacción (2) Protocolo (2) de Unidad (1) Función (1) Trama MODBUS TCP Campos de que consta la cabecera : Identificador de transacción: distingue los mensajes consecutivos cuando estos se envían a través de una conexión TCP sin que entre ellos llegue una respuesta de confirmación al equipo que envía dichos mensajes Identificador de protocolo: este campo siempre tiene el valor 0. En futuras extensiones del protocolo se ofrecerán diferentes variantes. Longitud: indica el número de bytes que hay como suma del identificador de unidad, del código de función y de los datos enviados. Identificador de unidad: identifica un servidor remoto en una red que no es TCP/IP. En una red TCP/IP este campo se pone a 0 o a todo unos. Modbus TCP Encapsulamiento La trama MODBUS TCP se encapsula en un paquete TCP que utiliza el puerto 502 (que es el asignado a MODBUS): Trama Modbus Tampoco hace discriminación de tipos de tráfico, lo que supone una desventaja frente a otros estándares basados en Ethernet como PROFInet o Ethernet/IP Modbus TCP Modelo cliente-servidor En vez de trabajar con el modelo maestro esclavo, se utiliza arquitectura cliente servidor (la de TCP/IP) El maestro hace las veces de cliente y el esclavo de servidor, pudiendo haber múltiples clientes que se conecten a un servidor Tipos de mensajes que se intercambian: Modbus Petición: mensaje que se envía del cliente al servidor para iniciar la transmisión. Modbus Confirmación: respuesta del servidor recibida en el lado del cliente. Mobus Indicación: mensaje de petición recibido en el lado del servidor. Modbus Respuesta: mensaje de respuesta que envía el Servidor. Request Indication Modbus client Modbus server Confirmation Response El modelo cliente-servidor, a diferencia del maestro esclavo, permite que un mismo equipo haga las veces de cliente y de servidor, algunas de ellas para poder ser aplicadas a multiples conexiones Por otro lado Modbus TCP, aunque considerado un protocol lento, se le puede mejorar mucho su eficiencia: https://www.controlengeurope.com/article/139766/Speeding-up-Modbus-TCP.aspx Modbus TCP Funciones y registros Modbus se organiza en torno a cuatro tipos básicos de datos Discrete Inputs – son bits de memoria de entrada (por ejemplo las entradas digitales) Coils (Outputs) – son bits de memoria de salida (por ejemplo las salidas digitales) Input Registers (Input Data) – son registros de memoria de entrada, típicamente de 16 bit de tamaño (por ejemplo las entradas analógicas) Holding Registers (Output Data) – son registros de memoria de salida, típicamente de 16 bit de tamaño (por ejemplo las salidas analógicas). También pueden ser registors de memoria de lectura/escritura como puede ser la zona de marcas de los autómatas Siemens Los tipos de datos se identifican tomando como base una dirección de referencia (0xxxx, 1xxxx, 3xxxx y 4xxxx), con las que se designa respectivamente a las coils, las discrete inputs, los input registers y los holding registers: Modbus TCP Funciones y registros Las direcciones con formato referencia no son direcciones de memoria explíticas. Internamente los dispositivos Modbus hacen una conversión y traducen esas direcciones al formato del equipo. Y viceversa, cuando transmiten, traducen la dirección en formato del equipo a dirección de referencia Por otro lado, además del formato referencia también está el formato dirección, que es una versión simplificada del formato referencia que se usa en las tramas Modbus A continuación se muestra una tabla resumen del formato referencia, el formato dirección y el caso específico de un fabricante, Siemens: Formato referencia Formato dirección Formato Siemens Entradas digitales 10001 0 I0.0 10002 1 I0.1 10003 2 I0.2 Salidas digitales 00001 0 Q0.0 00002 1 Q0.1 00003 2 Q0.2 Entradas analógicas 30001 0 IW0 30002 1 IW2 30003 2 IW4 Salidas analógica 40001 0 QW0 40002 1 QW2 40003 2 QW4 Modbus TCP Funciones y registros Es importante tener en cuenta que el formato referencia es el más completo, pues incluye en un solo número el tipo de datos y la dirección. Las funciones trabajan cada una con un formato referencia específico (por ejemplo 0xxxx, 1xxxx, 3xxxx, o 4xxxx). El primer dígito, el 0 1 3 o 4, indica el tipo de datos con el que trabaja, y en valor que hay en xxxx será la dirección de memoria El campo de funciones puede tener los valores 1-255, donde los rangos 65-72 y 100-110 se emplean para funciones definidas por el usuario Las funciones más utilizadas son: Modbus TCP Funciones y registros Función Read Coil (Output) Status Mensaje del cliente Mensaje del servidor Los datos de las salidas digitales son: Coil 3 Coil 2 Coil 1 Coil 0 Nota: en el mensaje del cliente la dirección de inicio está expresada en formato dirección. Es el formato que se usa para tramas Modbus. El formato referencia, al ser coil, debe ser 0xxxx, y en concreto en este caso es 00001 porque el formato referencia tiene siempre un desfase de 1 respecto del formato dirección. En formato Siemens es la dirección Q0.0 Modbus TCP Funciones y registros Función Read Holding Registers Mensaje del servidor Mensaje del cliente Nota: La dirección de inicio, como es típico en tramas Modbus, está expresada en formato dirección. En este caso es la dirección 5. El formato referencia, al ser holding register debe ser 4xxxx, y en concreto en este caso es 40006 porque el formato referencia tiene siempre un desfase de 1 respecto del formato dirección. En formato Siemens es la dirección QW10 En la trama de respuesta del servidor se devuelve el registro 40006 y 2 más, pues se han solicitado 3 registros Función Read Input Registers Mensaje del cliente Mensaje del servidor Nota: La dirección de inicio, como es típico en tramas Modbus, está expresada en formato dirección. En este caso es la dirección 2. El formato referencia, al ser input register debe ser 3xxxx, y en concreto en este caso es 30003 porque el formato referencia tiene siempre un desfase de 1 respecto del formato dirección. En formato Siemens es la dirección IW4 En la trama de respuesta del servidor se devuelve el registro 30003 y 1 más, pues se han solicitado 2 registros Modbus TCP Funciones y registros Función Force single coil Función Preset Single Register Mensaje del cliente y servidor Mensaje del cliente y servidor Función Force Multiple coils Mensaje del cliente Mensaje del servidor Los datos de las salidas digitales son: Coil 3 Coil 2 Coil 1 Coil 0 Modbus TCP Funciones y registros Función Preset Multiple Registers Mensaje del cliente Mensaje del servidor Mensaje del servidor Función Report Slave ID Mensaje del cliente Modbus TCP Funciones y registros Si ocurren una excepción se devuelve por el servidor un código de función (80H) + el número de la función que se ha enviado, y se añade en el siguiente campo un código de excepción Resumen Tabla resumen: Nombre de Número máximo Longitud Velocidad Síncrono Asentimiento la red de nodos máxima Modbus (incluyendo raíz) Serie ASCII 247 1200 m 100 kbps (1200 m) – No Sí 35 Mbps (10 m) Serie RTU 247 1200 m 100 kbps (1200 m) – No Sí 35 Mbps (10 m) TCP ilimitado 90 m * 100 Mbps – 1 Gbps No Sí El número de nodos con direccionamiento IP (el usado en Modbus TCP) es tan alto que se puede considerar como ilimitado (IP versión 6 tiene un número de bits para direccionar muy alto). *90 es la distancia máxima de un nodo hasta el switch, pero el switch a su vez puede ir conectado a otro e integrarse en la internet, que también funciona con IP, con lo que las distancias son mucho mayores 4. REDES DE CONTROL: PROFINET, ETHERCAT Y MODBUS 5.1. Introducción 5.2. Profibus 5.3. Ethernet Industrial 5.4. Profinet 5.5. Ethercat 5.6. Ethernet/IP 5.7. Modbus 5.8. Resumen RESUMEN En este capítulo se han visto los cuatro protocolos de red de control de uso muy extendido: Profinet, Ethercat, Modbus y Ethernet/IP. Profinet es la versión moderna de Profibus y es compatible con este con otros protocolos de redes de sensores como AS-i, lo que persigue el objetivo de la Totally Integrated Automation (TIA). Profinet también discrimina trafíco de mayor o menor determinismo Ethercat alcanza prestaciones similares a Profinet y tiene un enfoque parecido Modbus es otro protocolo de red de control sin gestión de prioridad pero sencillo de implementar. Además es un protocolo encapsulado para red IP Ethernet/IP es encapuslado como Modbus pero es capaz de gestionar prioridad RESUMEN A continuación se muestra una lista de los protocolos soportados por el S7-1200 Industrial Ethernet Grado en Ingeniería en Tecnologías Industriales - Comunicaciones e instalaciones industriales 5. REDES DE SENSORES Y ACTUADORES Ignacio Del Villar 5. REDES DE SENSORES Y ACTUADORES 5.1. Introducción 5.2. Bus CAN - Origen histórico de CAN - Características generales y aplicaciones - Versiones de CAN - Nodo CAN - Capa física y de enlace de datos - CAN bus en vehículos 5.3. AS-i - Características y estructura - Versiones de AS-i: 2.0 vs 2.1 - Ciclo de lectura y escritura con los esclavos - Configuración y programación de una red AS-i con S7-300 5.4. IO-Link - Características - Mensajes - Ejemplo de trama IO-Link - El espacio de memoria 5.5. Resumen Introducción En este capítulo se describirán tres redes de sensores muy importantes: IO-Link AS-interface (AS-i) CAN bus. Los protocolos de redes de control como Profinet y Ethercat gozan de una excelente compatibilidad con IO-Link y AS-i CAN bus no está tan asociado a redes de control y ofrece menores prestaciones en aplicaciones exigentes, pero también conviene conocerlo por su gran popularidad 5. REDES DE SENSORES Y ACTUADORES 5.1. Introducción 5.2. Bus CAN - Origen histórico de CAN - Características generales y aplicaciones - Versiones de CAN - Nodo CAN - Capa física y de enlace de datos - CAN bus en vehículos 5.3. AS-i - Características y estructura - Versiones de AS-i: 2.0 vs 2.1 - Ciclo de lectura y escritura con los esclavos - Configuración y programación de una red AS-i con S7-300 5.4. IO-Link - Características - Mensajes - Ejemplo de trama IO-Link - El espacio de memoria 5.5. Resumen Bus CAN Origen histórico de CAN Robert Bosch GmbH propuso Controller Area Network (CAN) para interconexión de componentes electrónicos del automóvil y se estandarizó en la norma ISO 11898-1 Características generales y aplicaciones: Se trata de un bus robusto, de uso sencillo, respuesta en tiempo real, y con aplicación en sistemas embebidos o abiertos Muchos fabricantes ofrecen en sus productos integración en redes CAN Se ofrecen herramientas hardware y software para análisis de bus CAN Es la base de CANOpen, DeviceNet, Sercos, SDS, CAN-Kingdom… Se utiliza en automatización naval, como subred de edificios inteligentes, ascensores, aire acondicionado, ferrocarril, aviones, equipos médicos, parques eólicos… Antiguamente en el automóvil se empleaban dos buses, pero ahora se usan más ABS Salpicadero Climatización Bus de baja Bus de alta velocidad velocidad Motor Suspensión Elevalunas Luces Buses CAN en VW Polo Bus CAN Red genérica de un vehículo actual Red de un vehículo actual concreto: Buses CAN en VW Polo Bus CAN Versiones de CAN 2.0A: los mensajes tienen un identificador de 11 bits 2.0B: los mensajes tienen un identificador de 29 bits Nodo CAN: consta de: Microcontrolador con software de capas altas del protocolo Controlador CAN: dispositivo que tiene implementado el protocolo CAN. Puede ser de dos tipos: 2.0B pasivo: recibe y transmite mensajes 2.0A, y recibe mensajes 2.0B pero no los guarda 2.0B activo: como el 2.0B pasivo pero además guarda mensajes 2.0B Transceptor de alta velocidad sobre par de hilos: convierte la señal de voltaje de circuito integrado a señal diferencial con valores acordes con el estándar CAN Los elementos del nodo CAN pueden ir integrados en un solo chip o separados: Microcontrolador + XTAL Controlador CAN TX RX Transceptor CAN can-h can-l gnd CAN_H CAN_L GND (0V) Bus CAN Capa de enlace de datos Se pueden transmitir cuatro tipos de tramas: Trama de datos (Data Frame): un nodo transmisor envía datos a los receptores Trama remota (Remote Frame): un nodo solicita la transmisión de una trama de datos con el mismo identificador Trama de error (Error Frame): la envía un nodo cuando detecta un error en el bus Trama de sobrecarga (Overload Frame): la envía un nodo cuando requiere un tiempo antes de recibir la siguiente trama Formato de la trama de datos o la remota: Mensaje Bus idle ACK EOF Arbitration field Control Data Field CRC 11 bit SID DLC Data (0-8 Bytes) 15 bits SOF RTR Delimiter Delimiter r0 Notas: r1: indica con estado dominante que lo que viene es trama 2.0A SID: standard identifier – identificador estándar del mensaje RTR: vale 0 si se trata de trama de datos y 1 si es remota Control: está formado por 6 bits (r1 y r0 para futuras apliaciones) DLC: indica el número de bytes del Data Field EOF: tiene 7 bits recesivos Después del EOF se envían 3 bit recesivos Bus CAN Capa de enlace de datos Gestión de acceso al medio – CSMA/CD + AMP (Arbitration on Message Priority) Cuando el bus está sin actividad (idle) varios nodos pueden transmitir Cada nodo compara los bits del campo identificador transmitidos con los recibidos Si detecta que recibe un bit dominante cuando ha enviado uno recesivo se pone en modo recepción: dominante Nodo 1 0 1 1 0 1 0 0 0 1 1 0 0 recesivo dominante 0 1 1 0 1 0 0 1 1 1 1 1 Nodo 2 recesivo Los bits 0, dominantes tienen dominante nivel de señal alto y los bits 1, 0 1 1 1 1 1 1 1 1 1 1 1 recesivos, nivel bajo (es lógica Nodo 3 recesivo invertida) SOF 10 9 8 7 6 5 4 3 2 1 0 0 Tiempo de bit nodo 3 nodo 2 abandona abandona Ventajas: No hay que esperar un tiempo variable a retransmitir como en Ethernet (CSMA/CD) No hay que esperar un turno de ranuras para cada nodo como en CSMA/CA (Collision Avoidance) Desventajas: No existe opción de establecer un equilibrio entre nodos (siempre hay prioridad) El nivel físico de cada bit debe ser estable (se reduce la velocidad de transmisión para garantizarlo) Bus CAN Capa de enlace de datos Sincronización Los datos se transmiten de forma asíncrona mediante codificación NRZ En los controladores CAN hay una señal de reloj local de frecuencia más elevada que la señal del bus y que hay que sincronizar cuando en la línea aparecen flancos de subida y de bajada Se emplea bit stuffing para garantizar transiciones cuando se transmiten 5 bits consecutivos de la misma polaridad (en la región SOF hasta CRC de las tramas de datos y remotas) Gestión de errores Error de bit: salvo en el arbitraje, cuando el nodo que transmite detectan que un bits recibido es diferente que el transmitido Error de relleno: si se detectan 6 o más bits de la misma polaridad Error de CRC Error de forma: bits con valor fijo tienen un valor diferente al esperado Error de reconocimiento: se refiere al bit ACK Cuando un nodo detecta un error envía 6 bit dominantes (se invalida el mensaje enviado a los demás nodos) y el nodo transmisor intentará retransmitir Bus CAN Capa de enlace de datos Filtros y máscaras en controladores El controlador, además de hardware para protocolo CAN, tiene uno o varios buffer de transmisión y uno o varios buffer de recepción dependiendo de la versión de CAN. Cada buffer de recepción tiene una máscara y uno o varios filtros En la versión que utilizamos en el laboratorio, cada nodo dispone de dos buffer de recepción (cada uno con su máscara), y 6 filtros (4 de ellos asociados a uno de los pares buffer/máscara y otros 2 asociados a al otro par buffer/máscara) A la hora de hacer los cálculos se considera la parte del mensaje que se recibe en el buffer y que corresponde con el identificador (SID) del mensaje. Este identificador se multiplica con un AND lógico por la máscara y se compara con uno o varios filtros. En el siguiente ejemplo se analiza el caso de un mensaje cuyo identificador se multiplica por la máscara y se compara con un filtro. En caso de que el resultado sea positivo el mensaje se acepta. Si hubiera más de un filtro, con que la comparación con uno de los filtros dé positiva basta para aceptarlo Bus CAN Capa física Debe soportar la representación en estados recesivo y dominante y consta de tres subcapas: Subcapa 1. Physical Medium Attachment (PMA): transforma los niveles lógicos a los requeridos por el medio físico. Típicamente la señal transmitida (TX) por el controlador CAN se convertirá mediante el transceptor en una señal diferencial que se transmitirá por los pines can-h y can-l, y la señal diferencial que reciba el transceptor se convertirá a una señal en un hilo interpretable por el controlador Microcontrolador + XTAL Controlador CAN TX RX Transceptor CAN can-h can-l gnd CAN_H CAN_L GND (0V) Bus CAN Capa física Subcapa 1. Physical Medium Attachment (PMA): a) Circuito de transceptor CAN. b) Señales CAN bus emitidas o recibidas por el transceptor Bus CAN Capa física Subcapa 2: Medium dependent interface (MDI): especifica características del conector y del medio de transmisión: Los cables se pueden trenzar y apantallar Se recomienda resistencias de terminación de 120 Ω La estructura del cableado lo más próxima a la línea simple Si se emplean derivaciones, que sean lo más cortas (e.g. a 1Mbps no exceder 0.3 m) No se recomienda longitud de bus superior a 1 km CAN in Automation añade otras características como: el uso de conectores tipo D de 9 pines Posibilidad de utilizar repetidores para buses de longitud mayor que 1 km Posibilidad de usar optoacopladores para buses de longitud mayor que 200 m Bus CAN Capa física Subcapa 3: Physical Signaling Layer (PSL): Se implementa en el controlador y se encarga de codificación, sincronización y temporización Cada bit tiene cuatro segmentos, de tiempo superior a la señal del oscilador y múltiplo del time quanta (TQ) El controlador lee el nivel del bus en el punto de muestreo Tiempo nominal de bit SYNC_SEG PROP_SEG PHASE_SEG1 PHASE_SEG2 Punto de muestreo Para arreglar los problemas de sincronismo se modifican las longitudes de algunos campos (más info en https://ww1.microchip.com/downloa ds/en/Appnotes/00754.pdf ) Bus CAN CAN bus en vehículos El protocolo On Board Diagnostics (OBD) se implementó para controlar de forma electrónica las emisiones de los vehículos. Actualmente se trabaja fundamentalmente con la versión OBDII, la cual soporta 5 protocolos: SAE J1850 PWM (Pulse Width Modulation) - 41.6 kbps. SAE J1850 VPW (Variable Pulse Width) - 10.4 kbps. ISO 9141-2 – Comunicación serie asíncrona a 10.4 kbps. ISO 14230 KWP2000 (Keyword Protocol 2000). ISO 15765 CAN (250 kbps o 500 kbps). El protocolo que se va imponiendo es CAN bus. De hecho es obligatorio implementarlo en los vehículos desde hace ya unos cuantos años Bus CAN CAN bus en vehículos Cada vehículo tiene varios buses Can que se controlan desde el terminal OBDII OBDII Conector OBD-II CAN H Compartimento del conductor CAN L Bus CAN CAN bus en vehículos El protocolo OBDII puede soportar hasta 10 modos de diagnóstico: A modo de ejemplo, los 4 primeros son: Modo 1: Devuelve los valores de los diferentes sensores del vehículo. Cada sensor se identifica con un número llamado PID (Parameter Identifier). Por ejemplo, la velocidad tiene el PID número 0x0D. Modo 2: Devuelve una trama de datos instantánea de una falla en un sensor. Modo 3: Muestra los códigos de diagnóstico del vehículo. Son códigos estándar para todos los vehículos. Modo 4: Se utiliza para eliminar los códigos de falla almacenados y desactivar el piloto de error en el motor. La forma general de solicitar los datos mediante OBDII Se envía un mensaje con identificador en hexadecimal 7DF (es un identificador que las ECUs están preparadas para recibir) Si se desea trabajar en modo 1, los datos del mensaje seguirán este formato: El byte 0 es el número de bytes que datos que se envían (2 en este caso) El byte 1 es el modo (modo 1 en este caso) El byte 2 es el PID (por ejemplo para la velocidad el PID es 0x0D - se puede encontrar un listado con los parámetros más comunes en http://bit.ly/1E4lqxE) Bus CAN CAN bus en vehículos Trama recibida por OBDII Dependiendo de la ECU que responda, recibiremos un mensaje con un identificador u otro. Lo normal es que recibamos de la 7E8 porque las ECUs están ordenadas con identificadores de en orden de prioridad del 7E8 al 7EF Los datos de la trama seguirán el formato indicado a continuación: El byte 0 indica el número de bytes de datos que vienen después El byte 1 indica si los datos recibidos son actuales El byte 2 indica el código PID (en el ejemplo sabemos que el dato pertenece a la temperatura del líquido refrigerante) Dependiendo de cuántos bytes se usen para el parámetro en cuestión se pueden emplear el byte 3, el 3 y el 4, o el 3,4,5 y 6. Ejemplo 1 : para temperatura se usa solo el byte 3 y al el resultado obtenido hay que restarle 40 Ejemplo 2: para las revoluciones por minuto se usan el byte 3 y 4, de modo que hay que multiplicar el byte 3*256 y sumarle el byte 4. El resultado se divide entre 4 Vídeo demostrativo: https://drive.google.com/file/d/1bi4oCKtiRBp9Qsg61rMjD9LNdZcSRzY5/view 5. REDES DE SENSORES Y ACTUADORES 5.1. Introducción 5.2. Bus CAN - Origen histórico de CAN - Características generales y aplicaciones - Versiones de CAN - Nodo CAN - Capa física y de enlace de datos - CAN bus en vehículos 5.3. AS-i - Características y estructura - Versiones de AS-i: 2.0 vs 2.1 - Ciclo de lectura y escritura con los esclavos - Configuración y programación de una red AS-i con S7-300 5.4. IO-Link - Características - Mensajes - Ejemplo de trama IO-Link - El espacio de memoria 5.5. Resumen AS-i Fue desarrollado inicialmente por diversas empresas alemanas (Siemens, Festo, Pepper-Fuchs etc.), aunque se ha extendido a otras como Omron y Schneider El objetivo primordial fue sustituir el cableado paralelo1 Es básicamente un bus de sensores y actuadores Se sitúa en el nivel jerárquico más bajo, donde un único cable interconecta un dispositivo maestro con múltiples sensores y actuadores binarios que actúan como esclavos: 1sistema ahora solo utilizado en sistemas de seguridad en el que cada señal solo puede tomar una dirección. El cableado y la complejidad aumentan AS-i En 1990 fue creado por iniciativa de un grupo de empresas En 1992 se creó la asociación AS-i, encargada de certificar los productos AS-i y expandirlos a nivel mundial AS-i se convirtió en 1999 en un estándar, el IEC 62026-2. En 2018 salió al mercado la versión 5, en línea con la industria 4.0 y combinado de forma más estrecha con IO-Link Sin embargo, primero se explicará la versión 2 y la 3, que han tenido bastante popularidad y están implementadas en bastantes lugares del mundo Los productos AS-i llevan un logotipo que acredita la certificación de la asociación Esta certificación permite que AS-i sea un bus estándar, abierto y no dependiente del fabricante En 2013 ya había más de 24 millones de dispositivos de campo con AS-I instalados en el mundo, con una tasa de crecimiento de 2 millones al año AS-i Características de AS-i 2.0 La distancia máxima de transmisión es 100 m y la velocidad máxima 167 Kbps El control de acceso al medio es determinista (sin colisiones) con un ciclo de entre 5 y 10 ms En el modelo estándar se pueden conectar hasta 31 esclavos (a cada esclavo se pueden conectar 4 sensores y 4 actuadores), y el extendido 62 esclavos La transmisión es banda base con codificación Manchester Diferencial Instalación sencilla Coste reducido de la instalación: menor número y longitud de cable que con cableado convencional M1 M2 M3 C1 C2 C3 Maestro C4 Sin bus AS-i Con bus AS-i AS-i Características de AS-i Elementos de distintos fabricantes, modulares e intercambiables Compatible con sensores y acondicionadores estándar ya instalados Diagnóstico inmediato en caso de fallo de componentes Topología libre estrella en línea ramas en árbol controlador controlador controlador controlador Maestro Maestro Maestro Maestro esclavo esclavo esclavo esclavo esclavo esclavo esclavo esclavo esclavo esclavo esclavo esclavo esclavo esclavo esclavo esclavo esclavo esclavo esclavo esclavo esclavo esclavo AS-i Características de AS-i Facilidad de ampliación y modificación instalaciones existentes Posibilidad de conectar y desconectar elementos en caliente sin afectar al resto de la instalación Los maestros AS-i de SIMATIC net extendidos también soportan el acceso a sensores y actuadores analógicos Estructura El medio físico utilizado son un par de hilos por el que circulan tanto los datos como la alimentación de los componentes del bus Los componentes se conectan y desconectan del cable por perforación autocicatrizante Los esclavos pueden ser pasivos o activos. Los activos llevan un circuito integrado específico D0 = commutation D1 = warning Una sola conexión D2 = enable D3 = test P0 = timer P1 = inversión AS-Interface Sensor o P2 = distancia actuador IC del esclavo P3 = función especial alimentación AS-i Proceso de transmisión y posterior reconstrucción de señal NRZ en red AS-i AS-i Versiones de AS-i: 2.0 vs 2.1 Se diferencian en que una y otra tiene 31 y 62 esclavos respectivamente En la 2.0 hay conectividad para 4 sensores y 4 actuadores, mientras que en 2.1 hay para 4 sensores y 3 actuadores, dejándose el último bit para indicar el tipo de esclavo: A o B Actualmente se trabaja con la versión 3.0, que solo difiere de 2.1 en que puede emplear hasta 8 entradas y 8 salidas digitales por esclavo, la posibilidad de gestionar entradas analógicas de 8, 12 o 16 bit, y la distancia (600 m) AS-i Ciclo de lectura y escritura con los esclavos Utiliza un sistema polling para lectura y escritura de los esclavos por parte del maestro En la versión 2.0 invierte 5 ms en actualizar todos y cada uno de los esclavos y en la versión 2.1 invierte 10 ms (5 ms en los esclavos A y 5 ms en los B) Maestro AS-i como intermediario: AS-i Tramas AS-i Maestro AS-i como intermediario: AS-i Características de la versión AS-I 5 El tiempo de ciclo será de solo 1.2 ms Se podrán conectar hasta 384 sensores y 384 actuadores Cantidad de datos de proceso por esclavo de 16 bits hasta 32 bytes Compatible con todos los dispositivos y componentes de ASi hasta la fecha Permite la transmisión de valores analógicos y la integración de sensores inteligentes de hasta 32 bytes, como los de sensores IO-Link Más información sobre AS-I en: https://www.bihl-wiedemann.de/es/asi-5.html https://www.pepperl-fuchs.com/spain/es/ASi- 5.htm ¿Cuándo conviene usar AS-I o IO-Link? https://us.profinet.com/io-link-versus-asi AS-i Configuración y programación de una red AS-i con un S7-300 Conexión de dispositivos de E/S estándar -+ a los esclavos AS-i Conectores hembra M12 Conexión de sensores y actuadores estándar AS-i Configuración y programación de una red AS-i con un S7-300 Ejemplo - Se desea controlar: AS-i Configuración y programación de una red AS-i con un S7-300 Ejemplo – Desarrollo del ejercicio: 1. Se direccionan los esclavos 2. Se conexionan los sensores y actuadores AS-i Configuración y programación de una red AS-i con un S7-300 Ejemplo – Desarrollo del ejercicio: 3. Montaje y conexionado de la red AS-i AS-i Configuración y programación de una red AS-i con un S7-300 Ejemplo – Desarrollo del ejercicio: 4. Configuración de la red mediante el maestro AS-i - Se pone la CPU del PLC en modo STOP - Se acciona el pulsador SET (se pasa a modo configuración) - Se comprueba que los esclavos están indicados en el panel frontal del maestro AS-i - Se acciona el pulsador SET (se pasa a modo protegido) - Se pone la CPU del PLC en modo RUN 5. Realización del programa de aplicación - Se crean un bloque OB1 donde irán incluidos los segmentos de programación para las entradas y salidas: AS-i Configuración y programación de una red AS-i con un S7-300 Ejemplo – Desarrollo del ejercicio: 5. Realización del programa de aplicación Se determina el origen de datos de los esclavos en el maestro AS-i Se observa en el maestro AS-i las direcciones de datos de los esclavos AS-i Configuración y programación de una red AS-i con un S7-300 Ejemplo – Desarrollo del ejercicio: 5. Realización del programa de aplicación en el bloque OB1: I306.3 Q308.5 I305.0 Q308.5 5. REDES DE SENSORES Y ACTUADORES 5.1. Introducción 5.2. Bus CAN - Origen histórico de CAN - Características generales y aplicaciones - Versiones de CAN - Nodo CAN - Capa física y de enlace de datos - CAN bus en vehículos 5.3. AS-i - Características y estructura - Versiones de AS-i: 2.0 vs 2.1 - Ciclo de lectura y escritura con los esclavos - Configuración y programación de una red AS-i con S7-300 5.4. IO-Link - Características - Mensajes - Ejemplo de trama IO-Link - El espacio de memoria 5.5. Resumen IO-Link Características IO-Link es una interfaz genérica para conectar sensores y actuadores a un dispositivo maestro que sigue el estándar IEC 61131-9 Contiene dos tipos de dispositivos: Maestros Devices (se conectan punto a punto con el maestro) El conector típico es el clase A (port class A): IO-Link Características Distancia máxima de transmisión: 20 metros por cable sin apantallar Tiempo de ciclo 2 ms. Velocidades de transmisión: 4.8, 38.4 y 230.4 kbps (en desarrollo la versión IO-Link SPE Single-Pair Ethernet, donde se pueden alcanzar velocidades de entre 10 y 100 Mbps, y longitudes de cable de hasta 1000 metros) Mensajes IO-Link emplea polling (sondeo) del master al device Tres tipos de mensajes: cíclicos, acíclicos y eventos Los mensajes acíclicos y los eventos son solicitados explícitamente por el maestro mientras que los cíclicos solo necesitan de una orden inicial de llamada IDLE telegram para que se vayan enviando cíclicamente sin que se vuelva a hacer otra solicitud. IO-Link Ejemplos de trama IO-Link tipo 2.1 IO-Link Ejemplo de trama IO-Link tipo 2.1 (explicación) (https://tv.uvigo.es/uploads/material/Video/4866/IO-Link_system_overview.pdf) CMD incluye 3 subcampos: R/W: es 1 bit que indica si el master desea leer del device o escribir en él. Será 0 cuando desea escribir y 1 cuando desea leer. Data Channel: 2 bits que indican 4 finalidades posibles que se persiguen con la trama enviada: process data, parameter data, diagnosis data y service PDU. Address: la dirección del device CHK/TYPE: sus dos primeros bits definen el tipo de trama y los 6 siguientes son un checksum para verificar que el mensaje no se ha corrompido durante su transmisión El device tiene en su trama un campo muy parecido al CHK/TYPE que se llama CHK/STAT Service Data es de tipo acíclico y en el primer ejemplo va en la trama de solicitud con el fin de escribir eso en el device, mientras que Process Data es de tipo cíclico y se manda siempre en la trama del device hacia el maestro (se ve tanto en el primero como en el segundo ejemplo). En cambio, en el segundo ejemplo el Service Data va en la trama que mande el Device porque ha sido una solicitud de Service Data por parte del maestro. IO-Link El espacio de memoria Cada device dispone de 216 registros de 232 bytes cada mediante un indice y un subíndice se puede acceder a toda o a parte de esa información: Cuando el subíndice es 0 se accede a los 232 bytes de la fila referenciada con el índice Cuando el subíndice tiene valor distinto de 0 se accede al byte correspondiente al número del subíndice. Por ejemplo, si el subíndice es 5, se accede al byte 5 Este modo de funcionamiento presenta alguna excepción como que los primeros 2 índices, el 0 y el 1, se refieren a una zona reservada para los direct parameter, que no ocupan 232 sino 16 bytes y que son parámetros con básicos para comunicación con el maestro 5. REDES DE SENSORES Y ACTUADORES 5.1. Introducción 5.2. Bus CAN - Origen histórico de CAN - Características generales y aplicaciones - Versiones de CAN - Nodo CAN - Capa física y de enlace de datos - CAN bus en vehículos 5.3. AS-i - Características y estructura - Versiones de AS-i: 2.0 vs 2.1 - Ciclo de lectura y escritura con los esclavos - Configuración y programación de una red AS-i con S7-300 5.4. IO-Link - Características - Mensajes - Ejemplo de trama IO-Link - El espacio de memoria 5.5. Resumen Resumen AS-i se emplea fundamentalmente para sistemas con muchas entradas y salidas digitales (típico en una cadena de montaje). Dispositivos analógicos simples con tiempos de actualización relativamente lentos. Volumen bajo de datos. IO-Link se usa para: Sensores y actuadores inteligentes. (Por "inteligente", entiéndase "volumen de datos grande"). Cableado punto a punto pudiéndose establecerse varias conexiones a través de diferentes puertos físicos. En lo que se refiere a seguridad, existe la opción AS-I Safety at Work, que además puede conectarse de forma transparente a Profisafe. En cuanto a IO-Link, se dispone de la versión IO-Link Safety, estandarizada como IEC 61139-2:2022. Como resumen, AS-i es apropiado para una red de dispositivos de bajo volumen de datos donde la topología es bastante flexible, mientras que IO-Link para conexiones punto a punto o en daisy chain de dispositivos de alto volumen de datos. CAN tiene menores prestaciones que AS-i e IO-Link pero es muy económico y robusto, de ahí que se emplee en aplicaciones como la del automóvil Grado en Ingeniería en Tecnologías Industriales - Comunicaciones e instalaciones industriales 6. TECNOLOGÍA INALÁMBRICA Ignacio Del Villar 6. TECNOLOGÍA INALÁMBRICA 6.1. Introducción 6.2. Wireless Personal Area Networks (WPAN) a) Bluetooth b) Zigbee 6.3. Wireless Local Area Networks (WLAN) – WiFi 6.4. RFID 6.5. Industrial Internet of Things (IIoT) 6.6. Resumen Introducción Redes de comunicación inalámbricas de uso más extendido a) Redes basadas en la banda ISM WPAN (redes wireless a área personal): 802.15.1 (Bluetooth), 802.15.4 (Zigbee) y Wireless USB WLAN (redes wireless a área local): 802.11 (WiFi) WMAN y WWAN (redes wireless de área metropolitana y extensa): las LPWAN, de bajo consumo y velocidad de datos (Sigfox y LoRa) Clasificación en función de la velocidad de transmisión b) Tecnología celular y de la cobertura (http://bit.ly/2GGGaV6) 1G: tecnología analógica 2G: tecnología digital (voz y datos) 3G: voz, vídeo y datos por IP (hasta 2 Mbps) 4G: voz, vídeo y datos por IP (2Mbps hasta 1Gbps) 5G: como 4G pero a mayores velocidades http://www.vizocomsat.com/blog/difference-cellular-satellite- communications/ Introducción Las bandas ISM (Industrial, Scientific and Medical) Son bandas reservadas internacionalmente para uso no comercial de radiofrecuencia electromagnética en áreas industrial, científica y médica. Se usan en comunicaciones WLAN (e.g. Wi-Fi) o WPAN (e.g. Bluetooth). No requieren de licencia, respetando las regulaciones que limitan los niveles de potencia transmitida. Este hecho fuerza a que este tipo de comunicaciones tengan cierta tolerancia frente a errores y que utilicen mecanismos de protección contra interferencias, como técnicas de ensanchado de espectro RFID Bluetooth, Zigbee, WiFi 6. TECNOLOGÍA INALÁMBRICA 6.1. Introducción 6.2. Wireless Personal Area Networks (WPAN) a) Bluetooth b) Zigbee 6.3. Wireless Local Area Networks (WLAN) – WiFi 6.4. RFID 6.5. Industrial Internet of Things (IIoT) 6.6. Resumen WPAN WPAN (Wireless Personal Area Networks) abarca a aquellas redes cuyo rango de acción de acción se limita a unos pocos metros Existen infinidad de entornos de corta distancia donde las WPAN pueden entrar en escena: Electrónica de consumo Comunicación entre - smartphones, tablets redes industriales Medicina (e.g. PROFINET) - Monitorización - Diagnósticos Periféricos del PC - Sensores - Ratón, teclado, Aplicaciones monitor de banda estrecha Entretenimiento - Juguetes Domótica - Videoconsolas - Seguridad, iluminación - aire acondicionado Cada una de estas aplicaciones presenta necesidades diferentes. Por lo general es suficiente con ofrecer velocidades de algunos Mbps WPAN - Bluetooth Es la tecnología más popular y está basada en terminales de bajo coste y pequeño alcance (entre 1 y 100 m) Su aplicación se está extendiendo a interconexión de redes. Como consecuencia de su flexibilidad, bluetooth ha tenido una enorme expansión en los últimos años Además, el mercado de los circuitos integrados con bluetooth mueve millones de euros y cada vez se logran dispositivos más pequeños ultra-compact Bluetooth® low energy module con SASP™ technology WPAN - Bluetooth Topología de red Bluetooth soporta tanto tecnología punto a punto como multipunto Los dispositivos bluetooth se agrupan en piconets, que están formadas por dispositivos que se conectan sobre la marcha En una piconet con dos dispositivos uno actúa de maestro y el otro de esclavo m s Cuando hay más de dos y menos de 9 dispositivos uno actúa de maestro y el resto de esclavos con una dirección AMA (active member address): s m s s WPAN - Bluetooth Topología de red Cuando hay más de 8 dispositivos uno actúa de maestro, 7 de esclavos activos con una dirección AMA (active member address) y el resto de esclavos parked con una dirección PMA (Parked Member address) s s s m s s s s s El solapamiento de dos piconet cercanas origina una scatternet, y los esclavos de una de ellas pueden actuar como maestros o esclavos de la otra mediante TDM Las interferencias entre dispositivos que trabajan en la misma banda pueden ocasionar problemas WPAN - Bluetooth Protocolos: Utiliza un modelo de capas similar a OSI Especificaciones del estándar bluetooth versión 1.2 Tecnología Espectro ensanchado por salto en frecuencia Banda de frecuencia 2.4 GHz (Banda ISM) Modulación GFSK 1 mW para alcance de 10 m Potencia del transmisor 100 mW para alcance de hasta 100 m De voz: 3 por piconet Canales máximos De datos: 7 por piconet Velocidad de datos Hasta 721 Kbps por piconet Distancia máxima 10 m Número de dispositivos 8 por piconet y hasta 10 piconets Consumo de potencia Desde 30 A hasta 30 mA transmitiendo WPAN - Bluetooth Canalización Canales físicos (cómo se reparten los recursos del canal): cada dispositivo tiene un transceiver que transmite y recibe en una banda de 1 MHz entre 2,402 y 2,48 GHz En algunos países en vez de 79 canales hay 23 (en España desde 2,449- 2,471 GHz) Cada canal se caracteriza por una secuencia pseudoaleatoria que define los saltos en frecuencia y que es único para cada piconet Canales lógicos (dividen el tiempo en secciones): Dos canales de control usados para control de la conexión Tres canales de usuario para el envío de datos Formato del paquete bluetooth 72 bits 54 bits 2745 bits Código de acceso Cabecera Carga útil Código de acceso: es el mismo para cada piconet y se emplea para distinguir los paquetes pertenecientes a dicha piconet Cabecera: contiene parámetros como el active member address (0 si manda el maestro y distinto de 0 si proviene de algún esclavo) Carga útil: datos WPAN - Bluetooth Tipos de dispositivos bluetooth Clase 1: 100 mW, 100 m Clase 2: 2.5 mW, 10 m Clase 3: 1 mW, 1m Clase 4: 0.5 mW, 0.5 m Versiones de bluetooth Versión 1.2 (1 Mbps) Versión 2.0 (3 Mbps) Versión 3.0: Puede alcanzar 24 Mbps sólo en caso de que presente la opción HS (high speed), en cuyo caso necesita de un enlace 802.11 (WiFi) para su ejecución Versión 4.0 (smart bluetooth) Incluye los protocolos: Classic Bluetooth Bluetooth high speed Bluetooth low energy Los dispositivos que implementan las LE y classic se les llama dual-mode devices y son compatibles con las versiones anteriores, mientras que los single mode no lo son Versión 5.0: se centra en el Internet de las cosas (IoT) (puede duplicar la velocidad de la version 4 o aumentar su rango de actuación bajando la velocidad WPAN - Bluetooth Classic bluetooth vs bluetooth low energy http://www.farnell.com/datasheets/1691422.pdf WPAN - Bluetooth Classic bluetooth vs bluetooth low energy Topología en scatternet de classic Bluetooth Topología en estrella de Bluetooth low energy (BLE) En BLE los esclavos se comunican con el maestro a través de un canal separado. Al contrario que la piconet de classic Bluetooth, donde los esclavos escuchan continuamente las llamadas de conexión y por tanto están constantemente activas, el esclavo de BLE es quien invita a la conexión y por tanto controla siempre cuándo está encendido. El maestro BLE, que se supone tendrá menor limitación de consumo, escuchará los avisos de conexión de los esclavos y se conectará a estos últimos. http://www.summitdata.com/blog/ble-overview/ 6. TECNOLOGÍA INALÁMBRICA 6.1. Introducción 6.2. Wireless Personal Area Networks (WPAN) a) Bluetooth b) Zigbee 6.3. Wireless Local Area Networks (WLAN) – WiFi 6.4. RFID 6.5. Industrial Internet of Things (IIoT) 6.6. Resumen WPAN - Zigbee Características generales Posibilidad de agregación de elevado número de nodos Velocidades de transmisión moderadas (250 kbps) Consumo energético contenido y bajo coste Distancia: 10 a 100 metros Aplicación: redes de sensores inalámbricos Tipos de dispositivos Zigbee Coordinador: actúa como director de la red y puede almacenar información sobre ella Router: amplía la cobertura de red de área. Proporciona una copia de seguridad de las rutas en caso de congestión o fallo del coordinador End Device (dispositivo final): se puede comunicar con su nodo padre (el coordinador o un router), pero no puede transmitir información destinada a otros dispositivos. WPAN - Zigbee Topologías Zigbee WPAN - Zigbee Ejemplo de una red Zigbee: Zigbit de Atmel WPAN - Zigbee Pila de protocolos en Zigbee Propiamente se llama Zigbee al conjunto de tres capas: Capa de red: gestiona el envío, enrutamiento y control de los paquetes de datos de un nodo a otro en la red Capa de seguridad: encripta los datos con el método AES API: realiza las funciones de puente entre Zigbee y la capa de aplicación WPAN - Zigbee Bandas de trabajo Redes similares a Zigbee 6LoWPAN: basado en IP aunque no está orientado a conexión ni implementa seguridad Z-Wave: como Zigbee se orienta a dispositivos de bajo consumo con velocidades 9600 bps a 40 Kbps y un alcance máximo de 30 metros