CONTROLLORI LOGICI PROGRAMMABILI PLCcabestano.altervista.org/alterpages/files/PLC.pdf · evoluzione...

Post on 01-Feb-2018

240 views 3 download

Transcript of CONTROLLORI LOGICI PROGRAMMABILI PLCcabestano.altervista.org/alterpages/files/PLC.pdf · evoluzione...

CONTROLLORI LOGICI CONTROLLORI LOGICI PROGRAMMABILI PROGRAMMABILI

PLCPLC

Docente: Miglietta GiovanniMiglietta Giovanni

Generalità sul PLCGeneralità sul PLC

• I primi PLC furono introdotti sul mercato verso la fine degli anni 60. La ragione fondamentale del loro sviluppo era di cercare di eliminare gli alti costi dei controlli basati su logiche a relè.

• La Bedford Associates (Bedford, MA) propose un sistema chiamato Modular Digital Controller (MODICON) alla maggiore casa automobilistica americana. Altre compagnie proposero, contemporaneamente, degli schemi basati su computer, uno dei quali era basato sul PDP-8. Il MODICON 084 fu il primo PLC ad entrare in produzione

Logica cablata Logica cablata e e

logica programmabilelogica programmabile

PROGRAMMABLE LOGIC CONTROLLER PROGRAMMABLE LOGIC CONTROLLER O PLCO PLC

• I PLC SONO DISPOSITIVI DI ELABORAZIONE DESTINATI A RIMPIAZZARE I CIRCUITI A RELÈ UTILIZZATI PER REALIZZARE L’AUTOMAZIONE DI UN IMPIANTO

• I PLC SONO PRESENTI IN TUTTE LE FASI DELLA PRODUZIONE INDUSTRIALE, OVUNQUE SIA NECESSARIO UN CONTROLLO ELETTRICO DI UNA MACCHINA.

Evoluzione storicaEvoluzione storica

IL PLC È NATO PER SOSTITUIRE SISTEMI DI AUTOMAZIONE REALIZZATI CON

LOGICHE CABLATE A RELÈ

QUADRI A RELÈ

• CON I QUADRI A RELÈ LA FUNZIONE CHE SI VUOLE REALIZZARE È DEFINITA RIGIDAMENTE DAL TIPO DI CONTATTO DI RELÈ CHE SI UTILIZZA (NORMALMENTE APERTO O NORMALMENTE CHIUSO) E DAI SUOI COLLEGAMENTI

• OGNI MODIFICA DEL CONTROLLO COMPORTA QUINDI MODIFICHE AL CABLAGGIO O UN ADEGUAMENTO DEI RELÈ

• UN MODESTO VANTAGGIO DELLA SOLUZIONE A RELÈ CONSISTE NEL FATTO CHE, TRATTANDOSI DI UN COMPONENTE DI POTENZA, ESSO PERMETTE L'INTERFACCIAMENTO DIRETTO DEL CONTROLLO CON IL CAMPO

• IL RELÈ È UN OGGETTO INGOMBRANTE E POCO AFFIDABILE (È COMUNQUE UN DISPOSITIVO MECCANICO E QUINDI SOGGETTO AD USURA)

Caratteristiche di un PLCCaratteristiche di un PLC

Numero max. I/O Tipologia moduli di I/O Criterio costruttivo (monoblocco, modulare) Massima dimensione del programma (capacità di memoria) Set di istruzioni Tempo di scansione Espandibilità Moduli speciali Periferiche Collegabilità in rete

Categorie di PLCCategorie di PLC

In base ai punti di input-output gestibili ed alla capacità di memoria, i PLC si suddividono nelle seguenti categorie:- Micro-PLC: fino a 64 punti di input-output digitali, memorie da 1 a 2 KB;- Piccoli PLC: da 64 a 512 punti di input-output digitali e/o analogici, memoria fino a 4 KB, connessione in rete;- Medi PLC: da 512 a 2048 punti di input-output digitali e/o analogici, memorie di decine di KB, connessione in rete e moduli speciali;- Grandi PLC: massime caratteristiche di capacità e completezza, sia hardware che software.Si hanno PLC di:· gamma bassa, quando controllano fino a 64 I/O· gamma media, quando controllano tra 64 e 512 I/O· gamma alta, quando controllano più di 512 I/O.

Si dicono compatti o monoblocco i PLC che si presentano in una configurazione rigida che non può essere quasi mai modificata.Si dicono invece modulari, quelli che sono configurabili a piacere dall’utente in base alle sue esigenze.

Struttura del PLCStruttura del PLC

PLC Siemens SIMATIC S7-400

PLC Telemecanique serie Twido

PLC Siemens SIMATIC S7-312

