Control builder PS501

30
Automation Products Training Page - 1 - /22 / V2 Insert image here Control builder PS501 IEC 61131-3 Advant Controller 500 (AC500)

description

Control builder PS501. Advant Controller 500 (AC500). IEC 61131-3. El Control Builder PS501. Información Básica sobre el PS501 Los lenguajes de programación POUs y tipos de datos La estructura de un programa Las diferentes librerías. Empecemos. Información Básica sobre el PS501. - PowerPoint PPT Presentation

Transcript of Control builder PS501

Page 1: Control builder PS501

© A

BB

Aut

omat

ion

Pro

duct

s T

rain

ing

Pag

e -

1 -

04/2

2/23

/ V

2

Insert image here

Control builderPS501

IEC 61131-3

Advant Controller 500 (AC500)

Page 2: Control builder PS501

© A

BB

Aut

omat

ion

Pro

duct

s T

rain

ing

Pag

e -

2 -

Con

trol

Bui

lder

PS

501

Información Básica sobre el PS501

Los lenguajes de programación

POUs y tipos de datos

La estructura de un programa

Las diferentes librerías

El Control Builder PS501

Empecemos

Page 3: Control builder PS501

© A

BB

Aut

omat

ion

Pro

duct

s T

rain

ing

Pag

e -

3 -

Con

trol

Bui

lder

PS

501

PS501 cumple con la IEC 6 1131-3. Este estándar internacional define:

- la estructura de un programa, - la declaración de datos - la sintaxis y semántica de 5 lenguajes de programacióndiferentes:

Información Básica sobre el PS501

Instruction List (IL) – Lista de InstruccionesStructured text (ST) – Texto estructuradoFunction block diagram (FBD) - Diagramas de Bloques de FunciónContinuous function chart (CFC) – Gráficos de Función ContínuasLadder Diagram (LD) - ContactosSequencial flow chart (SFC) – Gráficos de Flujo Secuenciales

Page 4: Control builder PS501

© A

BB

Aut

omat

ion

Pro

duct

s T

rain

ing

Pag

e -

4 -

Con

trol

Bui

lder

PS

501

El software de programación PS501 está basado en CoDeSys

para:Programar,Testeo,Depuración,Ingeniería,Documentación

de programas para el AC500 - Hardware por ABB.

Información Básica sobre el PS501

Page 5: Control builder PS501

© A

BB

Aut

omat

ion

Pro

duct

s T

rain

ing

Pag

e -

5 -

Con

trol

Bui

lder

PS

501

CoDeSys es un producto de la empresa3S - Smart Software Solutions GmbH

Información Básica sobre el PS501

Some 3S - customers Some 3S - customers

Page 6: Control builder PS501

© A

BB

Aut

omat

ion

Pro

duct

s T

rain

ing

Pag

e -

6 -

Con

trol

Bui

lder

PS

501

Información Básica sobre el PS501

Los lenguajes de programación

POUs y tipos de datos

La estructura de un programa

Las diferentes librerías

Los lenguajes de programación

Coming up

Page 7: Control builder PS501

© A

BB

Aut

omat

ion

Pro

duct

s T

rain

ing

Pag

e -

7 -

Con

trol

Bui

lder

PS

501

Los lenguajes de programación: Lista de Instrucciones IL

En textoLenguaje AssemblerLos operadores funcionan con un registro especial (accumulator, LD, ST)

Los programas pequeños son muy fáciles de entender

No soporta programación estructurada

Page 8: Control builder PS501

© A

BB

Aut

omat

ion

Pro

duct

s T

rain

ing

Pag

e -

8 -

Con

trol

Bui

lder

PS

501

Los lenguajes de programación: Texto Estructurado ST

•Lenguaje tipo Texto

•Lenguaje de alto nivel: similar al PASCAL

•De todos los lenguajes es el más

adaptable para programación condicional

y programas tipo „loops“ (espiral)

•Es pposible programacíones muy

potentes:

•Escriba sus propias funciones o Bloques

de Funciones en texto estructurado muy

pòtente y llámelos desde un programa

escrito en FBD, CFC o LD

Page 9: Control builder PS501

© A

BB

Aut

omat

ion

Pro

duct

s T

rain

ing

Pag

e -

9 -

Con

trol

Bui

lder

PS

501

Los lenguajes de programación: Function Block Biagram FBD

•Lenguaje gráfico

•Fácil de entender

•Estructura determinada para bloques y operadores

Page 10: Control builder PS501

© A

BB

Aut

omat

ion

Pro

duct

s T

rain

ing

Pag

e -

10

-C

ontr

olB

uild

er P

S50

1

