38
1 [] MEMORIAS PRACTICAS PROGRAMACIÓN DE AUTÓMATAS E.U.P FERROL [Escribir el nombre del autor] CURSO 20072008 AUTOR: DANIEL ROCHA CRESPO

Memorias Automatas Daniel Rocha Crespo - Copia

Embed Size (px)

Citation preview

Page 1: Memorias Automatas Daniel Rocha Crespo - Copia

 1 

[]

MEMORIAS PRACTICAS PROGRAMACIÓN DE 

AUTÓMATAS E.U.P FERROL 

 

[Escribir el nombre del autor] 

CURSO 2007‐2008 

 

 

 

 AUTOR: DANIEL ROCHA CRESPO                              

Page 2: Memorias Automatas Daniel Rocha Crespo - Copia

 

 

Page 3: Memorias Automatas Daniel Rocha Crespo - Copia

 

 

ÍNDICE

Práctica9 ………………………………págs.4-6

Prueba1……….pág. 4

Prueba2……………pág. 5

Giro_motor_derecha………………..pág. 6

Práctica 10 …………………………………págs. 7-16

Ecuaciones lógicas básicas……..págs. 7-11

Circuitos de control básicos………………………….págs. 12-13

Encendido manual de tres lámparas……………………pág. 13-14

Puente grúa……………..págs. 14-16

Práctica 11………………………………..págs. 17-27

Encendido temporizado de tres lámparas…………págs.17-19

Parking básico ………….págs. 19-20

Cronograma ………………….págs. 20-21

Carritos ………..págs. 21-25

Tres motores ………………….págs. 25-27

Práctica 12 ………………………………….págs. 28-35

Automatización de demanda de carga motores……….págs. 28-31

Llamada a subrutina con una intermitencia……………….págs. 31-32

Rutina de atención a la interrupción…………….págs. 33-35

Entrada salida de variables analógicas………..pág. 35

Page 4: Memorias Automatas Daniel Rocha Crespo - Copia

 

 

PRACTICA Nº 9: AUTÓMATAS PROGRAMABLES I

EJERCICIO Nº 1:Prueba1

Page 5: Memorias Automatas Daniel Rocha Crespo - Copia

 

 

EJERCICIO Nº 2:Prueba2

Page 6: Memorias Automatas Daniel Rocha Crespo - Copia

 

 

EJERCICIO Nº3:Giro motor derecha

Page 7: Memorias Automatas Daniel Rocha Crespo - Copia

 

 

PRACTICA Nº 10: AUTÓMATAS PROGRAMABLES II

EJERCICIO Nº 1:Ecuaciones lógicas básicas

OBJETIVO: Se trata de realizar unos primeros programas con el Leguaje de Contactos y el Lenguaje de Instrucciones para los autómatas programables de la serie S7-200 de Siemens. Apartado a). Escribir un programa en lenguaje de contactos que implemente la siguientes Ecuaciones lógicas: a1) Programe Q0.0 = I0.0 * I0.1. a2) Añada al programa anterior un nuevo segmento: Q0.1 = I0.0 + I0.1. a3) Añada un nuevo segmento que implemente la siguiente ec. f = a(b + c)+ bc . La correspondencia entre “nombres simbólicos” y “entrada físicas” se introducirá mediante la Tabla de Símbolos, y será la siguiente : a=I0.0, b=I0.1, c=I0.2, f=Q0.2. Guardar como logica1.mwp. RESOLUCION:

LENGUAJE DE CONTACTOS (KOP)

ARCHIVO : logica1.mwp

CUESTIONES: ¿Qué ocurre si al programar nos equivocamos y f es la salida Q0.0?

Page 8: Memorias Automatas Daniel Rocha Crespo - Copia

 

 

Apartado b) Ecuación lógica 2: Escribir un programa que implemente la siguiente ec.: I0.0 and ( (I0.1 and I0.2) or (I0.3 and I0.4) ) = Q0.0. Guardar como logica2.mwp RESOLUCION:

LENGUAJE DE CONTACTOS (KOP)

ARCHIVO : logica2.mwp

Apartado C)Ejercicio con contactos Programar el encendido y apagado de una bombilla desde dos interruptores diferentes. Funcionará como en la habitación de casa. Una posible solución sería programar una ec. que funcione como un or exclusivo combinando las dos entradas. Utilizar la Tabla de Símbolos para asignar nombres simbólicos a las entradas de los dos interruptores y a la salida que controla la bombilla: Interrup1=I0.0 , Interrup2= I0.1, Bombilla= Q0.0. Guardarlo como bombilla1.mwp

