Controllo del moto di un carrello con la normativa IEC 61499

 

Accinelli Mattia

Mercurio Fabrizio

Relatore: Ferrarini Luca

Corelatore: Veber Carlo

Elaborato di laurea

A.A. 2003-2004

 

 

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:

punto elenco

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.

punto elenco

Riduzione dei costi dell’hardware.

punto elenco

Definizione di interfacce standard per la comunicazione dei componenti di sistemi anche diversi tra loro.

punto elenco

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.

punto elenco

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

 

punto elenco Progettazione di un controllo efficace per il problema del controllo del moto su un asse.
punto elenco Realizzazione di un sistema di controllo rispettando la normativa IEC 61499.
punto elenco Verifica delle potenzialità del software FBDK in confronto a Matlab.
punto elenco Realizzazione di un sistema di controllo in grado di funzionare su due calcolatori comunicanti in remoto.
punto elenco 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

punto elenco Realizzazione di un controllo per il problema del moto del carrello.
punto elenco Realizzazione di nuovi blocchi funzionali.
punto elenco Realizzazione di un modello di controllo con FBDK.
punto elenco Confronto tra il modello Matlab e FBDK.
punto elenco Realizzazione del modello eseguito in comunicazione remota.
punto elenco Esecuzione di una prova in tempo reale
 

Sviluppi futuri

punto elenco Allargare ulteriormente le librerie FBDK.
punto elenco Migliorare l’ambiente di lavoro FBDK.
punto elenco Verifica del funzionamento del controllo in tempo reale su un impianto di laboratorio.