Corso Plc Programmazione DA INVIARE

21
1 Per programmare correttamente un PLC è necessario ... determinare ciò che il sistema deve eseguire ed in quale ordine; determinare il numero e il tipo di I/O (ingressi/uscite) che necessitano per il collegamento dei sensori e degli attuatori; determinare quindi la configurazione hardware che dovrà avere il PLC e le caratteristiche della CPU che supporterà i vari moduli; effettuare l' indirizzamento degli I/O; LA PROGRAMMAZIONE DEL PLC /1

description

eletro

Transcript of Corso Plc Programmazione DA INVIARE

Page 1: Corso Plc Programmazione DA INVIARE

1

Per programmare correttamente un PLC è necessario ...

• determinare ciò che il sistema deve eseguire ed in quale ordine;

• determinare il numero e il tipo di I/O (ingressi/uscite) che necessitano per il collegamento dei sensori e degli attuatori;

• determinare quindi la configurazione hardware che dovrà avere il PLC e le caratteristiche della CPU che supporterà i vari moduli;

• effettuare l' indirizzamento degli I/O;

LA PROGRAMMAZIONE DEL PLC /1

Page 2: Corso Plc Programmazione DA INVIARE

2

• approntare uno schema (elettrico, diagramma di flusso, elenco di azioni) che chiarisca inequivocabilmente la successione delle operazioni da svolgere, comprese eventuali situazioni di allarme;

• codificare lo schema redatto in un programma editabile e trasferibile nella CPU tramite console di programmazione o personal computer;

• inserire nel PLC il programma con i relativi parametri di lavoro;

LA PROGRAMMAZIONE DEL PLC /2

Page 3: Corso Plc Programmazione DA INVIARE

3

• ricercare eventuali errori di programmazione per quanto concerne la sintassi del programma o gli errori di esecuzione;

• testare a tavolino il programma editato con l' ausilio di una stazione di simulazione (PLC, simulatore degli ingressi, personal computer per il monitoraggio);

• collegare il PLC al sistema da controllare e verificarne il corretto funzionamento, con il relativo salvataggio in forma definitiva del programma.

LA PROGRAMMAZIONE DEL PLC /3

Page 4: Corso Plc Programmazione DA INVIARE

4

Normativa IEC1131-3: linguaggi di programmazione

• Diagramma a contatti (Ladder Diagram) LD

• Lista istruzioni (Instruction List) IL

• Schema a blocchi funzionale (Functional Block Diagram)

FBD

• Letterale strutturato (Structured Text) ST

• Sequential Function Chart SFC o diagramma funzionale

in sequenza GRAFCET

LINGUAGGI DI PROGRAMMAZIONE /1

Page 5: Corso Plc Programmazione DA INVIARE

5

Linguaggi di

programmazione

dei PLC

grafici

ladder

sequential function chart

letterali

lista istruzioni

schema a blocchi funzionali

letterale strutturato

LINGUAGGI DI PROGRAMMAZIONE /2

Page 6: Corso Plc Programmazione DA INVIARE

6

Permette una rappresentazione della logica di comando simile allo schema eletromeccanico, poiché utilizza la stessa simbologia.

LADDER DIAGRAM /1

Page 7: Corso Plc Programmazione DA INVIARE

7

• I segni grafici sono strutturati in reti delimitate da barre a sinistra e a destra, dette barre di alimentazione.

• Le linee di collegamento dei segni grafici possono essere orizzontali o verticali e il loro stato di collegamento può essere "ON" o "OFF", che corrisponde ai valori booleani "1" e "0".

• Lo stato di collegamento deve essere considerato come sinonimo di flusso di energia; se è ON il flusso transita se è OFF il flusso non transita.

LADDER DIAGRAM /2

Page 8: Corso Plc Programmazione DA INVIARE

8

• La barra di sinistra è sempre considerata ON, mentre quella di destra non ha uno stato predefinito.

• Una linea orizzontale trasmette lo stato dell' elemento alla sua sinistra a quello situato alla sua destra.

• Una linea verticale deve essere sempre collegata a una linea orizzontale e può incrociare uno o più elementi di collegamento orizzontale. Essa rappresenta lo stato logico OR ed è ON se almeno un elemento orizzontale che incrocia è ON, oppure OFF se tutti gli elementi orizzontali sono OFF.

LADDER DIAGRAM /3