Page 9: Memorias Automatas Daniel Rocha Crespo - Copia

 

 

RESOLUCION:

LENGUAJE DE CONTACTOS (KOP)

ARCHIVO : bombilla1.mwp

Apartado d) Ejercicio con lista de instrucciones Programar el caso anterior para tres interruptores y en lista de instrucciones. Guardar como bombill2a.mwp RESOLUCION:

LENGUAJE DE CONTACTOS (KOP)

Page 10: Memorias Automatas Daniel Rocha Crespo - Copia

 

 

10 

ARCHIVO : bombilla2.mwp

Apartado e) Circuito Marcha/Paro prioridad Paro

Mediante las instrucciones de SET y RESET programar el cambio de marcha a paro de un motor con dos pulsadores. El programa debe ser dominante al Paro es decir, que si se pulsa simultáneamente Paro y Marcha el motor permanece parado. Una solución es colocar como 2ª ecuación lógica la del paro. La entrada I0.0 es el pulsador de Marcha y la entrada I0.1 es el pulsador de Paro. El motor se gobierna con la salida Q0.0. ¿Qué sucedería con la salida si se corta la conexión entre los pulsadores y el autómata, es decir si las entradas no reciben señal? Guardar como marchamotor1.mwp RESOLUCION:

LENGUAJE DE CONTACTOS (KOP)

Page 11: Memorias Automatas Daniel Rocha Crespo - Copia

 

 

11 

ARCHIVO : marchamotor1.mwp

Apartado f) Circuito Marcha/Paro prioridad Marcha Modifica el programa anterior para que sea dominante a la Marcha ¿Qué sucedería si se corta la conexión entre los pulsadores y el autómata?. Guardar la posible solución del programa como marchamotor2.mwp RESOLUCION:

LENGUAJE DE CONTACTOS (KOP)

Page 12: Memorias Automatas Daniel Rocha Crespo - Copia

 

 

12 

ARCHIVO : marchamotor.mwp

EJERCICIO Nº 2:Circuitos de control básicos OBJETIVO: Se trata de analizar y probar dos tipos de circuitos que aparecen en ejercicio Nº 4 del libro “Autómatas Programables. Programación y Entorno” (Pag 134) 1º.- “Autorretención”. Es una rutina para mantener una salida activa aunque se suelte el pulsador. que la activó. 2º.-“Telerruptor”. Es una rutina que permite activar/desactivar alternativamente una salida con un único pulsador. Nos familiarizará además con la detección de flancos |P| y el uso de las marcas. |M|

Page 13: Memorias Automatas Daniel Rocha Crespo - Copia

 

 

13 

REQUISITOS: 1º.- Analizar y programar dichos circuitos de control. 2º.- Comprobar que la compilación de dichos circuitos no da errores. 3º.-Guardar cada proyecto en un fichero diferente con los nombres AUTORRETENCIÓN.MWP, y TELERRUPTOR..MWP, respectivamente. 4º.- Exportar dichos programas con extensión awl y probarlos con el simulador del S7. RESOLUCION:

LENGUAJE DE CONTACTOS (KOP)

ARCHIVO : autorretencion.mwp

Page 14: Memorias Automatas Daniel Rocha Crespo - Copia

 

 

14 

ARCHIVO : teleruptor.mwp

EJERCICIO Nº 3:Encendido manual de tres lámparas OBJETIVO: En un túnel de servicio hemos colocado de tres pulsadores (tipo timbre) y tres lámparas, de forma equidistante entre si. Dichos elementos están cableados hasta las entradas y salidas de un autómata. Construir un programa para que, al actuar sobre cualquier pulsador, se encienda la luz más próxima y se apaguen las otras dos. Guardar el programa como LÁMPARAS.MWP RESOLUCION:

Page 15: Memorias Automatas Daniel Rocha Crespo - Copia

 

 

15 

LENGUAJE DE CONTACTOS (KOP)

ARCHIVO : lamparas.mwp

