Sei sulla pagina 1di 122

Pág.

1
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.

Pág. 2
4.6 REVISION DE RUTINAS DE PROGRAMACION PARA
COMUNICACIÓN CON CONTROLADORES DE ROBOTS.

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
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
Esta es la apariencia de la pantalla RSLogix 5000.

Pág. 5
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
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
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
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.

Program

Routine Variabl
e
Routine DB
Routine
Routine
Routine

• 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
Storage_Tank_5

Routine Level
In_Val
Routine ve
Out_V
Routine Temp
Agitato
Routine r

Routine

Storage_Tank_2

Routine Level
In_Val
Routine ve
Out_V
Routine Temp
Agitato
Routine r

Routine

• 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
I/O I/O

Controller
Tags

Program

Program

• Accesible desde todos los programas en el controlador


• I/O módulos, scanners
• Controladores, HMI
• Mensajes
• Programming devices
• RSLinx.

Pág. 11
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
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
Observando las Etiquetas
En 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
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
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
Creando Tags.

Pág. 17
Pág. 18
De Tablas de Datos a Bases se Datos

I:0 – I:37

O:0 –O:37

B3:0 – B3:999 LS_114


Motor5.Start
T4:0 – T4:999 Filler5.Uptime
Tanks[10].Level
C5:0 – C5:999 Tanks[10].Pressure
Recipes[Cookie].Milk
N7:0 – N7:999 Axis5.Speed

F8:0 – F8:999

1.2 FUNCIONES BASICAS

Pág. 19
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
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 grupo
El 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
Una vez realizado toda la lógica de escalera, estamos listos para descargar el
programa al procesador ControlLogix.

Pág. 22
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
Operandos:

Operando: Tipo: Formato: Descripción:


Array DINT Tag de Arreglo Arreglo de secuenciador.
(Arreglo) Especifique el primer
elemento del arreglo de
secuenciador.
No use CONTROL.POS en el
subíndice.
Mask SINT Tag Qué bits se bloquean o se
(Máscara) INT Valor Inmediato pasan.
DINT
Source DINT Tag Datos de entrada para el
(Origen) 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 DINT Valor inmediato Número de elementos en el
(Longitud) arreglo (tabla de
secuenciadores) que se
comparan.
Position DINT Valor inmediato Posición actual en el arreglo.
(Posición) El valor inicial es típicamente
0.

Pág. 24
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
Prefijo: Descripción:
16# Hexadecimal. Ejemplo: 16#0F0F
8# Octal. Ejemplo: 8#17
2# 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 binarios


Origen. Xxxxxxxx xxxxxxxx xxxx0101 xxxx1010
Máscara. 00000000 00000000 00001111 00001111
Arreglo. Xxxxxxxx xxxxxxxx xxxx0101 xxxx1010

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

Pág. 26
Como usar SQI sin SQO

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
Sequencer output (SQO)

Operandos:

Operando: Tipo: Formato: Descripción:


Array DINT Tag de Arreglo Arreglo de secuenciador.
(Arreglo) Especifique el primer
elemento del arreglo de
secuenciador.
No use CONTROL.POS en el
subíndice.
Mask SINT Tag Qué bits se bloquean o se
(Máscara) INT Valor Inmediato pasan.
DINT
Source DINT Tag Datos de entrada para el
(Origen) 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 DINT Valor inmediato Número de elementos en el
(Longitud) arreglo (tabla de
secuenciadores) que se
comparan.