Los lenguajes de programación: Continuous function chart CFC

•Lenguaje gráfico, similar al FBD

•Fácil de entender

•Libre estructura para bloques y operadores

•El retorno puede conectarse diréctamente

Page 11: Control builder PS501

© A

BB

Aut

omat

ion

Pro

duct

s T

rain

ing

Pag

e -

11

-C

ontr

olB

uild

er P

S50

1

Los lenguajes de programación: Ladder diagram LD (contactos)

Lenguaje gráfico, orientado a redes

Disponible en casi todos los sistemas de PLCs

Especialmente adaptado para programar en términos booleanos

Menos adaptable para programas complicados

Page 12: Control builder PS501

© A

BB

Aut

omat

ion

Pro

duct

s T

rain

ing

Pag

e -

12

-C

ontr

olB

uild

er P

S50

1

Los lenguajes de programación: SFC (Sequencial Function Chart)

Este programa esta formado de Pasos

SFC no puede reemplazar otros lenguajes.

Lenguaje gráfico, consigue un programa muy bien estructurado

Contiene Pasos y Transiciones

Page 13: Control builder PS501

© A

BB

Aut

omat

ion

Pro

duct

s T

rain

ing

Pag

e -

13

-C

ontr

olB

uild

er P

S50

1

Información Básica sobre el PS501

Los lenguajes de programación

POUs y tipos de datos

La estructura de un programa

Las diferentes librerías

Los POUs y tipos de datos

Coming up

Page 14: Control builder PS501

© A

BB

Aut

omat

ion

Pro

duct

s T

rain

ing

Pag

e -

14

-C

ontr

olB

uild

er P

S50

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 líneas de programa, la cual puede ser llamada por otro POU

La programación se puede elaborar en uno de los cinco lenguajesde programación

El POU reservado PLC_PRG arranca cíclicamente por el propio sistema

Los datos pueden ser validados localmente o globalmente y puedenSer declarados a priori, programados en una tabla o automáticamente mientras se está programando.

Direcciones, POUs y Tipos de datos: Introducción

Page 15: Control builder PS501

© A

BB

Aut

omat

ion

Pro

duct

s T

rain

ing

Pag

e -

15

-C

ontr

olB

uild

er P

S50

1

Función: FUN Entrada, un resultado, no memoria.

Ejemplo: operador AND (todos los operadores)

Bloque de Función: FB Entradas, Salidas, memoria. Es posible crear diferentes instancias (copias) de un Bloque

de FunciónEjemplo: TON (ON retrasado))

Programa: PRG Como un Bloque de Función, pero sólo una instancia global.

Ejemplo: Un programa llama a otro.

Direcciones, POUs y Tipo de Datos: El Program Organization Units

Page 16: Control builder PS501

© A

BB

Aut

omat

ion

Pro

duct

s T

rain

ing

Pag

e -

16

-C

ontr

olB

uild

er P

S50

1

Direcciones, POUs y Tipo de Datos: Tipos de datos Estándar (1)

Bool: TRUE o FALSE

Datos tipo Integer (Enteros):

Tipo Límite Inferior Límite 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

Page 17: Control builder PS501

© A

BB

Aut

omat

ion

Pro

duct

s T

rain

ing

Pag

e -

17

-C

ontr

olB

uild

er P

S50

1

Direcciones, POUs y Tipo de Datos: Tipos de datos Estándar (2)

REAL / LREAL

REAL y LREAL (long real) son de tipo coma flotante. Se aplican para números 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 carácter uno tras otro. La definición del TRING-length hace referencia a los carácteres y puede estar definido dentro de „ (..) o ..... .

La longitud por defecto es 80.

Ejemplo para una declaración 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) están 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 están calculados desde

El 1 de Enero de 1970, 00:00hrs.

Page 18: Control builder PS501

© A

BB

Aut

omat

ion

Pro

duct

s T

rain

ing

Pag

e -

18

-C

ontr

olB

uild

er P

S50

1

Información Básica sobre el PS501

Los lenguajes de programación

POUs y tipos de datos

La estructura de un programa

Las diferentes librerías

La estructura de un programa

Coming up

Page 19: Control builder PS501

© A

BB

Aut

omat

ion

Pro

duct

s T

rain

ing

Pag

e -

19

-C

ontr

olB

uild

er P

S50

1

Project(Proyecto)

POU Global variables(Variables Globales)

Data types(Tipo de datos)

