Standard... PLCopenper l'efficienza nel campo dell'automazione IEC 61131.3 lo standard di...

29
www.PLCopen.org PLCopen per l'efficienza nel campo dell'automazione IEC 61131.3 lo standard di programmazione industriale Page 1 of 38 IEC 61131 - 3 Standard Versione 2.1, settembre 2006 PLCopen 2006

Transcript of Standard... PLCopenper l'efficienza nel campo dell'automazione IEC 61131.3 lo standard di...

www.PLCopen.orgPLCopen per l'efficienza nel campo dell'automazione IEC

61131.3 lo standard di programmazione industriale

Page 1 of 38

IEC 61131 - 3

Standard

Versione 2.1, settembre 2006 PLCopen 2006

www.PLCopen.orgPLCopen per l'efficienza nel campo dell'automazione IEC

61131.3 lo standard di programmazione industriale

Page 2 of 38

Indice dei contenuti § Vantaggi della IEC61131-3 per i programmatori

§ Storia degli standard internazionali 1970-1995

§ Le 7 parti dello standard IEC 61131

§ Modelli di software IEC 61131-3

§ Le 5 lingue della IEC 61131-3

§ Blocchi Funzione e POUs

§ IEC tipi di dati , Funzioni e Blocchi Funzione

www.PLCopen.orgPLCopen per l'efficienza nel campo dell'automazione IEC

61131.3 lo standard di programmazione industriale

Page 3 of 38

Vantaggi della IEC 61131-3

§ Standard accettato a livello internazionale • Passo dopo passo tutti i fornitori lo sosterranno.• Strutture omogenee, delle lingue e del modo di gestire il programma.

§ Consente di risparmiare tempo Con il Software con modello unico di dati e di tipo • Devi solo imparare una volta per i diversi tipi di controllori. • Riduce incomprensioni ed errori • Funzioni standard e blocchi funzione • Riusabilità del software testato.

www.PLCopen.orgPLCopen per l'efficienza nel campo dell'automazione IEC

61131.3 lo standard di programmazione industriale

Page 4 of 38

Vantaggi della IEC 61131-3

§ Supporta la sicurezza e la programmazione di qualità • Strutturazione facile e comoda • Nella digitazione dei dati vieta errori di programmazione

§ Fornisce il miglior linguaggio per ogni problema • 5 linguaggi di programmazione. • Due linguaggi testuali e due grafici • Un linguaggio a strutturazione panoramica.• Disponibilità di un linguaggio ad alto livello • Possibilità di mescolare diversi linguaggi

www.PLCopen.orgPLCopen per l'efficienza nel campo dell'automazione IEC

61131.3 lo standard di programmazione industriale

Page 5 of 38

Normalizzazione dei linguaggi

77 78 79 8180 93 94 9570 82 83 84 85 8786 88 89 90 91 92

NEMA Formazione della commisione per I controllori programmabili (USA)GRAFCET (Francia )

IEC 848, Grafici Funzione

DIN 40719, Grafici Funzione (Germania )NEMA ICS-3-304, Controllori Programmbili (USA)

IEC SC65A/WG6 Formato DIN 19 239, Controllori Programmbili (Germania )

MIL-STD-1815 Ada (USA)

IEC SC65A(Sec)67

Type 3 rapporto di raccomandazione

96

IEC 65A(Sec)38, Controllori Programmbili

IEC 1131-3

IEC SC65A(Sec)49,PC Linguaggi

IEC 64A(Sec)90

IEC 61131-3cambio di nome

www.PLCopen.orgPLCopen per l'efficienza nel campo dell'automazione IEC

61131.3 lo standard di programmazione industriale

Page 6 of 38

Le 7 parti della norma IEC 61131 § Part 1 Panoramica generale e definizioni IS§ Part 2 Hardware IS§ Part 3 Linguaggi di Programmazione IS§ Part 4 Linee guida IS§ Part 5 Comunicazione IS§ Part 6 Fuzzy Logic IS§ Part 7 Relazione tecnica

IS = International Standard

www.PLCopen.orgPLCopen per l'efficienza nel campo dell'automazione IEC

