Curso ControlLogix

163
Pág. 1

Transcript of Curso ControlLogix

Page 1: Curso ControlLogix

Pág. 1

Page 2: Curso ControlLogix

TEMARIO.

1. REPASO DE CONCEPTOS BASICOS.1.1 ORGANIZACIÓN DE LA MEMORIA Y DIRECCIONAMIENTO.1.2 FUNCIONES BASICAS.1.3 SOFTWARE DE PROGRAMACION RSLOGIX V.15.02.

2. FUNCIONES AVANZADAS.2.1 SECUENCIADORES.2.2 OPERACIONES CON ARCHIVOS.2.3 BRINCOS Y SUBRUTINAS.2.4 CORRIMIENTO DE BITS.2.5 INSTRUCCIONES DE COMUNICACIÓN.2.6 FUNCIONES ESTADISTICAS.2.7 OPERACIONES CON VARIABLES TIPO STRING.2.8 FUNCIONES DE COMUNICACIÓN.

3. UTILIZACION DE LA RED ETHERNET.3.1 CONEXIÓN Y CONFIGURACION DE EQUIPOS.3.2 CONFIGURACION DE CANALES DE COMUNICACION.3.3 INTERCAMBIO DE INFORMACION ENTRE CONTROLLOGIX.

4. UTILIZACION DE LA RED DEVICENET PARA COMUNICACIÓN CON CONTRALORES DE ROBOTS.

4.1 CONCEPTOS BASICOS DE LA RED DEVICENET.4.2 DETERMINACION DE REQUERIMIENTOS Y UBICACIÓN DE

FUENTES DE PODER.4.3 COMPRENSION DEL FLUJO DE COMUNICACIÓN EN UNA RED

DEVICE NET.4.4 CONFIGURACION DE SCANNER 1756-SDN.4.5 MAPEO DE DATOS DE LOS DISPOSITIVOS EN EL SCAN LIST.4.6 REVISION DE RUTINAS DE PROGRAMACION PARA

COMUNICACIÓN CON CONTROLADORES DE ROBOTS.

Pág. 2

Page 3: Curso ControlLogix

5. UTILIZACION DE LA RED CONTROLNET PARA COMUNICACIÓN DE PLC´S PILZ.

5.1 CONCEPTOS BASICOS DE LA RED CONTROLNET.5.2 COMPRENSION DEL FLUJO DE COMUNICACIÓN EN UNA RED

CONTROLNET.5.3 CONFIGURACION DE SCANNER 1756-CNB.5.4 REVISION DE RUTINAS DE PROGRAMACION PARA

COMUNICACIÓN CON PLC´S PILZ MEDIANTE EL ADAPTADOR PSS.

Pág. 3

Page 4: Curso ControlLogix

1. REPASO DE CONCEPTOS BASICOS.

La plataforma ControlLogix es una plataforma de control modular adecuada para control secuencial, de proceso, de drives coordinados o de movimiento – en cualquier combinación. Con esta plataforma, usted puede combinar múltiples procesadores, redes e I/O sin restricciones. Y a medida que su sistema crece, usted puede usar la red Control Net para distribuir el control a chasis adicionales y/u otras plataformas Logix.

Un sistema ControlLogix puede consistir de cualquier componente desde un controlador individual y módulos I/O en un chasis sencillo, hasta un sistema altamente distribuido que consiste en múltiples chasis y redes trabajando juntos. ControlLogix se adecuará a sus aplicaciones si éstas:

requieren una solución de control de alto desempeño demandan la integración de múltiples disciplinas de control (por ejemplo,

máquinas de empaque de alta velocidad, integrando control secuencial y de movimiento, o aplicaciones de manejo de red integrando aplicaciones secuenciales y de control de drive)

combinan control de lotes y de procesos, pero buscan una opción flexible de software de visualización

requieren una solución de control que abarque toda la planta, desde el ingreso de materiales hasta embarques al exterior

expanden una inversión existente en un sistema basado en controladores PLC-5 o SLC 500

Pág. 4

Page 5: Curso ControlLogix

Esta es la apariencia de la pantalla RSLogix 5000.

Pág. 5

Page 6: Curso ControlLogix

Creando un Nuevo Proyecto.

1. En el menú File (Archivo), elija Nuevo.

El diálogo New Controller (Nuevo Controlador) aparece.

2. En el menú desplegable hacia abajo Type (Tipo), elija el controlador 1756-LXX ControlLogix que usted desee utilizar en su nuevo proyecto.

3. En el campo Revision (Revisión), Seleccione la revision que desee trabajar.

4. En el campo Name (Nombre), teclee “El nombre del proyecto” de su controlador.

5. En el menú con despliegue hacia abajo Chassis Type (Tipo de Chasis), elija el Chassis que va autilizar en su ControlLogix.

Pág. 6

Page 7: Curso ControlLogix

6. En el campo Slot (Numero de Ranura), elija la posición donde encuentra el procesador Logix5561 en el chasis.

7. En el campo Create In (Crear En), teclee 'C:\RSLogix5000\Projects\curso' o haga click en el botón Browse (Examinar) para navegar a ese directorio.

Controller Organizer aparece del lado izquierdo de la ventana RSLogix 5000, con un fólder llamado Curso. Usted acaba de crear su primer archivo de controlador. En este momento, no existe I/O, ni base de datos, ni lógica asociada con el archivo del controlador.

Pág. 7

Page 8: Curso ControlLogix

Controller Organizer es una representación gráfica del contenido de su archivo de controlador. Esta representación consiste en un árbol de fólderes y archivos que contienen toda la información acerca de los programas y datos en el actual archivo del controlador. Los fólderes principales que tiene por default este árbol son:

Controller File Name (Nombre de Archivo de Controlador) – contiene etiquetas con alcance de controlador, administrador de fallas del controlador y el administrador de energización. Tasks (Tareas) - las tareas son mostradas en este fólder. Cada tarea muestra sus programas con rutinas de escalera y etiquetas con alcance de programa. Trends (Tendencias) – las tendencias son mostradas en este fólder. Data Types (Tipos de Datos) – muestra tipos de datos predefinidos y definidos por el usuario. Los datos definidos por el usuario son creados en este fólder. Configuración I/O – contiene la información acerca de la configuración del hardware en este archivo de controlador. Mantiene una jerarquía de módulos con los que el controlador es configurado para comunicarse.

Delante de cada fólder hay un cuadro que contiene un signo + o un signo -. El signo + indica que el fólder está cerrado. Haga click en él para expandir el árbol y mostrar los archivos en el fólder. El signo - indica que el fólder ya está abierto y su contenido es visible.

Haciendo click con el botón derecho del mouse invoca diferentes menús emergentes relativos al contexto. A menudo, usted descubrirá que esto constituye un atajo para acceder a la ventana de propiedades o a opciones de menú desde la barra de menú. Haciendo doble click en los archivos de la ventana de Controller Organizer con frecuencia hace emerger diálogos funcionales, desde los cuales usted puede alimentar parámetros para realizar tareas relevantes.

Pág. 8

Page 9: Curso ControlLogix

1.1 ORGANIZACIÓN DE LA MEMORIA Y DIRECCIONAMIENTO.

Un programa Logix contiene:

– Uno o múltiples rutinas con código de programación– La base de datos de variables locales (Program Scope).

• Las variables locales solamente están accesibles desde las rutinas del mismo programa.

• Las aplicaciones Logix están segmentadas en múltiples programas.

• Cada programa tiene su propio conjunto de rutinas y variables.

• Variables de diferentes programas pueden tener el mismo nombre.

Pág. 9

Program

Variable

DB

Routine

Routine

Routine

Routine

Routine

Page 10: Curso ControlLogix

• Los Programas son asignadas en TASKS para su ejecución.

• Cada controlador Logix soporta hasta 32 tareas de usuario 1 tarea continua y hasta 31 tareas periódicas.• Cada tarea tienen su propio nivel de prioridad para uso

eficiente de sus recursos de cómputo en el procesador.• Cada controlador Logix tiene una Base de Datos

compartida.

Pág. 10

Storage_Tank_5

LevelIn_ValveOut_VTempAgitator

Routine

Routine

Routine

Routine

Routine

Storage_Tank_2

LevelIn_ValveOut_VTempAgitator

Routine

Routine

Routine

Routine

Routine

Page 11: Curso ControlLogix

• Accesible desde todos los programas en el controlador• I/O módulos, scanners• Controladores, HMI• Mensajes• Programming devices• RSLinx.

Pág. 11

ControllerTags

Program

I/O

Program

I/O

Page 12: Curso ControlLogix

Configurando I/O

En esta sección usted configurará sus módulos I/O y usará las capacidades de crear aliases del software RSLogix 5000 para crear como aliases las etiquetas que usted ya diseñó en su lógica de escalera para las etiquetas de módulo.

Configurando el Módulo de Entrada Discreta.Agregar el módulo de entrada en la Ranura 1 a la lista de Configuración de I/O.

1. En Controller Organizer, haga click con el botón derecho del mouse en el fólder I/O Configuration (Configuración de I/O) y elija New Module (Nuevo Módulo).

