Sei sulla pagina 1di 50

Automation

Robotics and
System
CONTROL Università degli Studi
di Modena e Reggio Emilia

Automazione Industriale
2 - I sistemi di controllo per l'Automazione
Industriale
Cesare Fantuzzi (cesare.fantuzzi@unimore.it)

Ingegneria Meccatronica
Ingegneria della Gestione Industriale
AA 2010/2011
Sommario

‫ּס‬ Piattaforme per l’automazione.


‫ּס‬ Sistemi Embedded,
‫ּס‬ i Programmable Logical Controller (PLC).
‫ּס‬ Descrizione fisica della piattaforma di controllo.
‫ּס‬ Descrizione logica del sistema di controllo.

C. Fantuzzi Automazione Industriale - 2. I Sistemi di 2


Controllo per l'Automazione Industriale
Obiettivi didattici del modulo

‫ ּס‬Conoscere i principi dei sistemi di controllo per


l’automazione, incluse le problematiche peculiari (tempo
reale, concorrenza).

C. Fantuzzi Automazione Industriale - 2. I Sistemi di 3


Controllo per l'Automazione Industriale
Sistema Informatico 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.

C. Fantuzzi Automazione Industriale - 2. I Sistemi di 4


Controllo per l'Automazione Industriale
Sistema Informatico per
l’Automazione
‫ ּס‬Il sistema deve controllare un processo
fisico in modo continuativo.
‫ ּס‬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.

C. Fantuzzi Automazione Industriale - 2. I Sistemi di 5


Controllo per l'Automazione Industriale
Ciclo operativo del sistema di
controllo

C. Fantuzzi Automazione Industriale - 2. I Sistemi di 6


Controllo per l'Automazione Industriale
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.

C. Fantuzzi Automazione Industriale - 2. I Sistemi di 7


Controllo per l'Automazione Industriale
Sistema Operativo a Tempo Reale
(Real Time)
‫ ּס‬Un sistema operativo real-time o in tempo reale
(abbreviato in RTOS) è un sistema operativo
specializzato per il supporto di applicazioni
software real-time.
‫ ּס‬Questi sistemi vengono utilizzati tipicamente in
ambito industriale (controllo di processo,
pilotaggio di robot, trasferimento di dati nelle
telecomunicazioni) o comunque dove sia
necessario ottenere una risposta dal sistema in
un tempo massimo prefissato.

C. Fantuzzi Automazione Industriale - 2. I Sistemi di 8


Controllo per l'Automazione Industriale
Real Time = Sistema Veloce?

‫ ּס‬Non Necessariamente.
‫ ּס‬Da un punto di vista puramente teorico l'intervallo di
tempo in cui il sistema operativo/applicativo deve reagire
non ha importanza
‫ ּס‬Infatti un sistema operativo in RT non deve essere
necessariamente veloce, la cosa importante è che
risponda entro un tempo massimo perfettamente
noto.

C. Fantuzzi Automazione Industriale - 2. I Sistemi di 9


Controllo per l'Automazione Industriale
Assignment
‫ ּס‬Sia dato un sistema con carro ponte. Si vuole gestire il
problema di evitare che a causa di un errore di
programmazione il carro ponte colpisca un fine corsa
meccanico.
‫ ּס‬Si progetta un controllo di sicurezza che legge ad ogni ciclo
di attivazione un sensore di posizione (diverso da quello
usato per il controllo, un sensore di sicurezza).
‫ ּס‬In caso di attivazione del sensore, il controllo di sicurezza
deve arrestare il motore.
‫ ּס‬Si supponga che lo spazio di arresto sia di x e che la
velocità di avanzamento del carro sia v.
‫ ּס‬Si calcoli il tempo massimo di intervento del sistema di
sicurezza (vincolo real-time da imporre).
C. Fantuzzi Automazione Industriale - 2. I Sistemi di 10
Controllo per l'Automazione Industriale
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.

C. Fantuzzi Automazione Industriale - 2. I Sistemi di 11


Controllo per l'Automazione Industriale
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.

C. Fantuzzi Automazione Industriale - 2. I Sistemi di 12


Controllo per l'Automazione Industriale
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

C. Fantuzzi Automazione Industriale - 2. I Sistemi di 13


