Redes de Comunicación Industrial. Guía 2 1 Facultad: Ingeniería Escuela: Electrónica Asignatura: Redes de Comunicación Industrial Lugar de ejecución: Instrumentación y Control (Edificio 3, 2da planta) Tema: Comunicación en Serie. Interfaz RS-422/RS-485. Objetivos Específicos • • Conocer los buses para comunicación multipunto RS-422/RS-485. Configurar, poner a punto y comunicar controladores y dispositivos industriales usando el bus RS-485 y un protocolo abierto como lo es el Modbus RTU. Materiales y Equipo • • • • • • • • • • • • • • • • 1 Computadora con puerto serie RS-232 y con los siguientes software instalados: Visual Basic 6.0, Enode 21 y Step 7 Microwin 4.0 o superior (con las librerías para trabajar con Modbus y USS ). 1 Cable serie de 9 pines null modem (macho - hembra) 1 Medidor de potencia VERIS H8437V 1 Convertidor RS-232 a RS-485 Circutor 1 Destornillador tipo cruz #3 1 Destornillador plano de 3mm 1 Destornillador plano de 2mm 1 Resistencia de 120 ohms 3 Variadores de frecuencia Sinamics G110 3 Motores trifásicos de inducción tipo jaula de ardilla 0.21 Kwatts. 1 Fuente de 24VDC 1 PLC S7-200 CPU 224 con alimentación DC 1 Cable Interfaz PC/PPI 3 Cables Profibus 2 Cables con terminales de 4mm a 2mm 5 Cables con terminales de 4mm Introducción Teórica Topología de las redes multipunto. Debido a que los buses RS-422 y RS-485 permiten la conexión multipunto, con ellos se pueden tener diferentes topologías de redes de comunicación industrial: 2 Redes de Comunicación Industrial. Guía 2 Figura 1. Topologías de red. Redes de Comunicación Industrial. Guía 2 3 Protocolo Modbus RTU. Transacción Query-Response: Figura 2. Inicio de comunicación con el protocolo ModBus. Figura 3. Respuesta del esclavo ante consulta del maestro en el protocolo ModBus. Query: Consulta • La “función a ejecutar” le dice al esclavo seleccionado que acción tomar. • Ejemplo: Función ejecutar = 03 => leer registros y responder con su contenido. – => El campo datos contendrá la información necesaria para informarle al esclavo en que registro comenzar y cuantos registros leer. Response: Respuesta • El esclavo responderá con la información solicitada o bien tomará la acción indicada por el maestro. • En una respuesta normal, el campo “Función a ejecutar” será un eco del campo de la consulta. – => El campo de datos contendrá la información solicitada. • Si un error ocurre en el campo “Función a ejecutar” el código será modificado indicando error. – => El campo datos contendrá información indicando e tipo de error. Principio Maestro - esclavo • En un sistema Maestro Esclavo solo un maestro (al mismo tiempo) puede ser conectado al bus, y uno o varios (máx. 247) esclavos pueden estar conectados al mismo bus serial. • La comunicación ModBus es siempre inicializada por el Maestro. • El maestro solo puede iniciar una transacción al mismo tiempo. • Los esclavos nunca van a transmitir datos sin una solicitud del maestro. • Los esclavos nunca se van a comunicar entre sí. • Cada esclavo solo puede tener una única dirección para poder ser accesado. • El maestro puede realizar una comunicación de dos maneras : Unicast/Broadcast modes • El protocolo Modbus establece el formato de la solicitud de información. • Se define un código de función sobre la acción que se va a tomar. 4 • • • Redes de Comunicación Industrial. Guía 2 El formato establece un campo para los datos a enviar, y uno para el sistema de comprobación de error. El mensaje de respuesta del esclavo funciona exactamente igual. Si ocurre un error en el envío del mensaje, el esclavo no puede ejecutar la orden y genera un mensaje de error que se enviará al maestro. Unicast Mode El maestro direcciona a un esclavo en particular, el cual responde después de haber recibido la solicitud, de esta manera la transacción consiste de dos mensajes : request/reply. Figura 4. Modo de comunicación Unicast del protocolo ModBus. Broadcast Mode El maestro envía una solicitud a todos los esclavos, no se regresa ninguna respuesta en este modo. Esto función es estricta para enviar comandos a los esclavos, los cuales deben de aceptarlos. Figura 5. Modo de comunicación Broadcast del protocolo ModBus. Estructura de la Trama La estructura de la trama es la misma para la solicitud ( Maestro ) como para la respuesta ( Esclavo ) Redes de Comunicación Industrial. Guía 2 5 Figura 6. Estructura de la trama ModBus. Campo Dirección. Reglas de direccionamiento Los direccionamientos pueden ser hasta 255 La dirección 0 se reserva para la función “broadcast”, y es reconocida por todos los esclavos. El nodo maestro no tiene una dirección específica. Figura 7. Rango del campo Dirección de la trama ModBus. La estructura de la trama es la misma para la solicitud ( Maestro ) como para la respuesta ( Esclavo ). Figura 8. Estructura de la trama ModBus. Campo Función. 6 Redes de Comunicación Industrial. Guía 2 Figura 9. Opciones permitidas del campo Función de la trama ModBus. Figura 10. Descripción de la función 02 del protocolo ModBus. Redes de Comunicación Industrial. Guía 2 Figura 11. Ejemplo del uso de la función 02. Lectura de entradas discretas. Figura 12. Diagrama de estado para la función 02 (Lectura de entradas discretas) del protocolo ModBus. 7 8 Redes de Comunicación Industrial. Guía 2 Figura 13 Códigos de excepción del protocolo Modbus. La estructura de la trama es la misma para la solicitud ( Maestro ) como para la respuesta (Esclavo). Figura 14. Estructura de la trama ModBus. Campo Checksum. Trama Modbus RTU Solicitud del maestro de leer palabras “ words “ W5 y W6 en el esclavo 7 Redes de Comunicación Industrial. Guía 2 9 Figura 15. Ejemplo de uso del función 03. Lectura manteniendo los registros de la trama ModBus. El protocolo Modbus , en el nivel 2 del modelo OSI, se puede separar en dos niveles. 1) El protocolo MAESTRO / ESCLAVO 2) El modo de transmisión ( RTU / ASCII ) La selección del modo RTU / ASCII concierne únicamente a redes standard MODBUS. • Define el contenido de bits del mensaje enviado en la red. • Determina cómo va a ser empacada la información en los campos de mensaje. Modo RTU ( Remote Terminal Unit ) Sistema de codificaciòn : - Cada Byte ( 8 bits ) contiene 2 caracteres hexadecimales de 4 bits - Sistema hexadecimal : 0-9,A-F Bits por Byte : - 1 start bit - 8 bits de datos - 1 bit para par/impar, no paridad ->no bit - 1 stop bit para paridad, 2 si no hay paridad Campo “Error Check Field” : - Cyclical Redundancy Check (CRC) Sistema de paridad impar es necesario (otros modos pueden ser usados, par/no paridad, esto con el fin de obtener mayor compatibilidad con otros productos). El modo por “default” es PARIDAD IMPAR NOTA : si se usa modo “ no paridad “, se requieren 2 stop bits 10 Redes de Comunicación Industrial. Guía 2 Figura 16. Sistemas de codificación para el chequeo de error. Métodos de revisión de error ( Error Checking Metod ) El protocolo standard de ModBus presenta dos formas para revisar el error de transmisión : • Parity Checking ( even / odd ), es opcional. • Frame Checking ( CRC / LRC ), se aplica al mensaje completo El usuario puede configurar para tener paridad par/impar (even/odd), o NO usar este método, sin embargo es altamente recomendado. En cualquiera de los dos casos par/ impar, un bit va a ser tomado para esta revisión, dando como resultado un 0 ó un 1 de acuerdo al dato. Por ejemplo, tenemos el siguiente dato contenido en la trama de modo RTU (8 bits): 1100 0101 ----> cantidad total de 1's es : 4 Even Parity --> Parity bit = 0 --> No. Par (4) Odd Pariry --> Pariry bit = 1 --> No. Impar(5) Resumen: • Modo ASCII Cada byte en la trama se envía como 2-character ASCII. • Modo RTU Cada byte en la trama se envía como 2-character 4-bit hexadecimales. La principal ventaja de RTU es que envía la información más rápido. El modo ASCII permite un intervalo de tiempo de 1 segundo entre 2 caracteres sin generar errores de transmisión. Procedimiento Nota: Para la realización de esta práctica uno de los grupos iniciará con la Parte I y el otro grupo con la parte II y III, luego se intercambian. Parte I. Armado del sistema de comunicación RS-485 entre una PC y un medidor de potencia VERIS H8437V. 1. Lea la siguiente información acerca del medidor de potencia VERIS H8437V: El medidor de potencia VERIS H8437V opera como esclavo Modbus RTU y con los siguientes parámetros de comunicación: Redes de Comunicación Industrial. Guía 2 11 Parámetro Valor Trama Modbus RTU (binaria) Velocidad de 9600 transmisión Bits de datos 8 Paridad Ninguna Bits de paro 1 Tabla 1. Parámetros de comunicación del VERIS El conversor RS-232 / RS-485 SDC optoacoplado con control RTS tiene la siguiente configuración para lograr la comunicación con el sistema: Figura 17. Configuración del conversor RS-232/RS-485 Longitud de datos: 10 bits. 1 ON, 2 OFF. Velocidad en baudios: 9600. 3 OFF, 4 ON, 5 OFF y 6 OFF. Comandos Modbus soportados por el VERIS H8437V: 12 Redes de Comunicación Industrial. Guía 2 Figura 18. Comando ModBus soportados por el medidor de potencia VERIS H8437. Todos los datos están disponibles en dos formatos: Números enteros de 16 bits. a. Para sistemas que no pueden procesar números de punto flotante. b. Cada uno debe ser multiplicado por un factor de escala o multiplicador para obtener el dato correcto. c. Muchos datos requieren de multiplicadores diferentes dependiendo del rango de amperaje máximo del medidor. d. Teóricamente dos veces más rápido que el punto flotante (la velocidad se ve afectada por el encabezado Modbus y los tiempos de silencio entre tramas). Números de punto flotante de 32 bits. a. Para sistemas que pueden procesar números de punto flotante. b. Representa el verdadero valor , sin importar el tipo de datos o rango de amperaje del medidor (no se necesitan multiplicadores). Los valores de punto flotante tienen el formato estándar IEEE-754. Debido a que Modbus proporciona solo registros de 16 bits, deben leerse dos registros para obtener los 32 bits. Para eliminar la posibilidad que el dato cambie entre la lectura de las dos mitades de 16 bits, el medidor retiene el valor previo de 32 bits solicitado. Redes de Comunicación Industrial. Guía 2 13 2. Abre el medidor de potencia VERIS H8437V y verifique que se encuentre implementado el sistema para medir voltaje monofásico tal como lo indica el manual y se muestra en la Figura 19. Figura 19. Diagrama de conexión para la medición de voltaje de fase con el medidor de potencia VERIS H8437V. 3. Realice las conexiones para realizar la comunicación RS-485 entre un VERIS y una PC. Figura 20. Diagrama de conexión para la red RS-485 entre la PC y el medidor de potencia VERIS H8437V. 14 Redes de Comunicación Industrial. Guía 2 4. Corra el programa Enode 21 para comprobar que la comunicación Modbus con el VERIS H8437V se está realizando sin problemas: El programa se encuentra en el escritorio de su PC dentro de la subcarpeta RCI111/guia2/ Figura 21. Pantalla principal del software Enode21 del medidor de potencia VERIS H8437V. 5. Haga clic en el botón Show Comm y explore las tramas Modbus. Anote sus comentarios: _________________________________________________________________________ _________________________________________________________________________ 6. Modifique el programa 2devlink en Visual Basic 6.0 de la práctica anterior para medir el voltaje de Fase 1-N y el consumo de energía real como se muestra en la siguiente figura: Figura 22. Pantalla principal del software en Visual Basic para comunicarse con el VERIS H8437V. Redes de Comunicación Industrial. Guía 2 15 Sugerencia: Al menos necesitará 1 subrutina para convertir 4 bytes hexadecimales a punto flotante de precisión sencilla (single) y en el caso de que quiera revisar si hay errores en la trama, necesitará una rutina de cálculo del CRC16. 7. ¿De qué longitud es la trama ModBus que se tiene que leer?______________________ 8. ¿Cuál es la posición donde inicia el byte que posee la información del consumo de energía real ?____________________________________________________________ 9. ¿Cuál es la posición donde inicia el byte que posee la información del voltaje de fase 1-n?________________________________________________________________ 10.Apague y desconecte todo el equipo relacionado con el VERIS H8437V. Parte II. Control desde un PLC de un variador de velocidad Sinamics G110 de Siemens. 11. Realice las conexiones que se muestran en la Figura 23(a) para controlar la velocidad de un motor de inducción jaula de ardilla desde un PLC Siemens S7-200 CPU 224, en la Figura 23(b) se indica como debe conectarse el motor (estrella) y en la Figura 23(c) se encuentra el diagrama de conexión de la red con bus RS-485 y protocolo USS Figura 23. (a)Diagrama general de conexión del variador de frecuencia Sinamics G110 y el PLC S7-200 CPU 224, ambos de Siemens, (b) conexión del motor trifásico y (c) Diagrama de conexión de la red con bus RS-485 y protocolo USS. 16 Redes de Comunicación Industrial. Guía 2 12.Ejecute el programa Step 7-MicroWIN y asegúrese que tiene instaladas las funciones de comunicación con protocolos Modbus y USS. 13.Escriba el programa que se muestra en la Figura 24. 14.Ejecute el programa en el PLC y controle el funcionamiento del motor jaula de ardilla desde las entradas del autómata. 15.¿Funciona adecuadamente el protocolo en esta red punto a punto?________________ 16.¿Cuáles son las diferencias entre esta parte de la práctica y la parte I anterior respecto al funcionamiento del sistema?_______________________________________________ Figura 24. Programa escrito en el software MicroWin 4.0 para control del variador de frecuencia Sinamics G110 por medio del PLC S7-200 CPU 224. Redes de Comunicación Industrial. Guía 2 17 Parte III. Red de variadores de velocidad con bus RS-485 y protocolo USS 17.Arme el sistema como se muestra en la siguiente figura: Figura 25. Diagrama de conexión de 3 variadores de frecuencia Sinamics G110 y un PLC S7-200 CPU 224, ambos de Siemens. 18.Modifique el programa en el PLC para controlar los tres variadores de frecuencia desde el PLC, la velocidad de los tres será gobernada por un único potenciómetro y todos tendrán los mismo paros, solo los arranques serán individuales. 19.Ejecute el programa y compruebe el correcto funcionamiento del sistema y escriba sus observaciones comparando el funcionamiento del sistema con el de la parte I de la guía:___________________________________________________________________ _________________________________________________________________________ 20.Apague y desconecte dejando todo el equipo ordenado. Análisis de Resultados Modifique el programa en Visual Basic para monitorear el consumo de energía real y el voltaje de fase 1-2 . ¿Se podría utilizar esto para generar archivos de registro de las variables eléctricas tal como un Data Logger? Explique. 2. Realice un flujograma de la secuencia de las funciones monitoreada con el software Enode21 . 3. Desarrolle un programa para comunicar tres variadores de frecuencias Sinamics G110 con un PLC Siemens S7-224. Comente acerca de la cantidad de cableado que utilizó comparado al que se usaría sin emplear la red RS-485. 4. ¿Qué tipo de topología de red es la que se usa con el bus RS-485 cuando se trabaja con protocolo ModBus y con protocolo USS? Explique su respuesta. 1. 18 Redes de Comunicación Industrial. Guía 2 Investigación Complementaria 1. Realice una comunicación serie RS-485 entre el PLC Omron CP1H y el medidor de potencia VERIS H8437V usando Easy Modbus en el PLC. Bibliografía • • • • • • • Serial Port Complete. Programming and Circuits for RS-232 and RS-485 Links and Networks. Jan Axelson. 2000. MODBUS Application Protocol Specification V1.1b disponible en: http://www.modbus.org/docs/Modbus_Application_Protocol_V1_1b.pdf Consultado: 24 de enero de 2014. Guía de instalación del medidor de potencia Veris H8437V Z204046-0H.Veris 2009. Universal Serial Interface Protocol. USS Protocol Specification Edición 09.94. No. de orden: E20125-D0001-S302-A1-7600. Walter Möller –Nehring. Siemens AG. Wolfgang Bohrer. Siemens AG. Practical Industrial Data Commnications. Best practice Techniques Deon Reynders, Steve Mackay, Edwin Wrigth.2005.