El diálogo Select Module Type (Seleccione Tipo de Módulo) aparece, con una lista de módulos disponibles. Haga click en la flecha hacia abajo en el lado inferior derecho del diálogo para recorrer hacia abajo la lista de módulos hasta el módulo 1756-IA16.

Pág. 12

Page 13: Curso ControlLogix

Configurando el Módulo de Salida Discreta.Agregar el módulo de salida en la Ranura 2 a la lista de Configuración de I/O.

1. En Controller Organizer, haga click con el botón derecho del mouse en el fólder I/O Configuration (Configuración de I/O) y elija New Module (Nuevo Módulo).

El diálogo Select Module Type (Seleccione Tipo de Módulo) aparece, con una lista de módulos disponibles. Haga click en la flecha hacia abajo en el lado inferior derecho del diálogo para recorrer hacia abajo la lista de módulos hasta el módulo 1756-OA16.

Pág. 13

Page 14: Curso ControlLogix

Observando las EtiquetasEn esta sección usted verá las etiquetas que fueron creadas para el módulo 1756-IA16 y 1756-OA16 en las Ranuras 1 y 2 cuando usted creó el módulo.

1. En Controller Organizer, haga doble click en el icono Controller Tags (Etiquetas de Controlador) .

El monitor de datos Data Monitor aparece, con 3 datos en la columna Tag Name (Nombre de Etiqueta):

Estos datos son estructuras de etiquetas y contienen más etiquetas de las que en realidad se muestran en la ventana Data Monitor. Fíjese en el signo + contiguo al nombre de la etiqueta; esto indica que usted puede expandir la estructura de etiqueta para ver más información de etiqueta.

Pág. 14

Page 15: Curso ControlLogix

El nombre Local indica que estas etiquetas están asociadas con un módulo que está en el mismo chasis que el controlador. El número entre los 2 puntos :X: es el número de ranura del el módulo; en este caso, el módulo está en la ranura 1. Los caracteres que aparecen después de la última comilla (por ejemplo, la C, la I y la O) indican si los datos son de Configuration (Configuración), Input (Entrada) o Output (Salida). Este módulo particular cuenta con los tres tipos de datos.

El campo Scope arriba de la columna Tag Name (Nombre de Etiqueta) muestra el alcance para las etiquetas que son mostradas. El alcance define el rango en el que las etiquetas son reconocidas dentro de las rutinas. Las etiquetas creadas en el alcance del controlador son accesibles para todas las rutinas en todos los fólderes de programas; aquellos creados en el alcance de programa son accessibles sólo para las rutinas dentro de dicho folder de programa.

En este caso, el alcance de la etiqueta es Curso (controlador), que indica que las etiquetas son válidas para todas las rutinas en todos los fólderes de programas en este archivo de controlador. Si el campo del alcance contuviera un nombre de programa, entonces las etiquetas serían válidas sólo para las rutinas en el fólder de programa especificado.

2. Haga click en el signo + que está delante de la etiqueta Local:1:C para mostrar las etiquetas de configuración para este módulo.Data Monitor se actualiza para mostrarle todas las etiquetas debajo de la etiqueta Local:1:C. Si no puede ver el nombre completo y valor de la etiqueta, arrastre los bordes de las columnas respectivas para ensancharlas.

Pág. 15

Page 16: Curso ControlLogix

La 2ª. Columna “Value” (Valor) indican que el estilo (o raíz) de los valores es binario. El signo # sirve como delimitador entre el estilo y el resto del valor. Fíjese que algunas de las etiquetas de configuración consisten de 32 bits. Estos bits están numerados de 0 a 31. Los bits individuales que están fijados en estas etiquetas son el resultado de la configuración por default que fue usada cuando usted alimentó el módulo en la lista I/O de Configuración.

3. Haga click en el signo + que está delante de la etiqueta Local:1:I para mostrar todas las etiquetas de entrada para este módulo.

4. Haga click en el signo + que está delante de la etiqueta Local:2:O para mostrar todas las etiquetas de salida para este módulo.

La etiqueta Local:2:O.Data aparece bajo la estructura de etiqueta Local:2:O. Las etiquetas rotuladas Local:2:O.Data son los bits de salida reales (como los datos de imagen de salida en un procesador PLC-5).

Pág. 16

Page 17: Curso ControlLogix

Creando Tags.

Pág. 17

Page 18: Curso ControlLogix

Pág. 18

Page 19: Curso ControlLogix

De Tablas de Datos a Bases se Datos

1.2 FUNCIONES BASICAS

Pág. 19

F8:0 – F8:999F8:0 – F8:999

LS_114LS_114Motor5.StartMotor5.StartFiller5.UptimeFiller5.UptimeTanks[10].LevelTanks[10].LevelTanks[10].PressureTanks[10].PressureRecipes[Cookie].MilkRecipes[Cookie].MilkAxis5.SpeedAxis5.SpeedN7:0 – N7:999N7:0 – N7:999

C5:0 – C5:999C5:0 – C5:999

T4:0 – T4:999T4:0 – T4:999

B3:0 – B3:999B3:0 – B3:999

O:0 –O:37O:0 –O:37

I:0 – I:37I:0 – I:37

Page 20: Curso ControlLogix

En Controller Organizer, haga doble click en el icono Main Routine (Rutina Principal) Un escalón vacío aparece en el editor de escalera Ladder Editor.

En la barra de herramientas Ladder Instructions (Instrucciones de Escalera) (como se muestra abajo), haga click en la cejilla Bit.

La barra de herramientas Ladder Instruction (Instrucciones de Escalera) se actualiza para mostrarle todas las instrucciones Bit disponibles.

Pág. 20

Page 21: Curso ControlLogix

La barra de Elementos de texto estructurado, es una barra de herramientas la cual muestra una serie de instrucciones establecidas por categorías (Elemento de grupo) sobre la barra. Cuando haces clic sobre cualquiera de las pestañas de las diferentes categorías, la barra de herramientas muestra todas las instrucciones correspondientes a ese elemento de grupo.

Esta barra de elementos cuenta con un par de scrollbars una para moverse entre los diferentes grupos de elementos y otra para desplazarse dentro de las instrucciones de cada Elemento de grupoEl grupo de Elementos son listados a continuación:

Favorites Bit Timer/Counter Input/Output Compare Compute/Math Move/Logical File/Misc. File/Shift Sequencer Program Control For/Break Special Trig Functions Advanced Math Math Conversions Motion State Motion Move Motion Group Motion Event Motion Config ASCII Serial Port ASCII String ASCII Conversion

Pág. 21

Page 22: Curso ControlLogix

Una vez realizado toda la lógica de escalera, estamos listos para descargar el programa al procesador ControlLogix.

Pág. 22

Page 23: Curso ControlLogix

2.0 FUNCIONES AVANZADAS.

2.1 SECUENCIADORES.

Instrucciones de Secuenciador.

Las instrucciones de secuenciador monitorean las operaciones uniformes y repetibles.

Si usted desea detectar cuando un paso se ha completado use la instrucción SQI.

Una instrucción se ejecuta más rápidamente y requiere menos memoria si todos los operandos de la instrucción utilizan el mismo tipo de dato óptimo, típicamente DINT ó REAL.

Sequencer Input (SQI).

Pág. 23

Page 24: Curso ControlLogix

Operandos:

Operando: Tipo: Formato: Descripción:Array(Arreglo)

DINT Tag de Arreglo Arreglo de secuenciador.Especifique el primer elemento del arreglo de secuenciador.No use CONTROL.POS en el subíndice.

Mask (Máscara)

SINTINTDINT

TagValor Inmediato

Qué bits se bloquean o se pasan.

Source (Origen)

DINT Tag Datos de entrada para el arreglo de secuenciador.

Control CONTROL Tag Estructura de control para la operación.Generalmente se usa en el mismo CONTROL que las instrucciones SQO y SQL.

Length(Longitud)

DINT Valor inmediato Número de elementos en el arreglo (tabla de secuenciadores) que se comparan.

Position(Posición)

DINT Valor inmediato Posición actual en el arreglo.El valor inicial es típicamente 0.

Pág. 24

Page 25: Curso ControlLogix

Estructura de control.

Mnemónico: Tipo de Datos: Descripción:.ER BOOL Se establece el bit de error

cuando .LEN ≤ 0, .POS < 0 ó .POS > .LEN

.LEN DINT La longitud especifica el número de pasos en el arreglo del secuenciador.

.POS DINT La posición identifica el elemento que la instrucción compara actualmente.

La instrucción SQI detecta cuándo se completa un paso en una pareja secuencial de instrucciones SQI/SQO. Una vez habilitada, la instrucción SQI compara un elemento de origen mediante una máscara con un elemento de arreglo para si hay igualdad.

Generalmente se usa la misma estructura CONTROL que las instrucciones SQO y SQL.

La instrucción SQI realiza la operación en la memoria de datos contiguos.

Como introducir un valor de máscara inmediato.

Cuando se introduce una máscara, el software de programación tiene valores decimales predeterminados. Sí desea introducir una máscara usando otro formato, se tiene que colocar el prefijo correcto antes del valor.

Pág. 25