Controllo per l'Automazione Industriale
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.).

C. Fantuzzi Automazione Industriale - 2. I Sistemi di 14


Controllo per l'Automazione Industriale
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.

C. Fantuzzi Automazione Industriale - 2. I Sistemi di 15


Controllo per l'Automazione Industriale
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.

C. Fantuzzi Automazione Industriale - 2. I Sistemi di 16


Controllo per l'Automazione Industriale
Multitasking

‫ ּס‬A ciascun task vengono assegnate:


– Periodo di riesecuzione
– Priorita’

C. Fantuzzi Automazione Industriale - 2. I Sistemi di 17


Controllo per l'Automazione Industriale
Task scheduling

‫ ּס‬Non Preemtive.
– 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.

C. Fantuzzi Automazione Industriale - 2. I Sistemi di 18


Controllo per l'Automazione Industriale
Multitasking Preemptive

C. Fantuzzi Automazione Industriale - 2. I Sistemi di 19


Controllo per l'Automazione Industriale
Multitasking non preemptive

C. Fantuzzi Automazione Industriale - 2. I Sistemi di 20


Controllo per l'Automazione Industriale
Comunicazione fra processi
concorrenti

‫ ּס‬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.

C. Fantuzzi Automazione Industriale - 2. I Sistemi di 21


Controllo per l'Automazione Industriale
Scambio dati mediante memoria
condivisa.

C. Fantuzzi Automazione Industriale - 2. I Sistemi di 22


Controllo per l'Automazione Industriale
Sincronismo dei dati
‫ ּס‬Occorre mantenere l’integrita’ dei dati tra scrittura e
lettura.
‫ ּס‬Occorre evitare che un processo legga un vettore
mentre un secondo processo lo sta’ aggiornando.
‫ ּס‬Esistono due possibilita’ per garantire l’integrita’
della struttura dati:
– Impedire che il Sistema Operativo possa interrompere
l’esecuzione della scrittura dei dati -> Disabilitazione
interrupts
– Segnalare che un processo sta effettuando una scrittura di dati
-> Uso di semafori

C. Fantuzzi Automazione Industriale - 2. I Sistemi di 23


Controllo per l'Automazione Industriale
Interrupts

‫ ּס‬un interrupt è un meccanismo che consente


l'interruzione di un processo qualora si verifichino
determinate.
‫ ּס‬L’interrupt e’ un segnale o messaggio, generalmente di
natura asincrona, che arriva all'interno della CPU per
avvisarla del verificarsi di un certo evento.
‫ ּס‬Un uso e’ quello di segnalare il cambio di contesto per
implementare il multitasking.

C. Fantuzzi Automazione Industriale - 2. I Sistemi di 24


Controllo per l'Automazione Industriale
Disabilitazione interrupts per la
sincronizzazione di processi

Processo “A” Processo “B”

DisableInt( ); Array DisableInt( );


for (i++,1,10) for (i++,1,10)
Array[i]=dato; dato=Array[i];
EnableInt( ); EnableInt( );

C. Fantuzzi Automazione Industriale - 2. I Sistemi di 25


Controllo per l'Automazione Industriale
Utilizzo di un semaforo per la
sincronizzazione di processi

C. Fantuzzi Automazione Industriale - 2. I Sistemi di 26


Controllo per l'Automazione Industriale
Deadlock

‫ ּס‬Il meccansimo del semaforo deve essere utilizzato in


modo accorto, in quanto puo’ produrre deadlock di
processi e inversione di priorita’.

C. Fantuzzi Automazione Industriale - 2. I Sistemi di 27


Controllo per l'Automazione Industriale
Esempio: Pathfinder

C. Fantuzzi Automazione Industriale - 2. I Sistemi di 28


Controllo per l'Automazione Industriale
Hardware per il controllo di
sistema
‫ ּס‬La configurazione di un sistema di controllo industriale si
compone di:
– Un sistema di acquisizione dati dal campo, in grado di
acquisire segnali analogici, digitali o logici a seconda della
applicazione di controllo;
– Un sistema a microprocessore per l’esecuzione dell’algortimo
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);

C. Fantuzzi Automazione Industriale - 2. I Sistemi di 29


