Anda di halaman 1dari 4

PLCopen

Estandarizacin en la programacin de control industrial


IEC 61131-3: un recurso de programacin
estandar
En la actualidad an siguen persistiendo sistemas de
control especficos del fabricante, con programacin
dependiente y conexin compleja entre distintos
sistemas de control. Esto significa para el usuario
costos elevados, escasa flexibilidad y falta de
normalizacin en las soluciones al control industrial.
IEC !!"! es el primer paso en la estandarizacin de
los autmatas programables y sus perif#ricos,
incluyendo los lenguajes de programacin $ue se deben
utilizar. Esta norma se divide en cinco partes%
&arte !% 'ista general.
&arte (% )ard*are.
&arte "% +enguaje de programacin.
&arte ,% -uas de usuario.
&arte .% Comunicacin.
IEC !!"!/" pretende es la base real para estandarizar
los lenguajes de programacin en la automatizacin
industrial, 0aciendo el trabajo independiente de
cual$uier compa1a.
)ay muc0as maneras de describir el trabajo
desarrollado en la tercera parte de esta norma,
indicaremos algunas de ellas son%
IEC !!"!/" es el resultado del gran esfuerzo
realizado por 2 multinacionales a los $ue se
a1aden muc0os a1os de experiencia en el campo
de la automatizacin industrial.
Incluye (33 p4ginas de texto aproximadamente,
con mas de 3 tablas.
IEC !!"!/" son las especificaciones de la sintaxis
y sem4ntica de un lenguaje de programacin,
incluyendo el modelo de soft*are y la estructura
del lenguaje.
5tra visin distinta es dividir el est4ndar en dos partes%
6ver figura !7%
Elementos comunes.
+enguajes de programacin.
Estandar IEC 1131-3
Elementos Comunes
Lenguajes de Programacin
Elementos Comunes
Tipos de datos
8entro de los elementos comunes, se definen los tipos
de datos. +os tipos de datos previenen de errores en
una fase inicial, como por ejemplo la divisin de un
dato tipo fec0a por un nmero entero. +os tipos
comunes de datos son% variables booleanas, nmero
entero, nmero real, byte y palabra, pero tambi#n
fec0as, 0oras del da y cadenas 6strings7.
9asado en estos tipos de datos, el usuario puede definir
sus propios tipos de datos, conocidos como tipos de
datos derivados. 8e este modo, se puede definir por
ejemplo un canal de entrada analgica como un tipo de
dato.
Variables
+as variables permiten identificar los objetos de datos
cuyos contenidos pueden cambiar, por ejemplo, los
datos asociados a entradas, salidas o a la memoria del
autmata programable. :na variable se puede declarar
como uno de los tipos de datos elementales definidos o
como uno de los tipos de datos derivados. 8e este
modo se crea un alto nivel de independencia con el
0ard*are, favoreciendo la reusabilidad del soft*are.
+a extensin de las variables est4 normalmente
limitada a la unidad de organizacin en la cual 0an
sido declaradas como locales. Esto significa $ue sus
nombres pueden ser reutilizados en otras partes sin
conflictos, eliminando una frecuente fuente de errores.
;i las variables deben tener una extensin global, 0an
de ser declaradas como globales utilizando la palabra
reservada '<=>-+59<+.
&ueden ser asignados par4metros y valores iniciales
$ue se restablecen al inicio, para obtener la
configuracin inicial correcta.
Configuracin, recursos y tareas
&ara entender #sto mejor, vamos a ver el modelo de
soft*are, $ue define IEC !!"!/" 6ver figura (7.
<l m4s alto nivel, el elemento soft*are re$uerido para
solucionar un problema de control particular puede ser
formulado como una configuracin. :na configuracin
es especfica para un tipo de sistema de control,
incluyendo las caractersticas del 0ard*are%
procesadores, direccionamiento de la memoria para los
canales de I?5 y otras capacidades del sistema.
8entro de una configuracin, se pueden definir uno o
m4s recursos. ;e puede entender el recurso como un
procesador capaz de ejecutar programas IEC.
Con un recurso, pueden estar definidas una o m4s
tareas. +as tareas controlan la ejecucin de un
conjunto de programas y?o blo$ues de funcin. Cada
una de ellos puede ser ejecutado peridicamente o por
una se1al de disparo especificada, como el cambio de
estado de una variable.
+os programas est4n dise1ados a partir de un diferente
nmero de elementos de soft*are, escrito en algunos
de los distintos lenguajes definidos en IEC !!"!/".
@picamente, un programa es una interaccin de
Funciones y Bloques Funcionales, con capacidad para
intercambiar datos. Aunciones y blo$ues funcionales
son las partes b4sicas de construccin de un programa,
$ue contienen una declaracin de datos y variables y
un conjunto de instrucciones..
Comparado esto con un &+C convencional, #ste
contiene un solo recurso, ejecutando una tarea $ue
controla un nico programa de manera cclica. IEC
!!"!/" incluye la posibilidad de disponer de
estructuras m4s complejas. El futuro $ue incluye multi/
procesamiento y gestin de programas por eventos BC
no est4 muy lejosD, observar simplemente las
caractersticas de los sistemas distribuidos o los
sistemas de control de tiempo real. IEC !!"!/" est4
disponible para un amplio rango de aplicaciones, sin
tener $ue conocer otros lenguajes de programacin
adicionales.
nidades de !rgani"acin de #rograma
8entro de IEC !!"!/", los programas, blo$ues
Auncionales y funciones se denominan :nidades de
5rganizacin de &rogramas, POUs.
Funciones
IEC !!"!/" especifica funciones est4ndar y funciones
definidas por usuario. +as funciones est4ndar son por
ejemplo <88 6suma7, <9; 6valor absoluto7, ;E=@
6raz cuadrada7, ;IF 6seno7, y C5; 6coseno7. +as
funciones definidas por usuario, una vez
implementadas pueden ser usadas indefinidamente en
cual$uier &5:.
+as funciones no pueden contener ninguna
informacin de estado interno, es decir, $ue la
invocacin de una funcin con los mismos argumentos
6par4metros de entrada7 debe suministrar siempre el
mismo valor 6salida7.
Bloques Funcionales, FBs
+os blo$ues funcionales son los e$uivalentes de los
circuitos integrados, ICGs, $ue representan funciones de
control especializadas. +os A9Gs contienen tanto datos
como instrucciones, y adem4s pueden guardar los
valores de las variables 6$ue es una de las diferencias
con las funciones7. @ienen un interfaz de entradas y
salidas bien definido y un cdigo interno oculto, como
un circuito integrado o una caja negra. 8e este modo,
establecen una clara separacin entre los diferentes
niveles de programadores, o el personal de
mantenimiento. :n lazo de control de temperatura,
&I8, es un excelente ejemplo de blo$ue funcional. :na
vez definido, puede ser usado una y otra vez, en el
mismo programa, en diferentes programas o en
distintos proyectos. Esto lo 0ace altamente reutilizable.
+os blo$ues funcionales pueden ser escritos por el
usuario en alguno de los lenguajes de la norma IEC,
pero tambi#n existen A9Gs est4ndar 6biestables,
deteccin de flancos, contadores, temporizadores, etc.7.
Existe la posibilidad de ser llamados mltiples veces
creando copias del blo$ue funcional $ue se denominan
instancias. Cada instancia llevar4 asociado un
identificador y una estructura de datos $ue contenga
sus variables de salida e internas.
Programas
+os programas son Hun conjunto lgico de todos los
elementos y construcciones del lenguaje de
programacin $ue son necesarios para el tratamiento
de se1al previsto $ue se re$uiere para el control de una
m4$uina o proceso mediante el sistema de autmata
programableI. :n programa puede contener, aparte de
la declaracin de tipos de datos, variables y su cdigo
interno, distintas instancias de funciones y blo$ues
funcionales.
$r%fico &uncional 'ecuencial ('&C)
Etapa 1 N Llenar
Etapa 3
Etapa 2 S Vaciar
Transicion 1
Transicion 2
;AC describe gr4ficamente el comportamiento
secuencial de un programa de control. Esta definicin
deriva de las =edes de &etri y -rafcet 6IEC J,J7, con
las modificaciones adecuadas para convertir las
representaciones de una norma de documentacin en
un conjunto de elementos de control de ejecucin para
una &5: de un autmata programable.
;AC ayuda a estructurar la organizacin interna de un
programa, y a descomponer un problema en partes
manejables, manteniendo simult4neamente una visin
global. +os elementos del ;AC proporcionan un medio
para subdividir una &5: de un autmata programable
en un conjunto de etapas y transiciones interconectadas
por medio de enlaces directos. Cada etapa lleva
asociados un conjunto blo$ues de accin y a cada
transicin va asociada una condicin de transicin $ue
cuando se cumple, causa la desactivacin de la etapa
anterior a la transicin y la activacin de la siguiente.
+os blo$ues de accin permiten realizar el control del
proceso. Cada elemento puede ser programado en
alguno de los lenguajes IEC, incluy#ndose el propio
;AC. 8ado $ue los elementos del ;AC re$uieren
almacenar informacin, las nicas &5:Gs $ue se
pueden estructurar utilizando estos elementos son los
blo$ues funcionales y los programas.
;e pueden usar secuencias alternativas y paralelas,
comnmente utilizadas en muc0as aplicaciones.
8ebido a su estructura general, de sencilla
comprensin, ;AC permite la transmisin de
informacin entre distintas personas con distintos
niveles de preparacin y responsabilidad dentro de la
empresa.
*engua+es de #rogramacin
;e definen cuatro lenguajes de programacin
normalizados. Esto significa $ue su sintaxis y
sem4ntica 0a sido definida, no permitiendo
particularidades distintivas 6dialectos7. :na vez
aprendidos se podr4 usar una amplia variedad de
sistemas basados en esta norma.
+os lenguajes consisten en dos de tipo literal y dos de
tipo gr4fico%
+iterales%
+ista de instrucciones 6I+7.
@exto estructurado 6;@7.
-r4ficos%
8iagrama de contactos 6+87.
8iagrama de blo$ues funcionales 6A987.
En la figura superior, los cuatro programas describen
la misma accin. +a eleccin del lenguaje de
programacin depende de%
los conocimientos del programador,
el problema a tratar,
el nivel de descripcin del proceso,
la estructura del sistema de control,
la coordinacin con otras personas o
departamentos.
+os cuatros lenguajes est4n interrelacionados y
permiten su empleo para resolver conjuntamente un
problema comn segn la experiencia del usuario.
El Diagrama de contactos 6+87 tiene sus orgenes en
los Estados :nidos. Est4 basado en la presentacin
gr4fica de la lgica de rel#s. Lista de Instrucciones 6I+7
es el modelo de lenguaje ensamblador basado un
acumulador simpleK procede del alem4n
G<n*eisungliste, <L+.
El Diagramas de Bloques Funcionales 6A987 es muy
comn en aplicaciones $ue implican flujo de
informacin o datos entre componentes de control. +as
funciones y blo$ues funcionales aparecen como
circuitos integrados y es ampliamente utilizado en
Europa. El lenguaje Teto estructurado 6;@7 es un
lenguaje de alto nivel con orgenes en el <da, &ascal y
GCGK puede ser utilizado para codificar expresiones
complejas e instrucciones anidadasK este lenguaje
dispone de estructuras para bucles 6=E&E<@/:F@I+K
L)I+E/857, ejecucin condicional 6IA/@)EF/E+;EK
C<;E7, funciones 6;E=@, ;IF, etc.7.
Top-down vs. Bottom-up-
+a norma tambi#n permite dos formas de desarrollar tu
programa de control 6ver figura .7% de arriba a abajo
6@op/do*n7 y de abajo a arriba 6bottom/up7. &uedes
especificar inicialmente la aplicacin completa y
dividirla en partes, declarar las variables y dem4s.
@ambi#n puedes comenzar la programacin desde
abajo, por ejemplo, por medio de funciones y blo$ue
funcionales. &or cual$uiera de los caminos $ue elijas,
IEC !!"!/" te ayudar4 durante todo el proceso.
Implementaciones
Cumplir todos los re$uerimientos de la norma IEC
!!"!/" no es f4cil, por eso se permiten
implementaciones parciales en varios aspectos. Esto
0ace referencia al nmero de lenguajes $ue soportan
las 0erramientas de desarrollo disponibles, y al nmero
de funciones y de blo$ues funcionales. Con ello se deja
libertad al suministrador, pero el usuario debe tener
cuidado durante el proceso de seleccin de la
0erramienta adecuada. Incluso una actualizacin del
soft*are puede dar lugar a un nivel muy alto de trabajo
durante la implementacin.
Muc0os entornos de programacin IEC actuales
ofrecen a$uello $ue se espera a nivel de interface de
usuario% uso de ratn, mens desplegables, pantallas de
programacin gr4fica, mltiples ventanas, ayuda en
lnea, verificacin durante el dise1o, etc. 8ebe 0acerse
notar $ue estos detalles no est4n especificados en la
norma por lo $ue es una de las partes donde los
proveedores pueden diferenciarse.
Conclusiones
+as implicaciones t#cnicas de la norma IEC !!"!/"
son altas, dejando bastante espacio para el crecimiento
y la diferenciacin. Esto la 0ace adecuada para entrar
ptimamente en el prximo siglo.
+a norma IEC !!"!/" tendr4 un gran impacto en el
mundo del control industrial y #ste no se restringe al
mercado convencional de los &+CGs. <0ora mismo, se
pueden ver adoptada en aplicaciones para control de
movimiento, sistemas distribuidos y sistemas de
control basados en &C 6;oft&+C7, incluyendo los
pa$uetes ;C<8<. C las 4reas de su utilizacin siguen
creciendo.
El uso de IEC !!"!/" proporciona numerosos
beneficios para usuarios?programadores. +os beneficios
de la adopcin de este est4ndar son varios,
dependiendo de las 4reas de aplicacin% control de
procesos, integrador de sistemas, educacin,
programacin, mantenimiento, instalacin, etc. 'amos
a nombrar slo algunos de estos beneficios%
!. ;e reduce el gasto en recursos 0umanos,
formacin, mantenimiento y consultora.
(. Evita las fuentes 0abituales de problemas por el
alto nivel de flexibilidad y reusabilidad del
soft*are.
". +as t#cnicas de programacin son utilizables en
amplios sectores 6control industrial en general7.
,. Combinan adecuadamente diferentes elementos
$ue pueden provenir de diferentes fabricantes,
programas, proyectos...
.. Incrementa la conectividad y comunicacin entre
los distintos departamentos y compa1as.
El est4ndar IEC !!"!/" es una realidad en papel.
<0ora los usuarios $ue aprecian los beneficios del
est4ndar deben demandar productos $ue cubran sus
necesidades, de modo $ue las empresas proveedoras
puedan amortizar los gastos de desarrollo de las
0erramientas adecuadas% el pro!lema del "ue#o $ la
gallina.
&ara mas informacin, contactar directamente con
&+Copen o a trav#s de la Lorld Lide Leb. +a
direccin postal de &+Copen es%
&5 9ox (3!.
F+ ."33 C< Naltbommel
@0e Fet0erlands
@el.% O"!/,!J/.,!!"P
Aax% O"!/,!J/.!""
***.plcopen.org
8ocumento traducido para &+Copen por el miembro
educacional%
%rea de Ingenier&a de 'istemas $ (utom)tica
Uni#ersidad de O#iedo
*ampus de +iesques s,n
--./0 1 2i3n
Espa4a

Anda mungkin juga menyukai