Page 9: Corso Plc Programmazione DA INVIARE

9

• Lo stato di un collegamento verticale è assunto da tutti gli elementi di collegamento che stanno alla sua destra.

• Un contatto è quell' elemento che trasmette alla linea di collegamento orizzontale alla sua destra lo stato logico risultante da un' operazione di AND tra lo stato logico della linea di collegamento orizzontale alla sua sinistra e la funzione di un ingresso, di una uscita o di una variabile di memoria che gli è stata associata.

LADDER DIAGRAM /4

Page 10: Corso Plc Programmazione DA INVIARE

10

• Una bobina assume lo stato dell' elemento di collegamento situato alla sua sinistra, assegnandolo alla variabile booleana che gli è stata destinata.

• Ogni riga circuitale è divisa in due parti:

– zona dei test (con le variabili di ingresso o interne), contenente le condizioni necessarie per l' esecuzione di un' azione,

– zona delle azioni (comprende le bobine di uscita e interne oltre a determinati blocchi funzione), contenente l' uscita o l' operazione risultante dai test ad essa collegati.

LADDER DIAGRAM /5

Page 11: Corso Plc Programmazione DA INVIARE

11

• Nella zona riservata ai test non si possono editare delle bobine, come pure nella zona riservata alle azioni non si possono programmare dei contatti.

• Un contatto di I/O, un' uscita interna, un timer, un counter, possono essere ripetuti all' infinito.

• Non vi è limitazione al numero di contatti da collegare in serie ed in parallelo tra loro.

• Una bobina o un counter o un timer non possono essere programmati più di una volta con lo stesso indirizzo

LADDER DIAGRAM /6

Page 12: Corso Plc Programmazione DA INVIARE

12

Contatto normalmente aperto. Lo stato della linea alla sinistra viene preso dalla linea alla destra solamente se lo stato della variabile booleana del contatto è ON.

Contatto normalmente chiuso. Lo stato della linea alla sinistra viene preso dalla linea alla destra solamente se lo stato della variabile booleana del contatto è OFF.

%I0002

%I0001

ELEMENTI FONDAMENTALI LADDER /1

Page 13: Corso Plc Programmazione DA INVIARE

13

Lo stato del collegamento a sinistra è copiato nella variabile booleana associata.

%Q0001

ELEMENTI FONDAMENTALI LADDER /2

Page 14: Corso Plc Programmazione DA INVIARE

14

ZONA TESTS ZONAAZIONI

ELEMENTI FONDAMENTALI LADDER /3

Page 15: Corso Plc Programmazione DA INVIARE

15

• È composto da una sequenza di istruzioni scritte in linguaggio mnemonico.

• Ciascuna istruzione comprende un indirizzo, un codice, seguito da un eventuale modificatore, e uno o più operandi, separati da virgole.

• Corrispondenza diretta con diagramma ladder.

INSTRUCTION LIST /1

Page 16: Corso Plc Programmazione DA INVIARE

16

Esempio di programma scritto il lista istruzioni e sua corrispondenza con diagramma ladder

INSTRUCTION LIST /2

Page 17: Corso Plc Programmazione DA INVIARE

17

• Ad ogni funzione logica viene associato un blocco funzionale che realizza l’ operazione corrispondente

• Richiede un approccio più matematico che logico

• Il flusso del segnale segue le direzioni:

– uscita a destra di una funzione o di un blocco funzionale

– entrata a sinistra di una funzione o di un blocco funzionale

• Non è permesso il collegamento tra loro delle uscite di un parallelo; di conseguenza è necessario utilizzare una funzione definita blocco OR

FUNCTIONAL BLOCK DIAGRAM /1

Page 18: Corso Plc Programmazione DA INVIARE

18

Esempio di programma scritto il lista istruzioni e sua corrispondenza il diagramma funzionale

FUNCTIONAL BLOCK DIAGRAM /2

Page 19: Corso Plc Programmazione DA INVIARE

19

FASI DI PROGRAMMAZIONE DEL PLC /1

Tabella assegnazione elementi

Page 20: Corso Plc Programmazione DA INVIARE

20

FASI DI PROGRAMMAZIONE DEL PLC /2

Tabella per la programmazione in lista istruzioni

Page 21: Corso Plc Programmazione DA INVIARE

21

FASI DI PROGRAMMAZIONE DEL PLC /3

Tabella per schemi ladder e lista istruzioni