Controllo per l'Automazione Industriale
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).

C. Fantuzzi Automazione Industriale - 2. I Sistemi di 30


Controllo per l'Automazione Industriale
Un esempio di sistema
Embedded
Microprocessore Porte seriali
Attuazione del segnale
di comunicazione

Acquisizione del segnale

C. Fantuzzi Automazione Industriale - 2. I Sistemi di 31


Controllo per l'Automazione Industriale
Il sistema a bus VME

Cestello o Rack

Bus del sistema

Scheda alloggiata nel rack


C. Fantuzzi Automazione Industriale - 2. I Sistemi di 32
Controllo per l'Automazione Industriale
Sistemi Embedded vs a BUS

Sistemi Embedded Sistemi a BUS


Pro •Ottimizzazione del •Flessibili
sistema •Sviluppo rapido (solo
•Elevate prestazioni software)
Contro •Necessita’ di •Non ottimizzati.
sviluppare l’intero
sistema (HW e SW).
•Non flessibili.

C. Fantuzzi Automazione Industriale - 2. I Sistemi di 33


Controllo per l'Automazione Industriale
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.

C. Fantuzzi Automazione Industriale - 2. I Sistemi di 34


Controllo per l'Automazione Industriale
PLC

‫ ּס‬IL Programmable Logic Controller è un sistema a BUS


diffusissimo nel campo della automazione industriale.
‫ ּס‬Le sue caratteristiche principali sono:
– robustezza
– semplicita’ di programmazione
– modularita’
– espandibilita’

C. Fantuzzi Automazione Industriale - 2. I Sistemi di 35


Controllo per l'Automazione Industriale
Componenti 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.

C. Fantuzzi Automazione Industriale - 2. I Sistemi di 36


Controllo per l'Automazione Industriale
Architettura del PLC

Moduli di
Alimentatore
Moduli ingresso/uscita
processori

C. Fantuzzi Automazione Industriale - 2. I Sistemi di 37


Controllo per l'Automazione Industriale
Un esempio: descrizione dal manuale 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:
– Logic
– Process sequencing
– Timing
– Arithmetic

C. Fantuzzi Automazione Industriale - 2. I Sistemi di 38


Controllo per l'Automazione Industriale
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.
C. Fantuzzi Automazione Industriale - 2. I Sistemi di 39
Controllo per l'Automazione Industriale
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
C. Fantuzzi Automazione Industriale - 2. I Sistemi di 40
Controllo per l'Automazione Industriale
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)

C. Fantuzzi Automazione Industriale - 2. I Sistemi di 41


Controllo per l'Automazione Industriale
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.

C. Fantuzzi Automazione Industriale - 2. I Sistemi di 42


Controllo per l'Automazione Industriale
Indirizzamento delle variabili
nel PLC.
‫ ּס‬Le variabili di ingresso e di uscita sono identificate nella
configurazione del PLC mediante un riferimento
posizionale:

C. Fantuzzi Automazione Industriale - 2. I Sistemi di 43


Controllo per l'Automazione Industriale
Un esempio di applicazione

C. Fantuzzi Automazione Industriale - 2. I Sistemi di 44


Controllo per l'Automazione Industriale
Schema di esecuzione del PLC
(dal manuale Siemens)

C. Fantuzzi Automazione Industriale - 2. I Sistemi di 45


Controllo per l'Automazione Industriale
Schema di esecuzione del PLC (cont.)

C. Fantuzzi Automazione Industriale - 2. I Sistemi di 46


Controllo per l'Automazione Industriale
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.

C. Fantuzzi Automazione Industriale - 2. I Sistemi di 47


Controllo per l'Automazione Industriale
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).

C. Fantuzzi Automazione Industriale - 2. I Sistemi di 48


Controllo per l'Automazione Industriale
Ciclo PLC con task periodici

C. Fantuzzi Automazione Industriale - 2. I Sistemi di 49


Controllo per l'Automazione Industriale
Conclusioni

‫ ּס‬Abbiamo visto le problematiche dei sistemi di controllo


per l’Automazione Industriale.

C. Fantuzzi Automazione Industriale - 2. I Sistemi di 50


Controllo per l'Automazione Industriale