+ All Categories
Home > Documents > PALUZZANO PRELAUREA

PALUZZANO PRELAUREA

Date post: 05-Jul-2015
Category:
Upload: enrico-paluzzano
View: 139 times
Download: 0 times
Share this document with a friend
Description:
REALIZZAZIONE DI UN SOFTWARE DI COMUNICAZIONE MULTIPROTOCOLLO PER IL CONTROLLO DI PROCESSO IN AMBITO INDUSTRIALE
19
Università degli studi di Trieste Dipartimento di Ingegneria ed Architettura Corso di studi in Ingegneria Informatica Laureando: Enrico PALUZZANO Relatore: prof. Alberto BARTOLI
Transcript
Page 1: PALUZZANO PRELAUREA

Università degli studi di Trieste

Dipartimento di Ingegneria ed Architettura

Corso di studi in Ingegneria Informatica

Laureando:Enrico PALUZZANO

Relatore:prof. Alberto BARTOLI

Page 2: PALUZZANO PRELAUREA

Introduzione Il lavoro presentato è stato svolto all’interno

dell’azienda SMS Concast.

SMS Concast sviluppa e produce software per l’automazione degli impianti siderurgici.

Il software presentato è il sistema di comunicazione, utilizzato dalle applicazioni, per controllare il processo produttivo dell’impianto: il suo nome è GATE.

Page 3: PALUZZANO PRELAUREA

Organizzazione aziendale L’organizzazione degli impianti viene strutturata

su diversi livelli.

Livello 1: è il livello che gestisce l’automazione nell’impianto.

Il livello 2: è il livello preposto alla gestione del processo produttivo. (livello in cui è stato sviluppato il software prodotto)

Il livello 3: è il livello preposto alla gestione delle commesse.

Page 4: PALUZZANO PRELAUREA

Livello 2 Il software sviluppato nel livello 2 svolge svariati

compiti:

calcolo dei piani di taglio per gli acciai speciali

controllo della composizione chimica dell’acciaio

Le necessità del software di questo livello sono:

Conoscere lo stato dell’impianto

Comandare il processo produttivo

Page 5: PALUZZANO PRELAUREA

PLC Lo stato dell’impianto viene controllato da specifiche

apparecchiature chiamate PLC (Programmable LogicController)

Al loro interno sono installate le applicazioni di Livello 1 che permettono di: Scrivere in memoria i dati ricevuti dai rilevatori

Leggere dalla memoria i comandi da inviare alle macchine tramite gli attuatori

Un’applicazione di livello 2, per controllare il processo produttivo, deve necessariamente comunicare con i PLC.

Questa comunicazione avviene interagendo con la loro memoria interna.

Page 6: PALUZZANO PRELAUREA

Definizione del problema (I) Comunicare con i PLC presenta delle difficoltà in

quanto: Possono esser prodotti da case produttrici differenti

Utilizzano librerie proprietarie diverse

Necessitano di comunicazioni robuste ed affidabili

Le applicazioni di livello 2 hanno la necessità di comunicare: Con più PLC nello stesso momento

In maniera concorrente fra loro

Frequentemente

Page 7: PALUZZANO PRELAUREA

Definizione del problema (II) Per questo è stato realizzato dall’azienda un software

intermedio tra applicazioni di livello 2 e PLC.

Vantaggi: Non impegna le applicazioni nella comunicazione

Incorpora l’utilizzo di diversi protocolli

Permette di controllare lo stato delle comunicazioni

Svantaggi: Deve essere robusto

(capace di gestire correttamente i malfunzionamenti) Deve essere affidabile

(non può bloccarsi altrimenti le applicazioni non controllano più il processo produttivo)

Page 8: PALUZZANO PRELAUREA

Specifiche richieste A fronte di una commessa è stato chiesto al livello 2

dell’azienda di:

Tradurre le applicazioni che già distribuisce, in linguaggio C#

Ridisegnare le interfacce utilizzando WPF(Windows Presentation Foundation)

Sviluppare delle nuove applicazioni personalizzate per alcune necessità specifiche del committente

Page 9: PALUZZANO PRELAUREA

Stato dell’arte Il software presentato in questa tesi è stato sviluppato

partendo da quello correntemente utilizzato.

Il software precedente:

E’ scritto in linguaggio Pascal

Utilizza tre tipi di librerie

Softnet

AllenBradley

SendReceive

Implementa il controllo da remoto

Page 10: PALUZZANO PRELAUREA

Specifiche del GATE (I) Il nuovo software, sviluppato nell’ambito del tirocinio,

presenta le seguenti specifiche:

E’ scritto in linguaggio C#

Ha le interfacce disegnate utilizzando WPF

Utilizza la libreria proprietaria Softnet utilizzata per comunicare con i PLC SIEMENS S7

Implementa il sistema remoto utilizzando WCF (Windows Comunication Foundation)

Page 11: PALUZZANO PRELAUREA

La comunicazione(I) Per comunicare con i PLC, le applicazioni, comunicano

con il Gate utilizzando la seguente procedura: Definiscono una connessione (Link)

Accodano una richiesta (Transazione)

Prelevano l’esito della richiesta

Successivamente il Gate interagisce con i PLC nel seguente modo: Carica la libreria proprietaria

Apre il canale di comunicazione

Esegue la richiesta tramite le funzioni della libreria proprietaria

Page 12: PALUZZANO PRELAUREA

La comunicazione (II) La comunicazione, all’interno del Gate, avviene

tramite l’intervento di due macro entità:

PlcDriver

PipeObject

GATE

APPLICAZIONI

PIPEOBJECT

LINKPLC

TRANSAZIONI

PLC

PLC

PLCDRIVER

SOFTNET

SENDRECEIVE

ALLNBRADLEYALLEN-BRADLEY

LINK

SOFTNET LINK

SENDRECEIVE LINK

Page 13: PALUZZANO PRELAUREA

Comportamento delle classi Il PipeObject ha il compito di:

Ricevere le richieste di connessione da parte delle applicazioni

Passarle al corretto driver in esecuzione

Ricevere ed accodare le richieste di lettura o scrittura

Il PlcDriver ha il compito di: Caricare le librerie proprietarie

Aprire le connessioni passategli dal PipeObject, con i PLC

Prelevare dal PipeObject, se accodata, una Transazione relativa alla connessione aperta

Eseguire la Transazione e salvarne il risultato all’interno del PipeObject

Rilasciare le librerie proprietarie

Page 14: PALUZZANO PRELAUREA

Sviluppo di PlcDriver E’ la classe ancestrale che definisce il comportamento

generale del driver

Incorpora un thread per l’esecuzione ciclica di una funzione chiamata Execute

Questa funzione è stata completamente riprogettata e sviluppata

E’ la più rilevante modifica apportata al software precedente

Si basa sull’applicazione a PlcDriver di un modello a stati finiti

Page 15: PALUZZANO PRELAUREA

INIZIO

UNUSED

Entry / Link da servire = 0Do / Attende e inizial. driverExit / Link da servire > 0

ACTIVE

Entry / Link da servire > 0Do / Apre link, attende transazioni ed esegue transazioniExit / Links da servire = 0 oppure un link è in stato di errore per più di MaxOveralltime oppure è stata richiesta la chiusura del driver

STOPPED

Do / Finalizza il driver e rimuove i link.

FINE

RESTARTING

Do / Finalizza driver e terimina link

SIMULATION

Entry / Mod. sim. richiestaDo / Finalizza il driver e attende Exit / Mod. live richiesta

ERROR

Entry / Inizial. driver fallitaDo / Aspetta timeout

Page 16: PALUZZANO PRELAUREA

Risultati dello sviluppo: Il risultato ottenuto da questa implementazione di

PlcDriver si può riassumere in:

Un comportamento più affidabile dei driver

Una miglior chiarezza del codice

Un aumento delle prestazioni in alcune situazioni

Page 17: PALUZZANO PRELAUREA

Screenshot Gate

Page 18: PALUZZANO PRELAUREA

L’applicazione di test: Board Il Board è un’applicazione che simula il

comportamento di una normale applicazione del livello 2

Tramite il Board è possibile:

Definire un Link ad un PLC

Leggere dalla memoria del PLC

Scrivere sulla memoria del PLC

Lanciare delle funzioni di test

Controllare lo stato delle transazioni

Page 19: PALUZZANO PRELAUREA

Screenshot Board


Recommended