APUNTES DE SISTEMAS ELECTRONICOS
INDUSTRIALES
Conceptos
Básicos de Programación
de PLCs
1.-
PROGRAMACION Y LENGUAJES.
Un PLC
debe ser capaz de arrancar su programa siempre
que exista una falla de energía, por lo que todas las
eventualidades
deben ser programadas en él.
En el
programa se designan mediante direcciones
los registros, los contadores, los temporizadores y las entradas y
salidas.
En los PLC pequeños estas direcciones están asignadas por
el fabricante, pero en los mayores, pueden ser definidas por el
usuario,
con mayor aprovechamiento de la memoria.
Los PLC
trabajan como todos los circuitos electrónicos
únicamente con dos estados lógicos, ALTO y BAJO, ON y
OFF,
1 y 0, etc., lo cual no es práctico desde el punto de vista de
enlace
hombre-máquina, por lo que se requiere de lenguajes de
programación
que traduzcan las ideas humanas a estados lógicos.
Los
lenguajes de programación en sí,
aunque normalizados en su parte básica, son tan variados como
fabricantes
de PLC hay, así como también la manera de accesar a
dichos
controladores.
Pero, en
general podemos hablar de cuatro grandes
grupos de lenguajes de programación: INSTRUCCIONES, DE ESCALERA,
POR FUNCIONES y POR PASOS.
LENGUAJES DE ESCALERA (TIPO ANSI). Es el
más
conocido en el área de influencia norteamericana, ya que
invariablemente
todos los PLC de fabricación americana o japonesa permiten su
programación
en este lenguaje; ya sea para emplear los mismos diagramas de control
alambrado
existentes en las máquinas que se reconvierten o, ya sea para
capacitar
fácilmente al personal de mantenimiento en el manejo y arreglo
de
estos aparatos.
INSTRUCCIONES. Es el tipo más
poderoso de los lenguajes de programación en cualquier marca de
aparato, ya que es lo más cercano al lenguaje máquina y,
puede hacer uso de particularidades de los mismos microprocesadores, y
con ello hacer más rápido un programa o, más
compacto.
PROGRAMACION POR FUNCIONES. Es el
preferido por
los Ingenieros europeos. Son los más matemáticos de los
lenguajes,
al requerirse manejo de tablas de verdad y simplificación de
funciones
lógicas booleanas para su empleo.
PROGRAMACION POR PASOS (GRAPHSTEP,
GRAPH5). Este
lenguaje fue inventado por ingenieros de la marca francesa
Telemecanique,
y posteriormente se cnvirtió en el lenguaje estándar IEC,
y son ahora muchos
los fabricantes que tienen su propia versión.
Es en práctica un lenguaje más elevado
que los anteriores al permitir con una simple instrucción hacer
lo que en otros requería varias y complejas instrucciones,
siempre
y cuando se pueda programar la operación de la máquina de
manera secuencial.
Este lenguaje es muy apropiado para el manejo
de posicionadores, alimentadores, y todo aparato cuyos movimientos
mecánicos
sean repetitivos.
2.-
CONCEPTOS DE DIAGRAMAS DE ESCALERA APLICADOS
A PLCs.
Los
elementos principales son: contactos y bobinas.
Los
contactos o condiciones pueden ser de: entradas
digitales, salidas digitales, temporizadores, contadores o, marcas
(también
llamadas banderas o memorias internas, que son equivalentes a los
relevadores
auxiliares en tableros alambrados).
Lo que
llamamos "bobinas" es el resultado de la
operación y "enciende" cuando las condiciones precedentes se
cumplen,
o en téminos eléctricos, existe un camino de contactos en
serie cerrados.
Además,
existen dos tipos de bobinas: retentiva
(tipo latch) y no retentiva.
SIMBOLOGIA.-
TIPO
SIEMENS
I
ó E ENTRADA
Q ó A SALIDA
F ó M MARCA, BANDERA O
MEMORIA
INTERNA
T TEMPORIZADOR
C CONTADOR
S Instrucción SET
R Instrucción RESET
Las I, Q y,
Fs pueden ser llamadas por bit. Ej.
Q0.0 = bit 0 del Byte 0 de salidas digitales. Asimismo por byte. Ej.
IB0
= los 8 bits del byte 0, o por palabra. Ej. FW0 = FB0 + FB1 .
En las
figuras 1a y 1b, para que la salida
Q1.0 encienda (valor lógico de 1), las condiciones son que la
entrada
I0.0 y las entradas I0.0 e I0.1 estén encendidas (valor
lógico
de 1) respectivamente.
En la
figura 1c se muestra el diagrama eléctrico
de conexión de un arrancador en un PLC y, su diagrama de control.
Tabla de
Referencia:
I0.0 botón pulsador de
arranque
I0.1 botón pulsador de paro
(normalmente
cerrado)
Q1.0 relevador auxiliar del contactor del
motor
En la
figura 1d, el mismo arrancador sencillo
se realiza con las instrucciones SET y RESET (relevador retentivo) de
dos
maneras. Observar que si los botones pulsadores se oprimen al mismo
tiempo
en los casos mostrados, se obtienen resultados diferentes porque el PLC
actualiza las salidas hasta terminar de ejecutar el programa.
Se muestra
una mejor solución para un arrancador
en la figura 1e, considerando que tiene preferencia el paro.
Programando
PLCs es muy frecuente cometer errores
como los de las figura 1f. En el primero caso, el PLC tiene un
límite
de operaciones pendientes que es fácil alcanzar y en el segundo
(cortocircuito de contactos) y tercero (repetición de
condiciones),
se desperdicia memoria si es que el programa compilador acepta los
comandos.
Un
ejercicio más complejo con las instrucciones
dadas es el de un arrancador para un motor reversible. La
solución
está dada en la fig. 1g.
Tabla de
Referencia:
I0.0 botón pulsador arranque
adelante
I0.1 botón pulsador paro
(normalmente
cerrado)
I0.2 botón pulsador arranque
atrás
Q1.0 relevador auxiliar de motor hacia
adelante
Q1.1 relevador auxiliar de motor hacia
atrás
Los
temporizadores y las funciones más complejas
se dibujan mediante un rectángulo donde se escriben los
elementos
constituyentes.
Un ejemplo
de la utilización de un temporizador
del tipo de retardo al conectar (ON DELAY) es el arrancador en dos
pasos
que se muestra en la figura 1h, cuya tabla de referencia es:
I0.0 botón pulsador arranque
I0.1 botón pulsador paro
(normalmente
cerrado)
Q1.2 primera velocidad
Q1.3 segunda velocidad
T32 temporizador de retardo al energizar
ajustado
a 8 segundos (800 ms) para realizar el cambio entre velocidades.
Los
contadores hacen el cambio cuando el estado lógico
cambia de cero a uno y, los hay ascendentes y descendentes.
Además,
cuando su valor llega a cero, su bit de salida cambia de estado. Y,
pueden
ser regresado su valor a cero mediante la instrucción RESET y,
pueden
ser predeterminados mediante la instrucción SET. Ejemplos de uso
en la figura 1j.
Tabla de
referencia:
I0.6 y I0.7 botones pulsadores
C48 contador
CU Instrucción contar hacia
arriba
CD Instrucción contar hacia
abajo
Es
importante notar que el valor de un contador como
de una temporización puede ser mostrado mediante un panel de
operación.
3.-
CONCEPTOS DE PROGRAMACION POR INSTRUCCIONES PARA PLCs DE MARCA SIEMENS.
Además
de la simbología
mencionada
en el punto anterior, es preciso añadir las funciones booleanas
AND, NAND, OR, y NOR, las que son:
A AND
AN NAND
O OR
ON NOR
Además,
cuando exista duda sobre la precedencia
de las operaciones, se pueden usar los paréntesis para agrupar
instrucciones:
Observar
que para comenzar se emplea LD (load) o LDN (load not)
La lista de
instrucciones para la figura 1a
es
y para la
1b
La figura
1c
LD I0.0
O Q1.0
A I0.1
= Q1.0
La figura
1d
LD I0.0
S Q1.0
LDN I0.1
R Q1.0
LDN I0.1
R Q1.0
LD I0.0
S Q1.0
Se
incluyen espacios para hacer más fácil
la lectura, aunque son cada uno, un segmento.
La figura 1e
LD I0.0
A I0.1
S Q1.0
LDN I0.1
R Q1.0
En la
figura 1g estamos haciendo uso de los paréntesis
para hacer notar su uso.
Y, sobre
la figura 1h, usamos la marca M0.0 y
la instrucción de un temporizador con retardo al energizar (TON
T32, 800).
LD I0.0
O I0.6
O Q0.7
A I0.1
= M0.0
LD M0.0
AN T0
= Q1.0
LD M0.0
TON T32, 800
LD T32
= Q1.1
El
listado de instrucciones de los contadores de
la figura 1j es como sigue, considerando que
I0.6 es hacia adelante e I0.7 es hacia atrás.:
LD I0.0
LD I0.1
LD I0.2
CTUD C48, 4
LD C48
= Q0.7
4.-
EJERCICIOS SENCILLOS DE PROGRAMACIÓN.
4.1
SEMAFORO DE PEATONES.
Requisitos:
a) En la
entrada I0.0 está conectado el
botón pulsador de iniciar el ciclo, para que paren los autos y
puedan
pasar los peatones.
b) Las
salidas están asignadas como sigue:
Q1.0 Rojo Peatones
Q1.1 Verde Peatones
Q1.2 Rojo Tráfico
Vehícular
Q1.3 Amarillo Tráfico
Vehícular
Q1.4 Verde Tráfico
Vehícular
c)
Ningún color parpadea.
5.- LIGAS
Lenguajes de
Programación
Cursos
en Internet
Página Principal
|