Sie sind auf Seite 1von 30

A

B
B

A
u
t
o
m
a
t
i
o
n

P
r
o
d
u
c
t
s


T
r
a
i
n
i
n
g

P
a
g
e


-

1

-

6
/
1
4
/
2
0
1
4


/

V
2

Insert
image
here
Control builder
PS501
IEC 61131-3

Advant Controller 500 (AC500)


A
B
B

A
u
t
o
m
a
t
i
o
n

P
r
o
d
u
c
t
s

T
r
a
i
n
i
n
g

P
a
g
e


-

2

-

C
o
n
t
r
o
l
B
u
i
l
d
e
r

P
S
5
0
1

Informacin Bsica sobre el PS501
Los lenguajes de programacin
POUs y tipos de datos
La estructura de un programa
Las diferentes libreras
El Control Builder PS501
Empecemos


A
B
B

A
u
t
o
m
a
t
i
o
n

P
r
o
d
u
c
t
s

T
r
a
i
n
i
n
g

P
a
g
e


-

3

-

C
o
n
t
r
o
l
B
u
i
l
d
e
r

P
S
5
0
1

PS501 cumple con la IEC 6 1131-3.
Este estndar internacional define:

- la estructura de un programa,
- la declaracin de datos

- la sintaxis y semntica de 5 lenguajes de programacin
diferentes:
Informacin Bsica sobre el PS501
Instruction List (IL) Lista de Instrucciones
Structured text (ST) Texto estructurado
Function block diagram (FBD) - Diagramas de Bloques de Funcin
Continuous function chart (CFC) Grficos de Funcin Contnuas
Ladder Diagram (LD) - Contactos
Sequencial flow chart (SFC) Grficos de Flujo Secuenciales


A
B
B

A
u
t
o
m
a
t
i
o
n

P
r
o
d
u
c
t
s

T
r
a
i
n
i
n
g

P
a
g
e


-

4

-

C
o
n
t
r
o
l
B
u
i
l
d
e
r

P
S
5
0
1

El software de programacin PS501 est basado en CoDeSys

para:
Programar,
Testeo,
Depuracin,
Ingeniera,
Documentacin

de programas para el AC500 - Hardware por ABB.
Informacin Bsica sobre el PS501


A
B
B

A
u
t
o
m
a
t
i
o
n

P
r
o
d
u
c
t
s

T
r
a
i
n
i
n
g

P
a
g
e


-

5

-

C
o
n
t
r
o
l
B
u
i
l
d
e
r

P
S
5
0
1

CoDeSys es un producto de la empresa
3S - Smart Software Solutions GmbH
Informacin Bsica sobre el PS501
Some 3S - customers Some 3S - customers


A
B
B

A
u
t
o
m
a
t
i
o
n

P
r
o
d
u
c
t
s

T
r
a
i
n
i
n
g

P
a
g
e


-

6

-

C
o
n
t
r
o
l
B
u
i
l
d
e
r

P
S
5
0
1

Informacin Bsica sobre el PS501
Los lenguajes de programacin

POUs y tipos de datos
La estructura de un programa
Las diferentes libreras
Los lenguajes de programacin
Coming up


A
B
B

A
u
t
o
m
a
t
i
o
n

P
r
o
d
u
c
t
s

T
r
a
i
n
i
n
g

P
a
g
e


-

7

-

C
o
n
t
r
o
l
B
u
i
l
d
e
r

P
S
5
0
1

Los lenguajes de programacin: Lista de Instrucciones IL
En texto
Lenguaje Assembler
Los operadores funcionan con un
registro especial (accumulator, LD, ST)

Los programas pequeos son muy
fciles de entender

No soporta programacin estructurada


A
B
B

A
u
t
o
m
a
t
i
o
n

P
r
o
d
u
c
t
s

T
r
a
i
n
i
n
g

P
a
g
e


-

8

-

C
o
n
t
r
o
l
B
u
i
l
d
e
r

P
S
5
0
1

Los lenguajes de programacin: Texto Estructurado ST
Lenguaje tipo Texto
Lenguaje de alto nivel: similar al PASCAL
De todos los lenguajes es el ms
adaptable para programacin condicional
y programas tipo loops (espiral)
Es pposible programacones muy
potentes:
Escriba sus propias funciones o Bloques
de Funciones en texto estructurado muy
ptente y llmelos desde un programa
escrito en FBD, CFC o LD


A
B
B

A
u
t
o
m
a
t
i
o
n

P
r
o
d
u
c
t
s

T
r
a
i
n
i
n
g

