Anda di halaman 1dari 85

Armonizando la manera en que la

gente ve el control
Harmonizing the way people look to
control
el futuro est aqu
Ficcin?
Imagine que

* est en control industrial


* trabajando con 4 clases diferentes de controladores
* usando diferentes dialectos en sus lenguajes de
programacin
* luchando strugling to match the level of your software
engineers with the electrical engineers / maintenance on the
factory floor
* y viendo que la competencia lo hace mejor

Por qu? Cual es el problema?


Out of the jungle

La actual variedad de problemas puede


reducirse ampliamente a travs de la
estandarizacin

... and such a standard is available


IEC 61131-3
Lo mejor que ha ocurrido en
el control industrial

Sugar Lantic en Automation Maillist


Las 5 partes del Estndar IEC 61131
- 1 Visin General, Definiciones EI
- 2 Hardware EI

- 3 Lenguajes de Programacin EI

- 4 Guas de Usuario

- 5 Especificacin de Servicios de Mensajes

EI = Estndar Internacional
Lenguajes de Programacin IEC 61131-3 /
Industrial Control Programming

El interface entre el programador y el sistema de control


Lenguajes de Programacin IEC 61131-3 /
Industrial Control Programming
...con soporte para personas con
diferentes niveles de formacin
El Estndar IEC 61131-3

Elementos Comunes

Lenguajes de Programacin
IEC 61131-3 : Elementos Comunes
Elementos Comunes
a.o.
Tipos de Datos y Variables

Representacin simblica va etiquetas


Area restringida para mapeo de I/O
Independencia hardware del cdigo

Qu es esto?

01010101 10101010
IEC 61131-3 : Elementos Comunes
Elementos Comunes
a.o.
Tipos de Datos y Variables
como:
BOOL
BYTE
INTEGER
REAL
DATE
TIME_OF_DAY
STRING
IEC 61131-3 : Elementos Comunes

Tipos de datos y Variables


adems:

Sus propios tipos de datos


IEC 61131-3 : Elementos Comunes
Elementos Comunes
a.o.
Tipos de Datos y Variables

Configuracin
Recursos
Tareas
Modelo Software IEC 61131
Configuracin

Funcin de Comunicacin
Modelo Software IEC 61131
Configuracin

Recurso Recurso

Funcin de Comunicacin
Modelo Software IEC 61131
Configuracin
Recurso Recurso

Tarea Tarea Tarea Tarea

Funcin de Comunicacin
Modelo Software IEC 61131
Configuracion
Recurso Recurso

Tarea Tarea Tarea Tarea

Programa Programa Programa Programa

Control de la
ejecucin

Funcin de Comunicacin
Modelo Software IEC 61131
Configuracin
Recurso Recurso

Tarea Tarea Tarea Tarea FB


Bloque
Funcional

Programa Programa Programa


Programa
FB FB FB FB

Control de la
ejecucin

Vas de Acceso

Funcin de Comunicacin
Modelo Software IEC 61131
Configuracin
Recurso Recurso Variable va
de acceso

Tarea Tarea Tarea Tarea FB


Bloque
Funcional

Programa Programa Programa Programa


Variable
FB FB FB FB

Variables globales y directas


Control de la
ejecucin

Va de Acceso

Funcin de Comunicacin
IEC 61131-3 vs PLC convencional
Configuracin
Recurso Recurso Variable va
de acceso

Tarea Tarea Tarea Tarea FB


Bloque
Funcional

Programa Programa Programa Programa


Variable
FB FB FB FB

Variables Globales y Directas


Control de la
ejecucin

Va de Acceso

Funcin de Comunicacin
IEC 61131-3 : Elementos Comunes
ELEMENTOS COMUNES
a.o.
Tipos de Datos & Variables
Configuracin, Recursos, Tareas

Unidades de Organizacin de Programas


* Funciones
* Bloques Funcionales
* Programas
Funciones ..
* Funciones Estndar
ADD, SQRT, SIN, COS, GT, MIN, MAX, AND, OR, etc.

* Sus propias funciones:


FUNCTION SIMPLE_FUN : REAL
VAR_INPUT
A, B : REAL;
C : REAL := 1.0;
END_VAR
SIMPLE_FUN := A*B/C;
END FUNCTION
. & Bloques Funcionales
Bloques Funcionales Estndar I NPUT OUTPUT I N_OUT EXTERNAL

