Practica 6: Jump to subroutine

30
 FACULTAD DE INGENIERÍA INGENIERÍA MECÁNICA Nombre del alumno: Mario Uriel Arzate Velásquez Práctica no. : 6 Materia: Control Lineal 2015A

description

Jump to subroutine in RSLogix 5000

Transcript of Practica 6: Jump to subroutine

  • FACULTAD DE INGENIERA INGENIERA MECNICA

    Nombre del alumno: Mario Uriel Arzate Velsquez

    Prctica no. : 6

    Materia: Control Lineal

    2015A

  • 1

    Objetivo

    Que el alumno aprenda a usar el mdulo analgico 1769-IF4XOF2/A integrado en el

    PLC compact Logix L31, mediante el diseo y desarrollo de un programa en diagrama

    escalera que prenda un ventilador o un calefactor dependiendo de la temperatura

    detectada por un sensor.

    Introduccin

    El conversor analgico incluido en el mdulo 1769-IF4XOF2/A puede utilizarse en

    una entrada digital tiene que ofrecer una salida con un voltaje o corriente analgico

    para impulsar o activar un dispositivo analgico como el control de la velocidad de un

    motor, la temperatura de un horno, o el control de volumen de un estreo. O viceversa

    (Entrada de una seal analgica a una salida digital), se puede utilizar para encender o

    apagar salidas digitales dependiendo de la magnitud de la seal analgica que se

    mande al mdulo de entradas analgicas.

    Marco terico

    A continuacin se da una breve definicin de las funciones utilizados en esta prctica.

    Nota: Lase el marco terico de las prcticas anteriores para tener conocimiento de

    algunos otros conceptos bsicos del PLC, sus elementos y la creacin de subrutinas

    para programas en diagrama escalera.

    Funcin MOV: La funcin 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 funcin son: SINT, INT, DINT, REAL. La instruccin

    MOV copia el dato al destino, y el dato original no es modificado [1] (Figura 1).

    Figura 1. Bloque de la instruccin MOV en el diagrama escalera

  • 2

    Temporizador TON (Temporizador con retardo a la conexin): Cuenta el tiempo desde

    cero al activar la entrada de habilitacin. Si la cuenta es mayor o igual al valor de

    preseleccin (.PRE), se activa el bit de temporizacin (.DN). El valor actual de

    temporizacin se borra al desactivar la entrada de habilitacin [2] (Figura 2)

    Figura 2. Bloque de la instruccin TON en el diagrama escalera

    Donde:

    Timer: Direccin del temporizador, por ejemplo: T1

    Preset: Un valor que representa la demora de tiempo preestablecida.

    Accum: Valor inicial en el que empieza el temporizador.

    Instrucciones de comparacin: Estas operaciones permiten comparar dos variables o

    una variable con un valor numrico. Todas estas operaciones son condicionales, es

    decir, cuando se cumple la relacin de comparacin, se activar una seal 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

    comparacin es verdadera y dar continuidad lgica. (Figura 3)

    Figura 3. Bloque de la instruccin GEQ en el diagrama escalera

    LIM (Limit test): Verifica si el valor del operando Test est dentro o fuera de los

    lmites bajo o alto dependiendo de cmo se hayan colocado los lmites (Figura 4):

  • 3

    *Lmite bajo < = lmite alto: Si el valor del operando Test" est dentro estos lmites la

    instruccin es verdadera y dar continuidad lgica

    *'Lmite bajo >= lmite alto: Si el valor del operando Test est fuera de estos lmites

    la instruccin es verdadera y dar continuidad lgica

    Low lim: Lmite bajo (Direccin o dato).

    Test: Operando a comparar (Direccin)

    High lim: Lmite alto (Direccin o dato).

    Figura 4. Bloque de la instruccin LIM en el diagrama escalera

    Funcin JSR (Jump to subroutine): Es una instruccin que es usada para ejecutar un

    subprograma realizado dentro de un programa principal en diagrama escalera.

    Retorna valores. Cuando la funcin JSR es verdadera brinca al principio de la

    subrutina y empieza a ejecutar el programa [4] (Figura 5).

    Figura 5. Bloque de la instruccin JSR en el diagrama escalera

  • 4

    Sensor de temperatura LM35: Es un sensor de temperatura con una precisin calibrada de 1C. Su rango de medicin abarca desde -55C hasta 150C. La salida es lineal y cada

    grado centgrado equivale a 10mV [5] (Figura 6).

    Figura 6. Sensor de temperatura LM35

    Amplificador operacional TL084: Se trata de un dispositivo electrnico (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

  • 5

    Figura 8. Diagrama de conexiones del amplificador TL084

    El circuito requerido para el problema necesita amplificar la seal analgica del

    sensor de temperatura, debido a que el mdulo del PLC no tiene la suficiente

    resolucin para detectar las seales en mV mandados desde el sensor (Figura 9 y

    Figura 10).

    Figura 9. Circuito para amplificar la seal del sensor LM35

  • 6

    Figura 10. Armado fsico del circuito

    Activacin de los puertos analgicos: Antes de empezar a disear el programa, es

    necesaria la activacin de los puertos analgicos del mdulo 1769-IF4XOF2 que se

    utilizan en el programa.

    Abrir el software RSLogix 5000, y desplegar con el botn derecho del ratn la lista de

    las opciones del mdulo 1769-IF4XOF2/A MOD3 (Figura 11). Seleccionar la casilla

    Properties.

    Figura 11. Seleccin de la casilla properties

  • 7

    Aparecer el recuadro de la pestaa General (Parte superior izquierda), seleccionar

    la pestaa Input configuration(Figura 12) y activar todas las casillas de la columna

    Enable(Figura 13).

    Figura 12. Seleccin de la pestaa Input configuration

    Figura 13. Activacin de las casillas de la columna Enable

  • 8

    De la misma manera se debe seleccionar la pestaa Output configuration (Figura

    14) y activar ambas casillas de la columna Enable(Figura 15).

    Figura 14. Seleccin de la pestaa Output configuration

    Figura 15. Activacin de las casillas de la columna Enable

  • 9

    MATERIAL

    Cantidad Descripcin Imagen 1 PLC compact Logix L31 1.

    1 Cable de puerto serial

    5 Cables para botonera

    2 Cable de CA

    1 Botonera

    1 Software RSlogix 5000

  • 10

    1 Juego de desarmadores

    2 Pinzas de corte

    1 Sensor de temperatura

    1 Amplificador operacional TL084

    3 Resistencias de 10 K

  • 11

    1 Resistencia de 1 K

    1 Protoboard

    3 Par de puntas para fuente

    1 Fuente de alimentacin

    1 Ventilador de 5V

  • 12

    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 alimentacin 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 alimentacin 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 alimentacin total, cuando se registre una temperatura entre 25 C y 30 C no se enva ningn valor de voltaje a las salidas analgicas 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 alimentacin, 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 alimentacin, cuando la temperatura ambiente registre valores mayores a 50 C el PLC debe de suministrar al ventilador el 50% de su voltaje de alimentacin. Propuesta para solucionar el problema Se propone utilizar una funcin MOV que desplace el valor de voltaje de entrada de

    uno de los canales analgicos a una variable. La variable ser comparada con

    intervalos de voltaje preestablecidos que representarn la temperatura en el

    ambiente, y a partir de esta comparacin, el PLC decidir si encender el ventilador o el

    calefactor (Tabla 1).

  • 13

    Tabla 1. Equivalencia de temperatura a voltaje

    1.-Conexin del PLC a la PC mediante el puerto COM

    Despus de Realizar la correcta instalacin del software RSLogix 5000 y RSLinx se

    procede a conectar el PLC a la PC mediante el puerto COM. Nota: Para ms

    informacin sobre la conexin del PLC a la PC, lase el apartado de desarrollo de la

    prctica 1.

    2.- Programa desarrollado

    Esta prctica vara el voltaje de alimentacin de un calefactor y un ventilador

    dependiendo de la temperatura que se registre en el sensor de temperatura.

    1.- Asignacin de variables

    *Variables en el mdulo 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 mdulo de entrada

    Temperatura(C) Voltaje Voltaje amplificado

    Valor del voltaje en el

    PLC

    Voltaje de alimentacin de calefactor

    Voltaje de alimentacin

    de ventilador

    2-10 0.02-0.10 .2-1.0 640-3200 80% - 11-18 0.11-0.18 1.1-1.8 3200-5888 50% - 18-25 0.18-0.25 1.8-1.9 5888-8192 20% - 25-30 0.25-0.30 2.5-3.0 8192-9728 - - 31-40 0.31-0.40 3.1-4.0 9728-13056 - 25% 41-50 0.41-0.5 4.1-5 13056-

    16384 - 50%

  • 14

    Figura 19. Conexin fsica en la botonera

    Figura 20. Conexin al mdulo digital

  • 15

    *Variables en el mdulo de salidas digitales (Tabla 3 y Figura 21)

    Tabla 2 Variables en el mdulo de salida

    Figura 21. Conexin al mdulo digital de salidas

    *Entradas en el mdulo de seales analgicas (Tabla 4 y Figura 22)

    Tabla 4 Variables en el mdulo de entradas analgicas

    Salidas Nombre

    Local: 2: O. Data.1 V

    Local: 2: O. Data.3 M

    Entradas Nombre

    Local:3:I.Ch1Data Channel1

  • 16

    Figura 22. Conexiones del mdulo de seales analgicas *Funciones de bloque, y variables en el diagrama escalera (Tabla 5 y Tabla 6)

    Funcin de bloque Nombre

    Temporizador TON V1

    Temporizador TON V2

    Temporizador TON C1

    Temporizador TON C2

    Comparacin GEQ Greater than or equal to

    MOV Move

    LIM Limit test

    JSR Jump to subroutine

    Tabla 5. Funciones de bloque en el diagrama escalera

  • 17

    Tabla 6. Variables en el diagrama escalera

    Variables Tipo Valor

    Stop Bool 0

    Prog Bool 0

    Binny Dint 0

  • 18

    Diagrama escalera del programa (Figura 16).

    Figura 16. Diagrama en escalera

  • 19

    Diagrama en escalera de la subrutina Calefactor (Figura 17).

    Figura 17. Subrutina Calefactor

  • 20

    Diagrama en escalera de la subrutina Ventilador (Figura 18).

    Figura 18. Subrutina Ventilador

  • 21

    Explicacin del programa lnea a lnea: Lnea 0: El proceso comienza cuando el botn Start es presionado. Inmediatamente, la bobina Begin_sensor es activada (Figura 23).

    Figura 23. Inicio del proceso Lnea 1: El contacto Begin_sensor se cierra y permite la activacin de la funcin MOV, que desplaza el valor de la temperatura obtenido en el mdulo Local: 3: I. Ch2Data hacia la variable Binny (Figura 24).

    Figura 24. Encendido de la funcin de comparacin MOV Lnea 2: Si el valor de Binny est en el intervalo de 640-8192 entonces la funcin JSR se activa y el programa salta a la subrutina Calefactor (Figura 25):

    Figura 25. Salto a la subrutina Calefactor

  • 22

    -Subrutina: Calefactor Lnea 0: Si la bobina V (Local: 2: O. Data.1) est encendida, la instruccin MOV apaga todas las terminales del mdulo 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 mdulo de salidas digitales

    Lnea 1, lnea 2, y lnea 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

  • 23

    Figura 28. Encendido del motor por medio de la salida M Lnea 4: Si el valor de Binny est en el intervalo de 640-3200 entonces las instrucciones MOV movern 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

  • 24

    Figura 30. Cambio de los registros C1.PRE y C2.PRE en los temporizadores C1 y C2

    Lnea 5: Si el valor de Binny est en el intervalo de 3201-5888 entonces las instrucciones MOV movern los valores de C1.PRE y C2.PRE a 2000 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

  • 25

    Lnea 6: Si el valor de Binny est en el intervalo de 3201-5888 entonces las instrucciones MOV movern 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

    Lnea 3: Si el valor de Binny est en el intervalo de 9728-16384 o mayor a 16384 entonces la funcin JSR se activa y el programa salta a la subrutina Ventilador (Figura 35):

    Figura 35. Salto a la subrutina Ventilador

  • 26

    -Subrutina: Ventilador Lnea 0: Si la bobina M (Local: 2: O. Data.3) est encendida, la instruccin MOV apaga todas las terminales del mdulo 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 mdulo de salidas digitales Lnea 1, lnea 2, y lnea 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

  • 27

    Lnea 4: Si el valor de Binny est en el intervalo de 9728-13056 entonces las instrucciones MOV movern 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 Lnea 5: Si el valor de Binny est en el intervalo de 13056-16384 o mayor a 16384 entonces las instrucciones MOV movern 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

  • 28

    Figura 42. Cambio de los registros V1.PRE y V2.PRE en los temporizadores V1 y

    V2 Lnea 4 y lnea 5: Si el botn 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 instruccin MOV mueve un valor de cero a la variable Binny. Mientras que en la lnea 5 la instruccin de comparacin EQU apaga las terminales en el mdulo de salidas digitales usando la funcin 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

  • 29

    Figura 46. Contacto normalmente cerrado en la subrutina Ventilador Conclusiones En la presente prctica se aprendi a usar las instrucciones de comparacin para

    decidir qu salida debe activarse a partir del valor de una variable. Es importante

    saber realizar este tipo de operaciones con el PLC, debido a que hay muchos procesos

    en las industrias que dependiendo de ciertas magnitudes fsicas se decide que

    operacin realizar despus. Se tuvieron ciertos problemas con respecto al cambio de

    encendido del ventilador al motor y viceversa, dado que la informacin que ambas

    subrutinas mandaban a las salidas se quedaba guardada al cambiar de una subrutina a

    otra.

    Bibliografa

    [1] Allen-Bradley. (Diciembre de 2014). Logix5000 Controllers General Instructions

    Reference Manual.U.S.A: Rockwell Automation.

    [2] Allen-Bradley. (Diciembre de 2014). Logix5000 Controllers General Instructions

    Reference Manual.U.S.A: Rockwell Automation.

    [3] KronoTech Instrumentation & Control (Octubre de 2012). Ladder Logic

    Comparison Instructions. Recuperado de:

    http://www.kronotech.com/LadderLogic/Comparison/compare.htm

    [4] Allen-Bradley. (Diciembre de 2014). Logix5000 Controllers General Instructions

    Reference Manual.U.S.A: Rockwell Automation.

    [5] Texas instruments (Enero del 2014). LM35 Precision Centigrade Temperature

    Sensors. Recuperado de: www.ti.com/lit/ds/symlink/lm35.pdf

    [6] Texas instruents (Mayo del 2015). TL08xx- Input Operational Amplifiers.

    Recuperado de: www.ti.com/lit/ds/symlink/tl084.pdf