PLC Hitachi EH-150

PLC Siemens S7-300

PLC Telemecanique TSX MicroPLC Telemecanique TSX Premium

Produttori di P.L.C.

•Siemens•Allen-Bradley

•Omron•Telemécanique

•GE Fanuc•Toshiba

•Klockner-Moeller

•Mitsubishi•Matsushita

•Bosh•Hitachi

•Modicon

I sistemi di controllo e il PLCI sistemi di controllo e il PLC

Esempio di sistema di controllo con PLC

PLC a singolo processore

PLC multi-processore

Rete di PLC

Struttura gerarchica del SW di un PLC

Comunicazione tra PLC

                                     

BatiBus, InterBus S, CAN (DeviceNet), LONWorks

InterBus S, CAN (DeviceNet), LONWorks, Profibus DP-PA-FMS,WorldFIP

Profibus PA-FMS, WorldFIP, FieldBus Fondation, FieldBus IEC 61158

Ethernet, Token Bus

Sensori

micro-PLC,dispositivi intelligenti

PLC

Controllo,Supervisione

bit bytes messaggi file

8 30 256

Bus di Sensori

Bus di Dispositivi

Bus di Campo

bit

 

Relè programmabili

ZenZelioLogo

Schema a blocchi della struttura di un PLCSchema a blocchi della struttura di un PLC

Confronto logica cablata e logica programmata

•Spazi•Tempi•Affidabilità•Consumi•Velocità•Costi

SpaziPLC Logica cablata

Minor ingombro

L’eliminazione dei componenti elettromeccanici riduce gli spazi necessari

Maggior ingombro

Il cablaggio dei componenti elettromeccanici richiede maggiori spazi

Tempi di esecuzionePLC Logica cablata

Minori

•Eliminazione cablaggi•Eliminazione collaudi (eseguibili al banco)•Nessuna o ridotte modifiche al circuito per modifiche all’impianto

Maggiori

•Installazione componenti•Collaudi•Eventuali modifiche all’impianto richiedono modifiche al circuito

AffidabilitàPLC Logica cablata

Maggiore

•Assenza di parti meccaniche in movimento

Sensibile alle interferenze (richiede protezione)

Minore

•Apparecchiature meccaniche con vita limitata

Insensibile alle interferenze

Consumi

PLC Logica cablataRidotti consumi di energia

Maggiori consumi di energia (in relazione all’impianto realizzato)

Velocità

PLC Logica cablata

Minore velocità

(a causa dei tempi richiesti dall’esecuzione del programma, ma sufficiente al corretto funzionamento degli impianti )

Maggiore velocità

Costi

PLC Logica cablata

Conveniente per applicazioni non eccessivamente semplici

Conveniente per applicazioni molto semplici

Componenti fondamentali di un PLCComponenti fondamentali di un PLC

ARMADIO (CESTELLO O RACK)ARMADIO (CESTELLO O RACK)- CONTIENE GLI ALTRI MODULI- ASSICURA LA CONNESSIONE ELETTRICA ATTRAVERSO IL

BUS SUL FONDO DEL RACK

MODULO PROCESSOREMODULO PROCESSORE- SCHEDA A MICROPROCESSORE- CONTROLLA E SUPERVISIONA TUTTE LE OPERAZIONI

ESEGUITE ALL’INTERNO DEL SISTEMA

ALIMENTATOREALIMENTATORE- ALIMENTAZIONE PER TUTTE LE SCHEDE PRESENTI NEL

RACK

TERMINALE DI PROGRAMMAZIONETERMINALE DI PROGRAMMAZIONE- QUALSIASI PERSONAL COMPUTER DOTATO DI SCHEDA

PER LA COMUNICAZIONE SERIALE (RS232 / RS485)

MODULI I/OMODULI I/O- SCHEDE CHE PERMETTONO L’INTERFACCIAMENTO DEL

MODULO PROCESSORE CON IL MONDO ESTERNO

Struttura del PLCStruttura del PLC

Un PLC è composto da un alimentatore, dalla CPU che in certi casi può avere interna o esterna una memoria RAM o Flash o EPROM, da un certo numero di schede di ingressi digitali e uscite digitali, e nel caso in cui sia necessario gestire grandezze analogiche, il PLC può ospitare delle schede di ingresso analogiche o di uscita analogiche.Il PLC normalmente opera in rete con altri PLC, quindi sono necessarie dei moduli/schede di comunicazione adatte al protocollo di rete già implementato sugli altri PLC.Nel caso di operazioni di movimentazione, come nel campo della robotica, il PLC ospita delle schede acquisizione controllo assi, cioè delle schede molto veloci e sofisticate che permettono di gestire spostamenti e posizionamento.