P
a
g
e


-

9

-

C
o
n
t
r
o
l
B
u
i
l
d
e
r

P
S
5
0
1

Los lenguajes de programacin: Function Block Biagram FBD
Lenguaje grfico
Fcil de entender
Estructura determinada para bloques y
operadores


A
B
B

A
u
t
o
m
a
t
i
o
n

P
r
o
d
u
c
t
s

T
r
a
i
n
i
n
g

P
a
g
e


-

1
0

-

C
o
n
t
r
o
l
B
u
i
l
d
e
r

P
S
5
0
1

Los lenguajes de programacin: Continuous function chart CFC
Lenguaje grfico, similar al FBD
Fcil de entender
Libre estructura para bloques y
operadores
El retorno puede conectarse
dirctamente


A
B
B

A
u
t
o
m
a
t
i
o
n

P
r
o
d
u
c
t
s

T
r
a
i
n
i
n
g

P
a
g
e


-

1
1

-

C
o
n
t
r
o
l
B
u
i
l
d
e
r

P
S
5
0
1

Los lenguajes de programacin: Ladder diagram LD (contactos)
Lenguaje grfico, orientado a redes
Disponible en casi todos los sistemas de PLCs
Especialmente adaptado para programar en trminos
booleanos
Menos adaptable para programas complicados


A
B
B

A
u
t
o
m
a
t
i
o
n

P
r
o
d
u
c
t
s

T
r
a
i
n
i
n
g

P
a
g
e


-

1
2

-

C
o
n
t
r
o
l
B
u
i
l
d
e
r

P
S
5
0
1

Los lenguajes de programacin: SFC (Sequencial Function Chart)
Este programa esta formado de Pasos

SFC no puede reemplazar otros lenguajes.
Lenguaje grfico, consigue un
programa muy bien estructurado
Contiene Pasos y Transiciones


A
B
B

A
u
t
o
m
a
t
i
o
n

P
r
o
d
u
c
t
s

T
r
a
i
n
i
n
g

P
a
g
e


-

1
3

-

C
o
n
t
r
o
l
B
u
i
l
d
e
r

P
S
5
0
1

Informacin Bsica sobre el PS501
Los lenguajes de programacin

POUs y tipos de datos

La estructura de un programa
Las diferentes libreras
Los POUs y tipos de datos
Coming up


A
B
B

A
u
t
o
m
a
t
i
o
n

P
r
o
d
u
c
t
s

T
r
a
i
n
i
n
g

P
a
g
e


-

1
4

-

C
o
n
t
r
o
l
B
u
i
l
d
e
r

P
S
5
0
1

Entradas, Salidas, Constantes Indirectas, Pasos(Steps) y Marcas(Flags)
Son aquellos tipos de direcciones que se han de adaptar al hardware

Un POU es una secuencia de lneas de programa, la cual puede
ser llamada por otro POU

La programacin se puede elaborar en uno de los cinco lenguajes
de programacin

El POU reservado PLC_PRG arranca cclicamente por el propio
sistema

Los datos pueden ser validados localmente o globalmente y pueden
Ser declarados a priori, programados en una tabla o automticamente
mientras se est programando.
Direcciones, POUs y Tipos de datos: Introduccin


A
B
B

A
u
t
o
m
a
t
i
o
n

P
r
o
d
u
c
t
s

T
r
a
i
n
i
n
g

P
a
g
e


-

1
5

-

C
o
n
t
r
o
l
B
u
i
l
d
e
r

P
S
5
0
1

Funcin: FUN
Entrada, un resultado, no memoria.

Ejemplo: operador AND (todos los operadores)

Bloque de Funcin: FB
Entradas, Salidas, memoria.
Es posible crear diferentes instancias (copias) de un Bloque
de Funcin
Ejemplo: TON (ON retrasado))

Programa: PRG
Como un Bloque de Funcin, pero slo una instancia global.

Ejemplo: Un programa llama a otro.
Direcciones, POUs y Tipo de Datos: El Program Organization Units


A
B
B

A
u
t
o
m
a
t
i
o
n

P
r
o
d
u
c
t
s

T
r
a
i
n
i
n
g

P
a
g
e


-

1
6

-

C
o
n
t
r
o
l
B
u
i
l
d
e
r

P
S
5
0
1

Direcciones, POUs y Tipo de Datos: Tipos de datos Estndar (1)
Bool: TRUE o FALSE