EJERCICIO Nº 4:Puente grúa OBJETIVO: Para que el sistema de la figura se ponga en marcha, se debe cumplir que se active la palanca de marcha y se encuentre en la posición inicial. El cesto debe realizar entonces el recorrido de ida y vuelta indicado por las flechas. Las entradas del sistema son: La ‘Palanca’ (P) y los sensores ‘Superior’ (Su), ‘Inferior’ (In), ‘Izquierda’ (Iz) y ‘Derecha’ (De) Las salidas son contactores a cuatro motores: ‘Ascender’ (As), ‘Bajar’ (Ba), ‘Avanzar’ (Av) y ‘Retroceder’ (Re). Observar que NO hay suficientes sensores para diferenciar el recorrido de “ida” del de “vuelta”. Por ello es necesario usar una ‘Marca’ (M0.0), para diferenciar el recorrido de ida del de vuelta. La marca se deberá poner a OFF cuando se apaga el sistema y además el cesto está en la posición inicial. Se deberá poner a ON cuando termina el recorrido de ida, es decir cuando llega a la posición inferior derecha. El estado de la marca se chequeará en todas las etapas. REQUISITOS: 1º.- Puesto que los sensores son ‘finales de carrera tipo pulsador’, la activación /desactivación de las salidas deberá programarse con “Set” y “Reset” 2º.-Guardar el proyecto con el nombre GRUA.mwp y exportarlo como GRUA.awl. y comprobar su funcionamiento con el simulador. SE PIDE:

Page 16: Memorias Automatas Daniel Rocha Crespo - Copia

 

 

16 

a.- Expresar en la tabla de verdad adjunta el funcionamiento del sistema descrito poniendo ‘ceros’ o ‘unos’ en las variables. b.- A partir de la tabla de verdad , escribir el programa en lenguaje de contactos, utilizando la lista de variables adjunta. RESOLUCION:

TABLA DE VERDAD

TABLA DE LA VERDAD

ENTRADAS SALIDAS

palanca marca izquierda derecha superior inferior As Ba Av Re Marca

1 0 1 0 0 1 arriba 1 0 0 0 0

1 0 1 0 1 0 derecha 0 0 1 0 0

1 0 0 1 1 0 abajo 0 1 0 0 0

1 0 0 1 0 1 arriba 1 0 0 0 1

1 1 0 1 1 0 izquierda 0 0 0 1 1

1 1 1 0 1 0 abajo 0 1 0 0 1

1 1 1 0 0 1 stop 0 0 0 0 0

LENGUAJE DE CONTACTOS (KOP)

Page 17: Memorias Automatas Daniel Rocha Crespo - Copia

 

 

17 

ARCHIVO : grua.mwp

Page 18: Memorias Automatas Daniel Rocha Crespo - Copia

 

 

18 

PRACTICA Nº 11: AUTÓMATAS PROGRAMABLES III

EJERCICIO Nº 1: Encendido temporizado de tres lámparas Apartado A) OBJETIVO: Se trata de provocar con la entrada I0.0 el encendido progresivo de tres lámparas a intervalos de 5 sgs. Su apagado final se provocará con la entrada I0.1. ALGORITMO: - La primera ec. lógica reflejará que al activar el interruptor conectado de la entrada I 0.0. se provocará el encendido de la lampara Q 0.0 y se activará un temporizador de retardo a la conexión de 5 segundos (T37). Además esta ec. lógica debería comprobar, antes de encender la lámpara, que la entrada que usaremos para apagar todo, la I.01, no está activada. - En la segunda ec. lógica, cuando el temporizador T·37 pase a ON, es decir transcurridos 5 sgs., se encenderá la lámpara Q0.1, y activará el 2º temporizador para un retardo de 5 segundos (T38.) - En la tercera ecuación, cuando el temporizador T38 pase a ON, transcurridos los 5 sgs., se encenderá la última lámpara Q0.2. - Finalmente, cuando se actúe sobre la entrada I 0.1, se programará el apagado simultáneo de las tres lámparas y el reseteo de los temporizadores usados. REQUISITOS: 1º.- Construir una tabla de variables. 2º.- Implementar los programas en lenguaje de contactos (KOP). 3º- Guardar los proyecto con el nombre templamparas.mwp

Page 19: Memorias Automatas Daniel Rocha Crespo - Copia

 

 

19 

RESOLUCION:

LENGUAJE DE CONTACTOS (KOP)

  ARCHIVO : templamp.mwp

