You are on page 1of 12

Orgenes histricos

Ejemplo 1: encendido de motor M por distintas lgicas de dos llaves A1 y A2

PLC

Lgica de rel

Por A1 OR A2

A1

LENGUAJE LD

Por A1 AND A2

A1

A2

Rel 1

Rel 1

Rel 1

(Ladder)

PLC
A1

A2

I1

I2

Rel 1
O1

Cambio de lgica (OR a


AND) se resuelve por
software del PLC

PLC

Orgenes histricos

Orgenes histricos
Ejemplo 2: encendido-apagado de motor por botones
Circuito por lgica de rel

Cambio de lgica (OR a


AND) requiere recableado
paralelo a serie

A2

Objetivos del PLC:

Circuito por PLC

Aumentar la confiabilidad

Rel 2
NC
Rel 1

PLC
I1

Motor
Rel 1

NA

Rel 1

Aumentar la flexibilidad

NA

Rel 2

Mantener la facilidad de soporte

I2

Rel 2
O1

Lenguaje de programacin fcilmente


entendido por electricistas de planta

NC

El rel intermedio se reemplaza por


software del PLC

LADDER (LD)

Orgenes histricos

Orgenes histricos
Programas LD del ejemplo 1

Programa LD del ejemplo 2

Rel 1
A1

A2

I1

I2

Rel 2
NC

Rel 1

O1

NA

PLC

PLC

I1

Motor

I2

Rel 2
O1
Encendido por I1 OR I2

I1

Encendido por I1 AND I2

O1

I1

I2

O1

I2

O1

I1

O1

I2

Estructura programa LD

Diferencias entre fabricantes

Lenguaje grfico
Programa consiste en una secuencia de escalones (rungs)

Diferencias entre fabricantes: implementacin y


nomenclatura de las instrucciones

Estructura de cada escaln:


1

Comienza en una barra de alimentacin izquierda (positivo de la fuente)

Condiciones y acciones, conectadas por lneas de conexin

Termina en una barra de alimentacin derecha (negativo de la fuente)

Los escalones se ejecutan de arriba hacia abajo

En algunos aspectos estndar

Cada escaln se ejecuta de izquierda a derecha


I1

I2

Este curso usa la nomenclatura de los PLCs del


laboratorio:
Fcilmente comprensible

O1

Smbolos bsicos
Contacto (entrada)

Operaciones Bsicas
I1

AND (conexin serie):

I1

I2

O1

(O1 = 1) si (I1 = 1) y (I2 = 1)

O1

Bobina (salida)
Cada smbolo tiene asociado un bit de memoria

OR (conexin paralelo):
(O1 = 1) si (I1 = 1) o (I2 = 1)

Un bit de memoria se refiere por:

I1

O1

I2

Su direccin
Su etiqueta (label)

Instrucciones con BITs


Contacto directo

Contacto invertido

Contacto normalmente abierto

Contacto normalmente cerrado

Verdadero si bit vale 1

Instrucciones con BITs


Ejemplo: BOBINA vs. SET/RESET
Contador de pulsos con rebotes

Verdadero si bit vale 0


Solucin con bobina

Bobina directa

Bobina invertida

Anloga a la bobina de un rel

Funcin inversa de bobina directa

I1

AUX

I1
Siguen instrucciones para contar
pulsos

AUX

Si el escaln es 1, escribe 1 en bit asociado


Si el escaln es 0, escribe 0 en bit asociado

SET (o LATCH)

Instruccin de salida retentiva

RESET (UNLATCH)

Solucin con SET

Se usa en conjunto con el SET

Si el escaln es 1, escribe 1 en bit asociado

Si el escaln es 1, escribe 0 en bit asociado

Si el escaln es 0, no hace nada

Si el escaln es 0, no hace nada

I1

AUX
S

I1

AUX

Siguen instrucciones para contar


pulsos y realizar RESET luego de
filtrado

Bloques funcionales
n

Las instrucciones de aqu en adelante


se representan grficamente como
bloques funcionales
Bloque funcional: objeto grfico que se
representa por un rectngulo, con
puntos de conexin de entradas,
conexin de salidas y un identificador

Contadores
n

Existen tres tipos:


n
n
n

UP - Counters: CTU
DOWN Counters: CTD
UP-DOWN Counters: CTUD

Rango de cuenta: depende de fabricante. En


PLCs de laboratorio:
n
n

CTU cuenta desde 0 a 32767


CTUD cuenta desde 0 a 32767