Armadio (o Rack o Guida Profilata)Contiene i vari moduli assicurandone la connessione meccanica ed elettrica (tramite bus) e la schermatura. Le sue caratteristiche fondamentali sono il numero di slot, il grado di protezione, le dimensioni e il tipo di fissaggio.

Modulo alimentatoreFornisce l’alimentazione stabilizzata ai moduli del rack. Le sue caratteristiche principali sono la potenza massima erogabile, la connettibilità in parallelo (per aumentare la potenza o per motivi di ridondanza), la possibilità di inviare al PLC un segnale di shutdown in caso di mancanza di alimentazione, la presenza di batterie tampone e di indicatori di stato.

CPULa CPU è il cervello del PLC. La CPU è una scheda complessa basata su un microprocessore con un sistema operativo proprietario, e con una zona di memoria a disposizione del programma utente, cioè del programma di automazione.La memoria utente è spesso esterna come ad esempio nel caso di memoria EPROM. Il vantaggio di una memoria esterna è legata alla semplicità di programmazione o di modifica dello stesso.La CPU durante il funzionamento a regime, colloquia con tutte le schede connesse sul BUS del PLC, trasferendo dati e comandi sia verso il mondo esterno, sia dal mondo esterno.Una delle caratteristiche peculiari delle CPU dei PLC è la loro capacità di poter gestire le modifiche del programma di gestione del processo durante il normale funzionamento. Questa possibilità è estremamente utile nel caso di impianti che devono essere sempre attivi.

Moduli di ingresso digitaliI moduli di ingresso digitali sono utilizzati per il controllo di grandezze "digitali", cioè di tensioni a due valori (ad esempio 0V o 24V, oppure 0V 110V). Ogni modulo può gestire da 4 a 32, o 64 ingressi digitali differenti. I segnali dal campo vengono fatti arrivare con cavi elettrici fino alla morsettiera del modulo.

Moduli di uscita digitaliI moduli di uscita digitali sono utilizzati per i comandi di attuatori digitali. Ad esempio un relé è un attuatore digitale, in quanto può avere soltanto due stati stabili: diseccitato, o eccitato. Altro esempio di attuatore è una valvola digitale a due stati: aperta, chiusa. Anche nel caso di schede di uscita digitali, si possono gestire da un minimo di 4 ad un massimo di 64 uscite digitali differenti.

Moduli di ingresso analogiciQuesto tipo di moduli di ingresso permettono il controllo di grandezze elettriche il cui valore può variare entro un intervallo. Le grandezze in gioco sono in tensione o in corrente. Ad esempio sono disponibili moduli di ingresso analogiche in corrente, con un intervallo variabile tra 4mA e 20mA. Molti produttori di PLC rendono disponibili moduli con ingressi analogici per sonde di temperatura sia Pt100 che termocoppie, T, J, K ecc. Questi moduli sono disponibili con varie risoluzioni (8-12-14-16 bit) e con 1 o più ingressi distinti disponibili in morsettiera o connettore.

Moduli di uscita analogiciI moduli di uscita analogici permettono di controllare degli attuatori variabili. Ad esempio è possibile comandare un motore elettrico tramite un inverter variandone la velocità da zero alla sua massima velocità.I moduli di I/O analogici realizzano anche le conversioni D/A e A/D.

Schede di comunicazioneIl PLC durante il suo funzionamento può comunicare con computer, con altri PLC oppure con altri dispositivi.La comunicazione con computer e altri dispositivi avviene tramite tipi di connessione standard come:• RS232 • RS422/RS485 • TCP/IP

Moduli specialiNe esistono di molti tipi. I principali sono:• moduli di I/O remoto (posti in un rack diverso da quello del PLC),• moduli per connessione in rete (per bus di campo, ethernet,...),• moduli per controllo PID,• moduli per la lettura di sensori particolari (termocoppie, encoder,…),• moduli d’interfaccia operatore (tastierini, display,…),• moduli di backup (CPU di riserva sincronizzate con quella principale, che le subentrano in caso di malfunzionamento).

Terminale di programmazioneVi sono terminali di tipo dedicato che si collegano direttamente al PLC tramite una porta di comunicazione e sono dotati di una tastiera per l’inserimento delle istruzioni e di un display per il controllo del programma. Sono sempre più diffusi sistemi di sviluppobasati su PC, con cui si effettua off-line la programmazione del codice da memorizzaresul PLC. Si utilizzano dei pacchetti software appositi. I terminali PC sono connessi al PLC direttamente o via rete. Spesso consentono anche il monitoraggio del PLC durante il suo normale funzionamento.

Ingressi uscite Ingressi uscite del PLCdel PLC