Apartado B) OBJETIVO: Se trata de modificar el programa anterior para que funcione según las especificaciones, pero suponiendo que I0.0 y I0.1 son pulsadores (tipo timbre), que pueden volver a off rapidamente. El alumno deberá conseguir que el sistema funcione correctamente. ALGORITMO: - Como los pulsadores retornan rapidamente al estado inicial(OFF), una solución sería realimentar alguna entrada con las salida Q00 (como en el ejemplo “autorretención”). Guardar el proyecto con el nombre templamparas_auto.mwp - Otra solución sería usar marcas. Guardar el proyecto con el nombre templamparas_marca.mwp

Page 20: Memorias Automatas Daniel Rocha Crespo - Copia

 

 

20 

RESOLUCION:

LENGUAJE DE CONTACTOS (KOP)

ARCHIVO : templamp_auto.mwp

EJERCICIO Nº 2:Parking básico OBJETIVO: Realizar un programa de control que gestione y el funcionamiento de un parking. En el parking caben un máximo de 10 coches. ALGORITMO: - Mediante un contador procederemos de la forma siguiente: Cuando llega un coche (I0.0 ON) y el parking esta libre, (Q0.1 ON) lo contabilizamos. Cuando sale un coche (I0.1 ON). también lo contabilizamos. Además queremos que mediante la entrada I0.2 se pueda resetear el contador. - Cuando el parking tenga menos de 10 coches queremos mantener encendida la luz de libre(Q0.1) y cuando en el parking haya 10 coches queremos que esté encendida la luz de ocupado(Q0.2). Estas señales se podrán usar también “como una marca” para que no se abra la barrera si el parking está ocupado y llega un coche. - La barrera de entrada se abrirá si el parking esta libre (Q0.1) y se detecta coche (I0.0).El tiempo de apertura será el de activación del sensor I0.0 por simplicidad.

Page 21: Memorias Automatas Daniel Rocha Crespo - Copia

 

 

21 

RESOLUCION:

LENGUAJE DE CONTACTOS (KOP)

ARCHIVO : parking.mwp

EJERCICIO Nº 3:Cronograma OBJETIVO: Se trata de provocar con la entrada I0.0 el encendido progresivo de tres lámparas a intervalos de 5 sgs. Su apagado final se provocará con la entrada I0.1.

Page 22: Memorias Automatas Daniel Rocha Crespo - Copia

 

 

22 

1.A) Señal I0.0 tipo pulso y t37 tipo TON 1.B).Señal I0.0 tipo pulso y t37 tipo TOF 2.A) Señal I0.0 tipo doble pulso y t37 tipo TON 2.B) Señal I0.0 tipo doble pulso y t37 tipo TONR EJERCICIO Nº 4:Carritos funcionando en paralelo

Apartado A) OBJETIVO: Desde la Faculta Virtual, en el apartado de Contenidos/Prácticas propuesta/Practica11, ejecutar el fichero “Carritos en reposo” de flash Player. Se trata de una simulación del movimiento de dos carritos, que permanecen inicialmente en reposo y se desplazan en primer lugar derecha y posteriormente a izda a diferentes velocidades .Responda a las siguientes cuestiones. SE PIDE: a) Indicar que tipo de Grafcet implementa el proceso (Nivel ó Nivel2, secuencial ó ramificado). b) Indique las cuantas bifurcaciones y uniones aparecen en el citado Grafcet y de que tipo son c) Identifique errores posibles si existiesen y rehaga el GRAFCET en su caso. d) ¿Tiene algún influencia utilizar ‘uniónes en paralelo’ en lugar de ‘uniones condicionales’ en el citado proceso de automatización de los carritos? ¿Y utilizar bifurcación en paralelo en lugar de condicionales? e) Implemente el funcionamiento representado en el grafcet en lenguaje de Contactos un S7- 200. Guarde el fichero como carritos.mwp.

Page 23: Memorias Automatas Daniel Rocha Crespo - Copia

 

 

23 

RESOLUCION:

LENGUAJE DE CONTACTOS (KOP)

ARCHIVO : carritos.mwp

Page 24: Memorias Automatas Daniel Rocha Crespo - Copia

 

 

24 

CUESTIONES: ¿Sería posible cambiar estructuras en paralelo por estructuras condicionales?¿Cambiaría el funcionamiento de programa?. Razone la respuesta.

Apartado B)

OBJETIVO:

Ejecutar el fichero taladradora correspondiente a la animación en GRAFCET de una taladradora en reposo. Se pide: a) Indique que tipos de estructura GRAFCET existe después de ejecutar la etapa 4 (bifurcación, unión, etc). Razone la respuesta. b) ¿Cuando se vuelve a la etapa de reposo?. ¿Se debe resetear el contador después de taladrar todas la piezas? c) Implemente el funcionamiento representado en el GRAFCET en lenguaje de Contactosde un S7-200.Guarde el fichero como taladradora.mwp. d) ¿Sería posible mejorar el programa introduciendo algún elemento de seguridad? Si fuese así impleméntelo como taladradora_segura.mwp?

RESOLUCION:

LENGUAJE DE CONTACTOS (KOP)

Page 25: Memorias Automatas Daniel Rocha Crespo - Copia

 

 

25 

Page 26: Memorias Automatas Daniel Rocha Crespo - Copia

 

 

26 

ARCHIVO : taladradora.mwp

EJERCICIO Nº 5:Encendido de tres motores OBJETIVO: Un sistema basado en un PLC controla el encendido de tres motores M1, M2 y M3 siguiendo la secuencia siguiente: Explicación del funcionamiento: Cuando se pulsa el pulsador P, el sistema de control enciende el motor M1. Éste permanecerá encendido hasta que vuelva a pulsarse P, momento en el cual entrará en funcionamiento M2. Si P vuelve a pulsarse, M2 dejará de funcionar y entrará en funcionamiento M3. Si P vuelve a pulsarse, entonces M3 se parará y entrará en funcionamiento nuevamente M1. En esta situación, si se pulsa nuevamente P el motor M1 se parará y arranca el M2 y así sucesivamente. El sistema estará dotado con un interruptor RESET que servirá de entrada de inicialización (“Reset”) y que será activa a nivel bajo. En cualquier instante de la secuencia anteriormente descrita, si la entrada RESET es activada el sistema pasa al estado de inicialización, quedándose preparado (una vez desactivado RESET) para

Page 27: Memorias Automatas Daniel Rocha Crespo - Copia

 

 

27 

iniciar la secuencia por el motor M1, si P es pulsado. Cuando el sistema está funcionando (alguno de los motores funcionan) la bombilla F está encendida. SE PIDE: a). Diseñar el grafico funcional (Grafcet) y describir las entradas, salidas del sistema. b). Codificar el programa mediante diagrama de contactos o lista de instrucciones. Guardar como motores.mwp. Se quiere automatizar más el control permitiendo que la secuencia anterior se realice sin necesidad de pulsar P mediante el cambio automático de los motores cada 10 segundos. Ahora, con P se arranca el primer motor y el resto de motores iría entrando de forma automática. La figura adjunta indica como sería la nueva secuencia. RESOLUCION:

LENGUAJE DE CONTACTOS (KOP)

ARCHIVO : motores.mwp

CUESTIONES: Dada la siguiente posible solución del programa en contactos (KOP):

Page 28: Memorias Automatas Daniel Rocha Crespo - Copia

 

 

28 

c). Indicar a que tipo y rango de temporizadores se usa en la solución de programa de contactos anterior. Razone la respuesta. d) ¿Queda la salida LED_F enclavada?. Razone la respuesta. ¿Sería posible implementar un programa alternativo en el que la salida LED_F no quedase enclavada. Si fuese posible impleméntelo. e) ¿Obedece el programa anterior al esquema de funcionamiento descrito en el párrafo anterior?. En caso afirmativo razone la respuesta. En caso contrario describa y codifique los cambios que habría que realizar en el programa. Guardar como motores2.mwp.

Page 29: Memorias Automatas Daniel Rocha Crespo - Copia

 

 

29 

PRACTICA Nº 12: AUTÓMATAS PROGRAMABLES IV