61131.3 lo standard di programmazione industriale

Page 7 of 38

IEC 61131 - Parte 1 - Panoramica generale

§ Definizioni e glossario dei termini utilizzati nello standard

§ Lista dei riferimenti dello standard IEC

§ Principali caratteristiche funzionali dei sistemi a controllore programmabile

www.PLCopen.orgPLCopen per l'efficienza nel campo dell'automazione IEC

61131.3 lo standard di programmazione industriale

Page 8 of 38

IEC 61131 - Parte 2 - Hardware

§ Requisiti elettrici, meccanici e funzionali per i controllori

programmabili e periferiche associate

§ Servizi, condizioni di stoccaggio e trasporto

§ Informazioni che devono essere fornite dal produttore

§ Metodi di prova e procedure per la verifica della conformità

dei controllori programmabili e periferiche associate

www.PLCopen.orgPLCopen per l'efficienza nel campo dell'automazione IEC

61131.3 lo standard di programmazione industriale

Page 9 of 38

IEC 61131 - Parte 3 – Linguaggi di Programmazione

§ Software, comunicazione e programmazione

§ Definizione di cinque linguaggi di programmazione interconnessi

§ Sintassi e semantica dei linguaggi, due grafici e due testuali: Instruction List (IL), Structured Text (ST), Ladder Diagram (LD) e Function

Block Diagram (FBD)

§ Sequential Function Chart (SFC) per la strutturazione del programma

www.PLCopen.orgPLCopen per l'efficienza nel campo dell'automazione IEC

61131.3 lo standard di programmazione industriale

Page 10 of 38

IEC 61131 - Part 4- Linee guida

Assiste l'utente in:§ Utilizzo delle altre parti del controllore programmabile § Precisa i requisiti per le applicazioni § Selezione e implementazione di sistemi

www.PLCopen.orgPLCopen per l'efficienza nel campo dell'automazione IEC

61131.3 lo standard di programmazione industriale

Page 11 of 38

IEC 61131 - Part 5 - Comunicazione

§ Basato su MMS (Manufacturing Message Specifications)(ancora in corso )

The provider is allowed to add more items!

www.PLCopen.orgPLCopen per l'efficienza nel campo dell'automazione IEC

61131.3 lo standard di programmazione industriale

Page 12 of 38

IEC 61131 - Part 6- Fuzzy Logic

§ Fornisce la definizione di set di controllo fuzzy

The provider is allowed to add more items!

www.PLCopen.orgPLCopen per l'efficienza nel campo dell'automazione IEC

61131.3 lo standard di programmazione industriale

Page 13 of 38

IEC 61131 - Part 7 - Relazione tecnica

§ Fornisce linee guida per l'applicazione e l'implementazione di linguaggi di programmazione per il controllore

programmabile

www.PLCopen.orgPLCopen per l'efficienza nel campo dell'automazione IEC

61131.3 lo standard di programmazione industriale

Page 14 of 38

IEC 61131-3 Modelli Softwareconfigurazione A

FB2

Program P1 Program P2

Task1 Task2

risorsa L

percorsi di accesso

FB1 FB4

Program P3 Program P4

Task3 Task4

risorsa L

FB3

Variabili globali

Task associatiAssociazione dei percorsi di accesso

www.PLCopen.orgPLCopen per l'efficienza nel campo dell'automazione IEC

61131.3 lo standard di programmazione industriale

Page 15 of 38

Definizione dei termini del modello software§ Configurazione

Un elemento del linguaggio corrispondente a un sistema di controllore programmabile• Risorsa

Un elemento di lingua corrispondente a una funzione di elaborazione del segnale e la sua interfaccia uomo-macchina e le funzioni di sensori e attuatori, come una CPU

§ Task • Un elemento di controllo di esecuzione che prevede l'esecuzione periodica o

innescata da un gruppo di unità associata del programma • Program

Più alto livello di organizzazione delle unità del programma. Può chiamare FB e funzioni

• FB

Blocco funzione per l’organizzazione del programma. Può chiamare FB e altre funzioni