Sezione ingressi

E’ l’hardware di interfaccia tra Input e CPU

PulsantiPulsantiSelettoriSelettoriFinecorsaFinecorsaFotocelluleFotocelluleTrasduttoriTrasduttori

Circuitoadattatore

Memoriasegnali CPU

Morsettiera

Sezione ingressi

Gli ingressi possono essere:

Digitali ed assumere solo due stati logici detti 0 – 1 o On – Off.

Analogici ed assumere qualsiasi valore compreso tra due estremi (range) definiti

0

1

Fronte di discesa

Fronte di salita

Durata segnale

t

t

Sezione ingressi

Gli ingressi vengono collegati con opportuni morsetti di collegamento debitamente numerati e il loro stato viene monitorato con led che risultano accesi per livello di ingresso 1 e spenti per livello di ingresso 0 Ingressi

Rappresentazione dei fotoaccoppiatori

• I fotoaccoppiatori sono usati per isolare i circuiti interni dei PLC dagli ingressi, ciò consente di eliminare la possibilità che dei disturbi elettrici possano entrare direttamente nei circuiti elettrici interni del PLC.

C om une

Sezione uscite

E’ l’hardware di interfaccia tra CPU e Output

ContattoriRelèElettrovalvoleCircuiti elettriciDisplayRegolatori

Circuitoadattatore

MemoriasegnaliCPU

Morsettiera

NPN AGLI INGRESSIPLCPNP

AGLI INGRESSIPLC

I sensori NPN devono essere connessi con un uscita al PLC input e l’altra uscita alla massa dell’alimentazione. Se i sensori non sono alimentati dal PLC, allora le masse devono essere collegate insieme.

I sensori PNP devono essere connessi con un uscita alla tensione positiva e con l’altra agli ingressi del PLC. Anche in questo caso se i sensori non sono alimentati dal plc, le tensioni V+ devono essere connesse insieme. I sensori PNP sono comunemente usati in Europa.

 

Digital I/O with NPN and PNP configuration selection

PNP configuration

Hardware Update

Digital I/O with NPN and PNP configuration selection

NPN configuration

Hardware Update

Sezione uscite

Le uscite vengono collegate con opportuni morsetti di collegamento debitamente numerate e il loro stato viene monitorato con led che risultano accesi per livello di uscita 1 (on) e spenti per livello di uscita 0 (off)

Uscite

Ingressi digitaliIngressi digitaliPer ingressi digitali si intendono quei morsetti del PLC ai quali può esserecollegato un contatto on/off (digitale), quale un termostato, pressostato,finecorsa, pulsante, ecc.Normalmente per gli ingressi digitali si utilizza la tensione 24Vcc, quindi nelquadro con il PLC si rende necessario l'installazione di un alimentatore a lorodedicato.Per separare i circuiti interni della CPU con la tensione provenientedall’impianto, ogni scheda di ingresso è dotata di appositi optoisolatori (dettianche fotoaccoppiatori), che resistono a differenze di potenziale anche di 1500V (tensione di isolamento).

MemoriaMemoriaLa memoria di un PLC è organizzata per aree distinte:• area del sistema operativo (ROM),• area di lavoro del sistema operativo (RAM),• area di I/O (RAM),• area dei programmi utente (RAM durante lo sviluppo, poi PROM o EPROM),• area dei dati utente (RAM).La memoria a disposizione dei programmi utente varia tipicamente da circa mezzo kiloword a qualche centinaio di kiloword, con word di 8 o 16 bit.

Le EPROM sono ormai da considerare obsolete e non vengono praticamente più usate. Sono state sostituite dalle Memorie flash o EEPROM (Electrical Erasable Programmable Read Only Memory) che possono essere cancellate elettricamente senza dover ricorrere ai raggi UV.

Una memoria flash è una memoria permanente riscrivibile (EEPROM) organizzata a blocchi, ovvero un circuito semiconduttore sul quale è possibile immagazzinare dati in forma binaria mantenendoli anche in assenza di alimentazione. TSX Micro

MemoriaLa memoria di un PLC può essere divisa in diverse aree, in base all’utilizzo che ne fa:Area del sistema operativo[2] (ROM); è quella destinata alla memorizzazione permanente dei programmi del sistema operativo.Area di lavoro del sistema operativo (RAM); è quella dedicata alla memorizzazione delle variabili temporanee utilizzate dai programmi del sistema operativo.Area di I/O (RAM); è quella nella quale sono memorizzati i valori relativi agli ingressi e i valori da assegnare le uscite.Area programmi utente [1] (RAM - PROM per il programma finale), è quella utilizzata per la memorizzazione del programma da eseguire durante la fase di controllo.Area dati utente (RAM); è quella destinata alla memorizzazione del valore delle variabili temporanee del programma utente.Area funzioni di sistema (RAM); è quella utilizzata per l'accesso alle “funzioni di sistema” definite dall'utente (timer, contatori, ecc…).