Datos tipo Integer (Enteros):
Tipo Lmite Inferior Lmite
Superior
Memoria
Requerida
BYTE 0 255 8 bit
WORD 0 65535 16 bit
DWORD 0 4294967295 32 bit
SINT -128 127 8 bit
USINT 0 255 8 bit
INT -32768 32767 16 bit
UINT 0 65535 16 bit
DINT -2147483648 2147483647 32 bit
UDINT 0 4294967295 32 bit


A
B
B

A
u
t
o
m
a
t
i
o
n

P
r
o
d
u
c
t
s

T
r
a
i
n
i
n
g

P
a
g
e


-

1
7

-

C
o
n
t
r
o
l
B
u
i
l
d
e
r

P
S
5
0
1

Direcciones, POUs y Tipo de Datos: Tipos de datos Estndar (2)
REAL / LREAL
REAL y LREAL (long real) son de tipo coma flotante. Se aplican para nmeros racionales. Ocupan
un rango de memoria de 32 bits para REAL y 64 bits para LREAL.
STRING
Una variable de tipo STRING puede tener cualquier carcter uno tras otro. La definicin del
TRING-length hace referencia a los carcteres y puede estar definido dentro de (..) o ..... .
La longitud por defecto es 80.
Ejemplo para una declaracin de STRING:
str:STRING(35):='Esto es un string!';
Tipo de datos para Tiempos
Los datos tipo TIME, TIME_OF_DAY (TOD), DATE y DATE_AND_TIME (DT) estn definidos
internamente como DWORD.
TIME y TOD se han de definir en milisegundos (ms) . TOD est calculado desde 00:00 hrs .
DATE y DT an de estar definidos en segundos (s). Estos estn calculados desde
El 1 de Enero de 1970, 00:00hrs.


A
B
B

A
u
t
o
m
a
t
i
o
n

P
r
o
d
u
c
t
s

T
r
a
i
n
i
n
g

P
a
g
e


-

1
8

-

C
o
n
t
r
o
l
B
u
i
l
d
e
r

P
S
5
0
1

Informacin Bsica sobre el PS501
Los lenguajes de programacin

POUs y tipos de datos

La estructura de un programa
Las diferentes libreras
La estructura de un programa
Coming up


A
B
B

A
u
t
o
m
a
t
i
o
n

P
r
o
d
u
c
t
s

T
r
a
i
n
i
n
g

P
a
g
e


-

1
9

-

C
o
n
t
r
o
l
B
u
i
l
d
e
r

P
S
5
0
1

Project
(Proyecto)
POU
Global variables
(Variables Globales)
Data types
(Tipo de datos)
Declaracin
(variables locales)
Codigo
La estructura de un programa (1)
Grabado en archivo:
name.pro
Un proyecto contiene
un amplio rango de
P Programm -
O Organisation -
U Units
En la posicin inicial hay un programa
Llamado PLC_PRG (Programa Principal), y
es ejecutado cclicamente


A
B
B

A
u
t
o
m
a
t
i
o
n

P
r
o
d
u
c
t
s

T
r
a
i
n
i
n
g

P
a
g
e


-

2
0

-

C
o
n
t
r
o
l
B
u
i
l
d
e
r

P
S
5
0
1

La estructura de un programa (3)
Program PRG
FUN
Function FUN
FB FUN
PRG
FUN FB
Function block FB


A
B
B

A
u
t
o
m
a
t
i
o
n

P
r
o
d
u
c
t
s

T
r
a
i
n
i
n
g

P
a
g
e


-

2
1

-

C
o
n
t
r
o
l
B
u
i
l
d
e
r

P
S
5
0
1

Normas Importantes:
Los POUs llamados siempre vuelven al que llama
(programa y sus mdulos estn enlazados)
Tenga en cuenta el ciclo del programa (cycle time)
Proyectos ejecutados dentro del ciclo han de ser
siempre un programa definido con el nombre
PLC_PRG
La estructura de un programa : Normas para escribir un programa de usuario
Definicin: Segn es Standar IEC 61131-3
PLC_PRG es el nombre de un POU cclico


A
B
B

A
u
t
o
m
a
t
i
o
n

P
r
o
d
u
c
t
s

T
r
a
i
n
i
n
g

P
a
g
e


-

2
2

-

C
o
n
t
r
o
l
B
u
i
l
d
e
r

P
S
5
0
1

La estructura de un programa : Llamada de POUs (1)
POU:
Llamada desde el editor
POU:
Llamada desde el programa


A
B
B

A
u
t
o
m
a
t
i
o
n

P
r
o
d
u
c
t
s

T
r
a
i
n
i
n
g

P
a
g
e


-

2
3

-

