Práctica 2 Ejercicio 1 Cuando se accione el pulsador de apertura de puerta, la puerta se abre (si no estaba abierta) y cuando el vehículo se encuentra en el interior del recinto y presiona el sensor de paso la puerta se cierra. ENTRADAS I 0.0 : Pulsador de apertura de puerta. I 0.1 : Sensor de fin de carrera (puerta cerrada) I 0.2 : Sensor de fin de carrera (puerta abierta) I 0.3 : Sensor de paso de vehículo. SALIDAS Q 0.0 : Cerrar puerta Q 0.1 : Abrir puerta El esquema es el que se muestra a continuación: I0.1 I 0.2 I 0.3 Q 0.0 Q0.1 I0.0 El programa de control en lenguaje diagrama de contactos (KOP) es el siguiente: –1– Práctica 2 En la figura anterior se ha controlado la activación/desactivación de los motores de apertura y cierre mediante operaciones SET/RESET. - Si llega un vehículo (I0.0 = 1) y la puerta no está abierta ya (I0.2 = 0), entonces se enciende el motor de apertura (Q0.1 = 1). - Cuando la puerta se termina de abrir (I0.2 = 1), entonces se detiene el motor de apertura (Q0.1 = 0). - Cuando pasa el vehículo (I0.3 = 1) y la puerta no está cerrada (I0.1 = 0), entonces se enciende el motor de cierre (Q0.0 = 1). - Cuando la puerta se termina de cerrar (I0.1 = 1), entonces se detiene el motor de cierre (Q0.0 = 0). Esta manera de trabajar es más intuitiva, puesto que simplemente debemos implementar las instrucciones que controlan la activación y desactivación de ambos motores. Otra manera de trabajar, un poco más compleja, es mediante operadores asignación. Utilizando este tipo de operadores, el programa de control sería el siguiente: En el momento que llega un vehículo (I0.0 = 1), si la puerta no está abierta (I0.2 = 0), entonces se empieza a abrir la puerta (Q0.1 = 1). Puesto que se utilizan operadores asignación, en el momento que el conductor suelte el pulsador (I0.0 = 0), no llegará corriente a la bobina que activa Q0.1. Para evitar que el –2– Práctica 2 motor de apertura se detenga en este instante, se debe colocar en paralelo un contacto que deje pasar corriente si la puerta se estaba abriendo anteriormente (Q0.1 = 1). De forma análoga controlaríamos el motor de cierre de la puerta (segundo segmento). Ejercicio 2 Utilizando temporizadores, emular el funcionamiento del temporizador de impulso (SI): El funcionamiento del temporizador que se muestra en la figura se puede describir de la siguiente manera: - La salida Q0.0 muestra la mima señal que entra por la patita I0.0 mientras que se cumplan dos condiciones: 1. Los pulsos de la señal que entra por I0.0 tienen una duración inferior a 5 segundos. 2. No se ha pulsado la patita de Reset. Teniendo en cuenta esta descripción, el programa de control deberá incluir una temporización de 5 segundos. Para ello, se va a utilizar un temporizador de retardo a la conexión no memorizado con una resolución de 100 ms. Esto significa que el temporizador cuenta intervalos de tiempo de 100 ms, es decir, un ciclo de reloj son 100 ms. –3– Práctica 2 Puesto que tenemos que temporizar 5 seg = 5.000 ms = 50 ciclos de 100 ms, el valor de preselección (PT) que tendremos que indicar será 50. El programa de control es el siguiente: Ejercicio 3 Realizar el programa de control que obtenga en la salida Q0.0 una señal periódica de 6 segundos. La forma más sencilla de realizar el programa es implementando dos temporizaciones: - Un temporizador (T37) que cuente los 3 primeros segundos, en los que el bit Q0.0 está a 0. Transcurridos estos 3 segundos, se activará el bit T37, momento en el que debemos poner a 1 el bit Q0.0. Además, en este instante, debe resetearse el temporizador, estando de nuevo preparado para la siguiente temporización. - Otro temporizador (T37) que cuente los otros 3 segundos, en los que el bit Q0.0 está a 1. Transcurridos estos 3 segundos, se activará el bit T38, momento en el que debemos poner a 0 el bit Q0.0. Además, en este instante, debe resetearse el temporizador, estando de nuevo preparado para la siguiente temporización. Recordar que los temporizadores no memorizados, como los que estamos utilizando, se resetean automáticamente cuando la señal que introducimos por la patita IN pasa a valer cero. Cuando esto ocurre, tanto el valor actual como el bit del temporizador se ponen a cero. –4– Práctica 2 El programa de control es el siguiente: Ejercicio 4 El control del motor de una escalera automática consta de un interruptor de encendido y apagado (ON/OFF), un sensor de temperatura para detectar sobrecalentamientos y una célula fotoeléctrica a la entrada de la misma para detectar el paso de personas. Se desea diseñar el control de funcionamiento de la misma teniendo en cuenta que el tiempo estimado en recorrer todo el trayecto es 5 seg. Nota: Cada vez que detecte a una persona reiniciará la temporización. Nadie a mitad del recorrido. ENTRADAS SALIDAS I 0.0 : ON/OFF I 0.1 : Protección del motor (“1” funcionamiento correcto) Q 0.0 : Acciona el motor I 0.2 : Fotocélula (Detección paso personas) Vamos a realizar el programa desde el punto de vista del beneficio de la persona. En este caso, la escalera automática no puede dejar a una persona a mitad de recorrido, aunque el motor esté sobrecalentado. Para realizar el programa, vamos a utilizar una marca interna, M0.0, la cual indicará si hay una persona en la escalera. De esta forma, M0.0 valdrá 1 cuando exista una persona subiendo por la escalera y pasará a valer 0 cuando la persona abandone la escalera, es decir, 5 segundos después de haber subido a ella. –5– Práctica 2 Como veremos, la marca M0.0 nos servirá para habilitar el temporizador. El programa de control es el siguiente: Observar que este programa contempla la posibilidad de que una persona pase por delante de la fotocélula mientras hay una persona que está subiendo ya por la escalera. En este caso, deberá comenzar de nuevo el periodo de temporización de 5 segundos. El último segmento del programa implementa esta posibilidad. Además, en el caso de que el motor tuviera un funcionamiento incorrecto (I0.1 = 0), el motor debería pararse, no sin antes haber dejado a la persona a salvo. Por tanto, una vez que el temporizador ha comenzado a contar 5 segundos, no se puede desactivar a causa de un sobrecalentamiento. Es decir, el temporizador no debe empezar a contar mientras que I0.1 esté desactivado, pero una vez que ha comenzado no se puede detener la cuenta, es decir, no se puede resetear el temporizador antes de que transcurran los 5 segundos. Además, en el caso de que apaguemos el motor pulsando OFF, la escalera seguirá funcionando mientras que la persona esté todavía en la escalera mecánica. –6– Práctica 2 Ejercicio 5 Realizar, en lenguaje esquema de contactos, un programa de control que mediante el uso de un solo temporizador (T37) active las salidas Q0.4 y Q0.7 una vez hayan transcurridos 10 y 27 segundos respectivamente desde que se produjo la activación de la entrada I0.2. Mediante la entrada I0.3 se vuelve a las condiciones iniciales Q0.4 y Q0.7 desactivadas. Puesto que tenemos que temporizar distintos tiempos (10 y 27 segundos) mediante un único temporizador (T37), vamos a tomar como valor de preselección el máximo valor de temporización, esto es, 27 segundos (270 ciclos de 100 ms). De esta forma, para poder saber si han transcurrido 10 segundos, es necesario utilizar una operación de comparación con el valor actual del temporizador. Puesto que el valor actual del temporizador tiene un tamaño de 16 bits (una palabra), debemos realizar una comparación entre números enteros (>=I). El programa de control es el siguiente: –7– Práctica 2 El funcionamiento es el siguiente: - Mientras que I0.2 está activada, el temporizador está activo. - Pasados 10 segundos desde la activación del temporizador, se activa la salida Q0.4, la cual se mantendrá a 1 mientras que el valor actual del temporizador sea superior a 10 seg. - Pasados 27 segundos, se activa el bit del temporizador y se asigna dicho valor a Q0.7. Mientras que el valor actual del temporizador se encuentre por encima del valor de preselección (27 seg), la salida Q0.7 estará activa. - Cuando se pulse I0.3, deben ponerse a cero las dos salidas. Además, debe resetearse el temporizador, para que pueda volver a comenzar el ciclo. Observar que si no reseteamos el temporizador, mientras que se mantenga activa I0.2, el temporizador seguirá contando, por lo que el valor actual será superior al de preselección y ya no se activarán otra vez las dos salidas. Por tanto, para que pueda volver a repetirse el ciclo de 10 y 27 segundos, debemos resetear el temporizador cuando se pulse I0.3. Mediante el último segmento, reseteamos el temporizador para que vuelva a contar desde 0 y, al mismo tiempo, estamos desactivando indirectamente las salidas Q0.4 y Q0.7. • Q0.4 se desactiva porque el valor actual pasa a valer 0 y, por tanto, no se cumple que T37 >= 100. • Q0.7 se desactiva porque el valor actual pasa a valer 0, que es inferior al valor de preselección (27 seg). Por tanto, lo que hacemos con este programa es lo siguiente: - Pulsamos I0.2 y lo mantenemos pulsado indefinidamente (mientras que queramos que el autómata funcione). - La primera activación de Q0.4 y Q0.7 se producirá 10 y 27 seg, respectivamente, después de que I0.2 se active. Las posteriores activaciones se producirán 10 seg y 27 seg después de que pulsemos I0.3. –8– Práctica 2 Ejercicio 6 Realizar, en lenguaje esquema de contactos, un programa de control que gestione el siguiente parking de coches: El sistema debe supervisar el funcionamiento del parking: - Cuando llega un coche (fotocélula I0.0) y el parking esté libre, queremos que se abra la barrera. A la salida no tenemos barrera. Cuando sale un coche simplemente sabemos que ha salido (fotocélula I0.1). - En el parking caben 10 coches. Cuando el parking tenga menos de 10 coches queremos que esté encendida la luz de libre. Cuando en el parking haya 10 coches queremos que esté encendida la luz de ocupado. - Además queremos que si el parking está ocupado y llega un coche que no se le abra la barrera. - Mediante la entrada I0.2 resetearemos el contador. Para realizar el programa, vamos a utilizar un contador de cuenta hacia delante y hacia detrás (CTUD): C2. El valor actual del contador contendrá en todo momento el número de coches presentes en el parking: - Queremos saber el momento en que el parking está lleno, es decir, el valor actual del contador es igual a 10. Por tanto, tomamos 10 como valor de preselección (PV). - Si llega un coche (I0.0 = 1) y el parking no está lleno (C2 = 0), entonces queremos que se abra la barrera (Q0.0 = 1). Por simplificar el ejercicio, suponemos que la barrera se levanta únicamente durante el tiempo en que el conductor está pulsando I0.0. Observar que al pasar el vehículo, es decir, cuando se cumplen las dos condiciones anteriores, debe incrementarse el contador, puesto que hay un nuevo vehículo en el parking. –9– Práctica 2 - Cuando sale un coche (I0.1 = 1), debe decrementarse el contador, puesto que hay un vehículo menos en el parking. - Mientras que el parking esté lleno (C2 = 1), debe estar encendida la luz de parking ocupado (Q0.2). En caso contrario (C2 = 0), debe estar encendida la luz de parking libre (Q0.1). El programa de control es el siguiente: – 10 –
© Copyright 2024