[1] Il programma utente è il software che contiene le istruzioni specifiche per realizzare le operazioni necessarie per il controllo del processo → va modificato di volta in volta, in funzione delle esigenze.[2] Il sistema operativo si distingue dal programma utente, per i seguenti aspetti: è il software che si occupa di tutte le operazioni per la gestione della funzionalità di base del PLC: lettura degli ingressi, copia degli ingressi, copia delle uscite, ecc.

La memoria dei PLC è organizzata in word di 8 o 16 bit.L’informazione digitale di base è il bit, una cella di memoria che può valere 0 (quando non attivo) o 1 (quando attivo).I bit vengono raggruppati a loro volta in blocchi:

Principio di funzionamento del PLCPrincipio di funzionamento del PLC

SENSORI

Ingressi

Consensi

HARDWARE

SOFTWARE

Uscite

Comandi

ATTUATO

IR

PLC

La scansione La scansione del PLCdel PLC

La scansione del PLC e i tempi di esecuzione

Il PLC ha un funzionamento di tipo sequenziale: esso esegue le funzioni programmate con ripetitività, da quando viene alimentato e messo in stato di RUN fino a quando lo si porta in stato di STOP e si toglie alimentazione. Il ciclo che esso compie viene denominato ciclo di scansione, mentre il tempo che impiega a compierlo si chiama tempo di scansione.

Modalità di funzionamento della CPU di un PLCModalità di funzionamento della CPU di un PLC

La scansione del PLCLa scansione del PLC

LETTURA DELLO STATO DITUTTI GLI INGRESSI

Memorizzazione nel registroimmagine ingressi

ELABORAZIONE SEQUENZIALEISTRUZIONI

Memorizzazione risultati nelregistro immagine uscite

ATTIVAZIONE SEQUENZIALEDI TUTTE LE USCITE

Scansione sincrona di ingresso e di uscita

RII: Registro Immagine Input o

IPI: Immagine di Processo degli Ingressi (PAE)

RIO: Registro Immagine Output o

IPU: Immagine di Processo delle Uscite (PAA)

Terminologia ingressi/Uscite:Input ↔ EingangOutput ↔ Ausgang

PLC in RUN 11a a fasefase:

lettura ingressi (tempo: ~1μs ad ingresso) e memorizzazione nel RII (PAE nel Siemens)

22aa fase fase:

elaborazione programma e aggiornamento RIO (PAA)

tempo di esecuzione programma: ~1ms x 1000 istruzioni

Tempo del ciclo di scansione: 5Tempo del ciclo di scansione: 5÷20 ms÷20 ms

33aa fase fase:

posizionamento uscite

N.B.: l’aggiornamento degli Input non è in tempo reale

+ fase di autodiagnosi: esecuzione delle operazioni di autodiagnosi

Fasi di esecuzione di un programmaFasi di esecuzione di un programma

Il PLC può vedere la variazione di un ingresso solo durante

lo step di analisi degli ingressi.  

• Per evitare questi problemi, un ingresso dovrebbe durare per almeno 1 tempo di scansione + 1 di lettura degli ingressi.

Funzione di allungamento dell’impulso

IMPULSOALLUNGATO

Funzione Interrupt il PLC interrompe ciò che sta facendo per eseguire un sottoprogramma di interrupt.

Dopo che ha eseguito tale sottoprogramma, torna indietro a completare le operazioni che aveva momentaneamente sospeso per poi continuare il normale processo di scansione .

La programmazione La programmazione del PLCdel PLC

Il PLC, per operare, ha bisogno di un Il PLC, per operare, ha bisogno di un programmaprogramma scritto dall’operatore e introdotto scritto dall’operatore e introdotto

nella sua memoria centrale (memoria nella sua memoria centrale (memoria utente). Il utente). Il

programma viene scritto con particolari programma viene scritto con particolari linguaggi appositamente studiati per i PLC: i linguaggi appositamente studiati per i PLC: i

così detti “così detti “linguaggi dedicatilinguaggi dedicati”.”.

CONTROLLORI A LOGICA PROGRAMMABILECONTROLLORI A LOGICA PROGRAMMABILE

PROGRAMMAZIONEPROGRAMMAZIONE

LINGUAGGI DILINGUAGGI DI PROGRAMMAZIONEPROGRAMMAZIONE

LINGUAGGI LINGUAGGI DIDI

PROGRAMMAZIONEPROGRAMMAZIONE

