Programas para realizar con el MacroPLC
2. Implemente un sistema que invierta en el encendido entre dos motores considerando:
a. Un pulsador de apagado general.
b. Un único pulsador que seleccione cual motor se desea encender.
c. Un pulsador único de encendido para ambos motores
3. Desarrolle un programa que con un pulsador un contador up se incremente, este podrá llegar hasta su tope que es 255. Con otro botón se lo debe resetear.
Desde un programa ensamblador
LDA K`0` ; cargo acumulador con 0
OUTA; mover el contenido del A( origen)
CNT01; cargar al contador CNT01 con el contenido de A
; en este caso vale `0`. Esto ocurre cuando se cierra la llave ENT01
; cuando la llave ENT00 se cierra el contador se incrementa
4. Realizar el mismo programa, pero con la diferencia que solo el contador llegue a contar hasta 30.
Este programa cuenta con una llave denominada booleana que compara dos valores prefijados. Si existe una situación de verdad, la llave se mantiene cerrada. Para nuestro caso se utiliza una llave NE<>(No Equal). Compara el valor del contador en la entrada de la llave con un valor fijo que es 30.
5. Similar que en el caso anterior, pero que el operador defina el valor de la cuenta.
Este programa tiene un pulsador activo por flanco ascendente común para el reset del contador y el valor que predetermina el operador. El contacto booleano compara el valor de los dos contadores. Cuando ambos valores de los contadores son iguales, deja la condición de verdad por lo que éste se abre.
6. Desarrollar similar al ejercicio anterior, pero cada vez que se pulsa el botón de selección d cuenta, se duplique el valor previo almacenado.
Para ello se utiliza el desplazamiento del contenido del registro "A". Para ejemplificar si un número binario se lo desplaza hacia la izquierda, su valor se duplica:
(A)? 00000001; represento al 1 decimal
(A)? 00000010; represento al 2 decimal (desplazo izquierda)
Para que la instrucción de rotación funcione hay que cargar previamente "A" =1 para el CNT01, en este caso se lo utiliza como un registro. Observando el programa, luego de cargar CNT01 con el valor de "0", parado un tiempo de 5 segundos se hace lo propio con CNT01. Esto se logra mediante la utilización de un TOF (temporizado a la desconexión).
Para inicializar todo el sistema se logra mediante un pulsador (ENT04) de disparo de flanco ascendente (PD: Diferencia al positivo). Con ENT02, que es un pulsador de disparo PD produce que se multiplique el valor de la carga inicial de "1", logrando "2","4","8","16","32","64" y "128". Pulsando ENT00 el contador se acciona hasta que la llave booleana se abra.
7. Desarrolle un programa que genere una secuencia el encendido de las luces para un cartel de la siguiente manera:
S0 | S1 | S2 | S3 |
Encendido | |||
Encendido | |||
Encendido | |||
Encendido |
Tome en cuenta que debe existir una temporización de 2 segundos entre cada uno de los encendidos.
8. Desarrolle un control tal que de un panel de 4 interruptores siempre que solo uno esté cerrado, encienda una lámpara. Considere que por cada interruptor hay una lámpara.
Explicación:
Utilizo la función OR-EXCLUSIVA como elemento lógico de decisión.
En un sistema de Ladder, el programa se ejecuta de manera descendente, lo que se puede ejemplificar de la siguiente manera:
Si acciono la llave 00 (ENT00) el acumulador A se carga con el decimal 1 (en binario de ocho bits corresponde "00000001"), si las otras llaves no son accionadas el valor contenido en A se acciona lógicamente con el decimal 255 (en binario de 8 bits es "11111111") con la función OR-EXCLUSIVA.
El resultado es: A= 254 , es decir "11111110"
Este resultado se lo descarga a una variable CNT00 (no opera como contador).
Coloco un operador booleano comparativo por igualdad (llave NA) que compara con el valor de la variable y 255, si verifica se cierra el contacto y enciende la SAL00.
9. Desarrolle un sistema de control, tal que con la menor lógica posible, con dos pulsadores encienda y apague una luz.
En este ejercicio utilizo los comandos SET y RST (Reset) .Es una de las ventajas de utilizar este tipo simplificado de comandos. La lámpara se encuentra en la salida SAL00.
EJERCICIO PROPUESTO:
Desarrolle un programa en donde utilice las funciones ADDA y SUBA, para alterar el valor de una variable de cuenta de un contador ascendente "CTU" y que accione sobre el encendido de una lámpara ubicada en la salida SAL01.
Autor:
Lic. Prof. Edgardo Faletti
Tecnología Educativa
Electrónica
2014