www.PLCopen.orgPLCopen per l'efficienza nel campo dell'automazione IEC

61131.3 lo standard di programmazione industriale

Page 16 of 38

IEC 61131-3: Gli elementi comuni

• Set di caratteri (Inglesi.........)

• Tipi di dati (BOOL, WORD, INTEGER.................)

• Variabili (VAR, VAR_input, VAR_output..........)

• POUs,Program Organisation Units (Function, Function Block...)

• SFC elementi (Steps, Transitions.................................)

• Elementi di configurazione : (Tasks)

• Base per il software di riutilizzo

www.PLCopen.orgPLCopen per l'efficienza nel campo dell'automazione IEC

61131.3 lo standard di programmazione industriale

Page 17 of 38

No. Parola Chiave Tipo dati Bits

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

BOOL

SINT

INT

DINT

LINT

USINT

UINT

UDINT

ULINT

REAL

LREAL

TIME

DATE

TIME_OF_DAY

or TOD

DATE_AND_TIME

or DT

STRING

BYTE

WORD

DWORD

LWORD

Boolean

Short integer

Integer

Double integer

Long integer

Unsigned short integer

Unsigned integer

Unsigned double integer

Unsigned long integer

Real numbers

Long reals

Duration

Date (only)

Time of day (only)

Date and time of day

Character string

Bit string of length 8

Bit string of length 16

Bit string of length 32

Bit string of length 64

1

8

16

32

64

8

16

32

64

32

64

8

16

32

64

www.PLCopen.orgPLCopen per l'efficienza nel campo dell'automazione IEC

61131.3 lo standard di programmazione industriale

Page 18 of 38

le 5 Lingue del IEC 61131-3 Instruction List Structured Text Sequential Function Chart

Function Block Diagram Ladder Diagram

LD A

ANDN B

ST C

C:= A AND NOT B

A B C

-| |--|/|----------------( )

AND

A C

B

Step 1 N FILL

Step 3

Step 2 S Empty

Transition 1

Transition 2

www.PLCopen.orgPLCopen per l'efficienza nel campo dell'automazione IEC

61131.3 lo standard di programmazione industriale

Page 19 of 38

Ladder Diagram (LD)§ Insieme razionalizzato di simboli a relè § Basato sul noto stile di programmazione simile al disegno

elettrico

A B C

-| |--|/|----------------( )

www.PLCopen.orgPLCopen per l'efficienza nel campo dell'automazione IEC

61131.3 lo standard di programmazione industriale

Page 20 of 38

Instruction List (IL)§ Esecuzione basata su singolo accumulatore § Basato sul tedesco ‘Anweisungsliste’, AWL§ Una sola operazione è consentito per linea, come la

memorizzazione di un valore nel registro accumulatore,

LD A

ANDN B

ST C

www.PLCopen.orgPLCopen per l'efficienza nel campo dell'automazione IEC

61131.3 lo standard di programmazione industriale

Page 21 of 38

Structured Text (ST)§ Linguaggio di alto livello§ La sintassi assomiglia al PASCAL § Sono possibili istruzioni complesse e istruzioni annidate § Supporto per

• Iterazione ad anello (REPEAT-UNTIL; WHILE-DO)• Esecuzione condizionata (IF-THEN-ELSE; CASE) • Funzioni (SQRT(), SIN())

C:= A AND NOT B

www.PLCopen.orgPLCopen per l'efficienza nel campo dell'automazione IEC

61131.3 lo standard di programmazione industriale

Page 22 of 38

Function Block Diagram (FBD)§ Linguaggio grafico, ampiamente usato in Europa § Elementi del programma che appaiono come blocchi in una

forma analoga a uno schema elettrico § Utilizzato in molte applicazioni che coinvolgono il flusso di

informazioni o di dati tra componenti di controllo

AND

A C

B

www.PLCopen.orgPLCopen per l'efficienza nel campo dell'automazione IEC

61131.3 lo standard di programmazione industriale

Page 23 of 38

Sequential Function Chart (SFC)§ Linguaggio grafico che fornisce una

rappresentazione grafica del programma sequenze --> flowchart

