Está en la página 1de 8

Programación estructurada sobre Controladores Programables

Programación estructurada sobre un PLC

Objetivos:
• Discutir tres métodos estructurados para implementar un esquema de control
• Generar un diagrama de estados para un problema de control dado.
• Diseñar una red de Petri para un problema de control dado.
• Convertir una red de Petri en una diagrama secuencial.
• Ventajas y desventajas de la programación estructurada y no-estructurada

Se pretende ver como desarrollar un control secuencial usando métodos estructurados


en lugar del de prueba y error. Construir un diagrama de estados o una red de Petri
ayuda al análisis del funcionamiento total de un control y permite dividir un control
complejo en partes menores, segmentos mas manejables. La depuración de
programas estructurados es mucho mas facil, debido a que ellos están organizados y
que el diagrama de estados y la red de Petri proveen ayuda visual.

Diagrama de estados

La lógica escalera a menudo es escrita en forma no estructurada lo que se hace dificil


de analizar y corregir. Esto puede ser remediado mediante un simple enfoque
estructural llamado diagrama de estados. Un diagrama de estados es una
representación pictórica, un tipo especial de diagrama de flujo, de un proceso de
control secuencial que muestra los posibles caminos que el proceso puede tomar y las
condiciones booleanas necesarias para pasar de un estado al otro.

• El primer paso en este enfoque a la programación estructurada es preparar una


descripción de lo que se necesita hacer.
• El segundo paso es trasladar esta descripción a un diagrama de estados,
determinando los estados únicos a traves de los cuales el proceso avanza.
Cualquier cambio que se de en las condiciones de salida necesita ser mostrado en
un nuevo estado.
• El tercer paso es conectar estos estados con líneas y flechas para indicar las
direcciones de cambio deseado.
• Finalmente, se agregan las condiciones lógicas, escritas en forma booleana, que
causan un cambio de un estado a otro.

Ejemplo 1: “llave –secuencial-”

Descripción: Diseñar una “llave –secuencial-” que operará un dispositivo por 15


segundos despues de que tres pulsadores han sido presionados en la secuencia
correcta. Si se presiona una secuencia incorrecta un aviso de error deberá ser
activado para prevenir un nuevo intento antes de 10 segundos, luego de los cuales se
permite un nuevo intento. Si el aviso de error es activado mas de dos veces la llave
permanecerá bloqueada hasta que un pulsador, para tal fin, lo libere.
El diagrama de estados para este bloqueo secuencial es dado por la figura 1.

Diseño de Sistemas Lógicos Secuenciales 1/8


Programación estructurada sobre Controladores Programables

Esquema de estados

Estado 1: Estado 2: I:00 Estado 3:


Habilitar Listo, intento 2
intento 1
I:01 + I:02
I:00 + I:02
Estado 6: I:01
T1*C1+I:03 Error
T2
I:00+ I:01

Estado 5: I:02 Estado 4:


Operar intento 3

Figura 1: Diagrama de estados para el ejemplo


“Llave –secuencial-”

Designación Dispositivo Función


I:00 Pulsador 1 Primera combinación
I:01 Pulsador 2 Segunda combinación
I:02 Pulsador 3 Tercera combinación
I:03 Pulsador 4 Reset
T1 Temporizador Retardo 10 seg.
T2 Temporizador Retardo 15 seg.
C1 Contador Error

Regla para la construcción de diagramas de estado: solo un estado puede ser


activado a la vez.
Esta regla es asegurada exigiendo que, para habilitar un estado, los restantes estados
estén inhabilitados. De otra manera podria resultar en un serio conflicto entre estados,
inseguro para el personal y las maquinaria.
El control secuencial para la llave descripta en el ejemplo 1 se implementará
utilizando el método de diagrama de estados. El programa se escribe para cualquiera
de lo PLCs del Laboratorio.

La estructura en este control resulta facil de seguir, depurar y mantener. La parte mas
pesada de diseñar es la generación del diagrama de estado. Una vez que él es
diseñado, el resto es sencillo. Usted podría implementar este mismo control con unos
pocos relés, pero, dado que la memoria del PLC no es cara, el costo para un programa
estructurado es mínimo. Las ventajas de un programa estructurado sobre uno no
estructurado hacen que sea una excelente forma de implementar un control.