FUNCTION_BLOCK
Type Local

Hysterisis
REAL XIN1 Q BOOL
REAL XIN2
REAL EPS
. & Bloques Funcionales
Bloques Funcionales Estndar I NPUT OUTPUT I N_OUT EXTERNAL

Bloques Funcionales FUNCTION_BLOCK


suministrados adicionalmente Type Local

Hysterisis
REAL XIN1 Q BOOL
REAL XIN2
REAL EPS
. & Bloques Funcionales
Bloques Funcionales Estndar I NPUT OUTPUT I N_OUT EXTERNAL

Bloques Funcionales FUNCTION_BLOCK


suministrados adicionalmente Type Local
Sus propios Bloques
Funcionales
Hysterisis
REAL XIN1 Q BOOL
REAL XIN2
REAL EPS
. & Bloques Funcionales
Bloques Funcionales Estndar I NPUT OUTPUT I N_OUT EXTERNAL

Bloques Funcionales FUNCTION_BLOCK


suministrados adicionalmente Type Local
Sus propios Bloques
Funcionales
Todos los FBs son altamente
Hysterisis
reutilizables en el mismo REAL XIN1 Q BOOL
programa, diferentes REAL XIN2
programas e incluso en REAL EPS
diferentes proyectos
Ejemplo de Bloque Funcional
Hysterisis
REAL XIN1 Q BOOL
REAL XIN2
REAL EPS

Q
1

EPS EPS
XIN2
Ejemplo de Bloque Funcional
FUNCTION_BLOCK HYSTERISIS
VAR_INPUT
Hysterisis
XIN1, XIN2 : REAL;
REAL XIN1 Q BOOL EPS : REAL; (* Hysterisis band *)

REAL XIN2 END_VAR


VAR_OUTPUT
REAL EPS Q : BOOL := 0
END_VAR
IF Q THEN

Q IF XIN1 < (XIN2-EPS) THEN


Q := 0 (* XIN1 decreasing *)
1 END_IF;
ELSIF XIN1 > (XIN2 + EPS ) THEN
0 Q := 1; (* XIN1 increasing *)
END_IF;
EPS EPS
END_FUNCTION_BLOCK
XIN2
Programas : diseo jerrquico
Start : BOOL;
Emergency : BOOL;
Limit : INT;

Automation
application
INPUT OUTPUT IN_OUT EXTERNAL

FUNCTION_BLOCK
PROGRAM
Type Local
Type Local
GLOBAL

INPUT

FUNCTION

Type Local
IEC 61131-3 : Elementos Comunes
ELEMENTOS COMUNES
a.o.
Tipos de Datos Variables
Unidades de Organizacin de Programas
* Funciones
* Bloques Funcionales
* Programas
Configuracin, Recursos, Tareas

Cuadro Funcional Secuencial


* Etapas
* Transiciones
* Bloques de Accin
Cuadro Funcional Secuencial, SFC
Potente tcnica grfica para
describir el comportamiento Etapa 1 N FILL
secuencial de un programa de
control Transicin 1
Se usa para particionar un
problema de control Etapa 2 S Empty
Facilita el rpido diagnstico de
problemas en el algoritmo de Transicin 2
control
Etapa 3
Cuadro Funcional Secuencial, SFC
Potente tcnica grfica para
describir el comportamiento
Step 1 N FILL
secuencial de un programa de
control
Transition 1
Se usa para particionar un
problema de control Step 2 S Empty
Facilita el rpido diagnstico de
problemas en el algoritmo de
Transition 2
control
Los elementos son ETAPAS con Step 3
BLOQUES DE ACCIN y
TRANSICIONES
Permite secuencias alternativas y
paralelas
SFC : Secuencias en paralelo

Etapa 1 N FILL

Transicin 1a Transicin 1b

Etapa 2 a S Empty Etapa 2 b S Empty

Transicin 2a Transicin 2b

Etapa 3
El Estndar IEC 61131-3

Elementos Comunes

