FACULTAD DE INGENIERÍA INGENIERÍA MECÁNICA
Nombre del alumno: Mario Uriel Arzate Velásquez Práctica no. : 6 Materia: Control Lineal 2015A
Objetivo
Que el alumno aprenda a usar el módulo analógico 1769-IF4XOF2/A integrado en el PLC compact Logix Logix L31, mediante el diseño y desarrollo de un programa programa en diagrama escalera que prenda un ventilador o un calefactor dependiendo de la temperatura detectada por un sensor. Introducción
El conversor analógico incluido en el módulo 1769-IF4XOF2/A puede utilizarse en una entrada digital tiene que ofrecer una salida con un voltaje o corriente analógico para impulsar o activar un dispositivo analógico como el control de la velocidad de un motor, la temperatura de un horno, o el control de volumen de un estéreo. O viceversa (Entrada de una señal analógica a una salida digital), se puede utilizar para encender o apagar salidas digitales dependiendo de la magnitud de la señal analógica que se mande al módulo de entradas analógicas. Marco teórico
A continuación se da una breve definición definición de las funciones utilizados en esta práctica. Nota: Léase el marco teórico de las prácticas anteriores para tener conocimiento de algunos otros conceptos básicos del PLC, sus elementos y la creación de subrutinas para programas en diagrama escalera. Función MOV: La función MOV realiza el movimiento de un dato de 16 bit, desde un canal a otro. El contenido del canal fuente “Source” se transfiere al canal destino “Dest”. Los datos utilizables en esta función son: SINT, INT, DINT, REAL. La instrucción
MOV copia el dato al destino, y el dato original no es modificado [1] (Figura 1).
Figura 1. Bloque de la instrucción MOV en el diagrama escalera
1
Objetivo
Que el alumno aprenda a usar el módulo analógico 1769-IF4XOF2/A integrado en el PLC compact Logix Logix L31, mediante el diseño y desarrollo de un programa programa en diagrama escalera que prenda un ventilador o un calefactor dependiendo de la temperatura detectada por un sensor. Introducción
El conversor analógico incluido en el módulo 1769-IF4XOF2/A puede utilizarse en una entrada digital tiene que ofrecer una salida con un voltaje o corriente analógico para impulsar o activar un dispositivo analógico como el control de la velocidad de un motor, la temperatura de un horno, o el control de volumen de un estéreo. O viceversa (Entrada de una señal analógica a una salida digital), se puede utilizar para encender o apagar salidas digitales dependiendo de la magnitud de la señal analógica que se mande al módulo de entradas analógicas. Marco teórico
A continuación se da una breve definición definición de las funciones utilizados en esta práctica. Nota: Léase el marco teórico de las prácticas anteriores para tener conocimiento de algunos otros conceptos básicos del PLC, sus elementos y la creación de subrutinas para programas en diagrama escalera. Función MOV: La función MOV realiza el movimiento de un dato de 16 bit, desde un canal a otro. El contenido del canal fuente “Source” se transfiere al canal destino “Dest”. Los datos utilizables en esta función son: SINT, INT, DINT, REAL. La instrucción
MOV copia el dato al destino, y el dato original no es modificado [1] (Figura 1).
Figura 1. Bloque de la instrucción MOV en el diagrama escalera
1
Temporizador TON (Temporizador con retardo a la conexión): Cuenta el tiempo desde cero al activar la entrada de habilitación. Si la cuenta es mayor o igual al valor de preselección (.PRE), se activa el bit de temporización (.DN). El valor actual de temporización se borra al desactivar la entrada de habilitación [2] (Figura 2)
Figura 2. Bloque de la instrucción TON en el diagrama escalera es calera Donde:
Timer: Dirección Dirección del temporizador, temporizador, por ejemplo: T1 Preset: Un valor que representa la demora de tiempo t iempo preestablecida. Accum: Valor inicial en el que empieza el temporizador.
Instrucciones de comparación: Estas operaciones permiten comparar dos variables o una variable con un valor numérico. Todas estas operaciones son condicionales, es decir, cuando se cumple la relación de comparación, se activará una señal del tipo binaria. En algunos casos es necesario que la primera variable sea netamente variable, mientras que la segunda puede ser variable o constante [3]. GEQ (Greater than or EQual): Si el operando A es mayor o igual que el operando B la comparación es verdadera y dará continuidad lógica. (Figura 3)
Figura 3. Bloque de la instrucción GEQ en el diagrama escalera LIM (Limit test): Verifica si el valor del operando “Test” está dentro o fuera de los
límites bajo o alto dependiendo de cómo se hayan colocado los límites (Figura 4):
2
*Límite bajo < = límite alto: Si el valor del operando “Test" está dentro estos límites la instrucción es verdadera y dará continuidad lógica *'Límite bajo >= límite alto: Si el valor del operando “Test” está fuera de estos límites
la instrucción es verdadera y dará continuidad lógica Low lim: Límite bajo (Dirección o dato). Test: Operando a comparar (Dirección) High lim: Límite alto (Dirección o dato).
Figura 4. Bloque de la instrucción LIM en el diagrama escalera Función JSR (Jump to subroutine): Es una instrucción que es usada para ejecutar un subprograma realizado dentro de un programa principal en diagrama escalera. Retorna valores. Cuando la función JSR es verdadera brinca al principio de la subrutina y empieza a ejecutar el programa [4] (Figura 5).
Figura 5. Bloque de la instrucción JSR en el diagrama escalera
3
Sensor de temperatura LM35: Es un sensor de temperatura con una precisión calibrada de 1ºC. Su rango de medición abarca desde -55°C hasta 150°C. La salida es lineal y cada grado centígrado equivale a 10mV [5] (Figura 6).
Figura 6. Sensor de temperatura LM35
Amplificador operacional TL084: Se trata de un dispositivo electrónico (normalmente se presenta como circuito integrado) que tiene dos entradas y una salida. La salida es la diferencia de las dos entradas multiplicada por un factor (G) (ganancia) [6] (Figura 7 y Figura 8).
Figura 7. Diagrama del circuito integrado TL084
4
Figura 8. Diagrama de conexiones del amplificador TL084 El circuito requerido para el problema necesita amplificar la señal analógica del sensor de temperatura, debido a que el módulo del PLC no tiene la suficiente resolución para detectar las señales en mV mandados desde el sensor (Figura 9 y Figura 10).
Figura 9. Circuito para amplificar la señal del sensor LM35
5
Figura 10. Armado físico del circuito
Activación de los puertos analógicos: Antes de empezar a diseñar el programa, es necesaria la activación de los puertos analógicos del módulo 1769-IF4XOF2 que se utilizan en el programa. Abrir el software RSLogix 5000, y desplegar con el botón derecho del ratón la lista de las opciones del módulo 1769-IF4XOF2/A MOD3 (Figura 11). Seleccionar la casilla “Properties”.
Figura 11. Selección de la casilla properties
6
Aparecerá el recuadro de la pestaña “General” (Parte superior izquierda), seleccionar la pestaña “Input configuration”(Figura 12) y activar todas las casillas de la columna “Enable”(Figura 13).
Figura 12. Selección de la pestaña “Input configuration”
Figura 13. Activación de las casillas de la columna “Enable”
7
De la misma manera se debe seleccionar la pestaña “Output configuration” (Figura 14) y activar ambas casillas de la columna “Enable”(Figura 15).
Figura 14. Selección de la pestaña “Output configuration”
Figura 15. Activación de las casillas de la columna “Enable”
8
MATERIAL Cantidad 1
Descripción
Imagen
PLC compact Logix L31
1
Cable de puerto serial
5
Cables para botonera
2
Cable de CA
1
Botonera
1
Software RSlogix 5000
9
1
Juego de desarmadores
2
Pinzas de corte
1
Sensor de temperatura
1
Amplificador operacional TL084
3
Resistencias de 10 KΩ
10
1
Resistencia de 1 KΩ
1
Protoboard
3
Par de puntas para fuente
1
Fuente de alimentación
1
Ventilador de 5V
11
1
Motor de CD de 5V
Desarrollo Problema planteado
Se desea monitorear la temperatura ambiente por medio del sensor de temperatura LM35, cuando la temperatura se encuentren en un rango mayor de 2 °C y menor o igual a 10 °C se debe de alimentar al calefactor con el 80% de su voltaje de alimentación total, cuando la temperatura se encuentre en un rango mayor de 10 °C y menor o igual a 18 °C se debe de alimentar al calefactor con el 50% de su voltaje de alimentación total, cuando la temperatura se encuentre en un rango mayor de 18 °C y menor o igual a 25 °C se debe de alimentar al calefactor con el 20% de su voltaje de alimentación total, cuando se registre una temperatura entre 25 °C y 30 °C no se envía ningún valor de voltaje a las salidas analógicas del PLC. Cuando la temperatura ambiente registre valores mayores que 30 °C y menores o iguales a 40 °C se debe de alimentar a un ventilador con el 25% de su voltaje de alimentación, cuando la temperatura ambiente registre valores mayores a 40 °C y menores o iguales a 50 °C se debe de alimentar a un ventilador con el 50% de su voltaje de alimentación, cuando la temperatura ambiente registre valores mayores a 50 °C el PLC debe de suministrar al ventilador el 50% de su voltaje de alimentación. Propuesta para solucionar el problema
Se propone utilizar una función MOV que desplace el valor de voltaje de entrada de uno de los canales analógicos a una variable. La variable será comparada con intervalos de voltaje preestablecidos que representarán la temperatura en el ambiente, y a partir de esta comparación, el PLC decidirá si encender el ventilador o el calefactor (Tabla 1).
12
Temperatura(°C)
2°-10° 11°-18° 18°-25° 25°-30° 31°-40° 41°-50°
Voltaje
Voltaje amplificado
Valor del voltaje en el PLC
Voltaje de alimentación de calefactor
Voltaje de alimentación de ventilador
0.02-0.10 0.11-0.18 0.18-0.25 0.25-0.30 0.31-0.40 0.41-0.5
.2-1.0 1.1-1.8 1.8-1.9 2.5-3.0 3.1-4.0 4.1-5
640-3200 3200-5888 5888-8192 8192-9728 9728-13056 1305616384
80% 50% 20% -
25% 50%
Tabla 1. Equivalencia de temperatura a voltaje
1.-Conexión del PLC a la PC mediante el puerto COM
Después de Realizar la correcta instalación del software RSLogix 5000 y RSLinx se procede a conectar el PLC a la PC mediante el puerto COM. Nota: Para más información sobre la conexión del PLC a la PC, léase el apartado de desarrollo de la práctica 1.
2.- Programa desarrollado
Esta práctica varía el voltaje de alimentación de un calefactor y un ventilador dependiendo de la temperatura que se registre en el sensor de temperatura. 1.- Asignación de variables
*Variables en el módulo de entradas digitales (Tabla 2., Figura 19, y Figura 20.) Entradas
Nombre
Local:1:I.Data.3 Start Local:1:I.Data.5 Emergency Tabla 2. Variables en el módulo de entrada
13
Figura 19. Conexión física en la botonera
Figura 20. Conexión al módulo digital 14
*Variables en el módulo de salidas digitales (Tabla 3 y Figura 21) Salidas
Nombre
Local: 2: O. Data.1 Local: 2: O. Data.3
V M
Tabla 2 Variables en el módulo de salida
Figura 21. Conexión al módulo digital de salidas *Entradas en el módulo de señales analógicas (Tabla 4 y Figura 22)
Entradas
Nombre
Local:3:I.Ch1Data
Channel1
Tabla 4 Variables en el módulo de entradas analógicas
15
Figura 22. Conexiones del módulo de señales analógicas
*Funciones de bloque, y variables en el diagrama escalera (Tabla 5 y Tabla 6) Función de bloque
Nombre
Temporizador TON Temporizador TON
V1 V2
Temporizador TON
C1
Temporizador TON
C2
Comparación GEQ
Greater than or equal to
MOV
Move
LIM
Limit test
JSR
Jump to subroutine
Tabla 5. Funciones de bloque en el diagrama escalera
16
Variables
Tipo
Valor
Stop Prog
Bool Bool
0 0
Binny
Dint
0
Tabla 6. Variables en el diagrama escalera
17
Diagrama escalera del programa (Figura 16).
Figura 16. Diagrama en escalera 18
Diagrama en escalera de la subrutina “Calefactor” (Figura 17).
Figura 17. Subrutina “Calefactor”
19
Diagrama en escalera de la subrutina “Ventilador” (Figura 18).
Figura 18. Subrutina “Ventilador”
20
Explicación del programa línea a línea: Línea 0: El proceso comienza cuando el botón “Start” es presionado. Inmediatamente, la bobina “Begin_sensor” es activada (Figura 23).
Figura 23. Inicio del proceso Línea 1: El contacto “Begin_sensor” se cierra y permite la activación de la función
MOV, que desplaza el valor de la temperatura obtenido en el módulo Local: 3: I. Ch2Data hacia la variable “Binny” (Figura 24).
Figura 24. Encendido de la función de comparación MOV Línea 2: Si el valor de “Binny” está en el intervalo de 640-8192 entonces la función JSR se activa y el programa salta a la subrutina “Calefactor” (Figura 25):
Figura 25. Salto a la subrutina “Calefactor”
21
-Subrutina: Calefactor Línea 0: Si la bobina V (Local: 2: O. Data.1) está encendida, la instrucción MOV apaga todas las terminales del módulo digital de salidas de manera que ambos dispositivos (Ventilador y calefactor) no se encuentren encendidos al mismo tiempo (Figura 26).
Figura 26. Apagado de las terminales del módulo de salidas digitales Línea 1, línea 2, y línea 3: El temporizador “C1” permite por medio del registro “C1.TT” el encendido de la salida “M” (Local: 2: O. Data.3) el tiempo asignado en la casilla “Preset” (Figura 27 y Figura 28). Por otra parte el temporizador “C2” se activa con el registro “C1.DN” y retrasa el reinicio de conteo para “C1”. Hasta que “C2” termina de acumular el tiempo preseleccionado, el registro “C2.DN” se activa.
Figura 27. Encendido y apagado de la salida “M”
22
Figura 28. Encendido del motor por medio de la salida “M” Línea 4: Si el valor de “Binny” está en el intervalo de 640-3200 entonces las instrucciones MOV moverán los valores de “C1.PRE” y “C2.PRE” a 3200 ms y 800 ms
respectivamente (Figura 29 y Figura 30).
Figura 29. Cambio de valor a los registros “C1.PRE” y “C2.PRE”
23
Figura 30. Cambio de los registros “C1.PRE” y “C2.PRE” en los temporizadores “C1” y “C2”
Línea 5: Si el valor de “Binny” está en el intervalo de 3201-5888 entonces las instrucciones MOV moverán los valores de “C1.PRE” y “C2.PRE” a 200 0 ms (Figura 31 y Figura 32).
Figura 31. Cambio de valor a los registros “C1.PRE” y “C2.PRE”
Figura 32. Cambio de los registros “C1.PRE” y “C2.PRE” en los temporizadores “C1” y “C2” 24
Línea 6: Si el valor de “Binny” está en el intervalo de 3201-5888 entonces las instrucciones MOV moverán los valores de “C1.PRE” y “C2.PRE” a 800 ms Y 3200
respectivamente (Figura 33 y Figura 34).
Figura 33. Cambio de valor a los registros “C1.PRE” y “C2.PRE”
Figura 34. Cambio de los registros “C1.PRE” y “C2.PRE” en los temporizadores “C1” y “C2”
Línea 3: Si el valor de “Binny” está en el intervalo de 9728-16384 o mayor a 16384 entonces la función JSR se activa y el programa salta a la subrutina “Ventilador”
(Figura 35):
Figura 35. Salto a la subrutina “Ventilador” 25
-Subrutina: Ventilador Línea 0: Si la bobina M (Local: 2: O. Data.3) está encendida, la instrucción MOV apaga todas las terminales del módulo digital de salidas de manera que ambos dispositivos (Ventilador y calefactor) no se encuentren encendidos al mismo tiempo (Figura 36).
Figura 36. Apagado de las terminales del módulo de salidas digitales Línea 1, línea 2, y línea 3: El temporizador “V1” permite por medio del registro “V1.TT” el encendido de la salida “V” (Local: 2: O. Data.1 ) el tiempo asignado en la casilla “Preset” (Figura 37 y Figura 38). Por otra parte el temporizador “V2” se activa con el registro “V1.DN” y retrasa el reinicio de conteo para “V1”. Hasta que “V2” termina de acumular el tiempo preseleccionado, el registro “C2.DN” se activa.
Figura 37. Encendido y apagado de la salida “V”
Figura 38. Encendido del ventilador por medio de la salida “V” 26
Línea 4: Si el valor de “Binny” está en el intervalo de 9728-13056 entonces las instrucciones MOV moverán los valores de “V1.PRE” y “V2.PRE” a 1000 ms y 3000 ms
respectivamente (Figura 39 y Figura 40).
Figura 39. Cambio de valor a los registros “V1.PRE” y “V2.PRE”
Figura 40. Cambio de los registros “V1.PRE” y “V2.PRE” en los temporizadores “V1” y “V2” Línea 5: Si el valor de “Binny” está en el intervalo de 13056-16384 o mayor a 16384 entonces las instrucciones MOV moverán los valores de “V1.PRE” y “V2.PRE” a 2000
ms (Figura 41 y Figura 42).
Figura 41. Cambio de valor a los registros “V1.PRE” y “V2.PRE” 27
Figura 42. Cambio de los registros “V1.PRE” y “V2.PRE” en los temporizadores “V1” y “V2” Línea 4 y línea 5: Si el botón “Emergency” es presionado (Figura 43) la bobina “Begin_sensor” es desenclavada, la bobina “Stop” se activa y abre sus contactos
normalmente cerrados en el programa principal (Figura 44) y subrutinas (Figura 45 y Figura 46), y la instrucción “MOV” mueve un valor de cero a la variable “Binny”. Mientras que en la línea 5 la instrucción de comparación “EQU” apaga las terminales en el módulo de salidas digitales usando la función “MOV”.
Figura 43. Reseteo de “A” y el contador “CFOR”.
Figura 44. Contacto normalmente cerrado en el programa principal
Figura 45. Contacto normalmente cerrado en la subrutina “Calefactor” 28