Page 26: Curso ControlLogix

Prefijo: Descripción:16# Hexadecimal. Ejemplo: 16#0F0F8# Octal. Ejemplo: 8#172# Binario. Ejemplo: 2#00110011

Ejemplo:

Una vez habilitada, la instrucción SQI pasa value_2 a través de la máscara para determinar si el resultado es igual al elemento actual en array_dint. Si la comparación con máscara es verdadera la condición de renglón de salida se hace verdadera.

Operando SQI. Ejemplo de valores (DINT mostrados en binariosOrigen. Xxxxxxxx xxxxxxxx xxxx0101 xxxx1010Máscara. 00000000 00000000 00001111 00001111Arreglo. Xxxxxxxx xxxxxxxx xxxx0101 xxxx1010

Una cifra 0 en la máscara significa que el bit no se compara.

Como usar SQI sin SQO

Pág. 26

Page 27: Curso ControlLogix

Cuando se utiliza un SQI sin un SQO es necesario incrementar externamente el arreglo del secuenciador.

La función SQI compara el valor de origen.La instrucción ADD incrementa el arreglo de secuenciador.La instrucción GRT si hay otro valor disponible para verificar el arreglo del secuenciador.La instrucción MOV restablece el valor de posición después de pasar por el arreglo de secuenciador una vez.

Pág. 27

Page 28: Curso ControlLogix

Sequencer output (SQO)

Operandos:

Operando: Tipo: Formato: Descripción:Array(Arreglo)

DINT Tag de Arreglo Arreglo de secuenciador.Especifique el primer elemento del arreglo de secuenciador.No use CONTROL.POS en el subíndice.

Mask (Máscara)

SINTINTDINT

TagValor Inmediato

Qué bits se bloquean o se pasan.

Source (Origen)

DINT Tag Datos de entrada para el arreglo de secuenciador.

Control CONTROL Tag Estructura de control para la operación.Generalmente se usa en el mismo CONTROL que las instrucciones SQI y SQL.

Length(Longitud)

DINT Valor inmediato Número de elementos en el arreglo (tabla de secuenciadores) que se comparan.

Position DINT Valor inmediato Posición actual en el arreglo.

Pág. 28

Page 29: Curso ControlLogix

(Posición) El valor inicial es típicamente 0.

Estructura de control.

Mnemónico: Tipo de Datos: Descripción:.EN BOOL El bit de Enable indica que la

instrucción SQO está habilitada..DN BOOL Se establece el bit de efectuado

cuando todos los elementos especificados han sido desplazados al destino.

.ER BOOL Se establece el bit de error cuando .LEN ≤ 0, .POS < 0 ó .POS > .LEN

.LEN DINT La longitud especifica el número de pasos en el arreglo del secuenciador.

.POS DINT La posición identifica el elemento que la instrucción compara actualmente.

La instrucción SQO establece las condiciones de salida para el próximo paso de una pareja secuencial de las instrucciones SQO/SQI. Un a vez habilitada, la instrucción SQO incrementa la posición, mueve todos los datos en la posición mediante la máscara y almacena el resultado en el destino. Si .POS > .LEN, la instrucción da la vuelta al inicio del arreglo de secuenciador y continúa con .POS = 1.

Generalmente se usa la misma estructura CONTROL que las instrucciones SQI y SQL.

La instrucción realiza la operación en la memoria de datos contiguos.

Pág. 29

Page 30: Curso ControlLogix

Como introducir un valor de máscara inmediato.

Cuando se introduce una máscara, el software de programación tiene valores decimales predeterminados. Sí desea introducir una máscara usando otro formato, se tiene que colocar el prefijo correcto antes del valor.

Prefijo: Descripción:16# Hexadecimal. Ejemplo: 16#0F0F8# Octal. Ejemplo: 8#172# Binario. Ejemplo: 2#00110011

Ejemplo:

Una vez habilitada, la instrucción SQO incrementa la posición, pasa los datos a dicha posición en array_dint a través de la máscara y almacena el resultado en value_1.

Pág. 30

Page 31: Curso ControlLogix

Operando SQO. Ejemplo de valores (DINT mostrados en binariosArreglo. Xxxxxxxx xxxxxxxx xxxx0101 xxxx1010Máscara. 00000000 00000000 00001111 00001111Destino. Xxxxxxxx xxxxxxxx xxxx0101 xxxx1010

Una cifra 0 en la máscara no cambia el bit.

Como usar SQI con SQO.

Si usted combina una instrucción SQI con una instrucción SQO, se tiene que asegurar de que ambas instrucciones usen los mismos valores de control, longitud y posición.

Cada vez que el controlador va del modo de programación al modo de marcha, la instrucción SQO restablece (inicializa) el valor .POS. Para restablecer .POS en el valor de la inicialización (.POS=0), use la instrucción RES para borrar el valor de posición.

Pág. 31

Page 32: Curso ControlLogix

En éste ejemplo se utiliza el estado del bit del primer escán para borrar el valor de .POS.

Sequencer load (SQL)

La instrucción SQL carga condiciones de referencia en un arreglo de secuenciador. Una vez habilitada, la instrucción SQL se incrementa a la próxima posición en el arreglo de secuenciador y carga el valor de origen en dicha posición. Si el bit .DN está establecido o si .POS ≥ .LEN, la instrucción establece .POS = 1.

Pág. 32

Page 33: Curso ControlLogix

Ejemplo:

Antes de la carga después de la carga

Una vez habilitada, la instrucción SQL carga value_3 en la próxima posición en el arreglo de secuenciador, el cual es array_dint[5] en éste ejemplo.

Pág. 33

Page 34: Curso ControlLogix

2.2. OPERACIONES CON ARCHIVOS.

Instrucción FAL.

La instrucción FAL realiza operaciones aritméticas, lógicas, de desplazamiento y función en valores en arreglos.

Operandos.

Operando: Tipo: Formato: Descripción:Control CONTROL Tag Estructura de control para la

operación.Longitud DINT Valor Inmediato Número de elementos en el

arreglo que se manipulan.Posición DINT Valor inmediato Elemento actual en el arreglo.

El valor inicial es típicamente 0

Modo DINT Valor inmediato Como distribuir la operaciónSeleccione INC, TODOS o introduzca un número.

Destino SINTINTDINTREAL

Tag Tag para almacenar el resultado.

Expresión SINT Valor inmediato Una expresión que consiste

Pág. 34

Page 35: Curso ControlLogix

INTDINTREAL

Tag en tag y/o valores inmediatos separados por operadores.

Estructura de control.

Mnemónico: Tipo de Datos: Descripción:.EN BOOL El bit de Enable indica que la

instrucción FAL está habilitada..DN BOOL El bit de efectuado se establece

cuando la instrucción ha efectuado la operación en el último elemento. (.POS = .LEN )

.ER BOOL El bit de error se establece si la expresión genera un overflow (se establece S:V). .La instrucción ya no ejecuta hasta que el programa restablece el bit .ER. El valor .POS contiene la posición del elemento que causó el overflow.

.LEN DINT La longitud especifica el número de elementos en el arreglo en que la instrucción realiza una operación.

.POS DINT La posición contiene la posición del elemento actual al cual la instrucción obtiene acceso.

Pág. 35

Page 36: Curso ControlLogix

La instrucción FAL realiza operaciones de copiar, aritméticas, lógicas y función en los datos almacenados en un arreglo. La instrucción FAL realiza las mismas operaciones en los arreglos que la instrucción CPT realiza en sus elementos.

Se usa el valor .POS para proporcionar el avance secuencial a través del arreglo.

Si un subíndice de la expresión del destino se encuentra fuera de rango, la instrucción FAL genera un fallo mayor (Tipo 4, código 20).

Ejemplos de operación.

Pág. 36

Page 37: Curso ControlLogix

Pág. 37

Page 38: Curso ControlLogix

Pág. 38

Page 39: Curso ControlLogix

Pág. 39

Page 40: Curso ControlLogix

Instrucción FSC.

La instrucción FSC es una instrucción de salida, campara los valores en un arreglo, elemento por elemento, para las operaciones lógicas que se especifican en la expresión.

Cuando la instrucción FSC está habilitada y la comparación es verdadera, la instrucción establece el bit .FD y el bit .POS refleja la posición del arreglo donde la instrucción encontró la comparación verdadera. La instrucción establece el bit .IN para interrumpir la búsqueda.

Pág. 40

Page 41: Curso ControlLogix

Operandos.

Operando: Tipo: Formato: Descripción:Control CONTROL Tag Estructura de control para la

operación.Longitud DINT Valor Inmediato Número de elementos en el

arreglo que se manipulan.Posición DINT Valor inmediato Offset en el arreglo.

El valor inicial es típicamente 0.

Modo DINT Valor inmediato Como distribuir la operaciónSeleccione INC, TODOS o introduzca un número.

Expresión SINTINTDINTREAL

Valor inmediatoTag

Una expresión que consiste en tags y/o valores inmediatos separados por operadores.

Estructura de control.

Mnemónico: Tipo de Datos: Descripción:.EN BOOL El bit de Enable indica que la

instrucción FSC está habilitada..DN BOOL El bit de efectuado se establece

cuando la instrucción ha operado en el último elemento (.POS = .LEN).

.ER BOOL El bit de error no se modifica.

.IN BOOL El bit de inhibición indica que la instrucción FSC ha detectado una comparación verdadera. Usted debe restablecer este bit para poder continuar la operación de buscar.

.FD BOOL El bit de encontrado indica que la instrucción FSC ha detectado una

Pág. 41

Page 42: Curso ControlLogix

comparación verdadera..LEN DINT La longitud especifica el número de

elementos en el arreglo en que la instrucción realiza una operación.

.POS DINT La posición contiene la posición del elemento actual al cual la instrucción obtiene acceso.

Como determinar el orden de operación.

Las operaciones que usted describe en la expresión son realizadas por la instrucción en un orden determinado y no necesariamente según el orden que las escribió. Puede anular el orden de operación agrupando los términos entre paréntesis, lo cual causa que la instrucción realice una operación entre paréntesis antes de las otras operaciones.

Las operaciones de orden igual se realizan desde la izquierda hacia la derecha.

Orden operación.

Pág. 42

Page 43: Curso ControlLogix

Ejemplos de aplicación FSC.

Pág. 43

Page 44: Curso ControlLogix

Instrucción COP.

La instrucción COP copia los valores de un origen a un destino. El origen no se cambia. El número de bytes copiados es:

Conteo de bytes = longitud * (el número de bytes en el tipo de datos de destino).

La instrucción COP realiza la operación en la memoria de datos contiguos y realiza una copia directa de memoria de byte a byte, lo cual requiere entender la configuración de memoria del controlador.

Pág. 44

Page 45: Curso ControlLogix

La instrucción COP no escribe más allá del fin del arreglo. Si la longitud es mayor que el número total de elementos en el arreglo destino, la instrucción COP se detiene al final del arreglo. No se genera un fallo mayor.

Operandos.

Operando: Tipo: Formato: Descripción:Origen SINT

INTDINTREALestructura

Tag. Elemento inicial que se copia.Importante: Los operandos de origen y destino deben ser del mismo tipo, de lo contrario pueden ocurrir resultados inesperados.

Destino SINT INTDINTREALestructura

Tag. El elemento inicial se puede sobrescribir por el origen.Importante: Los operandos de origen y destino deben ser del mismo tipo, de lo contrario pueden ocurrir resultados inesperados.

Longitud DINT Valor inmediatoTag.

Número de elementos de destino que se copian.

Pág. 45

Page 46: Curso ControlLogix

Ejemplos de aplicación COP.

Este ejemplo inicializa un arreglo de estructuras de temporizador. Una vez habilitadas, las instrucciones MOV inicializan los valores .PRE y .ACC del primer elemento de array_timer. Una vez habilitada, la instrucción COP copia un bloque contiguo de bytes a partir de array_timer[0]. La longitud es nueve estructuras de temporizador.

Pág. 46

Page 47: Curso ControlLogix

Instrucción FLL.

La instrucción FLL llena los elementos de un arreglo con el valor de origen. El origen no se cambia. El número de bytes llenados es:

Conteo de bytes = longitud * (número de bytes en el tipo de datos de destino)

La instrucción FLL realiza la operación en la memoria de datos contiguos. No escribe más allá del fin de un arreglo. Si la longitud es mayor que el número total de elementos en el arreglo de destino, la instrucción FLL se detiene al final del arreglo. No se genera un fallo mayor.

Pág. 47

Page 48: Curso ControlLogix

El origen y el destino deben de ser del mismo tipo para obtener los resultados óptimos. Si usted desea llenar una estructura, use la instrucción COP. Si combina los tipos de datos para el origen y destino, los elementos de destino se llenan con los valores de origen convertidos.

Ejemplo de aplicación FLL.

Una vez habilitada la instrucción FLL copia el valor en value_1 a dest_1.

Pág. 48

Page 49: Curso ControlLogix

Pág. 49

Page 50: Curso ControlLogix

2.3 BRINCOS Y SUBRUTINAS.

Utilice las instrucciones de control del programa para cambiar el flujo de la lógica.

Para saltar por encima de una seccion de lógica que no necesita ejecutarse cada vez: Utiliza las instrucciones JMP y LBL.

Para saltar a una rutina separada, pasar datos a la rutina, ejecutar la rutina y retornar los resultados: Utiliza las instrucciones JSR, SBR y RET.

Instrucciones JMP y LBL.

La instrucción JMP es una instrucción de salida y LBL es de entrada. Estas instrucciones saltan porciones de la lógica de escalera, una vez habilitada la instrucción JMP salta a la instrucción LBL referenciada y el controlador continúa ejecutándose en ese lugar. Cuando está deshabilitada, la instrucción JMP no afecta la ejecución de la lógica de escalera.

La instrucción JMP puede avanzar o invertir la ejecución de la lógica de escalera. El salto de avance de una etiqueta ahorra el tiempo de escán del programa omitiendo un segmento de la lógica hasta que sea necesario. El salto de retroceso permite que el controlador repita iteraciones de la lógica.

Pág. 50

Page 51: Curso ControlLogix

Es necesario tener cuidado de no saltar hacia atrás un número excesivo de veces, ya que el temporizador de control (watch dog) puede sobre pasar el tiempo de espera puesto que el controlador no llega al fin de la lógica, lo cual a su vez, hace que el controlador entre en fallo.

La instrucción LBL es el receptor de la instrucción JMP que tiene el mismo nombre de etiqueta. Asegurarse de que la instrucción es la primera instrucción en el renglón.

Un nombre de etiqueta debe ser único dentro de una rutina. El nombre puede: Tener hasta 40 caracteres. Contener letras, números y caracteres de subrayado (_).

Una vez habilitada la instrucción JMP, la ejecución salta renglones sucesivos de lógica hasta llegar en el renglón que contiene la instrucción LBL con label_1.Si la etiqueta no existe puede ocurrir una falla mayor .

Pág. 51

Page 52: Curso ControlLogix

Instrucciones JSR, SBR y RET.

Las instrucciones JSR y RET son instrucciones de salida y la instrucción SBR es una instrucción de entradas.

Operando Tipo Formato DescripciónInstrucción JSRNombre de rutina rutina nombre Rutina que se ejecuta.Parámetro de entrada

SINTINTDINTREAL

Valor inmediatoTagTag de arreglo

Parámetros que pasan a la rutina.

Parámetro de retorno

SINTINTDINTREAL

TagTag de arreglo

Parámetros (0 – n) que se reciben de la rutina.

Instrucción SBRParámetro de entrada

SINTINT

TagTag de arreglo

Parámetros (0 – n) recibidos de JSR.

Pág. 52

Page 53: Curso ControlLogix

DINTREAL

Instrucción RETParámetro de retorno

SINTINTDINTREAL

Valor inmediatoTagTag de arreglo

Parámetros (0 – n) que se retornan a JSR.

Las instrucciones JSR, SBR y RET conducen la ejecución de la lógica a una subrutina distinta dentro del programa, escanea dicha subrutina una vez y retornan al punto inicial.

Una vez habilitada, la instrucción JSR conduce la ejecución de la lógica a la subrutina especificada y, si fuese necesario, pasa los parámetros a la subrutina. Si no hay parámetros de entrada, el control pasa de la instrucción JSR al primer renglón de la subrutina.

La instrucción SBR recibe los parámetros de entrada y copia los valores de los mismos en los tags especificados. El número y tipo de parámetros de entrada en la instrucción JSR debe de coincidir con los de la instrucción SBR. Si la instrucción JSR tiene menos parámetros que la instrucción SBR asociada, el controlador puede entrar en un fallo mayor. Situación distinta que si tiene más parámetros que la instrucción SBR.

Usa la instrucción SBR en la subrutina solamente si desea pasar parámetros a la subrutina. Si usa una instrucción SBR, ésta debe ser la primera instrucción en el renglón de la rutina. No se puede colocar una instrucción SBR en la rutina principal.

Use la instrucción RET solamente si retorna los parámetros a la instrucción JSR. La instrucción RET pone fin a la subrutina y, si fuese necesario, retorna los parámetros a la instrucción JSR. Una subrutina puede tener más de una instrucción RET.

Pág. 53

Page 54: Curso ControlLogix

Una vez habilitada, la instrucción RET pasa sus parámetros, si los hay, y reanuda la ejecución del renglón que sigue a la instrucción JSR asociada. El número y tipo de parámetros de retorno en la instrucción RET debe coincidir con los de la instrucción SBR. Si el número de parámetros de retorno en la instrucción RET es menor que el número de parámetros de retorno en la instrucción JSR, el controlador entra en un fallo mayor. La instrucción RET puede tener más parámetros de retorno que la instrucción JSR asociada sin causar un fallo.

Cuando esta inhabilitada, la instrucción RET no afecta la ejecución de la lógica. El controlador continúa ejecutando la subrutina actual.

No hay restricciones, excepto la memoria del controlador, para el número de rutinas anidadas que pueden existir ni para el número de parámetros que se pasan o retornan.

Pág. 54

Page 55: Curso ControlLogix

Ejemplos de aplicación JSR/SBR/RET.

Pág. 55

Page 56: Curso ControlLogix

Pág. 56

Page 57: Curso ControlLogix

2.4 CORRIMIENTO DE BITS.

Se usan las instrucciones de arreglo (archivo) /desplazamiento para modificar la ubicación de datos dentro de los arreglos.

Instrucción BSL.

La instrucción BSL es una instrucción de salida, ésta instrucción desplaza los bits especificados dentro del arreglo una posición a la izquierda. Una vez habilitada, la instrucción descarga el bit superior de los bits especificados al bit .UL, desplaza el resto de los bits una posición a la izquierda y carga el bit de origen en el bit 0 del arreglo.

Ejemplos de aplicación BSL.

Pág. 57

Page 58: Curso ControlLogix

Instrucción BSR.

La instrucción BSR desplaza los bits especificados dentro del arreglo una posición a la derecha. Una vez habilitada, la instrucción descarga el valor en el bit 0 del arreglo al bit .UL, desplaza el resto de los bits una posición a la derecha y carga el bit de origen en el bit superior de los bits especificados.

Pág. 58

Page 59: Curso ControlLogix

Ejemplos de aplicación BSR.

Pág. 59

Page 60: Curso ControlLogix

2.5 INSTRUCCIONES DE COMUNICACION.

La instrucción MSG funciona para comunicarse entre un controlador logix5000 y otro controlador.

Como comunicarse con otro controlador Logix5000.

Los controladores logix5000 pueden usar las instrucciones MSG para comunicarse entre si.

Tipo de instrucción MSG. Ejemplo de origen y destino.Logix5000 escribe a logix5000(escritura de la tabla de datos protocolo de control e información)

tag de origen array_1tag de destino array_2

Logix5000 lee desde logix5000(lectura de la tabla de datos protocolo de control e información)

tag de origen array_1tag de destino array_2

Cuando se introducen los tags de origen y destino para una instrucción MSG entre dos controladores logix5000:

El tag de origen y el tag de destino deben ser tags del controlador cubiertos.

El tag de origen y el tag de destino pueden ser de cualquier tipo de datos, excepto AXIS, MESSAGE o MOTION_GROUP.

No se pueden especificar las dimensiones de arreglo ni miembros de estructura.Use un alias. Por ejemplo, en vez de array_1 [3], especifique mytimer.acc, el cual es un alias de dicho elemento de arreglo.

No se puede transferir una porción de un arreglo.Especifique todo el arreglo (introduciendo el nombre del arreglo) o un elemento de un arreglo (introduciendo un alias).

Pág. 60

Page 61: Curso ControlLogix

Como comunicarse con otros procesadores.

El controlador Logix5000 también usa las instrucciones MSG para comunicarse con los procesadores PLC y SLC. Las instrucciones MSG son diferentes según cuál controlador inicia la instrucción.

Para las instrucciones MSG de un controlador Logix5000 a un procesador PLC o SLC:

Tipo de instrucción MSG:

Ejemplo de origen y destino

Tipo de archivo compatibles:

Logix5000 escribe a PLC-5

Logix5000 escribe a SLC ó Micrologix1000

Elemento de origen array_1Tag de destino N7:10

Se puede usar un tag de alias para el tag de origen. Si se desea usar un offset dentro de un arreglo, hay que usar un alias para indicar el offset.

Para PLC-5: SINT, INT, DINT o real.Para SLC: INT.Para typedwrite PLC-5: s, B, N o F.Para escritura de rango de palabra PLC-5: s, B, N, F, I, O, A o D.Para SLC:INT

Logix5000 escribe PLC2 array_1 SINT, INT, DINT o realLogix5000 lee desde PLC-5

Logix5000 lee desde SLC ó Micrologix1000

Elemento de origen N7:10

Se puede usar un tag de alias para el tag de destino. Si se desea usar un offset dentro de un arreglo, hay que usar un alias para indicar el offset.

Para typedread PLC-5: s, B, N o FPara lectura de rango de palabra PLC-5: s, B, N, F, I, O, A o D.Para SLC: B ó NPara PLC-5: SINT, INT, DINT o real.Para SLC: INT.

Logix5000 lee desde PLC2

Elemento de origen 010Tag de destino array_1

SINT, INT, DINT o real

Pág. 61

Page 62: Curso ControlLogix

El controlador logix5000 puede enviar comandos TypedWrite, TypedRead o de rango de palabra a los procesadores PLC-5. Estos comados leen y escriben datos de una manera diferente. Los siguientes diagramas muestran la diferencia entre los comandos TypedWrite/TypedRead y de rango de palabra.

El controlador Logix5000 puede procesar mensajes iniciados desde los procesadores PLC y SLC. Estos mensajes usan direcciones de la tabla de datos. Los tags se asignan a direcciones de la tabla de datos para que los procesadores obtengan acceso a los tag dentro del controlador Logix5000.

Mapeo de direcciones

El software de programación incluye una herramienta de asignación PLC/SLC que le permite hacer disponible a los procesadores PLC2, PLC3, PLC5 o SLC un tag de arreglo de controlador existente en el controlador local.

1. Desde el menú de Lógica, selecciona Map PLC/SLC Messages.

Pág. 62

Page 63: Curso ControlLogix

La ventana de mapeo PLC/SLC se desplega como se muestra.

2. Especifica la siguiente información:

El tag en el controlador local debe ser un arreglo entero (SIN, INT o DINT) que sea bastante grande para aceptar los datos de mensaje.

Pág. 63

Page 64: Curso ControlLogix

2.7 OPERACIONES CON VARIABLES TIPO STRING.

Es común utilizar un lector de código de barras para recibir datos con un controlador a través de su puerto serial.

Para ello se utiliza los caracteres de tipo ASCII que almacenan en tags que utilizan un tipo de datos de STRING (cadena).

Se puede Utilizar el tipo de dato STRING predeterminado. Almacena hasta 82 caracteres.También se puede crear un nuevo tipo de datos de cadena que almacene menos ó más caracteres.

Para crear un tipo de datos de cadena:

Como ya lo comentamos se puede utilizar el tipo de dato STRING predeterminado. Este almacena hasta 82 caracteres.

O bien cree un nuevo tipo de datos de cadena para almacenar el número de caracteres definido.

Pág. 64

Page 65: Curso ControlLogix

Pág. 65

Page 66: Curso ControlLogix

Por lo general antes de leer el buffer se recomienda usar una instrucción ACB o ABL para verificar que el buffer tenga los caracteres requeridos:

Una instrucción ARD o ARL continúa leyendo el buffer hasta que la instrucción lee los caracteres de requeridos.

Mientras una instrucción ARD o ARL lee el buffer, no se pueden ejecutar otras instrucciones del puerto en serie ASCII, excepto la instrucción ACL.

El verificar que el buffer tenga los caracteres requeridos evita que la instrucción ARD o ARL interrumpa la ejecución de las otras instrucciones del puerto en serie ASCII mientras el dispositivo entrada envía los datos.

1. Si el dispositivo es un lector código de barras?

2. Introduzca el siguiente renglón.

3. Introduzca 0. (el puerto en serie es el canal 0).

4. Introduzca un nombre de tag para la instrucción ACB y defina el tipo de datos como SERIAL_PORT_CONTROL.

5. Introduzca el bit EN del tag ACB. (el tag del paso 4.)

Pág. 66

Page 67: Curso ControlLogix

6. Introduzca el siguiente renglón:

7. Introduzca el elemento POS del tag ACB. (El tag del paso 4.)

8. Introduzca el número de caracteres en los datos.

9. Introduzca 0.

10. Introduzca un nombre de tag para almacenar los caracteres ASCII. Defina el tipo de datos como un CADENA.

11. Introduzca un nombre de tag para la instrucción ARD y defina el tipo de datos como SERIAL_PORT_CONTROL.

12. Introduzca el número de caracteres en los datos.

Pág. 67

Page 68: Curso ControlLogix

Procesamiento de caracteres ASCII.

Use los siguientes pasos para extraer una parte de un código de barras a fin de realizar una acción basada en este valor.

Por ejemplo, un código de barras puede tener información acerca de un equipaje en un transportador en un aeropuerto. Para verificar el número de vuelo y destino de equipaje se extraen los caracteres 10-18.

Pág. 68

Page 69: Curso ControlLogix

Pasos:

1. Introduzca el siguiente renglón.

2. Introduzca el bit EM de la instrucción ARD que lee el código de barras.

3. Introduzca el tag cadena que contiene el código de barras.

Pág. 69

Page 70: Curso ControlLogix

4. Introduzca el número de caracteres en la parte de código de barras que desea verificar.

5. Introduzca la posición del primer carácter en la parte del código de barras que desea verificar.

6. Introduzca el nombre del tag que va almacenar la parte del código de barras que desea verificar. Defina el tipo de datos como una cadena.

Pág. 70

Page 71: Curso ControlLogix

Verificar los caracteres del código de barras.

En esta ocasión utilizaremos instrucciones de comparación (EQU, GEQ, GRT, LEQ, LES, NEQ) para verificar caracteres específicos.

Los valores hexadecimales de los caracteres determinan si una cadena es mayor o menor que otra cadena.

Cuando las cadenas están clasificadas como en un directorio telefónico, el orden de las cadenas determina cual es el mayor.

Pasos:

1. Introduzca un renglón y una instrucción de comparación:

Para ver si la cadena es: Introduzca esta instrucción:Igual a caracteres específicos EQUDiferentes a caracteres específicos NEQMayor Que caracteres específicos GRTIgual o mayor que caracteres específicos GEQMenor que caracteres específicos LESIgual o menor que caracteres específicos LEQ

Pág. 71

Page 72: Curso ControlLogix

2. Introduzca el tag que almacena la parte del código de barras que desea verificar. (El destino de extraer una parte del código de barras, paso 6.)

3. Introduzca un nombre de tag para almacenar los caracteres contra los cuales desea realizar la prueba. Defina el tipo de datos como una cadena.

4. Haga doble clic en el área del valor de origen B.

5. Escriba los caracteres ASCII contra los cuales va a realizar la prueba y seleccione aceptar.

6. Introduzca la salida requerida.

Pág. 72

Page 73: Curso ControlLogix

3.0 UTILIZACIÓN DE LA RED ETHERNET.

3.1 CONEXION Y CONFIGURACION DE EQUIPOS.

Para conectar el módulo de red EtherNet directamente con la computadora es necesario un cable EtherNet Estándar con Conector RJ-45.

La siguiente figura muestra la configuración del cable:

Pág. 73

Page 74: Curso ControlLogix

El módulo EtherNet acepta comunicación gateway de datos de control e información a través de EtherNet a otras redes tales como ControNet, DeviceNet y Data Highway Plus.

Pág. 74

Page 75: Curso ControlLogix

Aplicaciones de información.

En un sistema de control industrial, las aplicaciones de información generalmente se utilizan para descargar programas a PLC, monitorear procesos y recolectar estadísticas, datos de proceso y diagnósticos. El desempeño de este tipo de aplicación no es tan crucial como el de una aplicación de control, donde la velocidad, el rendimiento efectivo, el tiempo de respuesta y el tiempo improductivo son críticos para un proceso de fabricación.

Aplicaciones de control.

Las aplicaciones de control requieren tiempos de respuesta rápidos y un alto rendimiento efectivo de los datos. La disponibilidad de la red es de mayor importancia. Las intrusiones a la red deben de limitarse mediante el uso de barreras contra fuego y puentes.

Conexión principal EtherNet.

La conexión principal EtherNet es la parte de la red que maneja la mayor cantidad de tráfico. Utiliza las rutas de transmisión de más alta velocidad en la red y también puede ejecutar la distancia más larga.

Puentes.

Un puente es un dispositivo que conecta dos segmentos de red. Los segmentos pueden ser de tipo similares o diferentes. El puente se inserta en una red para segmentarla y mantener el tráfico contenido dentro de los segmentos para mejorar el rendimiento.

Pág. 75

Page 76: Curso ControlLogix

Interruptores EtherNet.

Los interruptores permiten una alta velocidad al paso del tráfico entre dos puertos en el interruptor. Los interruptores son básicamente puentes multipuertos que pueden transferir simultáneamente marcos entre parejas de puertos a plena velocidad del cable. Por ejemplo, un conector 10 base T de 16 puertos comparte un ancho de banda de 10 Mbps con los 16 nodos conectados. Al remplazar el conector con un interruptor, cada pareja de transmisor/receptor tiene la plena capacidad de 10 Mbps, por lo tanto un interruptor 10 base T de 16 puertos efectivamente tendría un ancho de banda de 80 Mbps con capacidad para 8 parejas.

Segmentos.

Un segmento es una sección de una red de área local (LAN) usada por un grupo de trabajo o departamento particular y separado del resto de la LAN por un puente, o interruptor. Las redes se dividen en múltiples segmentos por razones de seguridad y para mejorar el flujo de tráfico filtrando los paquetes no destinados para el segmento.

Pág. 76

Page 77: Curso ControlLogix

Planificación del sistema de cable EtherNet.

Determinación de la conectividad a la conexión principal.

Determinación del número de dispositivos y puertos.

El número de puertos que se necesita depende del número de dispositivos que desea conectar a la red. Necesitará un puerto para cada nodo en un segmento.

Considere el número y la ubicación de los siguientes componentes cuando determine cuantos puertos necesitará en la red:

Estaciones de trabajo. Rack de entradas y salidas. Estaciones Panel View. Puentes e interruptores. E/S futuras.

Pág. 77

Page 78: Curso ControlLogix

Longitudes y límites de los segmentos horizontales. La longitud total de cada segmento de cable horizontal no debe tener más de 100 metros entre dos dispositivos activos.

Uso de Fast EtherNet (100 Mbps).

Una velocidad de datos más alta proporcionará un ancho de banda de red más amplio. Pero generalmente, a más alta la velocidad de los datos, menos tolerante al ruido será una red de comunicaciones. El uso de Fast EtherNel (100 Mbps) para el control es la aplicación más crítica en términos de ruido. Además, la red no debe tener errores, ya que a mayor el número de errores en un sistema EtherNet /IP, más cantidad de tráfico. Cuando aumenta el tráfico también aumenta el tiempo de respuesta. Si su aplicación depende de tiempos de respuesta cortos, debe implementar medidas de seguridad para minimizar los errores debidos a ruidos y otras causas de aumento de tráfico. El rendimiento efectivo puede aumentarse más aún usando comunicaciones full-duplex.

Uso de cable blindado (STP) o sin blindaje (UTP)

Se debe seleccionar el cable correcto para el entorno, dependiendo de la ubicación donde va a encaminar el cable. El cable blindado ofrece un mejor desempeño que el cable sin blindaje en ambientes industriales. En particular, si la aplicación está en un ambiente de alto ruido o el cable debe instalarse cerca de fuentes que irradian ruido, entonces se debe usar cables blindados.

Se deben considerar cables blindados si la aplicación incluye uno o más de los siguientes componentes:

Control de soldadura por puntos

Pág. 78

Page 79: Curso ControlLogix

Centro de control de motores Variaciones de más de 10 HP Proceso de soldadura por inducción Proximidad a la radiación de frecuencias de radio de alta potencia Procesos electrostáticos Dispositivos de alta corriente (más de 100 amps)

Ubicación de Interruptores

Debe considerarse el ambiente al seleccionar interruptores y decidir dónde colocarlos. A menos que sean de resistencia industrial especificados, los interruptores deben instalarse en un envolvente adecuados para protegerlos contra la electricidad estática, las temperaturas extremas, la humedad y las interferencias electromagnéticas (EMI) generadas por los equipos circundantes. Asegúrese de considerar la temperatura al interior de los envolventes (armarios) cuando planifique dónde ubicar los interruptores, ya que los envolventes pueden no tener aire acondicionado.

El interruptor debe conectarse a tierra según las recomendaciones del fabricante.

Selección y ubicación de las E/S

Se debe tomar en cuenta el ambiente al seleccionar las E/S y al decidir dónde ubicarlas. Se deben considerar las especificaciones del fabricante con respecto a:

Vibración Temperatura Húmedad Ruido

En ambientes hostiles es posible que tenga que proporcionar envolventes apropiados para las E/S seleccionadas.

Pág. 79

Page 80: Curso ControlLogix

3.2 CONFIGURACION DE CANALES DE COMUNICACION.

La configuración de un Módulo EtherNet/IP incluye:

Dirección IP (requerida) Mascara de subred (recomendada) Dirección de gateway (opcional) Nombre de dominio (opcional) Direcciones de servidor (opcional)

EtherNet.

Al nivel más básico, EtherNet es un cable que conecta computadoras y dispositivos periféricos a fin de que puedan comunicarse. El cable utilizado para una red se denomina medio físico de red.

El Protocolo de Control de Transmisión/Protocolo Internet (TCP/IP) es un protocolo de capa de transporte (TCP) y un protocolo de capa de red (IP) que generalmente se usa para comunicación dentro de redes y a través de redes de Internet.

El módulo EtherNet utiliza TCP/IP para la comunicación EtherNet.

Dirección IP

La dirección IP identifica cada nodo en la red IP (o sistema de redes conectadas). Cada nodo TCP/IP es una red (incluyendo el módulo EtherNet) y debe tener una dirección IP exclusiva.

La dirección IP tiene 32 bits de largo y tiene una parte de ID de dispositivo principal. Cada red es una red Clase A, Clase B, Clase C. La clase de red determina como se formatea una dirección IP.

Pág. 80

Page 81: Curso ControlLogix

Cada nodo en la red física debe tener una dirección IP de la misma clase y el mismo ID de red. Cada nodo en la misma red tener un ID de dispositivo principal diferente, dando de este modo una dirección IP exclusiva.

Las direcciones IP se escriben como enteros decimales (0-255) separados por puntos, donde cada entero proporciona el valor de un byte de la dirección IP. Por ejemplo, la dirección IP de 32 bits:

Ejemplo:

00000011 00000000 00000000 00000001 se escribe como 3.0.0.1

Usted puede distinguir la clase de una dirección IP del primer entero en su dirección IP decimal como sigue:

Pág. 81

Page 82: Curso ControlLogix

Máscaras de Subred.

El direccionamiento de subred es una extensión del esquema de dirección IP que permite que una instalación use un solo ID de red para múltiples redes físicas.

El encaminamiento fuera de la instalación continúa al dividirse la dirección IP en un ID de red y un ID de dispositivo principal a través de la clase. Dentro de una instalación, la máscara de subred se usa para dividir la dirección IP en una porción de ID de red personalizada y una porción de ID de dispositivo principal personalizada.

Dirección Gateways

Un gateway conecta redes físicas individuales en un sistema de redes. Cuando un nodo necesita comunicarse con un nodo en otra red, un gateway transfiere los datos entre las dos redes. La siguiente figura muestra el gateway G conectado a la red 1 con la red 2.

Pág. 82

Page 83: Curso ControlLogix

Para configurar un módulo de EtherNet/IP se usa uno de los siguientes programas de software:

RSLogix 5000 RSLinx Servidor BOOTP

Rslogix 5000.

1. Agregar un nuevo módulo de comunicación 1756-ENET.

2. Seleccionar la revisión, escribir el IP Adress, y el nombre de la tarjeta.

Pág. 83

Page 84: Curso ControlLogix

2. Se descarga la aplicación al procesador a través del puerto serial.

RSLinx.

Si se encuentra conectado con el puerto serial.

Pág. 84

Page 85: Curso ControlLogix

Configuración de un driver EtherNet.

Pág. 85

Page 86: Curso ControlLogix

Servidor BOOTP.

Si se encuentra conectado con un interruptor.

Pág. 86

Page 87: Curso ControlLogix

4.0 UTILIZACIÓN DE LA RED DEVICENET PARA LA COMUNICACIÓN CON CONTROLADORES DE ROBOTS.

4.1 CONCEPTOS BASICOS DE LA RED DEVICENET.

Termino: Significado.DeviceNet. Red abierta que permite la transmisión y recepción de

datos de/hacia dispositivos de entrada y/o salidaPuente. La capacidad del módulo de interface de realizar

transferencia de mensajes explícitos.Cambio de estado. Un tipo de comunicación de datos de E/S. El modulo de

interface puede enviar y recibir datos con dispositivos esclavos que tienen la función de cambio de estado. Los cambios se envían cada vez que ocurre un cambio de datos. Los datos se actualizan a la velocidad del temporizador de registro.

Módulo de Comunicación.

Módulo de interfase 1756-DNB.

Cíclico. Un tipo de comunicación de datos de E/S. El módulo de interface puede enviar y recibir datos con dispositivos esclavos que tienen la función de cíclico. Los datos se envían según el régimen configurable por el usuario.

EDS Hoja de datos electrónicos. Una plantilla proporcionada por el suministrador que especifica cómo aparece la información en la pantalla así como la entrada apropiada (valor).

Mensajes Explícitos Un tipo de mensaje usado para tareas de baja prioridad, tales como configuración y monitoreo de datos.

Régimen de los Impulsos

Los dispositivos configurados para datos de cambio de estado también pueden enviar una señal de “impulso” para indicar una correcta operación.

Plataforma de computadora principal

La computadora principal del módulo de interface 1756-DNB

E/S La abreviatura de “entrada y salida”

Pág. 87

Page 88: Curso ControlLogix

Mensajes Implícitos El tipo de mensaje usado para datos de control de E/S de alta prioridad; por ejemplo, cambio de estado, cíclicos, encuestas o seleccionado en forma estroboscópica.

Datos de entrada Datos producidos por un dispositivo DeviceNet y recolectados por el módulo de interface para la lectura de una plataforma de computadora principal.

ID MAC La dirección de red de un nodo DeviceNet.Red La red DeviceNet o la representación de la red del

software RSNetWorx para DeviceNet. Nodo Hardware al cual se ha asignado una sola dirección en

la red (también llamado dispositivo). Fuera de línea Cuando la interface de comunicación PC no se está

comunicando en la red.En línea Cuando la interface de comunicación PC está

configurada y puede comunicarse en la red.Datos de salida Datos producidos por una plataforma de computadora

principal y escritos a la memoria del módulo de interface. Estos datos son enviados por el módulo de interface a los dispositivos DeviceNet.

Encuestados Un tipo de comunicación de datos de entrada/salida. Un mensaje de encuesta solicita una respuesta desde un dispositivo especificado en la red (una transferencia de datos punto a punto)

Registros La dirección de nodo y memoria de canal específico asignado, en el almacenamiento no volátil del módulo de interface, para un nodo en la lista de escán.

Rx La abreviatura de “recibir”Lista de escán La lista de dispositivos (nodos) con la cual el escáner

se configura para intercambiar datos de E/S.Escáner La función del módulo de interface 1756-DNB que

permite intercambiar E/S con módulos esclavos. Modo esclavo El módulo de interface está el el modo esclavo cuando

es colocado en la lista de escán de otro módulo de interface como dispositivo esclavo.

Pág. 88

Page 89: Curso ControlLogix

Estroboscópico Un tipo de comunicación de datos E/S. Un mensaje estroboscopio solicita una respuesta de cada dispositivo estroboscópico (una transferencia de difusión múltiple). Es un mensaje de 64 bits que contiene un bit por cada dispositivo en la red.

Tx La Abreviatura de “transmitir”

4.2 DETERMINACION DE REQUERIMIENTOS Y UBICACIÓN DE FUENTES DE PODER

Para configurar una red DeviceNet se necesita:

1. Entender los medios Físicos.

2. Efectuar terminaciones en la red.

3. Suministrar alimentación.

4. Conectar la red a tierra.

5. Usar la lista de comprobación.

Pág. 89

Page 90: Curso ControlLogix

Entender los medios físicos.

El sistema de cables DeviceNet utiliza una topología de línea troncal/ línea derivación.

Pág. 90

Page 91: Curso ControlLogix

Las opciones de cable son:

Redondo grueso: La línea troncal de la red DeviceNet.Redondo delgado: La línea de derivación que conecta dispositivos a la línea principal o troncal.

El cable redondo grueso y delgado contienen cinco conductores: un par trenzado (rojo y negro) para la alimentación de corriente continua de 24 VCD, un par trenzado (azul y blanco) para señal y un cable de tierra (sin forro).

Determinar la longitud de la línea troncal.

La distancia entre dos puntos cualesquiera no debe superar el recorrido máximo del cable en función de la velocidad de transmisión de datos.

Pág. 91

Page 92: Curso ControlLogix

Las resistencias de terminación reducen las reflexiones de las señales de comunicación en la red. Estas resistencias deben tener un valor de 121 Ω ohmios, 1%, ¼ de Watt.

Pág. 92

Page 93: Curso ControlLogix

Suministro de Alimentación.

El sistema de cables requiere que el tiempo de elevación de la fuente de alimentación sea inferior a 250 milisegundos hasta el 5% de su voltaje de salida nominal.

La fuente de alimentación tiene su propia protección limitadora de corriente.

Cada segmento del sistema de cables dispone de protección por fusibles.

La fuente de alimentación será dimensionada correctamente para proporcionar a cada dispositivo la alimentación necesaria.

Reducir el régimen de alimentación según la temperatura utilizando las normas del fabricante.

Como elegir una fuente de alimentación.

El conjunto de todos los factores siguientes no debe superar en 3.25% los 24 VCD nominales necesarios para un sistema de cables DeviceNet.

Selección inicial de fuente de alimentación – 1.00% Regulación de línea – 0.30% Deriva de temperatura – 0.60% (total) Deriva de tiempo – 1.05% Regulación de carga – 0.30 %

El cable grueso redondo posee una capacidad máxima de 8 amperes, y las líneas de derivación de 3 amperes.

Pág. 93

Page 94: Curso ControlLogix

Como dimensionar una fuente de alimentación.

Pág. 94

Page 95: Curso ControlLogix

Fuente de alimentación 1.

Sume la corriente consumida por cada dispositivo (D1, D2) de DeviceNet para obtener el valor de la alimentación 1 (1.50 + 1.05 = 2.55 A).2.55 A. es la capacidad nominal de la fuente de alimentación 1.

Fuente de alimentación 2.

Sume la corriente de cada dispositivo (D3, D4, D5) para obtener el valor de la fuente de alimentación 2 (0.25 + 1.00 + 0.10 = 1.35 A).

1.35 A. es la capacidad nominal de la fuente de alimentación 2.

Pág. 95

Page 96: Curso ControlLogix

4.4 CONFIGURACIÓN DE SCANNER 1756-SDN.

1. Agregar un nuevo módulo en el Backplane en Rslogix 5000.

2. Se selecciona el número de revisión correspondiente, así como el tamaño de las entradas, salidas y status.

Pág. 96

Page 97: Curso ControlLogix

3. A través de RSlinx podemos ver los nodos conectados sobre la red DeviceNet.

Pág. 97

Page 98: Curso ControlLogix

4. 5 MAPEO DE DATOS DE LOS DISPOSITIVOS EN EL SCAN LIST.

1. A través de Rsnetworx podemos configurar la tarjeta Scanner para que comience a transmitir y recibir datos hacia el PLC. Para ello es necesario abrirlo y a través de Rslinx colocarnos en línea.

2. Una vez en línea y observando todos los elementos de la red. Sobre el scanner le damos clic izquierdo y seleccionamos propiedades, para que se abra la ventana de configuración.

Pág. 98

Page 99: Curso ControlLogix

3. En al ventana de propiedades podremos observar la identidad de la tarjeta, Configurar la tarjeta en el slot donde se encuentra, colocar los dispositivos a la lista de escaneo, mapear las entradas y salidas de la red.

Pág. 99

Page 100: Curso ControlLogix

Pág. 100

Page 101: Curso ControlLogix

Pág. 101

Page 102: Curso ControlLogix

Pág. 102

Page 103: Curso ControlLogix

Pág. 103

Page 104: Curso ControlLogix

4.5 REVISIÓN DE RUTINAS DE PROGRAMACIÓN PARA LA COMUNICACIÓN CON LOS CONTROLADRES DE ROBOTS.

Pág. 104

Page 105: Curso ControlLogix

5 UTILIZACION DE LA RED CONTROLNET PARA LA COMUNICACIÓN CON LOS PLC´S PILZ.

5.1 CONCEPTOS BASICOS DE LA RED CONTROLNET.

ControlNet es una red de comunicación en tiempo real que permite una arquitectura de control flexible que puede trabajar con múltiples procesadores y hasta 99 nodos en la parte troncal del cable de red. No existe un mínimo de separación entre taps y se puede acceder a la red ControlNet desde cualquier nodo.

Ejemplo de configuración de red ControlNet.

 

 

Pág. 105

Page 106: Curso ControlLogix

Utilizando el cable coaxial ControlNet soporta varias configuraciones en la topología de la red.

El medio físico es un cable coaxial R6/U blindado tipo BNC como el que se utiliza para TV, pero inmune al ruido de 75 ohms. También se puede utilizar fibra óptica

Los Taps pueden ser instalados donde quiera con un mínimo de espacio requerido.

La distancia y la velocidad del Bus de comunicación pueden ser:

1000 m con cable coaxial con 2 nodos @ 5 Mb/s. 250 m con 48 nodos. 3000 m con fibra óptica @ 5 Mb/s. 5000 m con repetidor coaxial @ 5/Mb/s. 30 km con fibra óptica.

Pág. 106

Page 107: Curso ControlLogix

Network Update Time (NUT) – La base de tiempo en la red en el cual el dato es transmitido. Este valor es configurable por el usuario (de rango de 2.00 –100.00 milisegundos) y deben considerarse para tipos discretos, analógicos, y datos agendados punto –punto. El valor de por default es 5.00 milisegundos.

Cada NUT es divido en 3 componentes principales: mensajes Scheduled, mensajes Unscheduled, y mensajes de maintenance.

Network Update Interval (NUI) – Un intervalo sobre la red igual a un NUT. Dentro de cada NUI, datos Scheduled, datos Unscheduled, y red maintenance es transmitido.

Maximum Scheduled Address - Este es el nodo más alto dentro de la red que puede ser utilizada y que usa el scheduled time sobre la red ControlNet.

Maximum Unscheduled Address – Este es el nodo más alto de la red que puede usar unscheduled time sobre la red ControlNet.

Slot Time - Tiempo de espera para mantener o perder un nodo de la red.  Este valor esta basado sobre los atributos físicos de la red, como la longitud y el número de repetidores.

Keeper - El controlador capaz mantener la configuración de la red ControlNet.

Pág. 107

Page 108: Curso ControlLogix

5.5 CONFIGURACIÓN DE LA TARJETA 1756-CNB.

INICIAR RSLOGIX 500 y crear Nuevo proyecto.Configurar el modulo 1756-CNB(R):Dar Click sobre la pestaña de I/O configuración en el explorador del proyecto. Con el botón derecho dar clic para ver otro submenú, escoger New Module (nuevo modulo)

Pág. 108

Page 109: Curso ControlLogix

En la nueva ventana que aparece seleccionar el tipo de modulo que se va insertar, Escoger el modulo de control Net ya sea simple o redundante según sea el caso y dar click en OK

Asignarle el nombre al modulo, dar enter en el slot derecho, (localización del modulo en el chasis de Control Logix ) y posteriormente dar FINISH (terminar) en la selección del modulo 1756-CNB®. El fólder de I/O Configuración muestra el nuevo modulo por separado.

Pág. 109

Page 110: Curso ControlLogix

CONFIGURACION DEL MODULO BAJO EL MODULO 1756-CNB(R) Con el botón izquierdo del Mouse si no esta seleccionado. Dar Click sobre el modulo de control net. Nuevamente seleccionar Nuevo modulo,. Asegurarse que este realmente seleccionado el modulo 1756-CNB®

Pág. 110

Page 111: Curso ControlLogix

En esta ocasión seleccionar el “CONTROLNET-MODULE Generic Control Net Module” dar enter. Click OK.

Pág. 111

Page 112: Curso ControlLogix

Si se pierde la secuencia o o se coloca algún valor erróneo, s debe corregir antes de dar aceptar o finalizar la configuración de otra manera tendra que volver a realizar todo el llenado desde el paso 5

Name: NOMBRE DEL ADAPTADOR PILZ.Comm Format: Data-INT. (TIPO DE DATO DE CONTROLOGIX)Node: Numero de nodo de Control Net del Modulo de Pilz (NODO 5), seleccionado con los switches rotatorios.Connection Parameters: Para metros de ConexionAssembly Instance Input = 1, Input size = 18 (Range: 3 - 202).*Assembly Instance Output = 2, Output size = 16 (Range: 1 - 200). Assembly Instance Configuration = 4; Configuration size = 0.

Pág. 112

Page 113: Curso ControlLogix

Dar doble click en cada parámetro para que los acepte. Asegurarse que el tamaño de entradas (inputs) sean realmente 18 palabras , adicionarle 2

Ahora dar finalizar. Si se perdió algún parámetro volver a seleccionar el adaptador de Pilz on el botón izquierdo del Mouse. Con el botón derecho si es necesario adicionar nuevamente el modulo o borrarlo y empezar desde el paso 5Salvar programa y descargar en el procesador.

Pág. 113

Page 114: Curso ControlLogix

El RsLogix se vera similar a este.

Note que si aparece el signo de admiración con el triangulo Amarillo. El modulo 1756-CNB® NO ESTA TENIENDO COMUNICACIÓN. Y ESTA PARTE ES EL FINDE CONFIGURACION DENTRO DE RSLOGIX. Para que el modulo este en running se debe configurar los parámetros globales con el RSNETWorks. Después de configurar esta parte regresar al Rslogix y verificar que este signo desaparezca y podrían verse datos en el Controlador.

Pág. 114

Page 115: Curso ControlLogix

RSNetworks Configuration

Es necesario haber conseguido el EDS del dispositivo antes de iniciar con el upload del programa.

Abrir RSNetWorks for Control Net y crear un Nuevo folder (File-New).Ir a Go online y buscar la red usando el modulo e 1756-CNB(R) configurado en la ruta (path) RSLogix5000

Pág. 115

Page 116: Curso ControlLogix

Dar Click OK y despues browsing, para llegar a ver una pantalla similar a la de abajo. Abrir la ventana de spreadsheet.

Seleccionar el cuadro de “Edits Enabled”. Al configurar existen diferencias entre los dispositivos en online y offline , dar CLICK OK para actulizar y salvar la configuración.

Pág. 116

Page 117: Curso ControlLogix

Después de actualizar, dar click con botón derecho y una nueva ventana aparecerá dar click en PROPERTIES.

Pág. 117

Page 118: Curso ControlLogix

EN tu configuración global de control Net dar el numero máximo de nodos, Schedule node etc etc.

Click OK. Salvar esta configuración (File-Save).

Pág. 118

Page 119: Curso ControlLogix

Click OK para finalizar la siguiente par en RSLogix5000. (regresar a logix)

RSLogix5000 Controller TagsSi fue configurado exitosamente el triangulo Amarillo desapareció

Pág. 119

Page 120: Curso ControlLogix

Ahora observemos que los tags dentro del controlador están en el fólder con el nombre del modulo pilz que le fue asignado.

Pág. 120

Page 121: Curso ControlLogix

Dar Click sobre el signo de + en Pilz_adapter:I and Pilz_adapter:I.Data. Este abre las tabla de datos de entradas que fueron asignadas en este caso 18 palabras las primeras 2 palabras son para la comunicación control net y la palabra ya usable para datos es la palabra dos.

Pág. 121

Page 122: Curso ControlLogix

Dar Click sobre el signo de + en Pilz_adapter:O and Pilz_adapter:O.Data. Este abre las tabla de datos de entradas que fueron asignadas en este caso 16 PALABRAS y la palabra ya usable para datos es la palabra 0

5.5 REVISION DE RUTINAS DE PROGRAMACION PARA COMUNICACIÓN CON PLC´S PILZ MEDIANTE EL ADAPTADOR PSS.

Pág. 122