EJERCICIO Nº 1: Automatización demanda de carga motores OBJETIVO: Un determinado proceso industrial, tiene como entradas las demandas ó no demandas de carga de tres motores, M1 de 5 Kw, M2 de 10 Kw, M3 de 15 Kw. Como salidas tiene la activación ó desactivación de dos generadores G1 y G2 de 15 Kw cada uno (Figura). Se desea realizar un programa con un autómata S7-200 que mediante tres entradas detecte que motores están funcionando en cada momento, y haga entrar en funcionamiento los generadores para satisfacer la potencia demandada con el siguiente criterio: a) Arrancar un solo generador G1 cuando la demanda de potencia es <= 15.Kw b) Arrancar dos generadores G1 + G2 cuando la demanda de potencia es >15.Kw Los tres motores pueden entrar a funcionar en todas las combinaciones posibles. SE PIDE: Implementar el programa del proceso, pero simplificando lo máximo posible las ecs. lógicas. Para ellos se realizarán los siguientes pasos: a.- Construir una tabla de verdad donde se reflejen todos los casos en que debemos activar el generador G1 y el generador G2. El nº de combinaciones posibles con 3 entradas es 23

b.- Extraer las de la tabla de verdad las dos ecuaciones lógicas a que se reduce el proceso. Es decir, obtener una ec. para la activación de G1 y otra ecuación para la activación de G2. c- Simplificar en la medida de lo posible las dos ecuaciones lógicas anteriores mediante las Tablas de Karnaug. y/o leyes del álgebra de Boole. d.- Implementar las ecs en contactos para un S7-200. Guardar el programa como demanda1.mwp

Page 30: Memorias Automatas Daniel Rocha Crespo - Copia

 

 

30 

RESOLUCION:

TABLA DE VERDAD

ECUACIONES LOGICAS

G1=  M1 2M 3M + 1M M2 3M + 1M 2M M3+         

+M1M2 3M +M1 2M M3+ 1M M2M3+M1M2M3 

G2=M1 2M M3+ 1M M2M3+M1M2M3 

TABLA DE KARNAUG

G1  M3 

M1  M2  0  1 

0  0  0  1 

0  1  1  1 

1  1  1  1 

1  0  1  1 

M1  M2  M3  G1  G2 

1  0  0  1  0 

0  1  0  1  0 

0  0  1  1  0 

1  1  0  1  0 

1  0  1  1  1 

0  1  1  1  1 

1  1  1  1  1 

0  0  0  0  0 

Page 31: Memorias Automatas Daniel Rocha Crespo - Copia

 

 

31 

 

G2  M3 

M1  M2  0  1 

0  0  0  0 

0  1  0  1 

1  1  0  1 

1  0  0  1 

G1 = M3 + M2 + M1 G2 = M3M2 + M3M1 = M3*(M2 + M1) 

a) Sí, pero haciendo grupos más pequeños o usando el método maxterm.

b) No, porque sino las salidas, G1 y G2, están permanentemente activadas desde que se setean hasta que se resetean.

LENGUAJE DE CONTACTOS (KOP)

Page 32: Memorias Automatas Daniel Rocha Crespo - Copia

 

 

32 

 

ARCHIVO : demanda1.mwp

EJERCICIO Nº 2:Llamada a subrutina con una intermitencia OBJETIVO: Se trata de realizar un sencillo programa, para arrancar un motor, pero que en caso de fallo active una luz intermitente En el programa principal, se arranca un motor con prioridad al paro dependiendo de tres entradas. Cuando se activa el interruptor de marcha (I0.2) y no se provoque el paro(I 0.1) y mientras no se dispare el rele termico (I0.0). se hace funcionar un motor

Page 33: Memorias Automatas Daniel Rocha Crespo - Copia

 

 

33 

(Q0.0) . Este proceso se puede implementar con una única ecuación lógica usando el “=” En una subrutina, se activará una lámpara intermitente (Q0.1) cuando se dispara el relé térmico (I0.2). Una posible forma de programar esta intermitencia, que necesita de dos temporizadores, puede consultarse en el “Manual de autómatas . Teoría y Ejercicios / Pag 124 / Cronograma Nº 3” Llamada a una subrutina REQUISITOS: 1.- Guardar el proyecto con el nombre intermitencia.mwp y intermitencia.awl, y comprobar su funcionamiento 2.- Dibujar el las memorias un cronograma de la subrutina de intermitencia ACLARACIONES Sobre las subrutinas en MICROWIN y su compilacion: - A partir de Step 7 Microwin V3.x, la escritura de subrutinas se realiza en otra ventana, activando las pestañas Sub_0, Sub_1, etc. El propio compilador colocará en las subrutinas las sentencias de comienzo y fin de subrutina. -Antes de compilar o exportar el programa situarse siempre en la pestaña del programa principal, para que se compilen y guarde todas las subrutinas. RESOLUCION:

LENGUAJE DE CONTACTOS (KOP)

Page 34: Memorias Automatas Daniel Rocha Crespo - Copia

 

 

34 

ARCHIVO : intermitencia.mwp

EJERCICIO Nº 3:Rutina de atención a la interrupción OBJETIVO: Las subrutinas son ‘módulos de programa’ que se llaman desde el programa principal mediante una sentencia. Las interrupciones se ejecutan simplemente como respuesta a un evento interno o externo asociado. Luego las interrupciones son controladas por eventos. Antes de poder llamar a una rutina de interrupción es preciso relacionar el ‘evento detonante’ de la interrupción con la parte del programa que se desee ejecutar cuando se presente el evento (denominada Rutina de Atención a la Interrupción). La operación Asociar interrupción (ATCH) La instrucción ATCH (asociar interrupción), sirve para asignar el evento de interrupción (indicado por el número de evento) a una parte del programa (indicada por el número de la rutina de atención a la interrupción) (RTI). Cuando se asocia un evento a una rutina de interrupción, se habilita automáticamente el evento. Interrupciones soportadas por el S7-200: El S7-200 soporta los siguientes tres tipos de rutinas de interrupciones:

Page 35: Memorias Automatas Daniel Rocha Crespo - Copia

 

 

35 

* Interrupciones del puerto de comunicación: El S7-200 genera eventos que le permiten al programa controlar cambios en los puertos de comunicaciones serie, USB, etc. ·* Interrupciones de E/S: El S7-200 genera eventos para los diferentes cambios de estado de diversas entradas y salidas. Estos eventos le permiten al programa reaccionar a COMENTARIO DIRECCIÓN RELE TERMICO DE DISPARO I0.0 PARO DE MOTOR I0.1 MARCHA DE MOTOR I0.2 CONTACTOR MOTOR Q0.0 LAMPARA Q0.1 3 los flancos positivos o negativos en las entradas, a los contadores rápidos, a las salidas de impulsos. * Interrupciones temporizadas: El S7-200 genera eventos que le permiten al programa reaccionar a determinados intervalos de tiempo. SE PIDE: Dado el siguiente programa se pide: a.- Guardar el programa con nombre interrupción1.mwp y simularlo b. Indicar de que tipo de interrupción se trata, razone la respuesta. b1) Interrupciones del puerto de comunicación serie, usb, etc. b2) Interrupciones de E/S. b3) Interrupciones temporizadas. c. Con ayuda de la tabla de eventos de la simulación realizada indique, dentro del tipo de interrupción mencionado en el apartado b, que es lo que dispara realmente la activación de las salidas Programa: RUTINA DE ATENCIÓN PROGRAMA PRINCIPAL A LA INTERRUPCION Mas información sobre las interrupciones: -Cuando se asocia un evento a una rutina de interrupción, se habilita automáticamente da detección de eventos. -Se podrían inhibir todos los eventos de interrupción, entonces cada vez que se presente la interrupción se pondrá en cola de espera hasta que las interrupciones se habiliten de nuevo -También es posible inhibir ciertos eventos de interrupción, eliminando la asociación entre el evento y la correspondiente rutina mediante la operación DTCH (Desasociar interrupción). Esta operación retorna la interrupción a un estado inactivo o ignorado. -Tras haberse ejecutado la última operación de la rutina de interrupción, el control retorna al programa principal. Para salir de la rutina se puede ejecutar una operación Retorno condicionado desde rutina de interrupción (CRETI) RESOLUCION:

LENGUAJE DE CONTACTOS (KOP)

Page 36: Memorias Automatas Daniel Rocha Crespo - Copia

 

 

36 

Page 37: Memorias Automatas Daniel Rocha Crespo - Copia

 

 

37 

ARCHIVO : subrutina1.mwp

EJERCICIO Nº 4:Entrada-salida variables analógicas

OBJETIVO: Familiarizar al alumno con el manejo de entradas y salidas Analógicas. Dado el siguiente segmento de programa. SE PIDE: a) ¿Que tarea ejecuta el programa? b) ¿Qué función hace la instrucción MOV_W? NOTA: Para la simulación se necesita instalar en el simulador S7_200, el módulo EM235, configurarlo a 10 v. Para probarlo usar, las barras de tensión asociadas al módulo.

Page 38: Memorias Automatas Daniel Rocha Crespo - Copia

 

 

38