You are on page 1of 21

TIPOS DE LENGUAJES DE

PROGRAMACIN DE PLCS
Lenguajes de Programacin de PLCs
En la actualidad cada fabricante disea su propio software de
programacin, lo que significa que existe una gran variedad comparable
con la cantidad de PLCs que hay en el mercado. No obstante,
actualmente existen tres tipos de lenguajes de programacin de PLCs
como los ms difundidos a nivel mundial; estos son:
Lenguaje de contactos o Ladder
Lenguaje Booleano (Lista de instrucciones)
Diagrama de funciones
El estndar IEC 1131-3 define dos lenguajes grficos y dos lenguajes basados en texto,
para la programacin de PLCs. Los lenguajes grficos utilizan smbolos para programar
las instrucciones de control, mientras los lenguajes basados en texto, usan cadenas de
caracteres para programar las instrucciones.
Lenguajes Grficos Lenguajes Textuales
o Diagrama Ladder (LD) o Lista de Instrucciones (IL)
o Diagrama de Bloques de Funciones (FBD) o Texto Estructurado (ST)

Adicionalmente, el estndar IEC 1131-3 incluye una forma de programacin orientada


a objetos llamada Sequential Function Chart (SFC). SFC es a menudo categorizado
como un lenguaje IEC 1131-3, pero ste es realmente una estructura organizacional
que coordina los cuatro lenguajes estndares de programacin (LD, FBD, IL y ST). La
estructura del SFC tuvo sus races en el primer estndar francs de Grafcet (IEC 848).
El LADDER, tambin denominado lenguaje de contactos o
Lenguaje Ladder de escalera, es un lenguaje de programacin grfico muy
(LD) popular dentro de los PLCs, debido a que est basado en
los esquemas elctricos de control clsicos.
Su principal ventaja es que los smbolos bsicos estn
normalizados segn normas NEMA y son empleados por
todos los fabricantes.
Basado en smbolos grficos dispuestos de manera similar
a los diagramas lgicos de rels en escalera.
Muchos autmatas nos permiten ver el programa en
ejecucin, podemos visualizar las variables en cada
momento incluso forzar alguna variable a un valor que
nosotros deseemos, con un lenguaje grfico es muchos
ms sencillo realizar estas verificaciones son mucho ms
intuitivas.
En la siguiente tabla podemos observar los smbolos de los elementos bsicos junto con sus
respectivas descripciones.
Smbolo Nombre Descripcin
Se activa cuando hay un uno lgico en el elemento que representa, esto es, una
Contacto NA entrada (para captar informacin del proceso a controlar), una variable interna
o un bit de sistema.
Su funcin es similar al contacto NA anterior, pero en este caso se activa cuando
Contacto NC hay un cero lgico, cosa que deber de tenerse muy en cuenta a la hora de su
utilizacin.
Se activa cuando la combinacin que hay a su entrada (izquierda) da un uno
Bobina NA lgico. Su activacin equivale a decir que tiene un uno lgico. Suele representar
elementos de salida, aunque a veces puede hacer el papel de variable interna.
Se activa cuando la combinacin que hay a su entrada (izquierda) da un cero
Bobina NC lgico. Su activacin equivale a decir que tiene un cero lgico. Su
comportamiento es complementario al de la bobina NA.
Una vez activa (puesta a 1) no se puede desactivar (puesta a 0) si no es por su
Bobina SET correspondiente bobina en RESET. Sirve para memorizar bits y usada junto con
la bina RESET dan una enorme potencia en la programacin.
Bobina SET Permite desactivar una bobina SET previamente activada.
Qu es un rung?
Es una lnea de programa, contiene instrucciones de entrada y salida.
Entrada: permite una Salida(coil): examinan el
comparacin o test de las resultado de la evaluacin y si
condiciones y se obtiene el es verdadera (true) ejecutan
resultado de la evaluacin. alguna operacin o funcin.
Habitualmente aparecen a Habitualmente aparecen a la
la parte izquierda del rung. parte derecha del rung.
Operaciones en Serie y en Paralelo
Las instrucciones de entrada pueden ejecutarse mediante
relaciones lgicas AND y OR en un sencillo formato:
Si las instrucciones estn en serie se evala la relacin AND
Si las instrucciones estn en paralelo se evala la relacin OR
Es un lenguaje grfico que permite al usuario programar
Diagrama de elementos (bloque de funciones del PLC) en tal forma
que ellos aparecen interconectados al igual que un
bloques de circuito elctrico. Generalmente utilizan smbolos
lgicos para representar al bloque de funcin. Las
funciones(FBD) salidas lgicas no requieren incorporar una bobina de
salida, porque la salida es representada por una variable
asignada a la salida del bloque.
El diagrama de funciones lgicas esta pensado para
electrnicos que acostumbran a trabajar con puertas
lgicas y circuitos integrados, ya que la simbologa usada
en ambos es equivalente.
La ventaja es que podemos simular el programa sobre el
autmata (o emularlo en PC) y forzar variables o
simplemente visualizarlas para detectar posibles errores.
En ambientes industriales podemos tener motores o
sistemas que generan campos electromagnticos que
pueden alterar algunas seales por ello es importante
conocer que sucedera en caso que una variable
adquiera un determinado valor en un momento.
DIAGRAMA DE BLOQUES DE
FUNCIONES
Tiene un interface de E/S bien definida, y adems posee un cdigo
interno oculto.
Programacin estructurada: definicin y llamada a subrutinas
Los FBs son reutilizabes, en un mismo programa o diferentes.
Es conveniente cuando no hay ciclos pero existen, sin embargo, varias
ramas en el programa a crear.
Actualmente es un lenguaje muy popular y muy comn en
aplicaciones que implican flujo de informacin o datos entre
componentes de control.
Lista de Llamado listado de instrucciones o lenguaje
Booleano.
Instrucciones (IL)
Es un lenguaje textual de bajo nivel similar
al de ensamblador.
Consiste en elaborar una lista de
instrucciones o nemnicos, haciendo uso
de operadores Booleanos (AND, OR, NOT,
etc.) y otras instrucciones nemnicas, para
implementar el circuito de control.
Se suele utilizar para pequeas aplicaciones
y para optimizar partes de una aplicacin.
Semntica y Operadores
LD Establece resultado actual igual al operando ADD Adicin
ST Almacenar resultado actual en la ubicacin del operando SUB Resta
S Establecer operando Booleano a 1 MUL Multiplicacin
R Establecer operando Booleano a 0 DIV Divisin