LINGUAGGI LINGUAGGI DIDI

PROGRAMMAZIONEPROGRAMMAZIONE

CONTROLLORI A LOGICA PROGRAMMABILECONTROLLORI A LOGICA PROGRAMMABILE

GRAFICIGRAFICI(Simbolici)(Simbolici)GRAFICIGRAFICI(Simbolici)(Simbolici)

LETTERALILETTERALI(Alfanumerici)(Alfanumerici)LETTERALILETTERALI(Alfanumerici)(Alfanumerici)

A CONTATTIA CONTATTI(Ladder, KOP)(Ladder, KOP)A CONTATTIA CONTATTI(Ladder, KOP)(Ladder, KOP)

A BLOCCHI FUNZIONALIA BLOCCHI FUNZIONALI(Porte logiche, FUP)(Porte logiche, FUP)

A BLOCCHI FUNZIONALIA BLOCCHI FUNZIONALI(Porte logiche, FUP)(Porte logiche, FUP)

A BLOCCHI SEQUENZIALIA BLOCCHI SEQUENZIALI(Grafcet)(Grafcet)

A BLOCCHI SEQUENZIALIA BLOCCHI SEQUENZIALI(Grafcet)(Grafcet)

A LISTA ISTRUZIONIA LISTA ISTRUZIONI(Boolean, AWL)(Boolean, AWL)

A LISTA ISTRUZIONIA LISTA ISTRUZIONI(Boolean, AWL)(Boolean, AWL)

EVOLUTIEVOLUTI(Basic, ...)(Basic, ...)EVOLUTIEVOLUTI(Basic, ...)(Basic, ...)

LINGUAGGI GRAFICI

• SCF - SEQUENTIAL FUNCTION CHART

• FBD - FUNCTION BLOCH DIAGRAM

• LD - LADDER DIAGRAM

LINGUAGGI TESTUALI

• ST - STRUCTURATED TEXT

• IL - INSTRUCTION LIST

CONTROLLORI A LOGICA PROGRAMMABILECONTROLLORI A LOGICA PROGRAMMABILE

LINGUAGGI DILINGUAGGI DI PROGRAMMAZIONE PROGRAMMAZIONE Diagramma LadderDiagramma Ladder

11 22

1010

1010

1 = Pulsante marcia (S2)1 = Pulsante marcia (S2)

2 = Pulsante arresto (S1)2 = Pulsante arresto (S1)

10 = Contattore (K)10 = Contattore (K)

CONTROLLORI A LOGICA PROGRAMMABILECONTROLLORI A LOGICA PROGRAMMABILE

Indirizzo Istruzione OperandoIndirizzo Istruzione Operando

000000

001001

002002

003003

STRSTR

OROR

AND NOTAND NOT

OUTOUT

11

1010

22

1010

1 = Pulsante marcia (S2)1 = Pulsante marcia (S2)

2 = Pulsante arresto (S1)2 = Pulsante arresto (S1)

10 = Contattore (K)10 = Contattore (K)

LINGUAGGI DILINGUAGGI DI PROGRAMMAZIONE PROGRAMMAZIONE Lista istruzioniLista istruzioni

CONTROLLORI A LOGICA PROGRAMMABILECONTROLLORI A LOGICA PROGRAMMABILE

S2 = Pulsante marciaS2 = Pulsante marcia

S1 = Pulsante arrestoS1 = Pulsante arresto

K = ContattoreK = Contattore

S2S2

KK

S1S1 KK

LINGUAGGI DILINGUAGGI DI PROGRAMMAZIONE PROGRAMMAZIONE Porte logichePorte logiche

≥≥ 11≥≥ 11

&&&&

(S2 + K) (S2 + K) •• S1 = KS1 = K

CONTROLLORI A LOGICA PROGRAMMABILECONTROLLORI A LOGICA PROGRAMMABILE

S1S1

S2S2

K K K K MotoreMotorein marciain marciaMotoreMotore

in marciain marcia

S2 = Pulsante marciaS2 = Pulsante marcia

S1 = Pulsante arrestoS1 = Pulsante arresto

K = ContattoreK = Contattore

LINGUAGGI DI PROGRAMMAZIONE Grafcet

2222

1111 KK KK MotoreMotorefermofermo

MotoreMotorefermofermo

Fine parte introduttiva

KOP: CORRISPONDE ALLA PROGRAMMAZIONE MEDIANTE SCHEMA A CONTATTI (LD)

FUP: CORRISPONDE ALLA PROGRAMMAZIONE MEDIANTE SCHEMA LOGICO (FBD)

AWL: CORRISPONDE ALLA PROGRAMMAZIONE CON LISTA DI ISTRUZIONI (IL)