Lenguajes de Programacin
Los Lenguajes de Programacin
IEC 61131-3
Lista de Instrucciones Texto Estructurado
LD A
ANDN B C:= A AND NOT B
ST C

Diagrama de Bloques Funcionales Diagrama de Escalera

AND A B C
A C -| |--|/|----------------( )
B
Diagrama de Escalera (LD)
Estandarizado, rationalized set of
relay ladder programming symbols
Based on well-known North american
style of programming, resembling US-
type of electrical drawing standard

A B C
-| |--|/|----------------( )
Lista de Instrucciones (IL)
Single Accumulator based execution model
Basado en el Alemn Anweisungsliste, AWL
Una operacin como almacenar un valor en el
registro acumulador es permitida por lnea

LD A
ANDN B
ST C
Texto Estructurado (ST)
Lenguaje de alto nivel, estructurado en bloques
Sintaxis parecida a PASCAL
Posibilidad de utilizar expresiones complejas e instrucciones
anidadas
Soporte para
Bucles (REPEAT-UNTIL; WHILE-DO)
Ejecucion condicional (IF-THEN-ELSE; CASE)
Funciones (SQRT(), SIN())

C:= A AND NOT B


Diagrama de Bloques Funcionales (FBD)
Lenguaje grfico ampliamente usado en Europa
Permite elementos de programa que aparecen como bloques
ser conectados en una forma anloga a un diagrama de
circuito
Se usa en muchas aplicaciones que implican el flujo de
informacin o datos entre componentes de control

AND
A C Qumica
B
El Estndar IEC 61131-3
Top Down

Elementos Comunes

Lenguajes de Programacin
Bottom Up
Entornos de Programacin IEC
Muchos de ellos ofrecen:
Pantallas de programacin
grfica
Soporte para mltiples
ventanas
Operaciones con el ratn
Mens desplegables
Ayuda en lnea
Verificacin del software
durante el diseo
Caratersticas claves calidad IEC 61131-3
Software Estructurado - a travs del uso de Configuraciones,
Recursos y Unidades de Organizacin de Programa (POUs)
Tipeado de Datos - a travs de lenguajes que restringen las
operaciones a los tipos de datos adecuados
Control de la Ejecucin - a travs del uso de Tareas
Comportamiento Secuencial Complejo - a travs de los
Esquemas Funcional Secuencial
Encapsulacin del Software - a travs del uso de POUs,
estructuras y tipos de datos complejos
Un ejemplo

Sistema de Control de Fermentacin

cortesa de Omron Electronics


Proceso de Fermentacin
Agitator

Feed valve
Acidic reagent

Alkali reagent
Temperature
sensor
pH sensor

Heater band

Harvest valve
Fermentation control decomposition
MainSequence e.g. top level process steps - filling, heating, agitating,
fermenting, harvesting, cleaning.
Valve control e.g. operating valves used to fill and empty the
fermentation vessel
Temperature control for monitoring the temperature of the vessel
and modulating the heater.
Agitator control for the agitator motor activated as demanded
by the main process sequence.
pH Control for monitoring the acidity of the fermentation contents
and adding acidic or alkali reagents.
Fermentation control program
TempControl
Heat
Heat
SetPoint Cool
TempSensor Cool
PV
pHSensor
pHControl
AddAcid
MainSequence SetPoint AddAcid
Start AddAlkali
Start Temp PV AddAlkali
Stop
Stop pH
Duration AgitateControl
Duration Agitation
MotorSpeed
FillState SetPoint MotorSpeed

PV
AgitateSpeed
ValveControl
Fill
State Fill
ValvePositions Harvest
Harvest
Main sequence SFC S1 N Initialisation

S2 N Filling

S3 N Heating

Shows the main


process states
S4 N Fermenting

S5 N Harvesting

S6 N Cleaning
Las Acciones y Transiciones
se pueden programar en
cualquiera de los cuatro
Lenguajes de Programacin
IEC 61131-3
Cual es el beneficio de este Estndar?
Usuarios? Qu Usuarios?

Discrete Mnf
Process cntrl
Integrador de sistema
Usted ??

