1. Controllori Logici Programmabili Sistemi di controllo per impianti

Transcript

1. Controllori Logici Programmabili Sistemi di controllo per impianti
Sistemi di controllo per impianti
industriali
1. Controllori Logici
Programmabili
Cesare Fantuzzi
Automazione Industriale
Ingegneria Meccatronica
Reggio Emilia
Sistemi informativi per
l’elaborazione dati (Office)
• Un sistema per l’elaborazione dati (office)
e’ predisposto a leggere dati in ingresso,
applicare un determinato algoritmo e
terminare.
• Il tempo di elaborazione dati non e’
fondamentale alla correttezza della
elaborazione.
Peculiarita’ dei sistemi per il
controllo
• Un sistema per l’automazione deve controllare un
processo fisico in modo continuativo.
• Il processo di controllo, in modo continuativo,
esegue le seguenti operazioni:
– Acquisizione dei segnali sensoriali
– Applicazione di un algoritmo di controllo
– Attuazione dei segnali di controllo
• Il tempo di elaborazione dati e’ fondamentale per
la correttezza del funzionamento del sistema di
controllo.
1
Ciclo operativo del sistema di
controllo
Vincoli REAL TIME (RT)
Un sistema di controllo e’ ha un funzionamento
corretto se:
– E’ logicamente corretto.
– Termina la sua esecuzione rispettando vincoli temporali
assegnati.
• Sono detti Sistemi a Tempo Reale ( Real Time
System) quei sistemi che falliscono se non sono
rispettati determinati vincoli temporali.
Real Time non significa
necessariamente veloce.
• Esempio 1:
Un sistema di controllo asse necessita di acquisire il riferimento
di posizione dell'asse controllato ogni (in genere) 1/2 millisecondi.
Se l'acquisizione non avviene nel tempo fissato, il sistema non
e’ in grado di controllare efficacemente l'asse.
Il singolo dato e’ di per se’ critico.
Real Time non significa
necessariamente veloce (Cont.)
• Esempio 2:
Un sistema di supervisione e’ programmato per acquisire la
corrente degli avvolgimenti di un motore Brushless per scopi di
diagnostica. Tali acquisizione deve avvenire con periodo (in
genere) di 0.5 millisecondi.
Se l'acquisizione non avviene nel tempo fissato (in modo
saltuario e non continuativo) il dato corrente viene perso. Il
sistema di diagnosi tuttavia continua a funzionare regolarmente.
Il singolo dato non e’ per se critico.
2
Hard e Soft Real Time.
• Un sistema si dice Hard RT se il non
rispetto di un vincolo temporale significa il
fallimento completo dell'applicazione.
• Un sistema si dice Soft RT se il non rispetto
di un vincolo temporale che avvenga in
modo saltuario diminuisce la prestazione
del sistema senza provocarne il fallimento
Sistema multitask
• Il sistema di controllo deve essere strutturato su
processi (Tasks) che:
– vengono eseguiti in parallelo.
– hanno specifiche temporali differenti
• L’Hw e il Sw di un sistema di controllo deve
permettere l’esecuzione di processi paralleli
(sistema multitasks) che debbono essere eseguiti
logicamente in parallelo.
• Il parallelismo e’ in realta’ di tipo simulato, e il
tempo di calcolo della CPU è suddiviso tra i
processi attivi.
Sistemi misti (Hard e Soft)
• Il funzionamento di un sistema meccatronico ha
specifiche miste
– Esecuzione del controllo (Hard RT)
– Supervisione (Soft RT)
– Comunicazione (Hard/Soft RT).
• Inoltre le specifiche sulla esecuzione dei processi
possono essere differenti.
– Acquisizione della posizione di un motore (mS).
– Acquisizione della corrente per il controllo del motore
(microS).
– Acquisizione della temperatura di un forno (sec.).
Priorità di processi
• A ciascun processo viene assegnata una
priorità di esecuzione allo scopo di
assicurare il rispetto dei vincoli RT.
• Ciascun processo viene messo in esecuzione
in base alla sua priorita’ in base alle
politiche di gestione delle priorita’
implementate dal Sistema Operativo.
3
Multitasking
Task scheduling
• Non Preemtive.
• A ciascun task vengono assegnate:
– Periodo di riesecuzione
– Priorita’
– Il processo di priorita’ piu’ elevata viene messo
in esecuzione, senza pero’ interrompere il
processo correntemente attivo (non è adatto
alla gestione di processi RT).
• Preemtive
– Il processo di priorita’ piu’ elevata viene messo
in esecuzione, interrompendo il processo
correntemente attivo.
Multitasking Preemptive
Multitasking non preemptive
4
Comunicazione fra processi
concorrenti
Scambio dati mediante memoria
condivisa.
• I processi devono poter comunicare (es. un
processo per l’acquisizione dei segnali dai
sensori deve mandare i valori acquisiti al
processo per il calcolo dell’algoritmo di
controllo).
• Il meccanismo più semplice per lo scambio
dei dati consiste nell’utilizzare un’area di
memoria condivisa.
Sincronismo dei dati
Utilizzo di un semaforo per la
sincronizzazione di processi
• Occorre mantenere l’inegrita’ dei dati tra
scrittura e lettura.
• Occorre evitare che un processo legga un
vettore mentre un secondo processo lo sta’
aggiornando.
5
Deadlock
Esempio: Pathfinder
• Il meccansimo del semaforo deve essere
utilizzato in modo accorto, in quanto puo’
produrre deadlock di processi e inversione
di priorita’.
Hardware per il controllo di
sistema
• La configurazione di un sistema di controllo industriale si
compone di:
– Un sistema a microprocessore per l’esecuzione dell’algortimo di
controllo.
– Un sistema di acquisizione dati dal campo, in grado di acquisire
segnali analogici, digitali o logici a seconda della applicazione di
controllo;
– Un sistema di attuazione dei segnali di controllo, comprendente
i dispositivi per l'interfacciamento con motori elettrici o attuatori
pneumatici operanti sul campo.
– Dispositivi di temporizzazione (timer), per la gestione real time
dei processi.
– Dispositivi di interfaccia con altri sistemi remoti (RS232, TCP/IP,
....) o con l'utente (tastiera, schermo);
Hardware per il controllo (cont.)
• Un sistema di controllo industriale puo’ essere
realizzato con:
– Una unica scheda, su cui sono concentrati i dispositivi
per il controllo (Sistema integrato o Embedded)
– Distributiti su piu’ schede collegate fra di loro mediante
un bus di comunicazione (sistema a bus) Un bus di
comunicazione e’ un insieme di linee elettriche su cui
vengono trasmesse informazioni e comandi logici (dati,
indirizzi, segnali di sincronizzazione).
6
Un esempio di sistema Embedded
Attuazione del segnale
Microprocessore
Porte seriali
di comunicazione
Il sistema a bus VME
Cestello o Rack
Bus del sistema
Acquisizione del segnale
Sistemi Embedded vs a BUS
Sistemi Embedded
Pro
•Ottimizzazione del
sistema
•Elevate prestazioni
Contro •Necessita’ di
sviluppare l’intero
sistema (HW e
SW).
•Non flessibili.
Sistemi a BUS
•Flessibili
•Sviluppo rapido (solo
software)
•Non ottimizzati.
Scheda alloggiata nel rack
Sistemi Embedded vs a BUS
(cont.)
• I sistemi embedded sono adatti a produzioni
di elevata scala, in cui i maggiori costi di
progetto vengono suddivisi su grandi
volumi di rpoduzione.
• I sistemi a bus sono adatti a produzioni di
bassa scala, in cui la rapididita’ di sviluppo
e i costi limitati di progetto (solo riguardanti
software) sono preferiti.
7
PLC
Componenti del PLC
• IL Programmable Logic Controller è un
sistema a BUS diffusissimo nel campo della
automazione industriale.
• Le sue caratteristiche principali sono:
–
–
–
–
robustezza
semplicita’ di programmaizone
modularita’
espandibilita’
Architettura del PLC
•
•
•
•
•
L'armadio, o cestello o rack, che contiene e racchiude tutti gli altri
moduli che compongono il PLC, assicurandone la connessione
meccanica ed il collegamento elettrico ( bus).
Il modulo di alimentazione , che fornisce alimentazione ai moduli
elettronici installati nel cestello.
Il modulo processore, che esegue le elaborazioni necessarie al
controllo di sistema.
I moduli di ingresso/uscita, che permettono l'interfacciamento del
PLC con i sensori e gli attuatori sul campo.
Altri moduli aggiuntivi richiesti da particolari applicazioni, quali
espansioni di memoria, moduli di conteggio, porte seriali, schede di
rete etc.
Un esempio: moduli presenti nel PLC
Quantum della Telemecanique
• CPU Modules: The CPU is a module residing on
the local I/O backplane. The CPU is a digitally
operating electronic system, which uses a
programmable memory for the internal storage of
user instructions. These instructions are used to
implement specific functions such as:
Alimentatore
Moduli
processori
Moduli di
ingresso/uscita
–
–
–
–
Logic
Process sequencing
Timing
Arithmetic
8
Un esempio (cont.)
• I/O Modules: I/O modules are electrical signal
converters which convert signals to and from field
devices to a signal level and format which can be
processed by the CPU, such as:
–
–
–
–
–
Limit switches
Proximity switches
Temperature sensors
Solenoids
Valve actuators
All I/O modules are optically isolated to the bus,
ensuring safe and trouble-free operation . All I/O
modules are also software configurable.
Un esempio (cont.)
• Special Purpose I/O Modules: Quantum
Intelligent/Special Purpose I/O modules operate
with minimum intervention from the Quantum
controller after initial downloading of module
parameters or programs. The Quantum
intelligent/special purpose I/O modules include
the following.
–
–
–
–
–
High Speed Counter modules (EHC)
ASCII Interface module (ESI)
High Speed Interrupt module(HLI)
Single Axis Motion Modules (MSx)
Multi-Axis Motion Modules (MMS)
Un esempio (cont.)
• Network Interface Modules:
– Ethernet TCP/IP (NOE) Modules: Ethernet TCP/IP
modules make it possible for a controller to
communicate with devices on an Ethernet network
using TCP/IP - de facto standard protocol. An Ethernet
module may be inserted into an existing PLC system
and connected to existing Ethernet networks via fiber
optic or twisted pair cabling.
– LonWorks Modules (NOL) modules provide
connectivity between a PLC controller and a LonWorks
network, based on Echelon’s LonWorks technology.
– Profibus DP module provides connectivity between
PLC controller and a PROFIBUS DP network.
– ControlNet module provides connectivity between PLC
and ControlNet network
Sviluppo di una applicazione
• Con il termine applicazione si intende il la
configurazione e il programma software usato per
l’implementazione del sistema di controllo.
• Lo sviluppo di una applicazione PLC segue i
passi:
– Configurazione degli ingressi (sensori) e delle uscite
(attuatori). La configurazione consiste nello specificare
i dettagli relativi ai punti di ingresso e di uscita in modo
che questi vengano riconosciuti dal PLC.
– Progetto, scrittura e test del programma di controllo.
9
Indirizzamento delle variabili nel
PLC.
Un esempio di applicazione
• Le variabili di ingresso e di uscita sono identificate nella
configurazionedel PLC mediante un riferimento
posizionale:
Schema di esecuzione del PLC
Schema di esecuzione del PLC
(cont.)
10
Problemi potenziali relativi alla
struttura del ciclo PLC
• Il ciclo di esecuzione del PLC ha durata
variabile in modo aleatorio.
• Eventi rapidi possono essere “persi”
nell’intervallo tra un aggiornamento degli
ingressi ed il successivo.
• Il tempo di ciclo di esecuzione del PLC
costituisce un limite alla rapidita’ di risposta
del PLC ad un allarme.
Ciclo PLC con task periodici
Variazioni al ciclo di esecuzione
del PLC
• Per evitare i problemi enunciati, occorre che il
Sistema Operativo possa gestire processi eseguiti
in parallelo con priorita’ assegnate, con
meccanismo preemptive.
• I processi (task) da gestire sono:
– Task in esecuzione continua (free-run).
– Task eseguite periodicamente
– Task eseguite in risposta ad un segnale esterno
(interruzione).
Riassumendo
• In questo capitolo abbiamo visto:
– La struttura e le proprieta’ di esecuzione dei
sistemi di controllo industriale.
– Ci siamo poi soffermati su un particolare
dispositivo per il controllo industriale, il PLC, e
abbiamo discusso quali sono le sue
caratteristiche hardware e di esecuzione.
11