Bloques funcionales
n
n

El identificador describe funcin del bloque


Ejemplo: bloque funcional que implementa la
funcin FUN, con dos entradas y dos salidas

Las entradas y salidas son datos. El tipo de


dato de cada una depende del bloque.

Contadores
n

n
n

Entrada CU (bit): Pulso, se conecta al tren


de pulsos que se cuentan
Entrada RESET (bit): escribe 0 en acumulador
Entrada PV (Word): lmite mximo de cuenta
(Preset Value)
Salida Q (bit): Done, indica si acumulador
>= PV
CV (Word) = cuenta, acumulador (Current
Value)

Contadores: Ejemplo

Contadores: Ejemplo
n

Timers
n

Timer: instruccin destinada a esperar cierto


tiempo antes de una accin
Tres tipos de timers:
n

TON: Timer On Delay (retardo en el encendido):


luego que la entrada pasa a 1 durante X seg, la
salida pasa a 1.
TOF: Timer Off Delay (retardo en el apagado): luego
que la entrada pasa 0 durante X seg, la salida pasa a
0.
Timers retentivos: no existen en los PLCs de lab.
Cuenta el tiempo que la entrada es 1, congelando la
cuenta con cambios de 1 a 0.

Observacin: el contador se incrementa a


intervalos de tiempo variables (dependen del
pulso I1)

Timers: TON
n

Timer On Delay TON:

Entrada IN (bit): Habilitacin, se conecta al pulso


que el timer retarda
Entrada PT (time): Preset, determina valor del
acumulador para el que se ejecuta accin del timer
Salida Q (bit): Done, indica la expiracin del tiempo
de retardo
Salida ET (time): Elapsed Time, la cuenta del
tiempo transcurrido

Timers: Ejemplo TON

Timers: Ejemplo Retentivo

Timers: TP

Timers: Ejemplo TP

Timer de Pulso TP:

Entrada IN (bit): entrada que genera el pulso cuando


pasa a 1
Entrada PT (time): Preset, duracin del pulso de
salida
Salida Q (bit): se mantiene en 1 durante el tiempo PT
luego de 1 en la entrada
Salida ET (time): Elapsed Time, la cuenta del
tiempo transcurrido

Timers
n

La cuenta del timer es independiente de


la ejecucin del programa (a cargo del
sistema operativo)
La cuenta del contador SI depende de
la ejecucin del programa

Timers
n

Precisin
n
n

n
n
n

Triggers: R_TRIG
n

n
n

Trigger Ascendente (Rising):

Deteccin de flanco ascendente


Entrada CLK (bit): activa la salida cuando pasa a 1
(flanco)
Salida Q (bit): se mantiene en 1 durante 1 ciclo de
ejecucin ante flanco en CLK, luego pasa a 0

Demora en la entrada: 1 tiempo de ciclo


Demora en ejecucin del timer: 1 tiempo
de ejecucin (mx 1 ciclo)
Demora en la salida: 1 tiempo de ciclo
Total: 3 tiempos de ciclo
Ejemplo: tiempo de ciclo de 5 mseg lleva a
error de 15 mseg

Retardos en filtrado y en la electrnica

Triggers: F_TRIG
n

n
n

Trigger Ascendente (Falling):

Deteccin de flanco descendente


Entrada CLK (bit): activa la salida cuando pasa a 0
(flanco)
Salida Q (bit): se mantiene en 1 durante 1 ciclo de
ejecucin ante flanco en CLK, luego pasa a 0

Shift Registers
n

Instruccin que almacena eventos en rea de


memoria por desplazamiento o rotacin de los
bits individuales
En el PLC del laboratorio, se denomina SH_L o
SH_R

Shift Registers
n

Entradas de instruccin SHIFT:


n
n
n
n
n
n
n
n
n

Salidas de instruccin SHIFT:


n
n

Shift Registers
n

Operaciones ROT/ROTC de SHIFT:

E (W o DW): operando (almacena los eventos)


D/W (bit): tipo de dato E
ANZ (W): nmero de posiciones del movimiento
LKS (bit): direccin
ROT (bit): operacin es rotacin
ROTC (bit): operacin es rotacin con CY_E
SLOG (bit): operacin es desplazamiento
SARI (bit): operacin es desplazamiento aritmtico
CY_E (bit): valor inicial de carry flag
Salida CY_A (bit): valor final de carry flag
Salida A (W o DW): resultado de la operacin

Shift Registers
n

Operacin SLOG de SHIFT:

Control de Flujo
n
n

JSR (Jump to subroutine)


En PLC de laboratorio, salto condicional a
valor TRUE de un bit, definido por:
n

n
n

Jump symbol: smbolo asociado a instruccin


JUMP
Bit que define el salto
Jump label: posicin donde salta (siempre hacia
adelante)

Otras Instrucciones
n

Control de flujo

Existen muchas instrucciones en forma


de bloques funcionales (varias se
estudian en otras partes del curso)
Desde el punto de vista del programa
LADDER se clasifican en:
n

Esquema instruccin JUMP PLC lab:


Bit que habilita el salto

Smbolo

Instruccin salteada
Label

Otras Instrucciones
n

Ejemplos de instrucciones de entrada:


n

Instrucciones de comparacin: Igual (EQ),


Mayor (GT), etc. Salida verdadera o falso
en funcin de comparacin de entradas
(tipo Bool, Word, etc.)

Instrucciones de entrada: evalan si el


escaln es verdadero o falso
Instrucciones de salida: se ejecutan segn
resultado del escaln

Otras Instrucciones
n

Ejemplos de instrucciones de salida:


n

n
n

Operaciones aritmticas o lgicas: ADD,


AND, MUL, etc. Entradas y salida tipo
Word, Real, etc.
Operaciones de movimiento de memoria:
permiten copiar reas de memoria
Funciones de control PID
Funciones de comunicaciones: permiten
intercambio de mensajes entre PLCs

Ejemplo

Ejemplo
Se desea escribir un programa que controle el encendido apagado de una bomba.
La bomba ser encendida si:
1) Se pulsa el botn de arranque.
2) La proteccin trmica est deshabilitada.
3) Est abierto el botn de alarma.
4) Est abierto el botn de parada.
Desde un tiempo T despus del encendido, no puede haber ni
sobre corriente ni baja corriente. Expresado de otra forma,
desde un tiempo T despus del arranque, la corriente I
debe cumplir IMIN < I < IMAX, siendo IMIN e IMAX lmites
prefijados.

Conexiones al PLC

El motor de la bomba se apagar si:


1) Se pulsa el botn de parada.
2) Se cierra la proteccin trmica.
3) Se pulsa el botn de alarma.
4) Los lmites de corriente no son los correctos.

10

Ejemplo Parte 1

Ejemplo Parte 2

Diagrama de Estados

Ejemplo

n
n
n

STD State Transitions Diagram


No es un lenguaje
Es una metodologa para representar
cierta lgica de funcionamiento en base
a estados y transiciones

Apagado

Apaga bomba
ARRANQUE and
(NO PARADA) and
(NO ALARMA) and
(NO TERMICO)

PARADA or
ALARMA or
TERMICO

Transitorio

Enciende bomba
Enciende timer
ERROR or
PARADA or
ALARMA or
TERMICO

SALIDA_TIMER = 1

Encendido

ERROR = (CORRIENTE > MAX) OR (CORRIENTE < MIN)

11

Transiciones

X_APAGADO ARRANQUE PARADA TERMICO

ALARMA

X_TRANSITORIO

S
S

X_APAGADO

Ejemplo

Diagrama de Estados en LD
n

Mtodo para convertir un diagrama de


estados al lenguaje LD

R
X_TRANSITORIO

SALIDA_TIMER

X_ENCENDIDO

S
S

X_TRANSITORIO

Apagado

PARADA

4
X_TRANSITORIO

X_APAGADO

TERMICO

S
S

Apaga bomba
ALARMA

ARRANQUE and
(NO PARADA) and
(NO ALARMA) and
(NO TERMICO)

PARADA or
ALARMA or
TERMICO

Transitorio

X_ENCENDIDO

R
PARADA

X_ENCENDIDO

X_APAGADO

TERMICO

S
S
ALARMA

Enciende bomba
Enciende timer

X_ENCENDIDO

R
ERROR

ERROR or
PARADA or
ALARMA or
TERMICO

SALIDA_TIMER = 1

Encendido

ERROR = (CORRIENTE > MAX) OR (CORRIENTE < MIN)

X_APAGADO

BOMBA_ON

X_TRANSITORIO

BOMBA_ON

Acciones

Ventajas / Desventajas
n
n
n
n

Mtodo sistemtico
Minimiza/elimina errores posteriores
LD disponible en todos los PLCs
Poco intuitivo, difcil de comprender sin
el diagrama de estados asociado
Cambios requieren estudio del diagrama
previamente

12

You might also like