§ Basato sul Grafcet francese (IEC 848)§ Struttura portante e adatto per la

diagnostica rapida § Gli elementi di base sono passaggi con

blocchi di azione e transizioni§ I passi consistono in un pezzo di

programma che viene eseguito dopo che una condizione specificata nella transizione

è soddisfatta § Programmazione di compiti complessi,

dividendo in parti più piccole § Ogni elemento può essere programmato in

qualsiasi linguaggio IEC

Step 1 N FILL

Step 3

Step 2 S Empty

Transition 1

Transition 2

www.PLCopen.orgPLCopen per l'efficienza nel campo dell'automazione IEC

61131.3 lo standard di programmazione industriale

Page 24 of 38

POU = Program Organization UnitLe POU consentono il riutilizzo del software dal livello macro (programmi)a livello micro (FB e funzioni).Una POU è costituita da un header (dichiarazione di variabile) e da uncorpo (istruzioni).

Tipi di POU Replicati come: Commenti Program Istanze di programma Main,

sottoprogrammi Function Block Istanze FB Sottoprogramma

con memoria.

Function Funzioni Sottoprogramma senza memoria.

www.PLCopen.orgPLCopen per l'efficienza nel campo dell'automazione IEC

61131.3 lo standard di programmazione industriale

Page 25 of 38

IEC 61131-3 - Tipi di dati§ Tipi bit (BOOL, BYTE, WORD, DWORD, LWORD)

§ Tipi Intero (SINT, INT, DINT, LINT)

§ Tipi Intero senza segno (USINT, UINT, UDINT, ULINT)

§ Tipi Real (REAL, LREAL)

§ Tipi Time (TIME, DATE, TIME_OF_DAY, DATE_AND_TIME)

§ Stringhe di Caratteri (STRING)

Sono possibili tipi di dati definiti dall'utente• Diretto, derivato, enumerati• Array, structure

www.PLCopen.orgPLCopen per l'efficienza nel campo dell'automazione IEC

61131.3 lo standard di programmazione industriale

Page 26 of 38

IEC 61131-3 - Function§ Funzioni stringa di bit (AND, OR, XOR, NOT, SHL, SHR, ROL, ROR)§ Funzioni numeriche (ADD, SUB, MUL, DIV, MOD, EXPT, ABS,

SQRT, LN, LOG, EXP, SIN, COS, TAN, ASIN, ACOS, ATAN)

§ Conversione di tipi (e.g. USINT_TO_DINT, BOOL_TO_BYTE)§ Funzione di selezione (SEL, MIN, MAX, LIMIT, MUX)§ Funzioni di comparazione (GT, GE, EQ, LT, LE, NE)§ Funzioni per stringhe (LEN, LEFT, RIGHT, MID, CONCAT,

INSERT, DELETE, REPLACE, FIND)

Sono possibili function definite dall'utente

www.PLCopen.orgPLCopen per l'efficienza nel campo dell'automazione IEC

61131.3 lo standard di programmazione industriale

Page 27 of 38

IEC 61131-3 - Function Blocks

§ Bistabili (SR, RS, SEMA)

§ Rilevamento di Fronte (R_TRIG, F_TRIG)

§ Contatori (CTU, CTD, CTUD)

§ Temporizzatori (TP, TON, TOF, RTC)

Sono possibili function block definite dall'utente

www.PLCopen.orgPLCopen per l'efficienza nel campo dell'automazione IEC

61131.3 lo standard di programmazione industriale

Page 28 of 38

PLCopen

Missione

Siamo la principale associazione per risolvere problemi relativi al controllo della programmazione e per sostenere l'uso di

standard internazionali in questo campo.

www.PLCopen.orgPLCopen per l'efficienza nel campo dell'automazione IEC

61131.3 lo standard di programmazione industriale

Page 29 of 38

PLCopen è stata fondata il 15 giugno 1992 a Giessen, in Germania.Obiettivo era quello di promuovere IEC 61131-3, informare i clienti e darepiù peso allo standard IEC 61131-3.

PLCopenStandardization in Industrial

Control programming

TC6