Todos los estados deben ser implementados de a uno por vez. Proponemos seguir un
formato general para programar el esquema en escalera correspondiente a la “Llave –
secuencial-“.

Diseño de Sistemas Lógicos Secuenciales 2/8


Programación estructurada sobre Controladores Programables

Formato general

• Definir un sector de programa para cada estado.


• En cada sector
• Un primer escalón con las condiciones necesarias para entrar al estado.
• Un segundo escalón con las condiciones requeridas para salir del estado. Las
condiciones lógicas son las listadas sobre las líneas de conexión de estados
en el diagrama de estados.
• Un número de escalones entre el segundo y el último escalón donde se
programen las acciones a cumplir de acuerdo con los requerimientos de cada
estado en particular.
• Un último escalón que actúa deshabilitando el estado.
• La programación debe asegurar que no se pueda entrar a dos estados a la vez.

Saltar a Condiciones necesarias para


FIN DE ZONA entrar al estado

SALIDA LÓGICA
Condiciones requeridas para salir
Contactos en del estado
serie y paralelo

Programa de acciones a cumplir


de acuerdo con los
requerimientos de cada estado en

Deshabilita el estado

FIN DE ZONA

Diseño de Sistemas Lógicos Secuenciales 3/8


Programación estructurada sobre Controladores Programables

Ejemplo 2: Dos bombas.

Descripción: Un tanque de agua tiene tres sensores, para detectar tres diferentes
niveles de agua: Lleno, Bajo y Vacío. Hay dos bombas para llenar el tanque: P1 y P2.
Cuando el control automático es habilitado podría suceder que:
1. Un tanque, inicialmente vacío, requiere que arranquen las dos bombas,
hasta que se llena.
2. Un tanque, inicialmente lleno, o con un nivel de agua entre lleno y bajo,
mantiene las dos bombas apagadas.
3. Una condición inicial abajo del nivel bajo, pero no vacío, arranca una de las
bombas, hasta que el tanque se llena.

Si el tanque se vacía mientras una bomba esta encendida, la otra bomba se arranca y
ambas permanecen encendidas hasta que el tanque se llena.
Las bombas son alternadas en cada ciclo de llenado.

Construimos el diagrama de estado.


Símbolos utilizados en el diagrama de estado
Sensor de Tanque vacío LSLL
Sensor de Tanque lleno LSH
Sensor de bajo nivel LSL
Relé de cambio de bomba RC
Bomba 1 B1
Bomba 2 B2
Nota: Los sensores producen un contacto cerrado cuando el agua los toca.

___ ___
LSLL X LSH X RC
2
P1 ⇐ 0
P2 ⇐ 0

___ ___
LSH + LSL X LSH LSL X LSH X RC
___
LSH

___ ___ 5
LSLL 3 LSLL LSH
1 P1 ⇐ 1 P1 ⇐ 0
ARRANQUE P2 ⇐ 1 P2 ⇐ 1
RC ⇐ 0

___
LSLL
___
LSLL X LSL

4 LSH
P1 ⇐ 1
P2 ⇐ 0
RC ⇐ 1

Figura 1: Diagrama de estados para el problema de


las dos bombas

Diseño de Sistemas Lógicos Secuenciales 4/8


Programación estructurada sobre Controladores Programables

El método de diagramas de estado solo es aplicable si un solo estado es activado por


vez. Veremos otro método para manejar operaciones en paralelo: Redes de Petri.

Redes de Petri
Las Redes de Petri fueron empleadas inicialmente en programación de
computadoras como un método estructurado de diseñar programas, en los cuales,
procesos en paralelo deben ser efectuados simultaneamente y cada proceso en
paralelo ha de ser completado en orden a continuar sobre la siguiente porción de
programa. Un diagrama Petri es una representación pictórica de un proceso de control
que requiere ramas en paralelo y procesamiento simultaneo.
El muestra los posibles caminos que el proceso puede tomar, las condiciones
Booleanas necesarias para pasar de un estado al otro y donde se requiere
convergencia para continuar.

Un ejemplo de multiples operaciones simultaneas es un proceso de ensamblaje


automatizado que recibe dos plaquetas de circuitos impresos diferentes en las que
deben montarse las partes, soldar y completar procesos varios antes de que ellas
avancen hasta donde deben conectarse con una plaqueta madre. Solo despues que
las tres plaquetas han sido completadas y conectadas pueden avanzar a una nueva
ubicación donde serán testeadas automaticamente.