JMP Saltar a etiqueta GT Comparacin: >


CAL Llamar a un bloque funcional GE Comparacin: >=
RET Retornar de la funcin llamada EQ Comparacin: =
NE Comparacin: <>
AND Booleano AND
LE Comparacin: <=
OR Booleano OR
LT Comparacin: <
XORBooleano OR exclusivo
EJEMPLOS DE INSTRUCCIN
TEXTO
EXTRUCTURADO Es un lenguaje de alto nivel que permite la
programacin estructurada, lo que significa que
(ST) muchas tareas complejas pueden ser divididas
en unidades ms pequeas. ST se parece
mucho a los lenguajes de computadoras BASIC
o PASCAL, que usa subrutinas para llevar a cabo
diferentes partes de las funciones de control y
paso de parmetros y valores entre las
diferentes secciones del programa.
Facilitan la programacin de procesos que
requieren instrucciones complejas y clculos
muy grandes.
TEXTO EXTRUCTURADO
Las principales ventajas de este lenguaje respecto al basado en el listado de
instrucciones o IL es que incluye la formulacin de las tareas del programa, una
clara construccin de los programas en bloques con reglas (instrucciones) y una
potente construccin para el control.
De este modo, se trata de la forma ms apropiada de programar cuando
queremos realizar ciclos (ej. if, while, for, case).
Incluye estructuras de clculo
repetitivo y condicional, tales como: EJEMPLO
FOR ... TO; REPEAT..... UNTIL X; WHILE
X... ; IF ... THEN ...ELSE. Adems soporta
operaciones Booleanas (AND, OR, etc.)
y una variedad de datos especficos, IF Manual AND Alarm THEN
tales como fecha, hora.
Level = Manual_Level;
La programacin en Texto Estructurado Mixer = Start AND NOT Reset
es apropiada para aplicaciones que
ELSE IF Other_Mode THEN
involucran manipulacin de datos,
Level = Max_level;
ordenamiento computacional y
aplicaciones matemticas que utilizan ELSE Level = (Level_Indic X100)/Scale;
valores de punto flotante. ST es el END IF;
mejor lenguaje para la implementacin
de aplicaciones de inteligencia artificial,
lgica difusa, toma de decisiones, etc.
Funciones
secuenciales
(SFC) Es un lenguaje grfico que provee una
representacin diagramtica de secuencias de
control en un programa.
Bsicamente, SFC es similar a un diagrama de
flujo, en el que se puede organizar los
subprogramas o subrutinas (programadas en LD,
FBD, IL y/o ST) que forman el programa de
control.
SFC es particularmente til para operaciones de
control secuencial, donde un programa fluye de
un punto a otro una vez que una condicin ha
sido satisfecha (cierta o falsa).
Permite un rpido diagnstico.
Funciones secuenciales
El marco de programacin de SFC contiene tres
principales elementos que organizan el programa de
control:
Pasos (etapas)
Transiciones (condiciones)
Acciones
El programa ir activando cada una de las etapas y
desactivando la anterior conforme se vayan
cumpliendo cada una de las condiciones. Las
acciones se realizarn en funcin de la etapa activa a
la que estn asociadas. Por ejemplo, la etapa 1
activa tras arrancar el programa, al cumplirse la
"Condicin 1", se activar la etapa 2, se desactivar
la 1, y se realizar la "Accin 1".
Partes de un GRAFCET
Las etapas o estados implican
acciones asociadas.
Las transiciones gobiernan los
cambios de estado.
Las flechas indican la direccin
del cambio
Pueden darse esquemas
menos lineales.
FUTURO ALTA GERENCIA

ENTORNO
JEFATURA

OPERACIONES
ACADMICA PROYECCIN SOCIAL Y
INVESTIGACIN
ENSEANZA-APRENDIZAJE EXTENSIN UNIVERSITARIA

You might also like