Educacin
Programacin
Mantenimiento Instalacin
Usuarios? Qu Usuarios?
Lneas de produccin de automviles
Plantas de tratamiento de agua
Industria de la alimentacin
Cable manufacturing
Semi-conductor clean room automation
Theme-park roller coasters
Planta de tratamiento de residuos nucleares
This wide range encompass different skills
Cual es el beneficio de este Estndar?
Reduced waste of human resources (in training,
debugging, maintenance and consultancy)
Cual es el beneficio de este Estndar?
Reduced waste of human resources (in
training, debugging, maintenance and
consultancy)

Creating a focus to problem solving via software re-usability


(reduced application investment and supplier dependency)
Cual es el beneficio de este Estndar?
Reduced waste of human resources (in
training, debugging, maintenance and
consultancy)
Creating a focus to problem solving via
software re-usability (reduced application
investment and supplier dependency)

Reduced misunderstandings and errors


Cual es el beneficio de este Estndar?
Reduced waste of human resources (in
training, debugging, maintenance and
consultancy)
Creating a focus to problem solving via
software re-usability (reduced application
investment and supplier dependency)
Reduced misunderstandings and errors

Programming techniques usable in more environments


(general industrial control)
Cual es el beneficio de este Estndar?
Reduced waste of human resources (in
training, debugging, maintenance and
consultancy)
Creating a focus to problem solving via
software re-usability (reduced application
investment and supplier dependency)
Reduced misunderstandings and errors
Programming techniques usable in more
environments (general industrial control)

Combining harmonously different components from different


locations, companies or countries, or projects
Cual es el beneficio de este Estndar?
Reduced waste of human resources (in
training, debugging, maintenance and
consultancy)
Creating a focus to problem solving via
software re-usability (reduced application
investment and supplier dependency)
Reduced misunderstandings and errors
Programming techniques usable in more
environments (general industrial control)
Combining harmonously different
components from different locations,
companies or countries, or projects

Increased connectivity (investment protection)


Cual es el beneficio de este Estndar?
Reduced waste of human resources (in
training, debugging, maintenance and
consultancy)
Creating a focus to problem solving via
software re-usability (reduced application
investment and supplier dependency)
Reduced misunderstandings and errors
S
o
f
twa
r
e
Programming techniques usable in more L
i
br
ar
y
environments (general industrial control)
Combining harmonously different
components from different locations,
companies or countries, or projects F
u
nc
t
i
onB
lo
ck
"
He
at
in
g"
Increased connectivity (investment F
u
"
L
I
n
c
M
t
i
o
I
T
n
"
protection) F
u
n
"
F
c
t
i
o
e
e
n
d
B
i
n
l
o
g
c
"
k
F
un
ct
i
on F
u
nc
t
i
onB
lo
ck
"
T
EST
" "
Tu
rn
in
g"
Ventajas para el nivel educativo

Los cursos de programacin IEC 61131-3 son:

Independientes del proveedor


Independientes del producto
Encaja mejor la teora con la prcitca
Basados en tcnicas de programacin actuales y
pensamiento estructurado
1993:

IEC 61131-3 is reality

as a paper standard

and now...
.. El problema de la Gallina y el Huevo

Usuarios vs. Proveedores

Ven los beneficios del estndar uncertainty about its effect


pero necesitan productos eleccin estrtegica
que cubran sus necesidades high investment (SW + HW)
uncertain on ROI
La Associacin PLCopen
Standardization in Industrial Control Programming

What does PLCopen want and do

and how does it effect you


La Tecnologa necesita estandares

nadie /
ninguna compaa
puede hacerlo por s misma
Cambio en la importancia de los estndares

Estandares
Internacionales
Estandares
Nacionales
Estandares de
Compaas

Past Present Future


La Misin de PLCopen

Queremos ser la asociacin lder


resolviendo temas relacionados con la
programacin de controladores
para apoyar el uso de estndares
internacionales en este campo.
Y eso qu significa?

Todos los miembros son iguales: un miembro = un voto


PLCopen se enfoca hacia servicios independientes no hacia
productos
Focus towards users awareness
Dedicacin a los usuarios y proveedores miembros
Programando en su entorno

Database Tools Visualizacin / HMI Project design


Tools

Documentation Programming Debugging Tools


Tools Tools

Networking Tools Configuration Simulation Tools


Tools
PLCopen
Standardization in Industrial Control programming