Declaración(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 posición inicial hay un programa Llamado PLC_PRG (Programa Principal), yes ejecutado cíclicamente

Page 20: Control builder PS501

© A

BB

Aut

omat

ion

Pro

duct

s T

rain

ing

Pag

e -

20

-C

ontr

olB

uild

er P

S50

1

La estructura de un programa (3)

Program PRG

FUN

Function FUN

FB FUN

PRG

FUNFB

Function block FB

Page 21: Control builder PS501

© A

BB

Aut

omat

ion

Pro

duct

s T

rain

ing

Pag

e -

21

-C

ontr

olB

uild

er P

S50

1

Normas Importantes:

Los POUs llamados siempre vuelven al que llama (programa y sus módulos están 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

Definición: Según es Standar IEC 61131-3PLC_PRG es el nombre de un POU cíclico

Page 22: Control builder PS501

© A

BB

Aut

omat

ion

Pro

duct

s T

rain

ing

Pag

e -

22

-C

ontr

olB

uild

er P

S50

1

La estructura de un programa : Llamada de POUs (1)

POU:Llamada desde el editor

POU:Llamada desde el programa

Page 23: Control builder PS501

© A

BB

Aut

omat

ion

Pro

duct

s T

rain

ing

Pag

e -

23

-C

ontr

olB

uild

er P

S50

1

La estructura de un programa : Llamada de POUs (2)

Llamada de programas dentro del programa ppal:

PLC_PRG

Page 24: Control builder PS501

© A

BB

Aut

omat

ion

Pro

duct

s T

rain

ing

Pag

e -

24

-C

ontr

olB

uild

er P

S50

1

La estructura de un programa : Las funciones y los operadores

Asignadores

Operadores Booleanos

Operadores Analógicos.

Comparadores

Selectores

Operador Real

Operador Shift

Convertidor de Tipo

Su representación depende del lenguaje de programación escogido. La expresión OPERATOR no existe en el Stándar. En el estándar IEC 61131-3 los operadores están definidos bajo funciones estándar. Pero 3S creó una lista de operadores para simplificar la operación:

Hay diferentes grupos de operadores:

Operador

Funciones

Page 25: Control builder PS501

© A

BB

Aut

omat

ion

Pro

duct

s T

rain

ing

Pag

e -

25

-C

ontr

olB

uild

er P

S50

1

La estructura de un programa : Las funciones, Bloques de Funciones

Funciones String LEN LEFT RIGHT MID CONCAT INSERT DELETE REPLACE FIND

Detección de rampaR_TRIG Detecta rampa positivaF_TRIG Detecta rampa negativa

ContadorCTU Incrementa por cada rampa (up- counter)CTD Decrementa por cada rampa (down - counter)CTUD Incrementa / decrementa en cada rampa (up-/down

counter)TemporizadorTP PulsoTON Temporizador Activar con RetrasoTOF Temporizador Desactivar con Retraso

Funciones

Bloques de Funciones

Page 26: Control builder PS501

© A

BB

Aut

omat

ion

Pro

duct

s T

rain

ing

Pag

e -

26

-C

ontr

olB

uild

er P

S50

1

Información Básica sobre el PS501

Los lenguajes de programación

POUs y tipos de datos

La estructura de un programa

Las diferentes librerías

Las Librerías

Coming up

Page 27: Control builder PS501

© A

BB

Aut

omat

ion

Pro

duct

s T

rain

ing

Pag

e -

27

-C

ontr

olB

uild

er P

S50

1

Las diferentes librerías: Librería Estandar: p.ej. FB CTUD

Page 28: Control builder PS501

© A

BB

Aut

omat

ion

Pro

duct

s T

rain

ing

Pag

e -

28

-C

ontr

olB

uild

er P

S50

1

Las diferentes librerías: Librería del Fabricante: p.ej. FB PDM

Page 29: Control builder PS501

© A

BB

Aut

omat

ion

Pro

duct

s T

rain

ing

Pag

e -

29

-C

ontr

olB

uild

er P

S50

1

Las diferentes librerías: Librería de usuario

Page 30: Control builder PS501

© A

BB

Aut

omat

ion

Pro

duct

s T

rain

ing

Pag

e -

30

-C

ontr

olB

uild

er P

S50

1

The different libraries: Creando una librería 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 librería y „Rebuild all“:

<FUN / FB name> .exp

> Este proyecto no debe contener una lista de variables globales

> PLC_PRG ha de ser borradoProject

1: Import

2: Rebuild all

<FUN / FB name> in Object Organizer

3. Guarde este proyecto con un nuevo nombre (nombre de la librería) en el directorio LIBRARY

Date

guardad como

*.lib , click

„ Internal library“

Nueva librería en el directorio LIBRARY :

< name>. Lib

Project

Export

FUN or FB (click)

Importante

resultado

resultado

resultado