Una Rede de Petri de este proceso puede ser implementada sobre cualquier
PLC usando un diagrama de estado estructurado para cada estado. Solo el estado
activo, puede comunicarse con el procesador.

Cartas de función secuencial


Un proceso puede ser programado en un PLC de una manera estructurada
usando un diagrama de estado para cada estado y registros para mantener las
condiciones y activar y desactivar estados. Sin embargo si un lenguaje de
programación estructurada no está disponible, esta toma una gran carga de tiempo y
programación.
Hay PLCs que tienen entre sus opciones lenguajes de programación
estructurada que permiten implementar Petri networks. Estas cartas secuenciales o
SFC (Sequential Funcion Charts) están hechas para implementar Petri networks. En
estos no debemos preocuparnos por el control de la programación, dado que está
completamente automatizado por el SFC. El programa genera la estructura necesaria
para inmplementar un diagrama de estado, se debe poner la logica necesaria para
cada estado.
Una ventaja del SFC es que la exploración -el SCAN- resulta mas eficiente. En
lugar de recorrer completamente la lógica del programa de control, en SFC, solo la
lógica para los estados activos es SCANEADA y el resto es pasado por alto.
La figura muestra el diagrama de Petri implementado usando SFC.

Diseño de Sistemas Lógicos Secuenciales 5/8


Programación estructurada sobre Controladores Programables

COMENZAR

PB1

UBICAR PCB1 UBICAR PCB2 UBICAR LA


SOBRE LA SOBRE LA PLACA MADRE
MESA MESA SOBRE LA MESA
LS1 LS2 LS3

MONTAR MONTAR MONTAR


PARTES PARTES CONECTORES

M1 M2

CORTAR Y APLICAR
SOLDAR MASCARA DE
SOLDAR
S1 AM1

AJUSTAR CORTAR Y
POTES SOLDAR

AP1+ S2+ M3
ENSAMBLAR
PCB 1, 2, 3

AS1

FIN

Figura 10 - Ejemplo Petri Network


Montaje y ensamble de placas impresas

Diseño de Sistemas Lógicos Secuenciales 6/8


Programación estructurada sobre Controladores Programables

INICIO

ERROR
LISTO

INTENTO 2 ERROR

INTENTO 3 ERROR

OPERAR ERROR

FIN

Ejemplo
Carta de Función Secuencial
para la “llave - Secuencial

Diseño de Sistemas Lógicos Secuenciales 7/8


Programación estructurada sobre Controladores Programables

Resumen
Hay muchas ventajas en realizar programas de control estructurados por lo que esta
justificado el tiempo que toma estudiar alguna de sus técnicas. Las dos ventajas obias
son dividir un control complejo en unidades manejables, mas pequeñas y realizar un
control mas facil de mantener. Otra ventaja es que nos obliga a documentar que es lo
que ha sido hecho tal que otros lo puedan comprender. El método de prueba y error
nos permite hacer el trabajo, pero a menudo resulta laborioso, antieconómico y sin
documentación, tal que una próxima persona deberá repatir el proceso consumiendo
nuevamente el mismo tiempo.

Ejercicios:
1. Hacer un diagrama de estado para el siguiente problema de control: Un operador
de una máquina requiere, por seguridad, mantener ambas manos lejos de la
máquina mientras ella trabaja. Para asegurar esto dos pulsadores deben se
actuados simultaneamente para operarla, a la ves que estarán suificientementa
apartados para que esto no pueda ser hecho con una sola mano. Luego de pulsar
ambas botoneras, la maquina interrumpirá el funcionamiento y no operará hasta
que ambos botones sean liberados y pulsados simultaneamente otra vez.
2. Para los problemas ejemplo y el ejercicio anterior, realizar: los diagramas de
estado y los programas estructurados correspondientes, para un determinado PLC.
Implementarlo y simular su comportamiento.
3. Enumerar ventajas y desventajas de utilizar diagramas de estado para el diseño de
un sistemas de control y de la programación estructurada?.
4. Cuales son las características de un PLC que hacen posible implementar el control
a partir de diagramas de estado?.
5. Como se podrían utilizar los diagramas de estado para diseñar un control con reles
electromecánicos en lugar de un PLC?.

Diseño de Sistemas Lógicos Secuenciales 8/8

También podría gustarte