Organizacin
BOM, MD & General Meeting

TC1 TC2 TC3 TC4 TC5 PC1 PC2 PC3 PC4

TECNICOS MARKETING
COMITS
TC1: Estndares

IEC 61131-3 es mejorado con Corrigendum & Amendments


Development of joint PLCopen position for IEC
Comunicacin de informacin desde IEC a PLCopen
Propuesta de mejoras
Focussed to upcoming update: end 1997
TC2: Funciones

Convenios de llamadas a Bloques Funcionales


Definicin de libreras de Bloques Funcionales
por ejemplo: Motion Control Profile: the integration of
different technologies
TC3 : La esencia de la conformaidad
sin pruebas no hay estndar
El estndar IEC 61131 solo da unas reglas bsicas para la
conformidad
La certificacin es una gua para los usuarios en el camino
hacia sistemas de programacin realmente conformes con IEC
61131-3 (p.e. PLCopen certifica la conformidad de los
productos)
TC3: Niveles de conformidad de PLCopen

Full Compliance Level


Portability of applications

Application Application
Program Program
Portability Level &
X-Reusability Level
FB FB Portability of Function (Block) FB
FB FB
libraries FB
Variable Variable Variable
Variable Base Level
Variable
Variable
Code Code Portability of minimal systems Code
Code Code
Body Body CodeBody
Body Body
Body
Compliancy: Portability Level

Definition Portability Level


Portability Level provides the exchange of
Functions and Function Blocks
between programming systems of different manufacturers,
with the same functionality to the user

NB. this is NOT a part of IEC 61131-3


Compliancy:
Results and Status (Oct. 99)

Accredition installed: two institutes accredited


Base Level definition ready for IL, ST and SFC. LD and FBD
in progress
Test software ready for IL, ST and SFC. FBD and LD in
preparation
17 software packages certified (see newsletter and website
for status)
Conformidad: Resultados
Compliancy levels build a foundation for:
a common understanding of
automation system programming
worldwide

Communications
the development of new tools like
additional programming languages
the definition of function blocks for
communication procedures
independent of underlying bus
sytems
the creation of libraries, be it for
special branch applications or for
standard solutions PLCopen Compliancy Levels
TC4: Comunicaciones

Interfaces de comunicaciones
Interfaces to add-on packages
Formato de intercambio entre aplicaciones
Se ha realizado el mapeo de Profibus
El mapeo de CANopen est en fase de realizacin
TC5: Safe software guidelines

Support for safe programming techniques


Focus to IEC 1508 Functional Safety of Safety Related
systems
Guidelines for the use of the IEC standard
Function Blocks can be certified
Basis for easier commissioning
General Promotion

PC1: General Promotion


PC3: Promotion North America
PC4: Promotion Japan
PC2: Common training program

The effect of training is often underestimated


Standardization can be very usefull and provide a better
interface between study and reality
PC2 defined common basics for training..
.. for instance: a IEC 61131-3 training guideline is published
Training facilities fulfilling basic requirements can be certified
and listed / referenced to (see newsletter and website for
listing)
PLCopen como una asociacin de
carcter mundial
> 100 miembros (Oct. 1999)

de 21 paises de todo el
mundo

Proveedores, Institutos y
usuarios
Visite PLCopen en Internet
para una lista completa
PLCopen as a World-wide association
Sede Principal en Europa
Sede en EE.UU. Sede en Japon
PLCopen
Eelco van der Wal
P.O. Box 2015
NL 5300 CA Zaltbommel
Netherlands
Tel: 31-418-541139
Fax: 31-418-516336

www.plcopen.org
email: evdwal@plcopen.org
PLCopen N.A.
Jeremy Pollard
Barrie, Ontario, Canada

email: plcopen@pcss.on.ca

www.plcopen.org
PLCopen Japan
Yoshio Jamaguchi san
3rd Floor, 3-61-8, Wada
Suginami-ku
Tokyo 166, Japan
Tel: (+81) 3 3315 0194
Fax: (+81) 3 3315 0192
www.plcopen.org
email: plcopen-japan@mugen.com
La Asociacin PLCopen

Juntos podemos hacer que suceda:

Estandarizacin en la programacin industrial

Anda mungkin juga menyukai