CURSO DE PLC – IGNITION BASICO - INTERMEDIO STUDIO5000/RSLINX IGNITION GATEWAY V7 Plataforma Logix La plataforma Logix provee una sola arquitectura de control para drives, movimiento y sistemas de control de procesos. • Máxima integración de sistemas • Re-utilización de programas • Flexibilidad en comunicaciones y • Facilidad de mantenimiento ControlLogix y CompactLogix, son parte de la plataforma Logix ControlLogix –Características Plataforma de Control de Alta Velocidad y Alto Desempeño para control multidisciplinario (secuencial, procesos, drives y movimiento) • Ambiente de Programación Común • Redes de Comunicación Comunes • Arquitectura de Control Común ControlLogix –Características • Integración con sistemas de PLC existentes • Inserción/Remoción de tarjetas bajo voltaje presente • Tamaño compacto • Múltiples procesadores en el mismo chasis • Control de movimiento integrado • Comunicaciones eficientes (Ethernet, ControlNet, DeviceNet, DH+ / RIO) • Modelo Productor/Consumidor • Memoria modular (3M - 40MB) • Procesadores redundantes ControlLogix – Componentes DC INPUT 0 1 2 3 4 5 6 7 8 9101112131415 O K 0 1 2 3 4 5 6 7 8 9101112131415 Controlador: RUN Chasis: BAT RUN I/O RS232 OK •Logix5555 REM PROG •4 Slots Fuente de Poder: •7 Slots •Montada en Chasis Modulos I/O •Redundantes •Discretos •10 Slots •13 Slots •17 Slots •Logix5580 •Análogos •Especiales ControlLogix – Procesadores Procesadores Logix557X ControlLogix – Procesadores Caracteristicas generales • Multi-tareas (32 tareas periodicas o evento, con prioridad configurable, solo una continua) • 1000 Programas por Tarea >V24 • Direccionamiento simbólico (NOM-IEC-1131-3) • Reside en cualquier slot • Diagramas de Escalera, Bloques de Función, Texto Estructurado • Set de Instrucciones avanzado • Software de programación: Studio 5000 GuardLogix – Caracteristicas Plataforma de Control de Alta Velocidad y Alto Desempeño para control multidisciplinario (secuencial, procesos, drives y movimiento) • Ambiente de Programación Común • Redes de Comunicación Comunes • Arquitectura de Control Común •PLC de seguridad GuardLogix – Caracteristicas • Integración con sistemas de PLC existentes • Inserción/Remoción de tarjetas bajo voltaje presente • Tamaño compacto • Múltiples procesadores en el mismo chasis • Control de movimiento integrado • Comunicaciones eficientes (Ethernet, ControlNet, DeviceNet, DH+ / RIO) • Modelo Productor/Consumidor • Memoria modular (4MB -8MB) • SIL 3 (Safety Integrated Level 3) •Memoria de seguridad integrada •Task de seguridad (no modificable) Point - IO Expansión de 1 a 255 modulos remotos de I/O (1756-AENT) Módulo 1756-AENT Studio 5000 - Introducción Mismo ambiente de programación basado en Windows: RsLogix5, RsLogix500, RsLinx, RsView, RsNetworx y Studio 5000 RSNetworx RSView RSLinx Studio 5000 RSLogix5 RSLogix500 Ver 1.0 Ver 1.0 Ver 1.0 Ver 1.0 Ver 1.0 Ver 1.0 Studio 5000 es el último miembro de la familia que aporta programación estructurada, modularidad y poderosas herramientas para el diseño de software Apoyado de RSLinx, que conforma los drivers de comunicación, ofrece una variedad en opciones de comunicación. Studio 5000 - Características •El entorno Studio 5000® combina elementos de diseño en un marco estándar que optimiza la productividad y reduce el tiempo de puesta en marcha. Este entorno de diseño intuitivo está integrado y se concentra en el diseño rápido y virtual, así como en la reutilización y la colaboración. La interfaz de usuario actualizada ofrece una experiencia de usuario común y moderna en todas las aplicaciones Studio 5000. • Comunidad de proyectos y dispositivos. Studio 5000 proporciona una interfaz de usuario común a través de sus aplicaciones, piense menos en la configuración y dedique más tiempo en tu proyecto! • Compartir datos e información. Escriba la información una vez y luego impórtela en otras aplicaciones de software. • Reducir el tiempo de ingeniería. Ejecute proyectos esbeltos y efectivos habilitando creación e implementación de proyectos modulares y repetibles Studio 5000 – Ambiente de Programación Barra de Menú Barra de Lógica Común Organizador del Controlador Barra Online Barra de Herramientas Estándar Barra de Elementos mas Comunes Studio 5000 – Menús File > Edit > View > Search > Studio 5000 – Menús Logic > Communications > Tools > Window > RsLinx - Definiciones RsLinx es un servidor de comunicaciones que provee conectividad con los dispositivos de piso a una gran variedad de software como RSLogix5000, Studio 5000, RsView, RsNetworx, etc., asi como a terceros. Driver: Módulo de programa que ejecuta código para manejar el hardware de acuerdo al protocolo requerido EDS: “Electronic Data Sheet”, contiene la información electrónica para cada dispositivo en campo RsLinx – Ambiente de navegacion Barra de Herramientas Drivers configurados Barra de Menús Dispositivos en la red RSWho Configure Driver Studio 5000 - Navegacion Online: Entablar comunicaciones en tiempo real con el controlador a través de RsLinx y un hardware determinado Upload: “Subir” a la computadora la imagen de un controlador (programa y datos) Download: “Bajar” de la computadora al controlador la imagen de un controlador (programa y datos) Modo PROGRAM: Modo de operación del controlador donde la lógica no es ejecutada y el I/O no es escaneado. Los cambios / ediciones son permitidas Modo RUN: Modo de operacion del controlador donde la lógica es ejecutada, el I/O escaneado y los cambios/ediciones son permitidos con limitaciones Modo REM: Modo de operación del controlador donde remotamente se puede ejecutar REM RUN o REM PROGRAM Laboratorio 1 – OnLine Comms Objetivo: Comunicarse en línea (OnLine) con el procesador. Procedimiento: 1. Accese RSLinx 2. Configure el drive adecuado 3. Verifique que tenga conexion al PLC 4. Certifique que el procesador aparece en el lado derecho de la pantalla Laboratorio 2 –Upload Lab 2.1 UPLOAD Repaso – Lógica de Escalera Contacto: Botones, interruptores, entradas lógicas, etc. Bobinas: Luces, Motores, Válvulas • Semejanza a diagrama eléctrico • Sencillez en la lectura • Operaciones aritméticas y lógicas Flujo de lectura de lógica Línea de Voltaje • Identificación de componentes Línea Común A las instrucciones que NO modifican el valor o estado de un tag y solo leen el valor, se les conoce como señales “No Destructivas”, dentro de estas están los contactos A las instrucciones que SI modifican el valor o estado de un tag, se les conoce como señales “Destructivas”, dentro de estas están las bobinas Repaso – Instrucciones comunes XIC: Evalúa si un contacto normalmente abierto esta cerrado.La línea se hace verdadera cuando el actuador esta activado. Instrucción de entrada. XIO: Evalúa si un contacto normalmente cerrado esta abierto. La línea se hace verdadera cuando el actuador no está activado. Instruccion de entrada. OTE: Energiza una bobina, representa una instrución de salida. Su resultado esta basado en una combinación de instrucciones de entrada TMR: Temporizadores. Instrucción de salida que al activarse sus condiciones inicia la cuenta de tiempo y provee en tiempo real su valor y condiciones. CTU: Contadores. Conteo de eventos, cada vez que sus condiciones se hacen verdaderas incrementa su cuenta. Instrucción de salida. Studio 5000 - Estructura El procesador es llamado Controlador Los datos son contenidos dentro de Tags. Los programas estan contenidos en Tareas. La logica esta contenida en Rutina. Studio 5000 - Tags Reglas para asignar nombre a los Tags Máximo 40 caracteres Debe iniciar con letra o guion bajo (“_”), los siguientes caracteres pueden ser letras, números o guión bajo No puede contener dos guión bajo continuos No puede terminar en guión bajo Mayúsculas o minúsculas tienen el mismo significado Studio 5000 – Tipo de Datos Predeterminados – Utiliza los Tipos de Datos Básicos para formar estructuras Definidos por Módulos – Creados al incluir un modulo a nuestra configuración de I/O, no pueden ser alterados Definidos por Usuario – Creados por el usuario utilizando todos los anteriores Studio 5000 – Tipo de Datos BOOL - Booleano. Un solo bit que es 1 o 0 (ON/OFF) SINT - Entero corto. Numero de ocho bits con signo, con valores de –128 a +127. STRING - STRING o Cadena con un máximo de 254 caracteres, también utilizado para representar caracteres ASCII INT - Entero. Numero de 16 bits con valores de –32,768 a +32,767 DINT - Doble-entero. Numero de 32 bits con signo, con valores de –2147483648 a +2147483647 REAL - Número de punto flotante con valores de –3.40E38 a +3.40E38 Studio 5000 – Tipo de Datos Predeterminados Basicos + Estructuras TIMER – Incluye dos DINTs para el preset y acumulado y una serie de BOOLs para estado COUNTER – Incluye dos DINTs para el preset y acumulado y una serie de BOOLs para estado Studio 5000 – Tipo de Datos Predeterminados De esta manera se ve la estructura TIMER en Studio 5000: Studio 5000 - Tags Tags: Area de memoria nombrada que contiene datos de un Tipo especifico Los Tags tienen un Alcance: 1. Controlador 2. Programa El Alcance (Scope) se refiere a lo visible que sera el Tag dentro del controlador o solo dentro del Task Studio 5000 – Tags De Controlador Los Tags de Controlador (Controller Scope) son visibles a traves de todo el Controlador, asi como fuera del mismo No existen limites en el número de Tags de Controlador, excepto por la memoria misma . Studio 5000 – Tags Locales Los Tags de Locales (Program Scope) son visibles solo dentro del programa donde fueron creados, y no se puedes utilizer fuera del programa No existen limites en el número de Tags de programa, excepto por la memoria misma . Studio 5000 - Tasks Los Programas estan contenidos en Tasks (Tareas). Un Programa no funcionaría si no estuviera incluido en un Task. El controlador ControlLogix acepta hasta 32 tareas, de las cuales solo una puede ser continua. Una tarea puede tener hasta 1000 programas, comenzando con la aplicación Logix Designer, version 24.00.00 y posteriores, cada una con sus propias rutinas ejecutables y tags bajo el alcance del programa. Una vez iniciada (activada) una tarea, todos los programas asignados a la tarea se ejecutan en el orden en que están agrupados. Los programas pueden aparecer solamente una vez en el Controller Organizer y no pueden ser compartidos por multiples tareas. Un Task puede ser Continuo, Periodico o por Evento. Studio 5000 – Task Continuo Controlador Modulos Tags La tarea continua se ejecuta en segundo plano. Cualquier tiempo de CPU no asignado a otros operaciones (como movimiento, comunicación y tareas periódicas o de eventos) se utiliza para ejecutar los programas dentro de la tarea continua. • La tarea continua se ejecuta todo el tiempo. • Cuando la tarea continua completa un total escaneo, se reinicia inmediatamente. Un proyecto no requiere una tarea continua. • Si se usa, solo puede haber una tarea continua. Task 1 por Logix Task (32 per controller) Task (32 per controller) Program 1000 por Task Program (32 per task) Program (32 per task) Tags Main Routine Routine Studio 5000 – Task Periodica Una tarea periódica realiza una función en un período específico. Cuando el tiempo para el la tarea periódica caduca, la tarea periódica: • Interrumpe cualquier tarea de menor prioridad. • Se ejecuta una vez. • Devuelve el control donde lo dejó la tarea anterior. Puede configurar el período de tiempo de 0,1 ms…2000 s. • El valor predeterminado es 10 ms. Studio 5000 – Task por Evento Una tarea de evento realiza una función solo cuando ocurre un evento específico (trigger). Cuando se produce el desencadenante de la tarea de evento, la tarea de evento: Interrumpe cualquier tarea de menor prioridad. Se ejecuta una vez. El activador de la tarea de evento puede ser lo siguiente: • Cambio de estado de datos de entrada de modulo • Un activador de tag consumido • Una instruccion EVENT • Un activador de eje • Un activador de evento de movimiento Importante: algunos controladores Logix 5000 no admiten todos los trigger Studio 5000 - Organizador Informacion relacionada con el Controlador: Propiedades, Tags y, Fault & Power-Up Handler Tareas > Programas > Rutinas Grupos de Movimiento y Tendencias Tipos de Datos Configuración de I/O Similar al Explorador de Windows y común al resto del software de Rockwell Laboratorio 3 – Download Lab 3.1 DOWNLOAD Laboratorio 3 – Crear un programa 1. Abra Studio 5000 2. Haga click sobre Nuevo Proyecto 3. Seguir Instrucciones del instructor Laboratorio 3 – Crear un programa Objetivo: Crear el programa para un Controlador, identificando el hardware asociado y la estructura en software. Name: Todos los modulos pueden ser nombrados por el usuario, sin embargo solo en los modulos “inteligentes” es requerido forzosamente. Laboratorio 3 – Conceptos a revisar Electronic Keying: Define el modo en que el modulo se “asociará” al Controlador. Las opciones son las siguientes: Exact Match: Configuración vs Módulo real debe ser exacto Compatible Module: Configuración vs Módulo real basta con que sean compatibles. Disable Keying: Deshabilitar comparación, deshabilitar llave electronica. RPI : Intervalo de tiempo en que el Controlador solicitará el paquete de información (datos + diagnóstico) al módulo. Laboratorio 3 – Conclusiones La sintaxis con la que los Tags asociados a modulos se crean es la siguiente: Local:0:I I: Input, O:Output, C:Configuration Slot Rack Local El nombre del Tag no dice nada acerca del tipo de módulo. La única referencia seria el numero de Slot y el Tipo de Dato. Existe diferencia en la forma de presentar la información con respecto a otros procesadores. El nombre del Tag y la de sus elementos pudiera ser confusa. Studio 5000 - Arrays Secuencia de Elementos, numericamente indexados, del mismo Tipo de Datos El Indice inicia en 0 y se extiende hasta el número de elementos menos 1. Un Array puede tener hasta 3 dimensiones, a menos que sea parte de una estructura donde solo es permitida 1 dimension Un Tag tipo Array ocupa un bloque continuo de memoria en el controlador con cada elemento en secuencia Estaciones > DINT[3] Estaciones > DINT[3,3] 0 DINT[0] 0 DINT[0,0] DINT[0,1] 1 DINT[1] 1 DINT[1,0] DINT[1,1] 2 DINT[2] 2 DINT[2,0] DINT[2,1] Studio 5000 – Tag Alias Un Tag Alias es un Tag que apunta a otro Tag. El Tag Alias podría ser utilizado para accesar la información de otro Tag. La información reside siempre en el Tag base Controlador Tag Alias Los Alias pueden ser utilizados además para: Nombrar puntos de I/O Permitir que los programas sean reusables ! Los Tag Alias no son dinámicos, es necesario editarlos OffLine Tag Studio 5000 – Tag Alias Scope Los Tag Alias pueden ser creados de Alcance (Scope) Controlador o Programa Controlador Alcance Controlador Tags Tag Alias Apunta a Tags de Controlador únicamente. No puede hacerlo a Tags de Programa porque estos no son vistos a nivel Controlador ✓ Útil para nombrar puntos de I/O Task (32 por controlador) Task (32 per controller) Task (32(32 perpor controller) Program task) Program (32 per task) Program (32 per task) Tags Studio 5000 – Tag Alias Scope Alcance Programa Controlador Apunta a Tags de Programa y a Tags de Controlador ✓ Util para nombrar puntos de I/O que se utilizan solamente en un programa ✓Permite la reutilizacion de rutinas y programas al hacer logica con Alias genericos de Alcance Programa que apunten despues a Tags de Controlador Tags Tag Alias Task (32 por controlador) Task (32 per controller) Task (32(32 perpor controller) Program task) Program (32 per task) Program (32 per task) Tags Tag Alias Studio 5000 – UDT’s Logix5000 permite al usuario definir Tipos de Datos que pueden ser utilizados para crear Tags Ejemplos de Tipos de Datos Predefinidos BOOL, DINT, TIMER Definidos por usuario Estacion, Robot, Maquina Controlador Tags UDT Una UDT permite el agrupamiento de datos en un solo tag •Recolecta datos relacionados •Reduce la longitud de la lista de tags •Asegura que los nombres sean exactamente los mismos Las UDTs son accesibles a través del controlador. No hay limites en el número de UDTs (excepto por la memoria). Studio 5000 – UDT’s vs PLC Se acostumbraba utilizar varios archivos de datos para concentrar la información de un equipo (estación, maquina, motor, etc.) Las UDT’s integran este concepto dentro del mismo controlador, evitando tener que tener documentos que describieran la manera de organizar la información N10 T14 B13 STA 1 1-5 STA 1 11-20 STA 2 6-10 STA 2 21-30 STA 3 11-15 STA 3 1-10 STA 1 1-10 11-20 STA 2 21-30 STA 3 Tag STA 1 DINT[10] BOOL[10] Tag STA 2 TIMER[5] Tag STA 3 STA 1 N10:1-N10:10 B13/1-B13/10 T14:1-T14:5 UDT con 3 elementos de Tipo de Datos basicos Studio 5000 – UDT’s Basicas RsLogix500 reserva el minimo en memoria… Dword = 90 Bytes Tags Studio 5000 – UDT’s Avanzadas La estructura de la UDT tiene el mismo tamaño pero su distribución es mejor Los Tags estan mejor “documentados”, más explícitos. Set de Instrucciones Instrucciones a nivel de BIT XIC: (Examine if Closed) Habilita las salidas cuando el bit esta activo XIO: (Examine if Open) Habilita las salidas cuando el bit esta desactivado OTE: (Output Energize) Activa un bit OTL: (Output Latch) Activa un bit (retentivo) OTU: (Output Unlatch) Desactiva un bit (retentivo) Set de Instrucciones Instrucciones a nivel de BIT Ejemplo Set de Instrucciones Instrucciones de Comparación LIM: Verifica que un valor se encuentre entre otros dos valores EQU: Verifica que los valores sean iguales NEQ: Verifica que un valor no sea igual a otro LES: Verifica que un valor sea menor que el otro GRT: Verifica que un valor sea mayor que el otro LEQ: Verifica que una valor sea menor o igual que el otro GEQ: Verifica que uno de los valores sea mayor o igual al otro Set de Instrucciones Instrucciones de Comparación • EQU Set de Instrucciones Instrucciones de Comparación • NEQ Set de Instrucciones Instrucciones de Comparación • LES Set de Instrucciones Instrucciones de Comparación • GRT Set de Instrucciones Instrucciones de Comparación • LEQ Set de Instrucciones Instrucciones de Comparación • GEQ Set de Instrucciones Instrucciones de Comparación • LIM Set de Instrucciones Instrucciones Matemáticas ADD: Suma dos valores SUB: Resta dos valores MUL: Multiplica dos valores DIV: Divide dos valores Set de Instrucciones Instrucciones Matemáticas • ADD • SUB Set de Instrucciones Instrucciones Matemáticas • MUL • DIV Set de Instrucciones Instrucciones Lógicas/Movimiento de Datos MOV: (Move) Copia un valor MVM: (Masked Move ) Copia una parte en especifica de un valor AND: Ejecuta una operacion AND OR: Ejecuta una operacion OR XOR: Ejecuta una operacion OR eXclusiva NOT: Ejecuta una operacion NOT Set de Instrucciones Instrucciones Lógicas/Movimiento de Datos • MOV Set de Instrucciones Instrucciones de Control de Programa JMP: Brinca a ejecutar una seccion de logica que no siempre requiere de ser ejecutada LBL: Identifica el inicio de tal porcion de logica JSR: Brinca a una rutina diferente, ejecuta su logica y regresa a la rutina que origino el brinco Set de Instrucciones Instrucciones de Control de Programa • JSR Set de Instrucciones Instrucciones de Control de Programa • JSR Set de Instrucciones Instrucciones de Temporizadores/Contadores TON: Lleva el tiempo en el cual el TIMER ha esta habilitado TOF: Lleva el tiempo en el cual el TIMER ha estado deshabilitado RTO: Lleva el tiempo en el cual el TIMER ha estado habilitado y guarda el valor hasta que se ejecuta un RESET CTU: Cuenta eventos en forma ascendente CTD: Cuenta eventos en forma descendente RES: Reestablece el acumulado de un Contador o Temporizador Set de Instrucciones Instrucciones de Temporizadores/Contadores • TON Set de Instrucciones Instrucciones de Temporizadores/Contadores • TON Set de Instrucciones Instrucciones de Temporizadores/Contadores • TOF Set de Instrucciones Instrucciones de Temporizadores/Contadores • TOF Set de Instrucciones Instrucciones de Temporizadores/Contadores • RTO Set de Instrucciones Instrucciones de Temporizadores/Contadores • RTO Set de Instrucciones Instrucciones de Temporizadores/Contadores • CTU Set de Instrucciones Instrucciones de Temporizadores/Contadores • CTU Set de Instrucciones Instrucciones de Temporizadores/Contadores • CTD Set de Instrucciones Instrucciones de Temporizadores/Contadores • CTD Set de Instrucciones Instrucciones de Temporizadores/Contadores • RES Set de Instrucciones Instrucciones de Datos y Misceláneos. • COP • CPS Set de Instrucciones Instrucciones de Avanzadas. • CPT Set de Instrucciones Instrucciones de Avanzadas. • CONCAT Set de Instrucciones Instrucciones de Avanzadas. • STOD Set de Instrucciones Instrucciones de Avanzadas. • STOR Set de Instrucciones Instrucciones de Avanzadas. • DTOS Set de Instrucciones Instrucciones de Avanzadas. • RTOS Set de Instrucciones Instrucciones de Avanzadas. • BTD Set de Instrucciones Instrucciones de Avanzadas. • FFL Set de Instrucciones Instrucciones de Avanzadas. • FFU Set de Instrucciones Instrucciones de Avanzadas. • FLL Laboratorio 4 – Crear un programa Y uso de instrucciones. 1. Crear un programa, con tu nombre. 2. Sigue las instrucciones que se te dan. 3. Crear los tags necesarios Studio 5000 – Productor/Consumidor Permite compartir Tags entre Controladores Identificar tags a ser producidos, no se necesita tener un destino Crear tags consumidores, apuntan a tags productores Un tag producido puede ser consumido por multiples consumidores No se requiere logica para operaciones basicas Productor/Consumidor Consumidor Tag Tag RUN BAT RUN RUN BAT RUN I/O RS232 OK REM Tag PROG RUN BAT RUN I/O RS232 OK REM PROG I/O RS232 OK REM PROG Consumidor Productor Studio 5000 – Productor/Consumidor El modelo Productor/Consumidor puede efecuarse a traves de …… ControlNet, cuando los controladores se encuentran en chasis separados Backplane, cuando los controladores estan en el mismo chasis Se efectua independientemente del modo de operacion del controlador (Run, Program, Fault) Cuando el Controlador esta en modo Program o Fault, los tags producidos/consumidos se quedan en el ultimo estado Ocurre de manera asincrona al programa ! Todo esto ocurre por el tipo de arquitectura en hardware de la plataforma y controladores Studio 5000 – Mensajeo La instrucción MSG es una instrucción de salida de lógica de escalera que lee o escribe asíncronamente un bloque de datos hacia o desde otro modulo mediante el backplane o una red. El tamaño de la instrucción depende del tipo de datos y del comando de mensaje programado por el usuario. Los mensajes usan recursos de conexión para enviar o recibir datos. Los mensajes pueden dejar la conexión abierta (cache) o cerrada cuando el mensaje termina de transmitirse. Cada uno de los mensajes utiliza una conexión del controlador, independientemente del numero de dispositivos que se encuentran en la ruta del mensaje. Para conservar las conexiones, configure un mensaje para que lea o escriba a varios dispositivos. RUN RUN BAT RUN BAT I/O RS232 OK REM RUN I/O RS232 OK REM PROG PROG Read / Write Read / Write Laboratorio 4. Productor/Consumidor Mensajeo (MSG) FIN DE CURSO EMC ROBOTICS S, de R.L. de C.V. Privada Juan Alonso 117. Col. Landín Saltillo, Coah. México