C
o
n
t
r
o
l
B
u
i
l
d
e
r

P
S
5
0
1

La estructura de un programa : Llamada de POUs (2)
Llamada de programas
dentro del programa ppal:
PLC_PRG


A
B
B

A
u
t
o
m
a
t
i
o
n

P
r
o
d
u
c
t
s

T
r
a
i
n
i
n
g

P
a
g
e


-

2
4

-

C
o
n
t
r
o
l
B
u
i
l
d
e
r

P
S
5
0
1

La estructura de un programa : Las funciones y los operadores
Asignadores

Operadores Booleanos

Operadores Analgicos
.
Comparadores

Selectores

Operador Real

Operador Shift


Convertidor de Tipo






Su representacin depende del
lenguaje de programacin escogido.
La expresin OPERATOR no
existe en el Stndar. En el estndar
IEC 61131-3 los operadores estn
definidos bajo funciones estndar.
Pero 3S cre una lista de operadores
para simplificar la operacin:

Hay diferentes grupos de operadores:
Operador
Funciones


A
B
B

A
u
t
o
m
a
t
i
o
n

P
r
o
d
u
c
t
s

T
r
a
i
n
i
n
g

P
a
g
e


-

2
5

-

C
o
n
t
r
o
l
B
u
i
l
d
e
r

P
S
5
0
1

La estructura de un programa : Las funciones, Bloques de Funciones
Funciones String
LEN LEFT RIGHT MID CONCAT INSERT DELETE REPLACE FIND


Deteccin de rampa
R_TRIG Detecta rampa positiva
F_TRIG Detecta rampa negativa

Contador
CTU Incrementa por cada rampa (up- counter)
CTD Decrementa por cada rampa (down - counter)
CTUD Incrementa / decrementa en cada rampa (up-/down
counter)
Temporizador
TP Pulso
TON Temporizador Activar con Retraso
TOF Temporizador Desactivar con Retraso
Funciones
Bloques de Funciones


A
B
B

A
u
t
o
m
a
t
i
o
n

P
r
o
d
u
c
t
s

T
r
a
i
n
i
n
g

P
a
g
e


-

2
6

-

C
o
n
t
r
o
l
B
u
i
l
d
e
r

P
S
5
0
1

Informacin Bsica sobre el PS501
Los lenguajes de programacin

POUs y tipos de datos

La estructura de un programa

Las diferentes libreras
Las Libreras
Coming up


A
B
B

A
u
t
o
m
a
t
i
o
n

P
r
o
d
u
c
t
s

T
r
a
i
n
i
n
g

P
a
g
e


-

2
7

-

C
o
n
t
r
o
l
B
u
i
l
d
e
r

P
S
5
0
1

Las diferentes libreras: Librera Estandar: p.ej. FB CTUD


A
B
B

A
u
t
o
m
a
t
i
o
n

P
r
o
d
u
c
t
s

T
r
a
i
n
i
n
g

P
a
g
e


-

2
8

-

C
o
n
t
r
o
l
B
u
i
l
d
e
r

P
S
5
0
1

Las diferentes libreras: Librera del Fabricante: p.ej. FB PDM


A
B
B

A
u
t
o
m
a
t
i
o
n

P
r
o
d
u
c
t
s

T
r
a
i
n
i
n
g

P
a
g
e


-

2
9

-

C
o
n
t
r
o
l
B
u
i
l
d
e
r

P
S
5
0
1

Las diferentes libreras: Librera de usuario


A
B
B

A
u
t
o
m
a
t
i
o
n

P
r
o
d
u
c
t
s

T
r
a
i
n
i
n
g

P
a
g
e


-

3
0

-

C
o
n
t
r
o
l
B
u
i
l
d
e
r

P
S
5
0
1

The different libraries: Creando una librera de usuario:
1. Crear el FB o FUN : programe, compile, testee y exporte:
2. Abrir un nuevo Proyecto e importe sus FBs o FUNs que quiera cargar en la nueva librera
y Rebuild all:

<FUN / FB name> .exp
> Este proyecto no debe contener una lista de variables globales
> PLC_PRG ha de ser borrado
Project
1: Import

2: Rebuild all
<FUN / FB name> in Object Organizer
3. Guarde este proyecto con un nuevo nombre (nombre de la librera) en el directorio
LIBRARY
Date
guardad como
*.lib , click
Internal library

Nueva librera en el directorio LIBRARY :
< name>. Lib

Project
Export
FUN or FB (click)
Importante
resultado
resultado
resultado

Das könnte Ihnen auch gefallen