Pág. 28
Position DINT Valor inmediato Posición actual en el arreglo.
(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
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#0F0F
8# Octal. Ejemplo: 8#17
2# 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
Operando SQO. Ejemplo de valores (DINT mostrados en binarios
Arreglo. Xxxxxxxx xxxxxxxx xxxx0101 xxxx1010
Máscara. 00000000 00000000 00001111 00001111
Destino. 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
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
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
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ón
Seleccione INC, TODOS o
introduzca un número.
Destino SINT Tag Tag para almacenar el
INT resultado.
DINT
REAL

Pág. 34
Expresión SINT Valor inmediato Una expresión que consiste
INT Tag en tag y/o valores inmediatos
DINT separados por operadores.
REAL

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
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
Pág. 37
Pág. 38
Pág. 39
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
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ón
Seleccione INC, TODOS o
introduzca un número.
Expresión SINT Valor inmediato Una expresión que consiste
INT Tag en tags y/o valores inmediatos
DINT separados por operadores.
REAL

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
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
Ejemplos de aplicación FSC.

Pág. 43
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
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 Tag. Elemento inicial que se copia.
INT Importante: Los operandos
DINT de origen y destino deben ser
REAL del mismo tipo, de lo contrario
estructura pueden ocurrir resultados
inesperados.
Destino SINT Tag. El elemento inicial se puede
INT sobrescribir por el origen.
DINT Importante: Los operandos
REAL de origen y destino deben ser
estructura del mismo tipo, de lo contrario
pueden ocurrir resultados
inesperados.
Longitud DINT Valor inmediato Número de elementos de
Tag. destino que se copian.

Pág. 45
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
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
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
Pág. 49
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
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
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ón


Instrucción JSR
Nombre de rutina rutina nombre Rutina que se ejecuta.
Parámetro de
SINT Valor inmediato Parámetros que pasan a la
entrada INT Tag rutina.
DINT Tag de arreglo
REAL
Parámetro de SINT Tag Parámetros (0 – n) que se
retorno INT Tag de arreglo reciben de la rutina.
DINT
REAL
Instrucción SBR
Parámetro de SINT Tag Parámetros (0 – n)
entrada INT Tag de arreglo recibidos de JSR.

Pág. 52
DINT
REAL
Instrucción RET
Parámetro de SINT Valor inmediato Parámetros (0 – n) que se
retorno INT Tag retornan a JSR.
DINT Tag de arreglo
REAL

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
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
Ejemplos de aplicación JSR/SBR/RET.

Pág. 55
Pág. 56
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
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
Ejemplos de aplicación BSR.

Pág. 59
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 tag de origen array_1
(escritura de la tabla de datos protocolo de tag de destino array_2
control e información)
Logix5000 lee desde logix5000 tag de origen array_1
(lectura de la tabla de datos protocolo de tag de destino array_2
control e información)

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
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 Ejemplo de origen y Tipo de archivo


MSG: destino compatibles:
Logix5000 escribe a Elemento de origen Para PLC-5: SINT, INT,
PLC-5 array_1 DINT o real.
Tag de destino N7:10 Para SLC: INT.
Logix5000 escribe a Para typedwrite PLC-5:
SLC ó Micrologix1000 Se puede usar un tag de s, B, N o F.
alias para el tag de Para escritura de rango
origen. Si se desea usar de palabra PLC-5: s, B,
un offset dentro de un N, F, I, O, A o D.
arreglo, hay que usar un Para SLC:INT
alias para indicar el
offset.
Logix5000 escribe PLC2 array_1 SINT, INT, DINT o real
Logix5000 lee desde Elemento de origen Para typedread PLC-5:
PLC-5 N7:10 s, B, N o F
Para lectura de rango de
Logix5000 lee desde Se puede usar un tag de palabra PLC-5: s, B, N,
SLC ó Micrologix1000 alias para el tag de F, I, O, A o D.
destino. Si se desea Para SLC: B ó N
usar un offset dentro de Para PLC-5: SINT, INT,
un arreglo, hay que usar DINT o real.
un alias para indicar el Para SLC: INT.
offset.
Logix5000 lee desde Elemento de origen 010 SINT, INT, DINT o real
PLC2 Tag de destino array_1

Pág. 61
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
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
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
Pág. 65
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
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
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
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
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
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 EQU
Diferentes a caracteres específicos NEQ
Mayor Que caracteres específicos GRT
Igual o mayor que caracteres específicos GEQ
Menor que caracteres específicos LES
Igual o menor que caracteres específicos LEQ

Pág. 71
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
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
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
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
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
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
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:

Pág. 78
 Control de soldadura por puntos
 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
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
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
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
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
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
Configuración de un driver EtherNet.

Pág. 85
Servidor BOOTP.

Si se encuentra conectado con un interruptor.

Pág. 86
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 salida
Puente. 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 Módulo de interfase 1756-DNB.
Comunicación.
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 Los dispositivos configurados para datos de cambio de
Impulsos estado también pueden enviar una señal de “impulso”
para indicar una correcta operación.
Plataforma de La computadora principal del módulo de interface 1756-
computadora DNB
principal
E/S La abreviatura de “entrada y salida”

Pág. 87
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
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
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
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
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
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
Como dimensionar una fuente de alimentación.

Pág. 94
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
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
3. A través de RSlinx podemos ver los nodos conectados sobre la red
DeviceNet.

Pág. 97
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
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
Pág. 100
Pág. 101
Pág. 102
Pág. 103
4.5 REVISIÓN DE RUTINAS DE PROGRAMACIÓN PARA LA
COMUNICACIÓN CON LOS CONTROLADRES DE ROBOTS.

Pág. 104
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
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
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
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
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
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
En esta ocasión seleccionar el “CONTROLNET-MODULE Generic Control Net
Module” dar enter. Click OK.

Pág. 111
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 Conexion
Assembly 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
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
5
Salvar programa y descargar en el procesador.

Pág. 113
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
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
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
Después de actualizar, dar click con botón derecho y una nueva ventana
aparecerá dar click en PROPERTIES.

Pág. 117
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
Click OK para finalizar la siguiente par en RSLogix5000. (regresar a logix)

RSLogix5000 Controller Tags


Si fue configurado exitosamente el triangulo Amarillo desapareció

Pág. 119
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
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
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

Potrebbero piacerti anche