Introduzione
La normativa IEC 61499 si
propone di diventare uno standard internazionale per lo sviluppo di
applicazioni per sistemi di controllo e misura di processi industriali
mediante l’uso di blocchi funzionali.
Questi blocchi funzionali sono
dei moduli software basati sull’innovativo modello ad oggetti, dotati di
interfaccia ed implementazione interna e governati da eventi esterni e a
loro volta generatori di eventi asincroni. Queste caratteristiche sono
fondamentali per i propositi che si prefigge la normativa:
|
Riduzione dei costi di
progettazione grazie al riuso dei codici di controllo e delle soluzioni
progettuali, riuso attuabile poiché i modelli utilizzati risultano
essere il più possibile indipendenti dal sistema operativo e
dell’hardware. |
|
Riduzione dei costi
dell’hardware. |
|
Definizione di interfacce
standard per la comunicazione dei componenti di sistemi anche diversi
tra loro. |
|
Uniformazione delle
conoscenze del personale coinvolto nella progettazione e nella
manutenzione del sistema, con un ulteriore diminuzione dei costi di
progettazione e realizzazione del sistema. |
|
Creazione di modelli
interscambiali tra dispositivi e costruttori diversi grazie ai linguaggi
XML e JAVA. |
Il linguaggio JAVA si presta
bene agli scopi della normativa sotto molti aspetti: il concetto di classe
JAVA, oggetto dotato di attributi, procedure e interfaccia di accesso, è del
tutto simile al concetto di blocco funzionale, in più ogni classe è definita
come un'entità autonoma, il che garantisce la riusabilità; la portabilità
consente di utilizzare il codice generato indipendentemente dal sistema
operativo installato sul calcolatore; l'ampia libreria JAVA dedicata alla
gestione della comunicazione in remoto è utile al fine di eseguire i moduli
su più calcolatori in cooperazione.
La normativa IEC 61499 può
avvalersi del software di progettazione FBDK della Rockwell Automation per
la progettazione e realizzazione sia di blocchi funzionali sia di interi
sistemi di controllo. Proprio questo software è stato utilizzato per lo
svolgimento di questo elaborato che si inserisce pienamente nelle
caratteristiche richieste dallo standard.
Obbiettivi
|
Progettazione di un controllo efficace
per il problema del controllo del moto su un asse. |
|
Realizzazione di un sistema di controllo
rispettando la normativa IEC 61499. |
|
Verifica delle potenzialità del software
FBDK in confronto a Matlab. |
|
Realizzazione di un sistema di controllo
in grado di funzionare su due calcolatori comunicanti in remoto. |
|
Simulazione di un controllo in tempo
reale.
|
Realizzazione
In questo lavoro siamo partiti dallo
studio di un sistema elementare, rappresentante un carrello, per la
creazione di un controllo di posizione su un singolo asse. Procedendo
per affinazioni successive siamo arrivati alla realizzazione di un
sistema controllato rappresentante in modo realistico un carrello
traslante su appositi sostegni e mosso da un motore elettrico a corrente
continua la cui trasmissione del moto è effettuata tramite una vite
senza fine reale. |
|
Siamo poi passati alla discretizzazione del
sistema ed al suo studio in tempo discreto per permettere un confronto tra
le prestazioni del modello realizzato con Matlab-Simulink ed uno realizzato
con FBDK. Abbiamo inoltre osservato che le prestazioni del sistema discreto
risultano addirittura migliori di quelle a tempo continuo.
Abbiamo quindi realizzato il modello del
sistema controllato con il software FBDK della Rockwell Automation, che
implementa la normativa IEC 61499, utilizzando l’interfaccia grafica del
programma per l’assemblaggio dei vari blocchi funzionali e il linguaggio
Java per creare gli algoritmi dei blocchi funzionali da noi introdotti.
Abbiamo così potuto confrontare i risultati
ottenuti con i due software riscontrando che sono considerabili equivalenti
a meno di errori trascurabili.
Per sfruttare a pieno la caratteristica di
FBDK di suddivisione in moduli del sistema di controllo abbiamo realizzato
un modello diviso in due dispositivi e lo abbiamo testato sia su un unico
calcolatore sia su due computer in rete comunicanti in remoto. Per far si
che quest’ultimo test fosse attendibile abbiamo formulato alcune ipotesi e
dimostrato che fossero verificate. I risultati ottenuti in questo modo sono
stati del tutto equivalenti a quelli ottenuti senza la modulizzazione,
confermando la potenzialità della normativa IEC 61499.
|
|
|
L'ultima prova da noi effettuata ci ha
richiesto il calcolo del tempo minimo impiegato dal modello per eseguire un
intero ciclo di elaborazione e trasmissione dei dati tra i due moduli, in
modo da ottenere il minimo tempo di campionamento applicabile al modello.
Utilizzando questo tempo di campionamento nel modello in comunicazione
remota abbiamo verificato la correttezza dei risultati di un'esecuzione in
tempo reale, confermando la potenza del software FBDK e l'applicabilità di
controlli con esso realizzati a sistemi a tempo reale.
Grazie a questo lavoro possiamo asserire che
il software FBDK, che implementa la normativa IEC 61499, ha prestazioni
paragonabili a quelle di un software famoso e completo come Simulink di
Matlab garantendo in più: la possibilità di suddividere in moduli il
sistema, permettendo quindi la loro riusabilità; grazie all'utilizzo del
codice Java l’indipendenza dal sistema operativo del calcolatore; la
possibilità di porre in comunicazione controllore e sistema attraverso i
protocolli di comunicazione remota; la possibilità di effettuare il
controllo in tempo reale.
|
|
Conclusioni e sviluppi futuri
Risultati ottenuti
|
Realizzazione di un controllo per il
problema del moto del carrello.
|
|
Realizzazione di nuovi blocchi
funzionali. |
|
Realizzazione di un modello di controllo
con FBDK. |
|
Confronto tra il modello Matlab e FBDK.
|
|
Realizzazione del modello eseguito in
comunicazione remota. |
|
Esecuzione di una prova in tempo reale
|
Sviluppi futuri
|
Allargare ulteriormente le librerie FBDK.
|
|
Migliorare l’ambiente di lavoro FBDK.
|
|
Verifica del funzionamento del controllo
in tempo reale su un impianto di laboratorio.
|
|