LINGUAGGIO SIEMENS STEP5 / STEP7LINGUAGGIO SIEMENS STEP5 / STEP7

Linguaggi di programmazioneLinguaggi di programmazione

Il PLC per ottemperare ai suoi compiti deve essere programmato. La programmazione del PLC è effettuata normalmente con un PC sul quale un software specializzato permette di creare programmi da scaricare nella memoria della CPU del PLC.Questi software di programmazione possono leggere il programma direttamente dalla memoria della CPU, e visualizzare il programma sul PC.Normalmente il programma viene scritto su PC, quindi scaricato sul PLC, e salvato sul PC stesso, per ulteriori modifiche o per sicurezza.La normativa IEC 1131-3 del 1993 ha standardizzato 5 linguaggi di programmazione, di cui 3 grafici e 2 testuali.La Normativa è stata successivamente aggiornata con l'uscita della "CEI EN 61131-3" detta anche "CEI 65-40" Prima Edizione 1-giugno-1996.

Linguaggi di programmazioneLinguaggi di programmazione

Linguaggi graficiLadder diagram (LD o KOP) detto Linguaggio a contatti - È il linguaggio più usato fino a pochi anni fa, in quanto era la trasposizione informatica dei circuiti elettrici usati dagli elettrotecnici. L'automazione industriale infatti era basata su sistemi a logica cablata, il PLC (controllore di logica programmabile) ha permesso di trasportare i concetti della logica cablata nel linguaggio Ladder. Il programmatore semplicemente utilizza simboli logici corrispondenti a segnali di ingresso e di uscita per implementare la logica non più cablando i relé, ma disegnando gli schemi elettrici nel software di programmazione.Function Block Diagram (FBD o FUP) detto Diagramma a blocchi funzionali - Analogo ai diagrammi circuitali. Sequential Function Charts (SFC) detto Diagramma funzionale sequenziale - Viene usato anche come strumento di specifica. Tale linguaggio permette di implementare facilmente una macchina (o automa) a stati finiti.

Linguaggi testualiInstruction List (IL o AWL) detto Lista di istruzioni - Linguaggio di basso livello molto simile all'Assembler. Può essere facilmente ricavato dal Ladder. Structured Text (ST) detto Testo strutturato - Linguaggio di alto livello simile al C++.

Linguaggio Ladder Diagram: contattiLinguaggio Ladder Diagram: contatti

N.B.: non confondere lo stato fisico con lo stato logico del contattoN.B.: non confondere lo stato fisico con lo stato logico del contatto

Contatto rilevatore di fronte.Simbolo:

---|P|--- (fronte positivo)Il contatto rilevatore di fronte P si chiude per un solo ciclo quando il bit ad esso associato passa da 0 ad 1; resta aperto in tutti gli altri casi.

---|N|--- (fronte negativo)Il contatto rilevatore di fronte N si chiude per un solo ciclo quando il bit ad esso associato passa da 1 a 0; resta aperto in tutti gli altri casi.

Linguaggio Ladder Diagram: bobineLinguaggio Ladder Diagram: bobine

N.B.: Il valore assunto dalla bobina dipende dal N.B.: Il valore assunto dalla bobina dipende dal RLCRLC dell’espressione dell’espressione booleana alla sua sinistra.booleana alla sua sinistra.

Linguaggio Ladder DiagramLinguaggio Ladder DiagramRegole fondamentaliLa corrispondenza di un programma LD (per definizione sequenziale) con una rete elettrica (per natura sede di fenomeni simultanei) non può essere totale. Per eliminare ogni possibile ambiguità a ciò conseguente, si stabiliscono quindi nella definizione di LD le regole enunciate nel seguito. Regola 1:La corrente può fluire nei contatti e nelle bobine soltanto da sinistra verso destra. Regola 2:I rung vengono esplorati dal PLC dal primo in alto all’ultimo in basso, e giunti all’ultimosi ricomincia dal primo. Di conseguenza, l’ordine dei rung è rilevante (come lo è quellodelle istruzioni in un programma e come non lo è quello di collegamenti elettrici in parallelo). Regola 3:La sincronizzazione delle variabili del programma con ingressi e uscite avviene secondoil principio della copia massiva (immagine di processo):• si leggono gli ingressi (che quindi ai fini del programma restano costanti per tutto il ciclo);• si eseguono tutti i rung (a meno di salti, che vedremo poi) e si scrivono (cioè si assegna un valore a) tutte le bobine normali (ci sono anche quelle a ritenuta e anch’esse le vedremo poi), col che ogni bobina conserva il suo valore fino a che non viene riscritta in un ciclo successivo;• si aggiornano le uscite;• si ricomincia tutto da capo.Osservazione importanteLD è un linguaggio che descrive il ciclo operativo del PLC, nel senso che “in un programma LD è scritta la sequenza delle cose che il PLC deve fare ad ogni ciclo”.

