Home AW-SYS Soporte Técnico Demo

Anterior

Ejemplo 29
Luces secuenciales en 'barra'

Construir un secuenciador de 8 canales que prevea el siguiente esquema de encendido.

Esquema de encendido para luces secuenciales en barra
Esquema de encendido para luces secuenciales en barra

El efecto óptico, si las luces están dispuestas en línea vertical al igual que los LED del módulo del PLC, es el de un llenado progresivo de la barra debido a fuentes luminosas que aparecen por arriba y que poco a poco van descendiendo hasta ocupar la última posición libre, es decir, apagada. Una vez iluminada toda la barra, el ciclo vuelve a empezar, apagando las luces y reiniciando su llenado.
La secuencia es bastante más complicada que la anterior como para obligarnos a buscar una solución distinta, más funcional y, tal vez, más versátil. La solución prevista utiliza un bloque de datos para memorizar las combinaciones de encendido de la secuencia. Cada data word contiene, en el byte bajo, el código de encendido de las luces. La última word contiene el dato (FFFF)16 que actúa de finalizador de secuencia con las modalidades que en seguida veremos.
El corazón del programa está constituido por el bloque FB10 que se llama cada 2 décimas de segundo y que se encarga de leer los datos y de enviarlos al módulo de salida. Veamos como.
MW100 constituye el puntero en la data word actual. Su valor inicial es 0. El grupo de instrucciones en la etiqueta READ, siguiente a la apertura del DB20, carga primero el valor (FFFF)16 en el acumulador, y luego el valor de la data word corriente, utilizando una instrucción dirigida, y confronta los dos valores: si son distintos, la elaboración continua transfiriendo el contenido de ACCU1, el dato de la secuencia, al módulo 2 de salida. A continuación, después de haberse incrementado con el valor del puntero, se retorna al bloque reclamante de manera que, cuando sea nuevamente reclamado FB4, la data word cargada será la siguiente.
En cambio, si el valor leído es igual a (FFFF)16, la elaboración continua primero en la etiqueta INIT, donde se realiza la puesta a cero del índice para la vuelta al principio de la secuencia, y luego en la etiqueta READ para la nueva lectura de la primera combinación de la secuencia, DW0.

Otros ejemplos: 1 ] 2 ] 3 ] 4 ] 5 ] 6 ] 7 ] 8 ] 9 ] 10 ] 11 ] 12 ] 13 ] 14 ] 15 ] 16 ] 17 ] 18 ] 19 ] 20 ] 21 ] 22 ] 23 ] 24 ] 25 ] 26 ] 27 ] 28 ] [ 29 ] [ Lista ]
Ejemplos para otros PLC: [ Festo FPC404 ] [ Klökner Moeller PS3 ]