Il Sequential Function Chart (SFC)Il Sequential Function Chart (SFC)• Formalismo grafico per la descrizione del ciclo operativo di macchine automatiche.

• Definito dalla Norma IEC 61131-3 tra gli elementi comuni, ma trova diretta implementazione come linguaggio di programmazione in molti tools di sviluppo.

• Facilita la scomposizione gerarchica del funzionamento della macchina e la strutturazione del programma in sotto–parti più semplici .

• Evidenzia il comportamento sequenziale della macchina o di sue componenti.

Note:• Linguaggio formale: Il progetto di un macchina passa attraverso una serie di passaggi (dalla analisidella commessa del cliente, la traduzione in specifiche tecniche, e la realizzazione tecnica) in cui persone con diversi profili professionali lavorano sul progetto comune. Tali persone necessitano di un linguaggio formale comune.• Approccio top-down: dove il funzionamento della macchina viene scomposto in passi fondamentalianalizzati separatamente, riducendo così la complessità di ogni singolo elemento che compone, in questo caso, la logica del sistema di controllo.• Comportamento sequenziale: Descrivendo il comportamento ingresso–uscita della macchina, occorre fornire una configurazione di controllo per una qualunque combinazione degli stimoli (ingressi acquisiti dai sensori). Una descrizione ingresso-stato-uscita porta ad una descrizione molto più semplice.

Fasi di programmazione del PLCFasi di programmazione del PLC

1. Studio del sistema: mediante analisi esplicativa delle operazioni o con schemi di flusso

2. Assegnazione variabili: compilare le tabelle di assegnazione INPUT, OUTPUT (indirizzamento I/O) e delle variabili interne

3. Scelta del linguaggio di programmazione

4. Scrittura del programma, codifica e trasferimento

5. Debug e archiviazione finale

Indirizzamento I/OIndirizzamento I/O

%IXY.i

%QXY.i

X: indirizzo del rack

Y: posizione fisica del modulo nel rack

i: numero della via

N.B.: per il rack 0 si può omettere l’indicazione

- Rack di base - Rack di espansione- Slot- Modulo- N° vie del modulo

10

2

3

4

5

6

7

8

9

10

- Alimentatore + CPU (modulo 0)

- CPU: TSX 3722 V2.0

- I/O: DMZ 28 DTK %I1.i (i=0÷15) (modulo 1)

%Q2.i (i=0÷11) (modulo 2)

Moduli I/O a distanza o remoti

TSX MicroTSX Micro

- Alimentatore: TSX PSY 2600

- CPU: TSX P5720 (TSX 5720 V1.5) (modulo 0)

- I: TSX DEY 16D2 %I1.i (i=0÷15) (modulo 1)

%I2.i (i=0÷15) (modulo 2)

- O: TSX DSY 32T2K %Q3.i (i=0÷31) (modulo 3)

TSX PremiumTSX Premium

Terminale di programmazione

R I I R I O CPU

Input Output

Collegamento PLC - Campo

%I1.0

%I1.1

%I1.2

%Q2.0

%Q2.1

%Q2.2

+ 24 Vcc 0 Vcc

RS 232cavo seriale

Si fa riferimento al PLC TSX Micro

CAMPO PLC CAMPO

TABELLA DELLE VARIABILITABELLA DELLE VARIABILI

Tabella I/OTabella I/O

Sigla Denominazione Cablaggio esterno Indirizzo PLC

Tabella variabili interneTabella variabili interne

Oggetti di memoria

Oggetti di sistema

Costanti

FB predefiniti

1° esercizio1° esercizioComando di un impianto luci.Dati due pulsanti (PS1 e PS2), e quattro luci (LS1, LS2, LS3 e LS4), realizzare la seguente sequenza:1. premendo PS1, si accende LS1;2. rilasciando PS1, si accende anche LS2;3. premendo una seconda volta PS1, si accende anche LS3;4. rilasciando PS1, si accende anche LS4;5. premendo una terza volta PS1, si spengono contemporaneamente LS1, LS2, LS3 e LS4.6. Possibilità di azzerare il ciclo in qualsiasi momento premendo PS2.

Utilizzando il PLC TSX Micro, in dotazione al Laboratorio di Sistemi, sirichiede:• la descrizione della sequenza mediante il Grafcet;• lo schema del collegamento PLC – campo e la tabella delle variabili;• il programma in linguaggio LD con il software PL7 Pro V4.2