Dipartimento di
Informatica e Sistemistica
METODOLOGIE, STANDARD E
LINGUAGGI OBJECT ORIENTED
Alessandro DE CARLI
Anno Accademico 2006-07
METODOLOGIE ORIENTATE AGLI OGGETTI
ASPETTI INNOVATIVI
NELL’AUTOMAZIONE INDUSTRIALE, LE ATTIVITÀ INGEGNERISTICHE
SONO ORIENTATE ALLA REALIZZAZIONE DI SISTEMI DI AUTOMAZIONE CHE CONSENTANO DI MIGLIORARE L’EFFICIENZA, LA PRODUTTIVITÀ ED IL RENDIMENTO DEI SINGOLI IMPIANTI
È DI FONDAMENTALE IMPORTANZA RIDURRE I TEMPI CHE INTERCORRONO TRA LA PROGETTAZIONE E L’INSTALLAZIONE DEGLI
IMPIANTI E MANTENERE IL SISTEMA DI PRODUZIONE SEMPRE IN
CORRETTE CONDIZIONI DI FUNZIONAMENTO PER TUTTO IL SUO
CICLO DI VITA
PER REALIZZARE QUESTI OBIETTIVI È NECESSARIA UNA
INTEGRAZIONE TOTALE TRA SISTEMI, APPARECCHIATURE, SOFTWARE DI CONNESSIONE DELLA STRUMENTAZIONE, SOFTWARE DI
TRASMISSIONE DATI E INFORMAZIONI E DELLE ATTIVITÀ GESTIONALI
ASPETTI INNOVATIVI
2
METODOLOGIE ORIENTATE AGLI OGGETTI

PER MIGLIORARE L’ACCESSO ALLE INFORMAZIONI DEI DISPOSITIVI DI CAMPO VENGONO UTILIZZATE LE TECNOLOGIE E GLI
STANDARD DEI BUS DI CAMPO (FIELDBUS, PROFIBUS)
LA NECESSITÀ DI CONTROLLARE ED ACCEDERE ALLE INFORMAZIONI
CHE DEFINISCONO I DIVERSI ASPETTI DI UN GRAN NUMERO DI
ELEMENTI FISICI, PORTA ALLA MODELLAZIONE DELL’IMPIANTO CON
STRUTTURE ORIENTATE AGLI OGGETTI PER GLI ASPETTI CHE RIGUARDANO LA STRUTTURA, LA REALIZZAZIONE E IL CONTROLLO
•
PER AUMENTARE LE CAPACITÀ DECISIONALI E GESTIONALI DEGLI
OPERATORI OCCORRE REALIZZARE UN PORTALE DI TIPO WEB
CON AMBIENTE DI NAVIGAZIONE BROWSER PER L’ACCESSO SIA AI
DATI REAL-TIME SIA AI DATI STORICI DELL’IMPIANTO
ATTUALMENTE NELL’AUTOMAZIONE INDUSTRIALE VENGONO UTILIZZATE METODOLOGIE SVILUPPATE INIZIALMENTE PER APPLICAZIONI
TIPICHE DELL’INFORMATICA, COME AD ESEMPIO LA MODELLAZIONE
ORIENTATA AGLI OGGETTI E LO SVILUPPO DI APPLICAZIONI DEL TIPO
WEB SERVER
aspetti innovativi
3
METODOLOGIE ORIENTATE AGLI OGGETTI
UNITÀ
OPERATIVE
GESTIONE
DELLA
PRODUZIONE
MANUTENZIONE
OTTIMIZZAZIONE
DELLE RISORSE
PIANIFICAZIONE E
PROGRAMMAZIONE
ASPECT
INFORMAZIONI
CENTRALIZZATE
ORIENTED
CICLO
DI VITA
IDEE
PROGETTAZIONE
INSTALLAZIONE
INGEGNERIZZAZIONE
DI IMPIANTO
INGEGNERIZZAZIONE
DI PROCESSO
RISORSE
FUNZIONAMENTO
MANUTENZIONE
DISPOSITIVI
DI CAMPO
INTERAZIONE TRA L’ AUTOMAZIONE E PROCESSI PRODUTTIVI
4
METODOLOGIE ORIENTATE AGLI OGGETTI
DISEGNI
COSTRUTTIVI
DIAGRAMMI DEI
COLLEGAMENTI
INFORMAZIONI
SULLA
MANUTENZIONE
INFORMAZIONI
SULLA
UBICAZIONE
INFORMAZIONI
SULLA QUALITÀ
VIDEO DEL
FUNZIONAMENTO
DIFFERENTI ASPETTI
DI UN OGGETTO
INTERAZIONE
TRA L’ AUTOMAZIONE
E PROCESSI PRODUTTIVI
45
METODOLOGIE ORIENTATE AGLI OGGETTI
GESTIONE DEGLI ASPETTI DI UN OGGETTO
CON SOFTWARE SPECIALISTICI
OGGETTO
REALE
SUDDIVISIONE
IN OGGETTI
ASTRATTI
SOFTWARE
SPECIALISTICI
ASPETTI
VENGONO EVIDENZIATI CON SOFTWARE SPECIALISTICI GLI ASPETTI
CARATTERIZZANTI DI CIASCUN OGGETTO AL FINE DI ARCHIVIARE, DI
GESTIRE, DI AGGIORNARE E DI PRESENTARE IN TEMPO REALE LE
RICHIESTE DI INFORMAZIONE
IL RISULTATO È UN SISTEMA APERTO DI SOFTWARE SPECIALISTICI
INDIPENDENTI, REALIZZATI IN MODO CHE POSSANO ESSERE AGGIUNTI
SOFTWARE NON PREVISTI IN FASE INIZIALE SENZA ALTERARE QUELLI
GIÀ IN FUNZIONE
IMPLEMENTAZIONE DEGLI ASPETTI
6
METODOLOGIE ORIENTATE AGLI OGGETTI
MODELLAZIONE DI UN IMPIANTO
CON STRUTTURE AD OGGETTI
STRUTTURA FUNZIONALE
STRUTTURA FISICA
STRUTTURA BATCH
PER NAVIGARE TRA LE VARIE STRUTTURE SI UTILIZZA UN BROWSER
EXPLORER
GLI OGGETTI VENGONO INSERITI, CANCELLATI O SPOSTATI AGGIUNGENDO
CANCELLANDO E MODIFICANDO DINAMICAMENTE GLI ASPETTI STRUTTURALI
STRUTTURE MULTIPLE
7
METODOLOGIE ORIENTATE AGLI OGGETTI
LE TIPOLOGIE DI OGGETTI DEFINISCONO UN INSIEME DI
CARATTERISTICHE CONDIVISE DA TUTTI GLI ELEMENTI DI UNA CLASSE
CIÒ RENDE POSSIBILE IL RIUTILIZZO DI IMPLEMENTAZIONI STANDARD
IN PROBLEMI RICORRENTI
IL MODELLO A OGGETTI SUPPORTA IL CONCETTO DI EREDITARIETÀ E
LE MODIFICHE APPORTATE AD UNA TIPOLOGIA DI OGGETTI POSSONO
ESSERE AUTOMATICAMENTE RISPECCHIATE IN TUTTI GLI ELEMENTI DI
UNA CLASSE PER UNA MANUTENZIONE PIÙ EFFICIENTE
ASPETTO
TIPOLOGIE DI OGGETTI
EREDITARIETÀ
8
METODOLOGIE ORIENTATE AGLI OGGETTI
LIVELLO
DI AMBIENTI
DI LAVORO
AMBIENTE
DI LAVORO
PC STANDARD
AMBIENTE
DI LAVORO
LAN
AMBIENTE
DI LAVORO
WIRELESS
LIVELLO
DEI
SERVER
SERVER
OPC
SERVER
APPLICAZIONI
SOFTWARE
SERVER
ASPECT
ORIENTED
LIVELLO
DI
CONTROLLO
CONTROLLORI
LOCALI
DISPOSITIVI
DI
CAMPO
PLC
ARCHITETTURA DI SISTEMA
9
METODOLOGIE ORIENTATE AGLI OGGETTI
INTERNET
PROTEZIONE
RETE
INTRANET RETE
D’ IMPIANTO
PORTALE WEB
WIRELESS LAN
O BLUETOOTH
ROUTER
RETE CLIENT-SERVER
IEEE802 E TCP-IP
SERVER
OPC
SERVER
CONFIGURAZIONE
SERVER
APPLICAZIONI
RETE DI CONTROLLO
IEEE802 E TCP-IP
CONTROLLER
BUS DI CAMPO
ARCHITETTURA DI SISTEMA
CONTROLLER
BUS DI CAMPO
10
METODOLOGIE ORIENTATE AGLI OGGETTI
STAZIONE
OPERATORE
ASPECT
OBJECTS
SISTEMA DI
MANUTENZIONE
MES
PIATTAFORMA DI INTEGRAZIONE
CONNESSIONE
DISPOSITIVI
CONNESSIONE
DISPOSITIVI
APPLICAZIONI
FUTURE
FIELDBUS
DISPOSITIVI
DI CAMPO
ARCHITETTURA FUNZIONALE
11
METODOLOGIE ORIENTATE AGLI OGGETTI
UN PORTALE REAL-TIME È UNA INFRASTRUTTURA CHE CONSENTE LA
DISTRIBUZIONE E LA PRESENTAZIONE DELLE INFORMAZIONI IN UN
AMBIENTE WEB
LE INFORMAZIONI SONO VISUALIZZATE ATTRAVERSO INTERFACCE CHE
CONSENTONO DI AGGIORNARE I DATI IN TEMPO REALE E SONO
CONFIGURABILI DALL’UTENTE PER MEZZO DI WEB PARTS
LE WEB PARTS SONO COMPONENTI SOFTWARE INTERATTIVI CHE INCORPORANO DIVERSE FUNZIONI OPERATIVE PER LA PRESENTAZIONE
DI EVENTI IN TEMPO REALE
LO STANDARD SVG (SCALABLE VECTOR GRAPHICS) CONSENTE
L’AGGIORNAMENTO IN TEMPO REALE DELLE PARTI GRAFICHE
GLI STANDARD XML E SOAP (SIMPLE OBJECT ACCESS PROTOCOL)
SONO GLI STANDARD UTILIZZATI PER LA COMUNICAZIONE TRA LE WEB
PARTS E I SERVIZI DEL PORTALE ATTRAVERSO UN PROTOCOLLO DI
COMUNICAZIONE TRA APPLICAZIONI SU INTERNET INDIPENDENTE
DALLA PIATTAFORMA
PORTALE WEB REAL - TIME
12
METODOLOGIE ORIENTATE AGLI OGGETTI
NAVIGAZIONE
SELEZIONE
DI VISTE
INTERAZIONI
WEB PARTS
DATI
CORRENTI
SVG
DISPLAY
DATI STORICI
TRENDING
PORTALE WEB REAL - TIME
13
METODOLOGIE ORIENTATE AGLI OGGETTI
ELABORAZIONE DEI DATI
AGGIORNAMENTO WEB
REAL-TIME
VISUALIZZAZIONE
WEB
INFORMAZIONI
ANALISI
VALIDAZIONE
DATI DAL CAMPO
ELABORAZIONE DEI DATI
14
METODOLOGIE ORIENTATE AGLI OGGETTI
MODELLAZIONE AD OGGETTI
COMPONENTI SOFTWARE
PRESENTATION OBJECTS
WEB PARTS
APPLICATION OBJECTS
COMPONENTI
SOFTWARE
RIUTILIZZABILI
WEB SERVICES
ANALISIS PLUG-IN
DATA OBJECTS
ELEMENTI
MODELLI
TEMPLATES
OGGETTI
SOFTWARE
RIUTILIZZABILI
LA CAPACITÀ DI GESTIRE EVENTI IN TEMPO REALE È APPLICATA A TUTTI I
COMPONENTI DELL’INFRASTUTTURA, DALL’ACQUISIZIONE DEI DATI DI BASE
AGLI STRUMENTI DI ANALISI, ALLA DISTRIBUZIONE DELL’INFORMAZIONE SUL
WEB, ALL’AGGIORNAMENTO DELLA RAPPRESENTAZIONE SUL BROWSER
IMPLEMENTAZIONE OBJECTS ORIENTED
15
IL LINGUAGGIO UML
IN UN MONDO COSTANTEMENTE IN FERMENTO ED IN EVOLUZIONE
L’ESIGENZA PRIMARIA È QUELLA DI RIDURRE L’INTERVALLO DI TEMPO
CHE VA DALLA PROGETTAZIONE ALLA REALIZZAZIONE
QUESTO HA DETERMINATO L’INTRODUZIONE DELLE METODOLOGIE DI
PROGETTAZIONE DEL TIPO OBJECT ORIENTED NELL’AMBITO DELLA
AUTOMAZIONE INDUSTRIALE
PER MODELLARE GLI OGGETTI CHE COMPONGONO UN SISTEMA SI
UTILIZZA IL LINGUAGGIO UML (UNIFIED MODELLING LANGUAGE)
È UN LINGUAGGIO DI RAPPRESENTAZIONE E PROGETTAZIONE E NON
DI PROGRAMMAZIONE (COME JAVA, VISUAL BASIC, C++..)
UML COSTITUISCE UNA NOTAZIONE UNIVERSALE PER RAPPRESENTARE QUALUNQUE TIPO DI SISTEMA SOFTWARE, HARDWARE,
ORGANIZZATIVO
UTILIZZANDO OPPORTUNAMENTE IL SIGNIFICATO E LA NOTAZIONE
PROPRIA DI UML È POSSIBILE SUDDIVIDERE LA MODELLAZIONE DI UN
SISTEMA IN UNA SERIE DI SOTTOSISTEMI COERENTI E DI DIMENSIONI
MINORI
ASPETTI GENERALI
16
IL LINGUAGGIO UML
È DEFINITO DALLO STANDARD OMG (OBJECT MANAGEMENT GROUP)
DAL NOVEMBRE 1997
ALBERO GENEALOGICO DI UML
17
IL LINGUAGGIO UML
SERVE PER PROGETTARE UN NUOVO SISTEMA O PER
DOCUMENTARNE UNO ESISTENTE SENZA PERDERSI NEI DETTAGLI
DEI LINGUAGGI DI PROGRAMMAZIONE
È UNIVERSALE E PUÒ RAPPRESENTARE SISTEMI ETEROGENEI PER
ARCHITETTURA, PER TECNOLOGIA, PER TIPOLOGIA APPLICATIVA
PUÒ ESSERE UTILIZZATO DA PERSONE E GRUPPI CHE SEGUONO
METODI DIVERSI MANTENENDO LA COERENZA DELLE INFORMAZIONI E
LA COORDINAZIONE DEI GRUPPI
È UN LINGUAGGIO DI MODELLAZIONE VISUALE E NON UN LINGUAGGIO DI PROGRAMMAZIONE VISUALE
DEFINISCE UNO STANDARD FORMALE APPROVATO DAI COMITATI DI
STANDARDIZZAZIONE
NON È UN LINGUAGGIO PROPRIETARIO
NON È UN MODELLO PER LA DEFINIZIONE DI INTERFACCIA
COSA È UML
18
IL LINGUAGGIO UML
UML È BASATO SU UN META-MODELLO INTEGRATO, COMPOSTO DA
NUMEROSI ELEMENTI (CLASSI, ATTRIBUTI, MODULI) COLLEGATI TRA
LORO SECONDO REGOLE PRECISE
UTILIZZANDO GLI ELEMENTI DEL META-MODELLO È POSSIBILE
CREARE I MODELLI PER I SISTEMI DA RAPPRESENTARE
GLI
ELEMENTI DEL META-MODELLO
POSSONO COMPARIRE IN
DIAGRAMMI DI TIPO DIVERSO ED ALCUNI ELEMENTI (AD ESEMPIO LA
“CLASSE”) HANNO UN’ICONA CHE LI RAPPRESENTA GRAFICAMENTE
UML È
UNA RIUTILIZZAZIONE RAZIONALIZZATA DI MODELLI E
DIAGRAMMI PREESISTENTI (MODELLI ENTITY-RELATIOSHIP, FLOWCHART, MODELLI OBJECT ORIENTED, DIAGRAMMI DI STATO) CHE NE
ESTENDE IL SIGNIFICATO PER ADATTARSI ALLE NUOVE ESIGENZE DI
MODELLAZIONE
UML META-MODELLO E DIAGRAMMI
19
IL LINGUAGGIO UML
DIAGRAMMI RELATIVI
AL CONTROLLO
DIAGRAMMI RELATIVI ALLA STRUTTURA
DIAGRAMMA
DI
DISTRIBUZIONE
DIAGRAMMA
DI
STATO
DIAGRAMMA
DEI
COMPONENTI
METAMODELLO
DIAGRAMMA
DEGLI
OGGETTI
DIAGRAMMA
DELLE
CLASSI
UML
DIAGRAMMA
DI
COLLABORAZIONE
DIAGRAMMA
DELLE
ATTIVITÀ
DIAGRAMMA
DI
SEQUENZA
DIAGRAMMA
DEI
CASI D’USO
DIAGRAMMI RELATIVI ALLA COMUNICAZIONE
DIAGRAMMI UML
20
IL LINGUAGGIO UML
DIAGRAMMA DEI CASI D’USO
• COSA RAPPRESENTA
IL DIAGRAMMA DEI CASI D’USO È UTILIZZATO PER MODELLARE LE
FUNZIONALITÀ DEL SISTEMA PERCEPITE DA UN UTENTE ESTERNO
RAPPRESENTANO LE MODALITÀ DI UTILIZZAZIONE DEL SISTEMA DA
PARTE DI UNO O PIÙ UTENTI
DESCRIVE LE INTERAZIONI TRA SISTEMA ED ENTITÀ ESTERNE COME
UNA COLLEZIONE DI SCENARI, IN CUI OGNI SCENARIO RAPPRESENTA
UNA SEQUENZA DI EVENTI
LE ENTITÀ ESTERNE DETERMINANO L’INIZIO DELLA SEQUENZA DI
EVENTI
SONO DEFINITI “ATTORI” E POSSONO RAPPRESENTARE UN OPERATORE, O UN COMANDO PROVENIENTE DA UN ALTRO SISTEMA O DA UN
DISPOSITIVO HARDWARE
DIAGRAMMA DEI CASI D’ USO
21
IL LINGUAGGIO UML
DIAGRAMMA DEI CASI D’USO
(USE CASES DIAGRAM)
PERMETTE DI INDIVIDUARE E RAFFIGURARE I DIVERSI MODI DI
UTILIZZAZIONE DI UN SISTEMA DA UNO O PIÙ UTENTI ESTERNI
DESCRIVE LE INTERAZIONI TRA SISTEMA ED ENTITÀ ESTERNE COME
UNA COLLEZIONE DI SCENARI, IN CUI OGNI SCENARIO
RAPPRESENTA UNA SEQUENZA DI EVENTI
I PROTAGONISTI SONO GLI “ATTORI” DEL SISTEMA CIOÈ COLORO
CHE PRENDONO PARTE AI CASI D’USO
LE ENTITÀ ESTERNE DETERMINANO L’INIZIO DELLA SEQUENZA DI
EVENTI
GLI ATTORI POSSONO ESSERE PRIMARI COME OPERATORI, UTENTI
GENERICI O CLIENTI; E SECONDARI COME SISTEMI HW E SW QUALI
RETI, SISTEMI DI CONTABILITÀ O UNITÀ DI CALCOLO
GLI ATTORI INTERAGISCONO CON I CASI D’USO TRAMITE
ASSOCIAZIONI GENERICHE O DI GENERALIZZAZIONE O INCLUSIONE
DI SEGUITO E’ RIPORTATO IL DIAGRAMMA DEI CASI D’USO DELLA
PIATTAFORMA DI PERFORAZIONE
DIAGRAMMA DEI CASI D’ USO
22
IL LINGUAGGIO UML
• STRUTTURA
I CASI D’USO SONO COMPOSTI GRAFICAMENTE PRINCIPALMENTE
DA DUE ENTITÀ DISTINTE:
“MODO”
DI UTILIZZAZIONE
DEL SISTEMA
UTILIZZATORE
DEL SISTEMA
ATTORE
CASO D’ USO
• UTILIZZAZIONE
IL DIAGRAMMA DEI CASI D’USO COSTITUISCE UN ECCELLENTE
STRUMENTO PER STIMOLARE I POTENZIALI UTENTI AD INTERVENIRE
CON LE LORO CRITICHE ED OPINIONI NELLA DEFINIZIONE DELLE
FUNZIONALITÀ CHE TALE SISTEMA DOVRÀ AVERE
DIAGRAMMA DEI CASI D’ USO
23
IL LINGUAGGIO UML
DIAGRAMMA DELLE CLASSI
CLASS DIAGRAM
CLASSE: È LA DESCRIZIONE DI UN INSIEME DI OGGETTI (ELEMENTI DI UNA
CLASSE) CHE CONDIVIDONO DETERMINATE CARATTERISTICHE COMUNI
ATTRIBUTI: RAPPRESENTANO LE PROPRIETÀ CHE SONO CONDIVISE DA
TUTTI GLI OGGETTI APPARTENENTI AD UNA DATA CLASSE
OPERAZIONI: UN’OPERAZIONE RAPPRESENTA UN SERVIZIO CHE PUÒ
ESSERE RICHIESTO AD UN OGGETTO APPARTENENTE ALLA CLASSE E CHE
MODIFICA IL COMPORTAMENTO DEL SISTEMA A CUI L’OGGETTO APPARTIENE
UN DIAGRAMMA DELLE CLASSI CONSENTE DI DESCRIVERE GLI OGGETTI
CHE COMPONGONO IL SISTEMA ATTRAVERSO LE LORO ASTRAZIONI,
OSSIA LE CLASSI
TRAMITE OPPORTUNE RELAZIONI FRA LE CLASSI CHE COSTITUISCONO IL
DIAGRAMMA, VENGONO IMPLEMENTATI I MECCANISMI DI EREDITARIETÀ
SEMPLICE E MULTIPLA, POLIMORFISMO E RIDEFINIZIONE
MEDIANTE LE ASSOCIAZIONI VENGONO SPECIFICATI I VINCOLI CHE
LEGANO TRA LORO LE CLASSI A PRESCINDERE DAL LINGUAGGIO DI
PROGRAMMAZIONE CHE VERRÀ UTILIZZATO PER L’IMPLEMENTAZIONE
DEL PROGETTO
DIAGRAMMA DELLE CLASSI
24
IL LINGUAGGIO UML
NOME CLASSE
RAPPRESENTAZIONE
DI UNA CLASSE
ATTRIBUT0 1
ATTRIBUT0 2
……………….
OPERAZIONE 1
OPERAZIONE 2
………………….
• UTILIZZAZIONE
LA CLASSE RAPPRESENTA UN EFFICACE MECCANISMO DI
ASTRAZIONE PER MODELLARE ENTITÀ DEL MONDO REALE, CHE
DEVONO ESSERE POI REALIZZATE NEL SISTEMA HARDWARE E/O
SOFTWARE DA SVILUPPARE
VISUALIZZANO L’ELEMENTO DEL SISTEMA SOTTOPOSTO ALLA
ANALISI E METTONO IN EVIDENZA I LEGAMI TRA LE VARIE ENTITÀ
PRESENTI SENZA RIFERIMENTO AGLI EVENTI DI SINCRONIZZAZIONE
DIAGRAMMA DELLE CLASSI
25
IL LINGUAGGIO UML
•
LIVELLI DI VISIBILITÀ
LA VISIBILITÀ È UNA PROPRIETÀ RELATIVA AGLI ATTRIBUTI ED ALLE
OPERAZIONI, CHE SPECIFICA LA POSSIBILITÀ CHE HANNO LE CLASSI
DI UTILIZZARE GLI ATTRIBUTI E LE OPERAZIONI DI UNA ALTRA
CLASSE.
SONO CONSENTITI TRE LIVELLI DI VISIBILITÀ :
• LIVELLO PUBBLICO: L’UTILIZZO VIENE ESTESO A TUTTE LE CLASSI
• LIVELLO PROTETTO: L’UTILIZZO È CONSENTITO SOLTANTO ALLE
CLASSI CHE DERIVANO DALLA CLASSE ORIGINALE
• LIVELLO PRIVATO: SOLTANTO LA CLASSE ORIGINALE PUÒ
UTILIZZARE GLI ATTRIBUTI E LE OPERAZIONI DEFINITI COME TALI
A LIVELLO GRAFICO VENGONO UTILIZZATI, GENERALMENTE,
SEGUENTI SIMBOLI PER DISTINGUERE I TRE LIVELLI:
LIVELLO PUBBLICO: +
LIVELLO PROTETTO: #
LIVELLO PRIVATO : LIVELLI DI VISIBILITÀ
26
I
26
26
IL LINGUAGGIO UML
•
INTERFACCIA
<<INTERFACE>>
RAPPRESENTAZIONE
DI UN’ INTERFACCIA
NOME
OPERAZIONE 1
OPERAZIONE 2
………………….

UN’INTERFACCIA RAPPRESENTA UN INSIEME DI OPERAZIONI CHE
UNA CLASSE OFFRE AD ALTRE CLASSI

UN’INTERFACCIA NON HA ATTRIBUTI MA SOLTANTO OPERAZIONI
INTERFACCIA
27
IL LINGUAGGIO UML
•
RELAZIONI

ASSOCIAZIONE:
RAPPRESENTAZIONE GRAFICA
È UNA CONNESSIONE CONCETTUALE TRA DUE CLASSI

AGGREGAZIONE:
RAPPRESENTA UNA GERARCHIA IN CUI UNA CLASSE DETTA “INTERO”
È AL DI SOPRA DI ALTRE CLASSI DETTE “COMPONENTI”

COMPOSIZIONE:
UNA COMPOSIZIONE È UN’AGGREGAZIONE DI TIPO PIÙ FORTE IN CUI
UN COMPONENTE PUÒ APPARTENERE SOLTANTO AD UN INTERO
RELAZIONI
28
IL LINGUAGGIO UML
•
RELAZIONI

REALIZZAZIONE:
RAPPRESENTAZIONE GRAFICA
È UNA RELAZIONE TRA UNA CLASSE ED UN’INTERFACCIA

EREDITARIETÀ:
È UNA RELAZIONE IN CUI UNA “CLASSE FIGLIA” PUÒ EREDITARE GLI
ATTRIBUTI E LE OPERAZIONI DA UNA CLASSE PIÙ GENERICA
DEFINITA “CLASSE PADRE”
RELAZIONI
29
IL LINGUAGGIO UML
• STRUTTURA
CLASSE 1
ATTRIBUTI
OPERAZIONI
AGGREGAZIONE
CLASSE 2
CLASSE 3
CLASSE 4
ATTRIBUTI
ATTRIBUTI
ATTRIBUTI
OPERAZIONI
OPERAZIONI
OPERAZIONI
EREDITARIETÀ
CLASSE 5
CLASSE 6
CLASSE 7
ATTRIBUTI
ATTRIBUTI
ATTRIBUTI
OPERAZIONI
OPERAZIONI
OPERAZIONI
DIAGRAMMA DELLE CLASSI
30
ESEMPIO MODELLAZIONE UML
DIAGRAMMA DEGLI OGGETTI
IL DIAGRAMMA DEGLI OGGETTI RAPPRESENTA L’INSIEME DEGLI
OGGETTI CHE COSTITUISCONO GLI ELEMENTI DI CIASCUNA CLASSE
SENSORI
OGGETTO
POTENZIOMETRICI
SENSORI
CAPACITIVI
SENSORI
MAGNETICI
DIAGRAMMA DEGLI OGGETTI
SENSORI AD
EFFETTO HALL
SENSORI
CLASSE
DI POSIZIONE
SENSORI
OTTICI
SENSORI AD
ULTRASUONI
31
IL LINGUAGGIO UML
DIAGRAMMA DI SEQUENZA
• COSA RAPPRESENTA
UN DIAGRAMMA DI SEQUENZA RAPPRESENTA LA SEQUENZA
TEMPORALE DELLE INTERAZIONI CHE AVVENGONO FRA GLI
OGGETTI DEL SISTEMA
È UN DIAGRAMMA BIDIMENSIONALE IN CUI SU DI UN ASSE
VENGONO DISPOSTI GLI OGGETTI CHE INTERAGISCONO, MENTRE
SULL’ALTRO VIENE RAPPRESENTATO IL TEMPO
LE INTERAZIONI TRA OGGETTI SONO COSTITUITE
SCAMBIO DEI MESSAGGI CHE AVVIENE TRA ESSI
DALLO
• UTILIZZAZIONE
RAPPRESENTANO LA SEQUENZA CON CUI SI SUSSEGUONO LE
SINGOLE AZIONI, SENZA SPECIFICARE I DETTAGLI SUI
COMPONENTI, EVIDENZIANDO ESCLUSIVAMENTE LA SEQUENZA
TEMPORALE DEI MESSAGGI
DIAGRAMMA DI SEQUENZA
32
IL LINGUAGGIO UML
• STRUTTURA
OGGETTO
NOME 1
NOME 2
ATTORE
MESSAGGIO
ATTIVITÀ
DELL’OGGETTO
MESSAGGIO
RICORSIVO
DIAGRAMMA DI SEQUENZA
33
IL LINGUAGGIO UML
DIAGRAMMA DI COLLABORAZIONE
• COSA RAPPRESENTA
UN DIAGRAMMA DI COLLABORAZIONE RAPPRESENTA L’INSIEME
DEGLI OGGETTI CHE IN UN CASO D’USO COLLABORANO PER
REALIZZARE IL COMPORTAMENTO DI UNO SCENARIO
LA SEQUENZA DEI MESSAGGI È MENO EVIDENTE CHE NEL
DIAGRAMMA DI SEQUENZA, MENTRE SONO PIÙ EVIDENTI I LEGAMI
TRA OGGETTI
• UTILIZZAZIONE
IL DIAGRAMMA DI COLLABORAZIONE È MOLTO UTILE PER MODELLARE LA SEQUENZA DEGLI ASPETTI DI UNA PROCEDURA, METTENDO IN EVIDENZA IL LEGAME TRA I VARI OGGETTI
TALI OGGETTI (ELEMENTI DI UNA CLASSE) REALIZZANO TUTTI
INSIEME UNA DELLE FUNZIONALITÀ RICHIESTE AL SISTEMA
DIAGRAMMA DI COLLABORAZIONE
34
IL LINGUAGGIO UML
• STRUTTURA
OGGETTO
AZIONE 1
AZIONE 3
NOME 1
NOME 3
ATTORE
AZIONE 2
MESSAGGIO
NOME 2
DIAGRAMMA DI COLLABORAZIONE
35
IL LINGUAGGIO UML
DIAGRAMMA DI STATO
• COSA RAPPRESENTA
IL DIAGRAMMA DI STATO CONSENTE DI VISUALIZZARE GLI STATI CHE
UN OGGETTO PUÒ ATTRAVERSARE E I PASSAGGI CHE INTERCORRONO TRA TALI STATI
MOSTRA IL PUNTO DI PARTENZA ED IL PUNTO DI ARRIVO DI UNA
SEQUENZA DI CAMBIAMENTI DI STATO
SPECIFICA IL CICLO DI VITA DEGLI OGGETTI DI UNA CLASSE
DEFINENDO LE REGOLE CHE LA GOVERNANO
• UTILIZZAZIONE
IL DIAGRAMMA DI STATO AIUTA GLI ANALISTI, I PROGETTISTI E GLI
SVILUPPATORI A CAPIRE IL COMPORTAMENTO DEGLI OGGETTI IN UN
SISTEMA
GLI SVILUPPATORI DEVONO TRADURRE TALE COMPORTAMENTO IN
SOFTWARE
DIAGRAMMA DI STATO
36
IL LINGUAGGIO UML
• STRUTTURA
NOME 1
STATO INIZIALE
VARIABILI
CARATTERIZZANTI
LO STATO
STATO
ATTIVITÀ
TRANSIZIONE
DI STATO
NOME 2
NOME 3
VARIABILI
CARATTERIZZANTI
LO STATO
VARIABILI
CARATTERIZZANTI
LO STATO
ATTIVITÀ
ATTIVITÀ
STATO FINALE
DIAGRAMMA DI STATO
37
IL LINGUAGGIO UML
DIAGRAMMA DI ATTIVITÀ
• COSA RAPPRESENTA
IL DIAGRAMMA DI ATTIVITÀ PERMETTE DI RAPPRESENTARE LE
ATTIVITÀ DA SVOLGERE (PROCESSI) IN MODO PARALLELO E LA
LORO SINCRONIZZAZIONE
È UN CASO PARTICOLARE DI DIAGRAMMA DI STATO, IN CUI OGNI
STATO È UNO STATO DI ATTIVITÀ
PERMETTE DI MODELLARE LE ATTIVITÀ DA SVOLGERE IN MODO
PARALLELO E LA LORO SINCRONIZZAZIONE
• UTILIZZAZIONE
COSTITUISCE LA BASE PER LA SCRITTURA DEL CODICE NELLA
FASE DI SVILUPPO
DIAGRAMMA DI ATTIVITA’
38
IL LINGUAGGIO UML
• STRUTTURA
ATTIVITÀ
ATTIVITÀ 1
PERCORSO
DECISIONALE
NO
BARRA DI
SINCRONIZZAZIONE
SI
?
ATTIVITÀ 2
ATTIVITÀ 3
TRANSIZIONE
ATTIVITÀ 4
DIAGRAMMA DI ATTIVITA’
ATTIVITÀ 5
PERCORSI
CONCORRENTI
39
IL LINGUAGGIO UML
DIAGRAMMA DEI COMPONENTI
• COSA RAPPRESENTA
IL DIAGRAMMA DEI COMPONENTI EVIDENZIA L’ORGANIZZAZIONE E
LA DIPENDENZA ESISTENTE TRA I VARI COMPONENTI
I COMPONENTI SONO MODULI DOTATI DI IDENTITÀ E CON INTERFACCIA BEN SPECIFICATA
VARI COMPONENTI (COME A LIVELLO LOGICO I CASI D’USO O LE
CLASSI) POSSONO ESSERE RAGGRUPPATI PER FORMARE UN
INSIEME
• UTILIZZAZIONE
PERMETTONO DI ILLUSTRARE LA VISIONE STATICA DELLA REALIZZAZIONE DEL SISTEMA E PERTANTO SONO STRETTAMENTE
CONNESSI AI DIAGRAMMI DELLE CLASSI
CIASCUN COMPONENTE È UN CONTENITORE DI CLASSI E
INTERFACCE
DIAGRAMMA DEI COMPONENTI
40
IL LINGUAGGIO UML
• STRUTTURA
COMPONENTE
[NOME SOTTOSISTEMA]
NOME
COMPONENTE 1
[NOME PACKAGE]
NOME
COMPONENTE 2
[NOME PACKAGE]
NOME
COMPONENTE 1
DIAGRAMMA DEI COMPONENTI
RELAZIONE DI
DIPENDENZA
41
IL LINGUAGGIO UML
DIAGRAMMA DI DISTRIBUZIONE
• COSA RAPPRESENTA
IL DIAGRAMMA DI DISTRIBUZIONE MODELLA LA STRUTTURA
HARDWARE DI UN SISTEMA EVIDENZIANDO LA CONFIGURAZIONE
DEI NODI DI ELABORAZIONE IN AMBIENTE DI ESECUZIONE E GLI
OGGETTI UBICATI IN QUESTI NODI
• UTILIZZAZIONE
PERMETTONO DI RAPPRESENTARE A DIVERSI LIVELLI DI
DETTAGLIO L’ARCHITETTURA FISICA DEL SISTEMA, MOSTRANDO
COME SONO CONFIGURATE E ALLOCATE LE UNITÀ HARDWARE E
SOFTWARE PER UNA APPLICAZIONE
DIAGRAMMA DI DISTRIBUZIONE
42
IL LINGUAGGIO UML
• STRUTTURA
CONNESSIONE
TRA NODI
APPLICATION
SERVER
TCP/IP
TCP/IP
CLIENT
DATA
SERVER
NODO
DIAGRAMMA DI DISTRIBUZIONE
43
IL LINGUAGGIO UML
SOTTOSISTEMA
CONSENTE DI SUDDIVIDERE UN SISTEMA IN SOTTOSISTEMI
COSTITUITI DA ELEMENTI OMOGENEI, CHE POSSONO ESSERE DI:
• NATURA LOGICA (CLASSI, CASI D’ USO, ….)
• NATURA FISICA (MODULI, TABELLE, ….)
• ALTRA NATURA (PROCESSORI, RISORSE DI RETE, ….)
OGNI ELEMENTO APPARTIENE AD UN SOLO SOTTOSISTEMA
UN SOTTOSISTEMA PUÒ FARE RIFERIMENTO AD ELEMENTI
APPARTENENTI AD ALTRI SOTTOSISTEMI
NOME
PACKAGE
SOTTOSISTEMA
44
IL LINGUAGGIO UML
USO DEI DIAGRAMMI UML
1
DEFINIZIONE DELLE ATTIVITÀ: ATTRAVERSO COLLOQUI CON
L’UTILIZZATORE VENGONO ANALIZZATE IN MODO DETTAGLIATO
LE ATTIVITÀ FONDAMENTALI DEL SISTEMA, DEFINENDO UN
DIAGRAMMA DELLE ATTIVITÀ
2
ANALISI DEL SISTEMA: VENGONO DEFINITI GLI ATTRIBUTI E LE
OPERAZIONI DELLE VARIE CLASSI CHE COMPONGONO IL
SISTEMA, PER REALIZZARE UN DIAGRAMMA DELLE CLASSI
3
CORRELAZIONE TRA I SISTEMI: VENGONO IDENTIFICATE LE
RELAZIONI DI DIPENDENZA TRA I VARI SISTEMI ATTRAVERSO LA
REALIZZAZIONE DI UN DIAGRAMMA DI DISTRIBUZIONE
4
PRESENTAZIONE DEI RISULTATI: TERMINATA LA RACCOLTA DELLE
INFORMAZIONI VENGONO PRESENTATI I RISULTATI DELLE
ANALISI ALL’UTILIZZATORE
5
COMPRENSIONE DELL’UTILIZZO DEL SISTEMA: ATTRAVERSO
COLLOQUI CON I POTENZIALI UTENTI VENGONO DEFINITI GLI
ATTORI E I RELATIVI CASI D’ USO, PER REALIZZARE UN
DIAGRAMMA DEI CASI D’USO
USO DEI DIAGRAMMI
45
IL LINGUAGGIO UML
6
ANALISI DELLE TRANSIZIONI DI STATO: DURANTE LA CREAZIONE
DEI MODELLI VENGONO ANALIZZATE LE EVENTUALI TRANSIZIONI
DI STATO DI OGNI OGGETTO, REALIZZANDO UN DIAGRAMMA DI
STATO
7
INTERAZIONE TRA GLI OGGETTI: PER METTERE IN RELAZIONE
GLI OGGETTI, DEFINITI NEI PRECEDENTI DIAGRAMMI, CON LE
TRANSIZIONI DI STATO, SI REALIZZANO IL DIAGRAMMA DI
SEQUENZA ED IL DIAGRAMMA DI COLLABORAZIONE
8
ANALISI DELL’INTEGRAZIONE DEL SISTEMA CON SISTEMI
PREESISTENTI: SI SVILUPPA UN DIAGRAMMA DI DISTRIBUZIONE
PER DEFINIRE L’ INTEGRAZIONE CON I SISTEMI PREESISTENTI O
CON ALTRI SISTEMI CON I QUALI È NECESSARIO COOPERARE
9
DEFINIZIONE DEGLI OGGETTI: DALL’ANALISI DEL DIAGRAMMA
DELLE CLASSI VIENE GENERATO IL DIAGRAMMA DEGLI OGGETTI
10 DEFINIZIONE DEI COMPONENTI: VENGONO VISUALIZZATI I
COMPONENTI DEL SISTEMA E LE LORO DIPENDENZE,
REALIZZANDO UN DIAGRAMMA DEI COMPONENTI
USO DEI DIAGRAMMI
46
IL LINGUAGGIO UML
11 REALIZZAZIONE DEL CODICE: CON IL DIAGRAMMA DELLE CLASSI,
IL DIAGRAMMA DEGLI OGGETTI, IL DIAGRAMMA DELLE ATTIVITÀ
ED IL DIAGRAMMA DEI COMPONENTI A DISPOSIZIONE, VIENE
REALIZZATO DAI PROGRAMMATORI IL CODICE PER IL SISTEMA
12 PROVE DEL CODICE
13 COSTRUZIONE DELL’ INTERFACCIA UTENTE E COLLEGAMENTO
AL CODICE: UNA VOLTA CHE È A DISPOSIZIONE IL SISTEMA
FUNZIONANTE E COMPLETO CON L’ INTERFACCIA UTENTE
14 INSTALLAZIONE DEL SISTEMA COMPLETO SULL’ HARDWARE
APPROPRIATO
15 PROVE SUL SISTEMA INSTALLATO
USO DEI DIAGRAMMI
47
IL LINGUAGGIO XML
LINGUAGGIO XML
•
XML È L’ ACRONIMO DI EXTENSIBLE MARKUP LANGUAGE
•
XML È UN LINGUAGGIO DI MARKUP SIMILE AD HTML PENSATO
PER DESCRIVERE DATI ED INFORMAZIONI
•
XML È FLESSIBILE, NON CI SONO TEICHETTE PREDEFINITE
•
XML È STATO ORGANIZZATO IN MODO DA FORNIRE UNA
STRUTTURA AI DATI PER LA DESCRIZIONE E CONDIVISIONE
DELLE INFORMAZIONI
•
XML È STATO ORGANIZZATO PER EFFETTUARE LO SCAMBIO E LA
INTERUSABILITÀ DI DOCUMENTI SU INTERNET
ASPETTI GENERALI
48
IL LINGUAGGIO XML
VANTAGGI

DOCUMENTI AUTODESCRITTIVI

STRUTTURA NAVIGABILE DEI DOCUMENTI

INDIPENDENTE DALLA PIATTAFORMA (STANDARD APERTO)

STRUTTURAZIONE GERARCHICA DEI DOCUMENTI

SINTASSI UNIVERSALE, MINIMALE E RIGOROSA

FACILE CONVERTIBILITÀ AI FORMATI WEB
APPLICAZIONI

PERMETTE LO SCAMBIO DI DATI TRA APPLICAZIONI DIVERSE
SUPERANDO
I
PROBLEMI
DI
COMPATIBILITÀ
(INTEROPERABILITÀ)

CONSENTE
L’ACCESSO
A
DATABASE
ETEROGENEI
SUPERANDO I PROBLEMI LEGATI ALLA STRUTTURA E ALLA
SINTASSI DEI DATI
ASPETTI GENERALI
49
IL LINGUAGGIO XML
COMPONENTI DI UN DOCUMENTO
ELEMENTO XML
BLOCCO ELEMENTARE
INIZIO DELLA ETICHETTA
STRUTTURA
CONTENUTO
CONTENUTO
RAPPRESENTAZIONE
FINE DELLA ETICHETTA
STRUTTURA DEL LINGUAGGIO XML
50
STANDARD ISA
IMPRESA
STANDARD
ISA SP95
PARTE3
SISTEMA DI
PRODUZIONE
AREA
PRODUTTIVA
IMPIANTO DI
PRODUZIONE
CONTINUA
STANDARD
ISA SP88
RUOLO STANDARD ISA
AREA
PRODUTTIVA
IMPIANTO
BATCH
AREA
PRODUTTIVA
IMPIANTO DI
PRODUZIONE
DISCRETA
STANDARD
ISA SP95
PARTE 1 & 2
51
STANDARD ISA
ISA SP95
(ENTERPRISE CONTROL SYSTEM INTEGRATION)
LO STANDARD SP95 È UN INSIEME DI DOCUMENTI ELABORATI DAL
COMITATO ISA SP95 PER SPECIFICARE IL MODELLO DI DATI E LE
PRATICHE MIGLIORI PER LO SCAMBIO DI INFORMAZIONI FRA IL
LIVELLO DI IMPRESA ED IL LIVELLO DI IMPIANTO
FORNISCE MODELLI STANDARD E LA TERMINOLOGIA PER LA
DEFINIZIONE DELLE INTERFACCE E DELLE INTERAZIONI
OGNI INDUSTRIA È ORGANIZZATA DIFFERENTEMENTE DA UNA
ALTRA E UTILIZZA DIFFERENTI SISTEMI DI AUTOMAZIONE E LE
INFORMAZIONI SCAMBIATE SONO CODIFICATE IN MODO
DIFFERENTE
UN’ INTERFACCIA AUTOMATIZZATA FRA IMPRESA ED I SISTEMI DI
CONTROLLO RENDE LE INFORMAZIONI ACCESSIBILI AL MOMENTO
GIUSTO PERMETTENDO UN’OTTIMIZZAZIONE NOTEVOLE DELLA
PRODUZIONE E DELLA UTILIZZAZIONE DELLE RISORSE
STANDARD ISA SP95
52
STANDARD ISA
CARATTERISTICHE DELLO STANDARD SP95
•
PARTE 1
LA PARTE 1 DELLO STANDARD SP95 FORNISCE I MODELLI CON
TERMINOLOGIA STANDARD CHE POSSONO ESSERE USATI PER
DEFINIRE I SISTEMI DI IMPRESA ED I SISTEMI DI CONTROLLO
È UN METODO ECCELLENTE PER DETERMINARE QUALI
INFORMAZIONI DEDDANO ESSERE SCAMBIATE FRA I SISTEMI DI
IMPRESA ED I SISTEMI DI CONTROLLO DI PRODUZIONE
•
PARTE 2
DEFINISCE UNA METODOLOGIA PER SVILUPPARE L’INTERFACCIA
FRA I SISTEMI DETERMINANDO GLI ATTRIBUTI DI TUTTI GLI
OGGETTI DEFINITI NELLA PARTE 1
I MODELLI DELLA PARTE 1 SONO LA BASE PER LA PARTE 2
STRUTTURA DELLO STANDARD ISA SP95
53
STANDARD ISA
•
PARTE 3
QUESTA PARTE DELLO STANDARD DETERMINA LE ATTIVITÀ ED I
FLUSSI DELLE INFORMAZIONI PIÙ IMPORTANTI DEL MES
(MANUFACTORING EXECUTION SYSTEM)
 VANTAGGI
LO STANDARD SP95 È STATO SVILUPPATO CON I SEGUENTI
OBIETTIVI:

RIDUZIONE DEI COSTI

RIDUZIONE DEI RISCHI E DEI POSSIBILI ERRORI NEI PROGETTI
D’ INTEGRAZIONE

MIGLIORAMENTO DELLA COMUNICAZIONE ATTRAVERSO
L’INTRODUZIONE DI UNA TERMINOLOGIA STANDARD
STRUTTURA DELLO STANDARD ISA SP95
54
STANDARD ISA
ISA SP88 (SEQUENZE BATCH)
LA NORMATIVA ISA SP88 COSTITUISCE UN MODELLO
RIFERIMENTO PER LO SVILUPPO DELLE SEQUENZE BATCH
DI
MODELLO FISICO
IL PRIMO PASSO DELLA METODOLOGIA PROPOSTA DALLO
STANDARD ISA SP88 È LA COSTRUZIONE DEL MODELLO FISICO
DELL’IMPIANTO CHE È GERARCHICAMENTE SUDDIVISO IN
QUATTRO LIVELLI:
CONTROL MODULE
EQUIPEMENT MODULE
UNIT
PROCESS CELL
STRUTTURA DELLO STANDARD ISA SP88
55
STANDARD ISA
MODELLO FISICO
PROCESS
CELL
PROCESS
CELL:
UN
INSIEME
DI
APPARECCHIATURE INCLUSIVE DELLE UNITÀ DI
PRODUZIONE DEL BATCH
UNIT: È UN INSIEME DI CONTROL MODULE O DI
UNIT
EQUIPMENT MODULE IN CUI POSSONO ESSERE
EFFETTUATE UNA O PIÙ ATTIVITÀ SIGNIFICATIVE DAL
PUNTO DI VISTA DELLA PRODUZIONE
EQUIPMENT
MODULE
EQUIPMENT MODULE : UN GRUPPO FUNZIONALE
CONTROL
MODULE
CONTROL MODULE : UN INSIEME DI DISPOSITIVI DI
MODELLO FISICO
DI APPARECCHIATURE CHE PUÒ SVOLGERE UN
NUMERO FINITO DI SEMPLICI ATTIVITÀ
REGOLAZIONE O CON UN NUMERO FINITO DI STATI
POSSIBILI, O ANCORA UN INSIEME DI QUESTI
DISPOSITIVI CHE PUÒ ESSERE UTILIZZATO SOLO
COME UN TUTTO UNO
56
STANDARD ISA
ISA SP88 (SEQUENZE BATCH)
LA NORMATIVA ISA SP88 COSTITUISCE UN MODELLO
RIFERIMENTO PER LO SVILUPPO DELLE SEQUENZE BATCH
DI
MODELLO PROCEDURALE
IL SECONDO PASSO DELLA METODOLOGIA PROPOSTA DALLO
STANDARD ISA SP88 È QUELLO DI DEFINIRE GLI ELEMENTI
PROCEDURALI CORRISPONDENTI AI VARI LIVELLI DELLE
APPARECCHIATURE CHE COSTITUISCONO UN IMPIANTO,
COSTRUENDO QUELLO CHE VIENE DEFINITO IL MODELLO
PROCEDURALE, CHE RISULTA COSI SUDDIVISO:
PHASE
OPERATION
UNIT PROCEDURE
PROCEDURE
STRUTTURA DELLO STANDARD ISA SP88
57
STANDARD ISA
MODELLO PROCEDURALE
PROCEDURE: LA PROCEDURA PER IL COMPLETAMENTO DI
PROCEDURE
UNIT
PROCEDURE
OPERATION
UN CERTO PROCESSO. CONSISTE DI UNA SEQUENZA DI UNIT
PROCEDURE NECESSARIE PER PRODURRE UN BATCH IN UNA
CERTA PROCESS CELL
UNIT
PROCEDURE: UNA SEQUENZA DI PRODUZIONE
COSTITUITA DA OPERATION SUCCESSIVE E DALLE ATTIVITÀ
ACCESSORIE PER L’INIZIALIAZZAZIONE, ORGANIZZAZIONE E
CONTROLLO DI QUESTE OPERAZIONI
OPERATION : È UN ELEMENTO PROCEDURALE CHE
DEFINISCE UN’ ATTIVITÀ DI PROCESSO INDIPENDENTE
PHASE : IL PIÙ PICCOLO ELEMENTO PROCEDURALE CHE
PHASE
DEFINISCE UNA AZIONE SIGNIFICATIVA DAL PUNTO DI VISTA
DEL PROCESSO
MODELLO PROCEDURALE
58
STANDARD ISA
CORRISPONDENZA TRA MODELLO FISICO E
MODELLO PROCEDURALE
MODELLO FISICO
MODELLO PROCEDURALE
PROCEDURE
PROCESS CELL
UNIT PROCEDURE
UNIT
UNIT OPERATION
PHASE
EQUIPMENT
MODULE
STRUMENTAZIONE
DI PROCESSO
CONTROL MODULE
CORRISPONDENZA TRA MODELLI
59
STANDARD ISA SP88
EQUIPMENT
MODULE
EQUIPMENT
MODULE
CONTROL
MODULE
ESEMPIO IMPIANTO BATCH
60
NORME IEC
STANDARD IEC
PER AFFRONTARE IL PROGETTO DI MODERNI SISTEMI DI
AUTOMAZIONE È NECESSARIO DEFINIRE METODI E STRUMENTI
CHE PERMETTANO DI RAPPRESENTARE SISTEMI DI AUTOMAZIONE
COMPLESSI IN MANIERA SEMPLICE E SICURA
SIA IN FASE DI PROGETTO SIA IN FASE DI VERIFICA LA MODULARITÀ
È UN ELEMENTO CRUCIALE PER AFFRONTARE LA COMPLESSITÀ
DEI SISTEMI DI CONTROLLO INDUSTRIALE
LA POSSIBILITÀ DI RIUTILIZZARE SOLUZIONI DI AUTOMAZIONE GIÀ
SVILUPPATE RISULTA ACCRESCIUTA ATTRAVERSO L’ADOZIONE DI
MODELLI FORMALI MODULARI, RIDUCENDO COSÌ I COSTI E I TEMPI
RICHIESTI PER IL PROGETTO E LA REALIZZAZIONE DI NUOVI
SISTEMI
L’USO
DI
STANDARD
INTERNAZIONALI
GARANTISCE
LA
INTEROPERABILITÀ E L’INTERSCAMBIABILITÀ DELLE SOLUZIONI DI
CONTROLLO DEFINITE IN PROGETTI DIVERSI.
STANDARD IEC
61
NORME IEC
NORMA IEC 61131
NORMA IEC 61131: DEFINISCE I LINGUAGGI STANDARD NON
PROPRIETARI PER LA PROGRAMMAZIONE DEI PLC
È SUDDIVISA NELLE SEGUENTI PARTI:








DEFINIZIONI GENERALI
HARDWARE
LINGUAGGI DI PROGRAMMAZIONE
LINEE GUIDA PER L’UTENTE
MESSAGGI DI COMUNICAZIONE
COMMUNICAZIONE VIA FIELDBUS
PROGRAMMAZIONE DEI CONTROLLORI FUZZY
LINEE GUIDA PER L’UTILIZZAZIONE DEI LINGUAGGI
NORMA IEC 61131
62
NORME IEC 61131
LINGUAGGI DI PROGRAMMAZIONE (PARTE 3)
UN LINGUAGGIO DI PROGRAMMAZIONE RAPPRESENTA LA
INTERFACCIA TRA IL PROGRAMMATORE ED IL SISTEMA DI
CONTROLLO
LA NORMA IEC 61131-3 FORNISCE IL SUPPPORTO ADEGUATO PER
GRUPPI DI LAVORO CON PERSONE DI DIFFERENTI LIVELLI O
BACKGROUND CHE UTILIZZANO APPROCCI DIVERSI AL CONTROLLO
SONO
DEFINITI
QUATTRO
TIPI
DI
LINGUAGGI
DI
PROGRAMMAZIONE: DUE DI TIPO GRAFICO E DUE DI TIPO
TESTUALE
SINTASSI GRAFICA
SINTASSI TESTUALE
STRUCTURED TEXT (ST)
LADDER DIAGRAM (LD)
FUNCTION BLOCK DIAGRAM
(FBD)
ISTRUCTION LIST (IL)
LINGUAGGI
63
NORME IEC 61131
LADDER DIAGRAM (LD): LINGUAGGIO A CONTATTI
•
UTILIZZA SIMBOLI ELETTRICI STANDARD
•
IDEALE PER LE APPLICAZIONI DI CONTROLLO DISCRETO E
LOGICA DI ASSERVIMENTO
 STRUTTURA DEL LINGUAGGIO
CONTATTO
A1
B1
LINEA DI POTENZA DESTRA
PUMP
COMANDO ATTUATORE
C1
PUMP := (A1 AND B1) OR C1
FLUSSO DI POTENZA
LINEA DI POTENZA SINISTRA
LINGUAGGI
64
NORME IEC 61131
INSTRUCTION LIST (IL)
•
LINGUAGGIO A BASSO LIVELLO PER L’OTTIMIZZAZIONE DELLE
PRESTAZIONI DI CODIFICA
•
BASATO SU UNICO REGISTRO ACCCUMULATORE
•
È CONSENTITA UNA SOLA OPERAZIONE PER LINEA
 STRUTTURA DEL LINGUAGGIO
LD
AND N
ST
A
B
C
OPERANDO
OPERATORE
LINGUAGGI
65
NORME IEC 61131
STRUCTURED TEXT (ST)
LINGUAGGIO STRUTTURATO DI ALTO LIVELLO OTTIMALE PER LA
ELABORAZIONE DI ALGORITMI COMPLESSI
SONO POSSIBILI STRUTTURE COMPLESSE ED ANNIDATE
FORNISCE SUPPORTO PER:
 CICLI ITERATIVI (REPEAT – UNTIL; WHILE – DO)
 ESECUZIONI CONDIZIONATE (IF – THEN – ELSE; CASE)
 FUNCTIONS (SQRT( ); SIN( ) )
 STRUTTURA DEL LINGUAGGIO
C := (A AND NOT B)
LINGUAGGI
66
NORME IEC 61131
FUNCTION BLOCK DIAGRAM (FBD)
•
LINGUAGGIO GRAFICO PARTICOLARMENTE ADATTO ALLE
APPLICAZIONI DI CONTROLLO INDUSTRIALE
•
PERMETTE DI PROGRAMMARE CON ELEMENTI CHE APPAIONO
COME BLOCCHI, CHE POSSONO ESSERE CONNESSI CON LA
STESSA MODALITÀ USATA NEI DIAGRAMMI CIRCUITALI
LINGUAGGI
67
NORME IEC 61131
FUNCTION BLOCK
CONFIGURAZIONE
RISORSA
RISORSA
PERCORSO VARIABILI
COMPITO
COMPITO
COMPITO
COMPITO
FB
FUNCTION BLOCK
PROGRAMMA
PROGRAMMA
FB
PROGRAMMA
FB
FB
VARIABILI
PROGRAMMA
FB
FB
FB
GLOBALI
PERCORSO DI ACCESSO
VARIABILE
ESECUZIONE COMPITI
FUNZIONE DI COMUNICAZIONE
MODELLO SOFTWARE
68
NORME IEC 61131
FUNCTION BLOCK
 È DEFINITO COME UNA SEQUENZA DI BLOCCHI FUNZIONALI
CHE DOPO
L’ESECUZIONE FORNISCONO UNO O PIÙ
ELEMENTI IN USCITA
 HA UNA STRUTTURA DATI INTERNA PERMANENTE, INVISIBILE
DALL’ESTERNO CHE NASCONDE L’ IMPLEMENTAZIONE
 AD OGNI SUA ISTANZA VIENE RISERVATA UN’ AREA DATI
SPECIFICA
 È DEFINITO DA UNA RAPPRESENTAZIONE GRAFICA IN CUI
SONO EVIDENZIATE LE INTERFACCE DI INGRESSO E DI USCITA
 PUÒ ESSERE PROGRAMMATO UTILIZZANDO UN QUALUNQUE
LINGUAGGIO DEFINITO DALLA NORMA
LINGUAGGI
69
NORME IEC 61131
MODELLO SOFTWARE SCHEDULING
SEQUENZIALIZZAZIONE SENZA PRECEDENZA

NON CONSENTE L’INTERRUZIONE DI UN COMPITO
DA PARTE DI ALTRI CON PRIORITÀ PIÙ ALTA

È SEMPLICE DA RENDERE OPERATIVO MA NON
CONSENTE UNA ESECUZIONE IN TEMPO REALE
SEQUENZIALIZZAZIONE CON PRECEDENZA

CONSENTE L’INTERRUZIONE DI UN COMPITO DA
PARTE DI ALTRI CON PRIORITÀ PIÙ ALTA

CONSENTE
DI
ESEGUIRE
IL
EFFETTIVAMENTE IN TEMPO REALE
SCHEDULING
CONTROLLO
70
NORME IEC 61131
MODELLO SOFTWARE SCHEDULING
COMPITO A, PRIORITA’ 0, INTERVALLO 100mS
SEQUENZIALIZZAZIONE SENZA
PRECEDENZA
COMPITO B, PRIORITA’ 1, INTERVALLO 200mS
COMPITO C, PRIORITA’ 2, INTERVALLO 300mS
100
200
300
400
SEQUENZIALIZZAZIONE CON
PRECEDENZA
100
SCHEDULING
200
300
500
600
COMPITO C INTERROTTO
400
500
600
71
NORME IEC 61131
LIVELLI DI PORTABILITA’
PROGRAMMA
APPLICAZIONE
FB
FB
FB
VARIABILI
BLOCCO
DI
CODICE
PORTABILITA’
PORTABILITA’ DELLE
APPLICAZIONI
PORTABILITA’ DELLE
LIBRERIE DEI BLOCCHI
FUNZIONALI
VARIABILI
VARIABILI
BLOCCO
DI
BLOCCO
CODICE
DI
CODICE
PROGRAMMA
APPLICAZIONE
FB
VARIABILI
PORTABILITA’ DEI
SISTEMI DI BASE
FB
FB
BLOCCO
DI
CODICE
VARIABILI
VARIABILI
BLOCCO
DI
BLOCCO
CODICE
DI
CODICE
72
NORME IEC 61131
IL MODELLO SOFTWARE POU
LO STANDARD IEC 61131 DEFINISCE PROGRAMMI, BLOCCHI
FUNZIONALI E FUNZIONI DI PROGRAMMAZIONE COME PROGRAM
ORGANITATION UNITS (POU)
•
LE POU SONO COMPONENTI DAL COMPORTAMENTO
RIPETITIVO CHE POSSONO ESSERE USATE IN DIFFERENTI
PARTI DI UNA APPLICAZIONE
•
LE POU PERMETTONO LA RIUTILIZZABILITÀ DEL CODICE DAL
MACRO LIVELLO AL MICRO LIVELLO CON LE FUNZIONI DI
PROGRAMMA
LA IEC 61131 NON CONSENTE L’UTILIZZO DI POU RICORSIVE,
PERCHÈ È DIFFICILE TESTARE SOFTWARE RICORSIVO NON
ESSENDO PREDICIBILE IL SUO COMPORTAMENTO REAL - TIME
MODELLO POU
73
NORME IEC 61131
IL MODELLO SOFTWARE - DIFFERENZE
LA STRUTTURA TRADIZIONALE DI UN PLC ERA COMPOSTA DA UN’
UNICA RISORSA, UN UNICO TASK, UN UNICO PROGRAMMA
LA NORMA IEC 61131 PROPONE UNA STRUTTURA PIÙ GENERALE
APPLICABILE A SISTEMI MOLTO EVOLUTI
CONFIGURAZIONE
RISORSA
PROGRAMMA
PLC SINGOLO
(CON UNA SOLA CPU)
DIFFERENZE
74
NORME IEC 61131
IL MODELLO SOFTWARE - MAPPING
PLC MULTIPROCESSORE:
CPU INDIPENDENTI INSTALLATE
IN UN UNICO RACK
CONFIGURAZIONE
MAPPING
SISTEMA DI CONTROLLO DISTRIBUITO:
PLC COLLEGATI MEDIANTE RETE DI
CONTROLLO
RISORSA
PROGRAMMA
75
NORME IEC 61131
CONCETTO DI APPLICAZIONE

E’ DEFINITO NELLA NORMA IEC 61499
E’ UN IMPORTANTE ASPETTO DEL MODELLO SOFTWARE PER I PLC CHE
SONO IN GRADO DI CONTROLLARE DIVERSE PARTI DEL SISTEMA:

LE
APPLICAZIONI
POSSONO
ESSERE
ESEGUITE
INDIPENDENTEMENTE SOLO SE CARICATE SU DIFFERENTI RISORSE
CONFIGURAZIONE
RISORSA
PROGRAMMA
RISORSA
PROGRAMMA
APPLICAZIONE A
APPLICAZIONE
PROGRAMMA
RISORSA
RISORSA
PROGRAMMA
PROGRAMMA
APPLICAZIONE B
APPLICAZIONE C
76
NORME IEC 61131
SEQUENTIAL FUNCTION CHART
STATI LOGICI DI
FUNZIONAMENTO
AZIONE
STEP 1
N
FILL
VARIABILE
INDICATORE
TRANSITION 1
STEP 2
S
EMPTY
ACTION BLOCK
TRANSITION 2
STEP 3
SFC
77
NORME IEC 61131
SEQUENTIAL FUNCTION CHART

FORNISCE
UNA
POTENTE
TECNICA
GRAFICA
PER
DESCRIVERE IL COMPORTAMENTO SEQUENZIALE DI UN
PROGRAMMA DI CONTROLLO

UTILE PER SUDDIVIDERE IL PROBLEMA DEL CONTROLLO

EVIDENZIA IL COMPORTAMENTO SEQUENZIALE
MACCHINA E DEI SUOI COMPONENTI

MOSTRA UNA
DIAGNOSTICA
SFC
VISIONE
DI
INSIEME
PER
UNA
DI
UNA
RAPIDA
78
NORME IEC 61804
IEC 61804

L’ESISTENZA DI DIVERSE TECONOLOGIE E DIVERSI
DISPOSITIVI PER I BUS DI CAMPO DETERMINA L’ ESIGENZA DI
REALIZZARE UN’ INTERFACCIA COMUNE NEI SISTEMI DI
CONTROLLO

DEFINISCE LA STRUTTURA DI UN SISTEMA DI CONTROLLO
NECESSARIA PER AVERE UNA COMPLETA INTEGRAZIONE TRA
LE
DIVERSE
TECNOLOGIE
DI
COMUNICAZIONE
E
REALIZZAZZIONE DEI DISPOSITIVI DI CAMPO

DEFINISCE L’ ARCHITETTURA, IL MODELLO E IL CICLO DI VITA DI
UN SISTEMA

DEFINISCE
I BLOCCHI FUNZIONALI PER REALIZZARE IL
CONTROLLO
COME
APPLICAZIONI
SOFTWARE
CHE
INTERAGISCONO CON GLI ATTUATORI E I DISPOSITIVI DI
MISURA.
NORME IEC
79
NORME IEC 61804
STRUTTURA IEC 61804

PARTE 1:
DESCRIVE I REQUISITI E LA STRUTTURA PER L’USO DEI
BLOCCHI FUNZIONALI NEL CONTROLLO DI PROCESSO

PARTE 2:
DEFINISCE LE TIPOLOGIE DI BLOCCHI FUNZIONALI

SEZIONE 1: FUNZIONI COMUNEMENTE UTILIZZATE NEL
CONTROLLO DI PROCESSO (AD ESEMPIO: PID)

SEZIONE 2 : FUNZIONI PARTICOLARI (AD ESEMPIO:
FUNZIONI BOOLEANE)
NORME IEC
80
NORME IEC 61804
ESEMPIO DI APPLICAZIONE: PROCESSO CONTROLLATO
VALVOVA CIRCUITO
DI
RAFFREDDAMENTO
TC
TC
2-1
2-2
TT
TT
2-1
2-2
REATTORE
RITORNO DEL
CIRCUITO DI
RAFFREDDAMENTO
PRODOTTO
TT 2-2
TT 2-1
INPUT
FUNCTION
BLOCK
INPUT
FUNCTION
BLOCK
PID
FUNCTION
BLOCK
TC 2-2
FUNCTION BLOCK
PID
FUNCTION
BLOCK
TC 2-1
OUTPUT
FUNCTION
BLOCK
81
NORME IEC 61804
DEFINIZIONE DEI FUNCTION BLOCK
SENSORE -ATTUATORE
DISPOSITIVO
DEVICE BLOCK
IDENTIFICAZIONE
DISPOSITIVI
HARDWARE E
SISTEMA
OPERATIVO
TECNOLOGY
BLOCKS
SYSTEM
MANAGEMENT
RISORSE DI UN
DIPOSITIVO
DIPOSITIVI DI
MISURA E
ATTUATORI
APPLICAZIONI DI
SINCRONIZZAZIONE
APPLICATION
FUNCTION
BLOCKS
FUNZIONALITÀ
PRESENTI SOLO IN
ALCUNI DIPOSITIVI
SIGNAL
PROCESSING
INTERFACCIA DI COMUNICAZIONE
FUNCTION BLOCK
FUNZIONALITÀ
CARATTERISTICHE
DEL DISPOSITIVO
82
NORME IEC 61804
DIAGRAMMA A BLOCCHI
NOME TIPO
ELABORAZIONE
DEI
SEGNALI
INPUT
GESTIONE
SEGNALI E
PARAMETRI
ALGORITMI
OUTPUT
ALGORITMI
PARAMETRI
PARAMETRO 1
PARAMETRO 2
…….
FUNCTION BLOCK
DESCRIZIONE PARAMETRO 1
DESCRIZIONE PARAMETRO 2
………..
83
NORMA IEC 61804
FLUSSO DEI SEGNALI NELLE APPLICAZIONI DI
PROCESSO
SETPOINT
FUNCTION
BLOCK
DI CALCOLO
SENSORE
TECNOLOGY
BLOCK
DISPOSITIVI
DI
MISURA
FUNCTION
BLOCK
DISPOSITIVI
DI
MISURA
FUNCTION
BLOCK
DI
CONTROLLO
ATTUATORE
FUNCTION
BLOCK
ATTUATORI
TECNOLOGY
BLOCK
ATTUATORI
SENSORE
BLOCCHI
RELATIVI AI
DISPOSITI
DI MISURA
BLOCCHI RELATIVI ALLE
APPLICAZIONI DI PROCESSO
FLUSSO DEI SEGNALI DI PROCESSO
BLOCCHI
RELATIVI
AGLI
ATTUATORI
84
NORMA IEC 61804
DEVICE DESCRIPTIVE LANGUAGE (DDL)
 IL RAPIDO SVILUPPO DELL’AUTOMAZIONE DI PROCESSO
RENDE INEVITABILE L’USO DI SOFTWARE E STRUMENTI DI
SVILUPPO PER LA GESTIONE DELLE APPLICAZIONI DEI DCS
(DISTRIBUTED CONTROL SYSTEM)
 I BUS DI CAMPO REALIZZANO LA CONNESSIONE TRA
DISPOSITIVI ETEROGENEI, PERMETTENDO LO SCAMBIO DI DATI
TRA CONTROLLORI, SENSORI E ATTUATORI
 DIVENTA FONDAMENTALE LA PRESENZA DI POSTAZIONI DI
LAVORO COMPUTERIZZATE SULLE QUALI SONO INSTALLATI GLI
STRUMENTI CHE PERMETTONO LA VISUALIZZAZIONE DELLA
CONFIGURAZIONE E DELLE CARATTERISTICHE DEI DISPOSITI
DI CAMPO (PRODUTTORE, VERSIONE DEL FIRMWARE, TIPO DI
DATI, …..).
 LO STANDARD IEC 61804 DEFINISCE LA TECNOLOGIA DDL CHE
CONSENTE LA CONFIGURAZIONE OFF-LINE DEL SISTEMA DI
CONTROLLO PER TUTTO IL SUO CICLO DI VITA E
L’INTEGRAZIONE DI NUOVI DISPOSITIVI.
DEVICE DESCRIPTIVE LANGUAGE
85
NORMA IEC 61804
FLUSSO DEI SEGNALI
NELLE APPLICAZIONI DI PROCESSO
MODELLI
ASTRATTI
SPECIFICHE
PER I BLOCCHI
FUNZIONALI
PROFILO
TECNOLOGICO
IEC 61499
ISO 15745
SPECIFICHE FUNCTION BLOCK
IEC 61804
FIELDBUS
FONDATION
RETE DI
CONTROLLO
PROFIBUS
IEC 61804
SPECIFICHE
EDD
REALIZZAZIONE
PRODOTTI
PROFILO BASATO SULLA NORMA IEC 61804
86
NORMA IEC 61804
ESEMPIO DI APPLICAZIONE
• I BLOCCHI FUNZIONALI CHE PRENDONO ORIGINE DALLA
PROGETTAZIONE DEL SISTEMA DI CONTROLLO DI UN
PROCESSO COSTITUISCONO UNA MODELLAZIONE ASTRATTA
DEL SISTEMA E POSSONO ESSERE REALIZZATI IN MODI
DIVERSI E CON DIFFERENTI DISPOSITIVI
• I BLOCCHI FUNZIONALI SONO REALIZZATI DAI DISPOSITIVI DI
CAMPO, DAI PLC E DALLE POSTAZIONI DI VISUALIZZAZZIONE
• ANCHE I SISTEMI DI SUPERVISIONE E DI SVILUPPO POSSONO
INTERAGIRE CON I BLOCCHI FUNZIONALI PER LA LORO
GESTIONE
ESEMPIO DI APPLICAZIONE
87
NORMA IEC 61804
PROGETTAZIONE
REALIZZZIONE
SISTEMA DI
SUPERVISIONE
IEC 61804
FB
SISTEMA DI
VISUALIZZAZIONE
SISTEMA DI
SVILUPPO
TOOL
COMMISSIONATI
1804 EDD
FB
Function Block AI_FB
Member
{
Variable_1; ...
}
PLC
LIBRERIE
IEC 61131-3 FB
FD 1
PA device
DD 1
ESEMPIO DI APPLICAZIONE
FD 2
DD 2
DD n
DD 3
DD 2
DD 1
FD 3
FF device
DD 3
FD n
DD n
DD - Device Description
FD - Field Device
PLC - Programable
Logic Controller
88
NORME IEC 61499
IEC 61499

DEFINISCE I BLOCCHI FUNZIONALI PER SISTEMI
CONTROLLO E SUPERVISIONE DI IMPIANTI INDUSTRIALI

COSTITUISCE LO STRUMENTO DI SUPPORTO PER IL
PROGETTISTA NELLO SVILUPPO DI MODELLI DETTAGLIATI DEL
SOFTWARE DEL SISTEMA DI AUTOMAZIONE NONCHÉ NELLA
DISTRIBUZIONE DELLE FUNZIONI DI CONTROLLO E
SUPERVISIONE SUI DISPOSITIVI

È BASATO SU UN MODULO FONDAMENTALE (BLOCCO
FUNZIONALE) CHE RAPPRESENTA UNA UNITÀ FUNZIONALE
SOFTWARE ASSOCIATA AD UNA RISORSA HARDWARE DEL
SISTEMA DI CONTROLLO

DEFINISCE MODELLI RIUTILIZZABILI ATTRAVERSO I PRINCIPI DI
MODULARITÀ INCAPSULAMENTO E STANDARDIZZAZIONE
DELLE INTERFACCE
NORME IEC
DI
89
NORME IEC 61499
LA NORMATIVA IEC 61499 DEFINISCE I MODELLI DI CINQUE ENTITÀ
PRINCIPALI:
MODELLO DEL
SISTEMA
SISTEMA COMPLESSIVO
APPLICAZIONI
FUNCTION BLOCK
MODELLO DELLA
APPLICAZIONE
MODELLO
FUNCTION BLOCK
SISTEMA OPERATIVO
RISORSE
DISPOSITIVI
HARDWARE
MODELLO DELLA
RISORSA
MODELLO DEL
DISPOSITIVO
MODELLO DEL SISTEMA CONTROLLATO
90
NORME IEC 61499
IL MODELLO DI SISTEMA
IL CONTROLOLO DI UN SISTEMA DI PRODUZIONE COMPLESSO È
COSTITUITO DA UN INSIEME DI DISPOSITIVI ETOROGENEI,
CONNESSI
TRA
LORO
ATTRAVERSO
DELLE
RETI
DI
COMUNICAZIONE PER LO SCAMBIO DI DATI ED EVENTI
I DISPOSITIVI POSSONO ESSERE CLASSIFICATI IN BASE ALLA
LORO FUNZIONALITÀ NELLE SEGUENTI CATEGORIE:
 DISPOSITIVI
DI SUPPORTO: SVOLGONO UN’AZIONE SUL
CONTROLLO DI UN PROCESSO INDUSTRIALE (SISTEMI
INFORMATIVI, WORKSTATION, …..)
 DISPOSITIVI DI CONTROLLO: PERMETTONO DI APPLICARE
L’AZIONE DI CONTROLLO SUGLI ELEMENTI CHE COMPONGONO
UN SISTEMA DI PRODUZIONE
 DISPOSITIVI DI CAMPO: RENDONO OPERATIVI I SINGOLI
ELEMENTI CHE REALIZZANO UN SISTEMA DI PRODUZIONE
IL MODELLO DI SISTEMA
91
NORME IEC 61499
IL MODELLO DI SISTEMA: DISPOSITIVI
DISPOSITIVI
DI SUPPORTO
IL MODELLO DI SISTEMA
DI CONTROLLO
DI CAMPO
92
NORME IEC 61499
MODELLO DI SISTEMA: RETI DI COMUNICAZIONE
 RETI
DI
INFORMAZIONE:
SVOLGONO
COMUNICAZIONE TRA SISTEMI INFORMATIVI
UN’AZIONE
DI
 RETI DI CONTROLLO: COLLEGANO I SISTEMI DI CONTROLLO
DEL PROCESSO
RETE DI INFORMAZIONE
DISPOSITIVI
DI SUPPORTO
DISPOSITIVI
DI SUPPORTO
DISPOSITIVI
DI SUPPORTO
RETE DI CONTROLLO
DISPOSITIVI
DI CONTROLLO
DISPOSITIVI
DI CONTROLLO
DISPOSITIVI
DI CONTROLLO
SISTEMA DI PRODUZIONE
IL MODELLO DI SISTEMA
93
NORME IEC 61499
IL MODELLO DEI DISPOSITIVI
UN GENERICO DISPOSITIVO È ESSENZIALMENTE COMPOSTO DA:
•
UNA O PIÙ RISORSE
•
UNA O PIÙ INTERFACCE
A LORO VOLTA LE INTERFACCE POSSONO APPARTENERE A TRE
CLASSI DIFFERENTI:
•
INTERFACCE DI PROCESSO (TRA IL PROCESSO FISICO E LE
RISORSE)
•
INTERFACCE DI COMUNICAZIONE (TRA LE RISORSE E LA RETE
DI COMUNICAZIONE)
•
INTERFACCE OPERATORE (TRA LE RISORSE E GLI OPERATORI
E/O LE PERIFERICHE ABILITATE A TALE SCOPO)
IL MODELLO DEI DISPOSITIVI
94
NORME IEC 61499
IL MODELLO DEI DISPOSITIVI
RETE DI COMUNICAZIONE
DISPOSITIVO
INTERFACCIA DI COMUNICAZIONE
RISORSA X
RISORSA Y
RISORSA Z
APPLICAZIONE A
APPLICAZIONE C
APPLICAZIONE B
INTERFACCIA DI PROCESSO
PROCESSO CONTROLLATO
IL MODELLO DEI DISPOSITIVI
95
NORME IEC 61499
IL MODELLO DELLE RISORSE
SI DEFINISCE RISORSA UN’UNITÀ FUNZIONALE CONTENUTA IN UN
DISPOSITIVO, CHE HA IL CONTROLLO INDIPENDENTE DELLE SUE
OPERAZIONI E FORNISCE ALCUNI SERVIZI ALLE APPLICAZIONI,
INCLUSA LA SELEZIONE, LA TEMPORIZZAZIONE E L’ ESECUZIONE
DEGLI ALGORITMI
UNA RISORSA È QUINDI COMPOSTA DA:
• UNA O PIÙ PARTI DI UNA APPLICAZIONE
• BLOCCHI FUNZIONALI DI INTERFACCIA CON LA RETE DI
COMUNICAZIONE
• UNA FUNZIONE DI SCHEDULING PER SELEZIONARE,
TEMPORIZZARE E RENDERE OPERATIVI I BLOCCHI
FUNZIONALI CHE POTRANNO ALLOCARE LA RISORSA AL FINE
DI ESEGUIRE LE AZIONI AD ESSE ASSOCIATE
IL MODELLO DELLE RISORSE
96
NORME IEC 61499
IL MODELLO DELLE RISORSE
INTERFACCIA
DI COMUNICAZIONE OPERATORE
INTERFACCIA DI INFORMAZIONE DEL DISPOSITIVO
Events
Service
Interface
Function
Block
Data
Algorithms
Service
Interface
Function
Block
INTERFACCIA DI COMUNICAZIONE DEL DISPOSITIVO
FUNZIONE DI SCHEDULING
STRUTTURA BLOCCHI FUNZIONALI
97
NORME IEC 61499
IL MODELLO DELL’APPLICAZIONE
UN’APPLICAZIONE È UN INSIEME DI BLOCCHI FUNZIONALI
ALLOCATI ANCHE SU RISORSE DIVERSE CHE CONCORRONO AL
RAGGIUNGIMENTO DI UN DETERMINATO OBIETTIVO
L’APPLICAZIONE PUÒ ESSERE DEFINITA COME UN INSIEME DI:
 FUNCTION BLOCK (FB)
 COSTANTI
 CONNETTORI
IL MODELLO DELLE RISORSE
98
NORME IEC 61499
IL MODELLO DELL’ APPLICAZIONE
APPLICAZIONI
FUNCTION
BLOCK
BLOCCHI
FUNZIONALI
DI BASE
CONNETTORI
COSTANTI
BLOCCHI
FUNZIONALI
COMPOSTI
IL MODELLO DELLE RISORSE
99
NORME IEC 61499
I BLOCCHI FUNZIONALI DI BASE
INTERFACCIA
EVENTI
EVENTI IN
INGRESSO
EXECUTION
CONTROL
CHART
UN ELEMENTO DI UN
BLOCCO FUNZIONALE
È CARATTERIZZATO DA:
EVENTI IN
USCITA
IDENTIFICATORE
TIPO
ALGORITMI
•
UN NOME DI TIPO E UN NOME DI
ELEMENTO
•
EVENTI IN INGRESSO E IN USCITA
•
DATI IN INGRESSO E IN USCITA
•
UN SISTEMA AD EVENTI DISCRETI,
CHIAMATO
EXECUTION
CONTROL
CHART (ECC), FORMATO DA STATI,
TRANSIZIONI, AZIONI
•
VARIABILI INTERNE
•
UN INSIEME DI ALGORITMI ASSOCIATI
AGLI STATI DELL’ ECC
DATI IN
USCITA
DATI IN
INGRESSO
VARIABILI
INTERNE
INTERFACCIA
DATI
STRUTTURA BLOCCHI FUNZIONALI
100
NORME IEC 61499
EXECUTION CONTROL CHART
 OGNI ECC È COMPOSTO DALLE SEGUENTI ENTITÀ
FONDAMENTALI :
•
•
•
•
AZIONI
STATO INIZIALE
STATI
TRANSIZIONI
STATO INIZIALE
START
TRANSIZIONE
AZIONE
INIT
STATO
INIT
INITO
MAIN
ALGORITMI
STATO
EXECUTION CONTROL CHART
MAIN
EXO
EVENTO
ALGORITMI
101
NORME IEC 61499
MODELLO DI ESECUZIONE E TEMPORIZZAZIONE
2
EXECUTION
CONTROL
FUNCTION
8
7
1
ALGORITMI
5
3 4
6
UTILIZZANDO LA EXECUTION CONTROL
FUNCTION
VIENE
CONTROLLATA
L’ESECUZIONE
DEGLI
ALGORITMI
APPARTENENTI AI BLOCCHI FUNZIONALI
 1: I DATI RILEVATI PER UN EVENTO
SONO RESI DISPONIBILI E STABILI
ALL’ INGRESSO DEL BLOCCO
FUNZIONALE

2: OCCORENZA DI UN EVENTO ALLA
INTERFACCIA EVENTI

3: LA EXECUTION CONTROL
FUNCTION RICHIEDE ALLA FUNZIONE
DI SEQUENZIALIZZAZIONE DI
ESEGUIRE L’ALGORITMO ASSOCIATO
ALLO STATO ATTUALE DELLA
EXECUTION CONTROL FUNTION

4: LA FUNZIONE DI
SEQUENZIALIZZAZIONE RENDE
DISPONIBILE LA RISORSA E INIZIA LA
ESECUZIONE DELL’ ALGORITMO
FUNZIONE DI SCHEDULING DELLA RISORSA
= CAMPIONAMENTO
MODELLO ESECUZIONE E TEMPORIZZAZIONE
102
NORME IEC 61499
MODELLO DI ESECUZIONE E TEMPORIZZAZIONE
2
EXECUTION
CONTROL FUNCTION

5: L’ ALGORITMO COMPLETA IL
CALCOLO DELLE VARIABILI DI USCITA
E LE RENDE DISPONIBILI SULLE
USCITE PER I DATI

6: IL BLOCCO FUNZIONALE COMUNICA
ALLA FUNZIONE DI
SEQUENZIALIZZAZIONE CHE HA
TERMINATO L’ ESECUZIONE DELLO
ALGORITMO E RILASCIA LA RISORSA

7: LA FUNZIONE DI
SEQUENZIALIZZAZIONE COMUNICA
ALLA EXECUTION CONTROL
FUNCTION CHE È TERMINATA
L’ESECUZIONE DELL’ALGORITMO

8: L’ EXECUTION CONTROL FUNCTION
GENERA GLI EVENTI IN USCITA
ASSOCIATI ALLO STATO APPENA
TERMINATO RENDENDOLI DISPONIBILI
SULLE USCITE DELLA INTERFACCIA
EVENTI
8
7
1
ALGORITMI
5
3 4
6
FUNZIONE DI SCHEDULING DELLA RISORSA
= CAMPIONAMENTO
MODELLO ESECUZIONE E TEMPORIZZAZIONE
103
103
103
NORME IEC 61499
BLOCCHI FUNZIONALI COMPOSTI
 IL FUNZIONAMENTO OPERATIVO DEL FUNCTION BLOCK È
ESPRESSO IN TERMINI DI UNA SOTTO-RETE DI FUNCTION
BLOCK
EVENTI IN
INGRESSO
EXECUTION
CONTROL
CHART
EVENTI IN
USCITA
IDENTIFICATORE
TIPO
DATI IN
INGRESSO
BLOCCHI FUNZIONALI COMPOSTI
DATI IN
USCITA
104
NORME IEC 61499
FUNCTION BLOCK COME INTERFACCE DI SERVIZIO
 FORNISCONO UN’INTERFACCIA STANDARD PER L’UTILIZZO DI
FUNZIONI PRIVATE DEL SISTEMA
 NASCONDONO ALL’ UTENTE I PARTICOLARI DI SECONDARIO
INTERESSE
 SERVONO A STRATIFICARE LA STRUTTURA DEL SISTEMA DI
CONTROLLO DISTRIBUITO
INTERFACCE DI SERVIZIO
105
NORME IEC 61499
FUNCTION BLOCK COME INTERFACCE DI SERVIZIO
BLOCCO FUZIONALE
COME INTERFACCIA DI SERVIZIO
EVENTI
EVENTI
DATI
RISORSA
RETE DI
COMUNICAZIONE
ISO / OSI LAYERS
DATI
RETE DI
COMUNICAZIONE
DISPOSITIVO
INTERFACCE DI SERVIZIO
106
NORME IEC 61499
FUNCTION BLOCK DI COMUNICAZIONE
 FORNISCONO UN’ INTERFACCIA ALLE APPLICAZIONI PER LE
RETI DI COMUNICAZIONE TRA RISORSE O DISPOSITIVI
COMPONENTI IL SISTEMA DI CONTROLLO COMPLESSIVO
 LA NORMATIVA IEC
COMUNICAZIONE :
61499
UTILIZZA DUE
MODALITÀ
DI
• UNIDIREZIONALE (BROADCAST)
• BIDIREZIONALE (CLIENT-SERVER)
FUNCTION BLOCK DI COMUNICAZIONE
107
NORME IEC 61499
COMUNICAZIONE UNIDIREZIONALE (BROADCAST)
EVENT
EVENT
BOOL
ANY
ANY
:
ANY
INIT
REQ
INITO
CNF
PUBLISH_m
QI
QO
PARAMS STATUS
SD_1
:
SD_m
EVENT
EVENT
EVENT
EVENT
BOOL
ANY
BOOL
ANY
INIT(+)
PARAMS
INITO(+)
~
REQ(+)
SD_1, ..., SD_m
INIT
RSP
INITO
IND
SUBSCRIBE_m
QI
QO
PARAMS STATUS
RD_1
:
RD_m
EVENT
EVENT
BOOL
ANY
ANY
:
ANY
INIT(+)
PARAMS
INITO(+)
IND(+)
RD_1, ..., RD_m
CNF(+)
FUNCTION BLOCK DI COMUNICAZIONE
RSP(+)
108
NORME IEC 61499
FUNCTION BLOCK DI COMUNICAZIONE
EVENT
EVENT
BOOL
ANY
ANY
:
ANY
INIT
REQ
INITO
CNF
CLIENT_m_n
QO
QI
STATUS
PARAMS
RD_1
SD_1
:
:
RD_n
SD_m
EVENT
EVENT
EVENT
EVENT
BOOL
ANY
ANY
:
ANY
BOOL
ANY
ANY
:
ANY
INIT
RSP
INITO
IND
SERVER_n_m
QI
QO
PARAMS STATUS
SD_1
RD_1
:
:
SD_n
RD_m
EVENT
EVENT
BOOL
ANY
ANY
:
ANY
INIT(+)
PARAMS
INITO(+)
INIT(+)
PARAMS
INITO(+)
REQ(+)
SD_1, ..., SD_m
CNF(+)
IND(+)
RD_1, ..., RD_m
RSP(+)
SD_1, ..., SD_n
RD_1, ..., RD_n
FUNCTION BLOCK DI COMUNICAZIONE
109
NORME IEC
CENTRALIZZATO
PROGRAMMABILE
CONFIGURABILE
PLC
IEC 61131-3
RICONFIGURABILE
ED ESPANDIBILE
Function Blocks
IEC 61499
SINTESI
RICONFIGURABILE
ED ESPANDIBILE
DCS
IEC 61804
RICONFIGURABILE
IN LINEA
ARCHITETTURA
DEL MODELLO
COMUNE
DI
RIFERIMENTO
DISTRIBUITO
CONFIGURABILE
PROGRAMMABILE
DISTRIBUITO
CONFIGURABIL
E
APPROCCIO OBJECT ORIENTED
110
NORME IEC
USO DEI FUNCTION BLOCK NEI SISTEMI DI CONTROLLO
CONTROLLO
CENTRALIZZATO
IEC 61131
CON FUNCTION BLOCK
UTLIZZANDO DISPOSITIVI I\O
CONTROLLO
DECENTRALIZZATO
IEC 61131 \ IEC 61804
CON FUNCTION BLOCK PROXY
UTLIZZANDO DISPOSITIVI DI
CAMPO DECENTRALIZZATI
CONTROLLO DISTRIBUITO
IEC 61499 \ IEC 61804
CON FUNCTION BLOCK
DISTRIBUITI UTILIZZANDO
DISPOSITIVI DI TIPO FUNCTION
BLOCK
PANORAMA DEI FUNCTION BLOCK
111
NORME IEC
INFORMATION TECNOLOGY : BASE DELLA CONOSCENZA
MODELLI PER
DIVERSI SCENARI
INDUSTRIALI
TOOLS DI
SUPPORTO
TECNOLOGIE
INTELLIGENTI
RICONFIGURAZIONE
CONDUZIONE
INGEGNERIA
BASATA SU
BLOCCHI
MECCANOTRONICI
CONTROLLO
DIFFUSIONE ED
ADDESTRAMENTO
CONFIGURAZIONE
RETI DI
COMUNICAZIONE
VISUAL EDITOR
COMPILATORE
LIBRERIE
DIAGNOSTICA
VALIDAZIONE
RICERCA GUASTI
MODELLAZIONE
INCAPSULAMENTO
DELLA CONOSCENZA
VERIFICA
OBIETTIVI
SIMULAZIONE
PIATTAFORMA
DI SIMULAZIONE
RUN -TIME
PIATTAFORMA
STRUMENTI
DIMOSTRAZIONE
DEI BENEFICI IN
AMBIENTE
INDUSTRIALE
SVILUPPO
DI PROTOTIPI
ARCHITETTURA APERTA
IEC 61499
FIPA
PANORAMA DEI BLOCCHI
UML
XML
IEC 61131
IEC AUTOMATION
OBJECT
112
FUNCTION BLOCK - OBJECT ORIENTED
FUNCTION BLOCK ORIENTED
FLUSSO DEGLI EVENTI
OBJECT- ORIENTED UML
CLASSI
SEQUENZE
ATTIVITA’
FLUSSO DEI DATI
STATO
S2
S3
S6
DISPOSITIVO 3
RISORSA 1
DISPOSITIVO 2
RISORSA 1
DISPOSITIVO 1
RISORSA 1
RISORSA 2
RISORSA 2
RISORSA 2
RISORSA 3
S4
S5
RISORSA 3
RISORSA 3
NODO1
COMPONENTI
CONFRONTO TRA ARCHITETTURE
113
FUNCTION BLOCK - OBJECT ORIENTED
FUNCTION BLOCK
ORIENTED
 RAPPRESENTAZIONE
ORIENTATA ALLA
STRUTTURA HARDWARE
E ALLE APPLICAZIONI
OBJECT - ORIENTED
 RAPPRESENTAZIONE PIÙ
ASTRATTA
 INFORMAZIONI DISTRIBUITE
IN DIAGRAMMI DIFFERENTI
 INFORMAZIONI RACCOLTE
IN UN UNICO DIAGRAMMA
 RAPPRESENTAZIONE
DETTAGLIATA, MA PIÙ
COMPLESSA
 RAPPRESENTAZIONE
CONCISA
 SEMPLIFICA LA
REALIZZAZIONE DI NUOVE
REALIZZAZIONI (FACILMENTE
RICONFIGURABILE).
CONFRONTO TRA ARCHITETTURE
114
MODELLAZIONE UML
LIVELLLO CONCETTUALE
LIVELLLO FISICO
REQUISITI FUNZIONALI
REALIZZAZIONE
UTENTE FINALE
FUNZIONALITÀ
CASO D’USO
PROGRAMMI PER
IL FUNZIONAMENTO
LA GESTIONE
UNA APPLICAZIONE
VISTA DELL’UTENTE
ATTIVITÀ DA SVOLGERE
INTEGRATORE DI SISTEMA
COMPORTAMENTO
PRESTAZIONI
PUNTI DI VISTA
UTILIZZAZIONE
INGEGNERIA DI SISTEMA
ISTALLAZIONE
COMUNICAZIONE
115
APPROCCIO OBJECT ORIENTED
DISPOSITIVO DI
CONTROLLO
TRAPANO
PANNELLO DI CONTROLLO
COMANDO
MOVIMENTO
TRAPANO
RETE DI COMUNICAZIONE
TRA I DISPOSITIVI
DI CONTROLLO
ESEMPIO DI APPARATO
COMANDO
POSIZIONE
SLITTA
DISPOSITIVO DI
CONTROLLO
SLITTA
116
APPROCCIO OBJECT ORIENTED
LA LAVORAZIONE
PUÒ INIZIARE
IL TRAPANO PUÒ INIZIARE
LA LAVORAZIONE
IL TRAPANO È ALLONTANATO
DAL PEZZO
FASI DELLA LAVORAZIONE
IL PEZZO È CARICATO
SULLA SLITTA
IL PEZZO È PORTATO
SOTTO IL TRAPANO
IL TRAPANO EFFETTUA IL TRAPANO HA CONCLUSO
LA LAVORAZIONE
LA LAVORAZIONE
IL PEZZO È SCARICATO
DALLA SLITTA
LA LAVORAZIONE
È CONCLUSA
117
APPROCCIO OBJECT ORIENTED
CICLO DI LAVORO
INIZIO CICLO
FINE CICLO
MOVIMENTO
PEZZO
1.
IL PEZZO DA LAVORARE
POSIZIONATO SULLA SLITTA
MOVIMENTO
SLITTA
2.
LA SLITTA VIENE POSIZIONATA SOTTO
IL TRAPANO
MOVIMENTO
TRAPANO
3.
VIENE ABBASSATO IL TRAPANO
LAVORAZIONE
4.
VIENE AVVIATA LA LAVORAZIONE
MOVIMENTO
TRAPANO
5.
TERMINATA LA LAVORAZIONE,
TRAPANO VIENE SOLLEVATO
MOVIMENTO
SLITTA
6.
ILTRAPANO VIENE FERMATO
MOVIMENTO
PEZZO
7.
VIENE MOVIMENTATA LA SLITTA PER
SCARICARE IL PEZZO
ESEMPIO DI APPARATO
VIENE
IL
118
APPROCCIO OBJECT ORIENTED
PANNELLO DI CONTROLLO
COMUNICAZIONE DATI
DISPOSITIVO DI
CONTROLLO
TRAPANO
COMANDO
MOVIMENTO
TRAPANO
SENSORI
COMANDO
POSIZIONE
SLITTA
ALTO
MOVIMENTO
PEZZO
MOVIMENTO
TRAPANO
CARICA
BASSO
SENSORI
RETE DI COMUNICAZIONE
TRA I DISPOSITIVI
DI CONTROLLO
ESEMPIO DI APPARATO
PRONTO
ATTESA
COMUNICAZIONE DATI
DISPOSITIVO DI
CONTROLLO
SLITTA
119
ESEMPIO MODELLAZIONE UML
UNITA’ DI FORATURA AUTOMATICA
CONTROLLO
SLITTA
<<INCLUDE>>
SETUP
LAVORAZIONE
PROGETTISTA
NORMALE FUNZIONAMENTO
OPERATORE/
IMPIANTO
<<INCLUDE>>
CONTROLLO
TRAPANO
ARRESTA
SISTEMA
<<INCLUDE>>
<<INCLUDE>>
MANUTENZIONE
GESTIONE
ALLARMI
OPERATORE
<<INCLUDE>>
<<INCLUDE>>
OPERATORE
RIAVVIA
SISTEMA
DIAGRAMMA DEI CASI D’USO
120
ESEMPIO MODELLAZIONE UML
UNITÀ DI FORATURA
+ ESEGUI LAVORAZIONE ()
+ TRASLA ()
+ RUOTA ()
COLLABORA CON
- POSIZIONE
- OPERATIVITÀ
SLITTA
COLLABORA CON
TRAPANO
- POSIZIONE
- OPERATIVITÀ
+ TRASLA ()
+ RUOTA ()
CONTROLLORE
- ATTESA
- CONTROLLO
+ INVIA SEGNALE ()
+ RICEVE SEGNALE ()
DIAGRAMMA DELLE CLASSI
121
ESEMPIO MODELLAZIONE UML
DIAGRAMMA DELLE CLASSI
122
ESEMPIO MODELLAZIONE UML
CONTROLLO
TRAPANO
CONTROLLO
SLITTA
UNITÀ DI
FORATURA
TRAPANO
DIAGRAMMA DEGLI OGGETTI
SLITTA
123
ESEMPIO MODELLAZIONE UML
OPERATORE
CONTROLLO
SLITTA
1: INIZIA
SLITTA
CONTROLLO
TRAPANO
TRAPANO
2: CARICA PEZZO
3: CARICATO
4: A SINISTRA
5: PRONTO
6: PEZZO IN POSIZIONE
7: INIZIO CICLO DI LAVORAZIONE ?
8: AVVIARE TRAPANO
9: ABBASSA
10: LAVORAZIONE
DIAGRAMMA DELLE SEQUENZE
124
ESEMPIO
MODELLAZIONE
UML
APPROCCIO
OBJECT ORIENTED
OPERATORE
CONTROLLO
SLITTA
SLITTA
CONTROLLO
TRAPANO
TRAPANO
11: SOLLEVA
12 : IN ALTO
13: FINE LAVORAZIONE
14: A DESTRA
15 : IN ATTESA
16 : SCARICA
17 : SCARICATO
18: FINITO
DIAGRAMMA DELLE SEQUENZE
125
ESEMPIO
MODELLAZIONE
UML
APPROCCIO
OBJECT ORIENTED
LAVORAZIONE
INIZIO
SLITTA IN
ATTESA
SCARICA
SLITTA IN
ATTESA
CARICA
FINE
SLITTA IN PRONTO
CICLO TRAPANO
TRAPANO
ALTO
FERMO
DIAGRAMMA DI STATO
TRAPANO
ALTO
ROTAZIONE
TRAPANO
BASSO
LAVORAZIONE
126
ESEMPIO MODELLAZIONE
UML
APPROCCIO
OBJECT ORIENTED
OPERATORE
SLITTA
TRAPANO
INIZIO CICLO
AZIONA
COMANDO SLITTA
CARICAMENTO
PEZZO
SLITTA A
SINISTRA
AZIONA
COMANDO TRAPANO
AVVIAMENTO
TRAPANO
TRAPANO IN
BASSO
LAVORAZIONE
DIAGRAMMA DELLE ATTIVITA’
127
ESEMPIO MODELLAZIONE
UML
APPROCCIO
OBJECT ORIENTED
OPERATORE
SLITTA
TRAPANO
TRAPANO IN
ALTO
TRAPANO
FERMO
SLITTA A
DESTRA
SCARICA IL
PEZZO
FINE CICLO
DIAGRAMMA DELLE ATTIVITA’
128
ESEMPIO MODELLAZIONE UML
NODO 1
CONTROLLO
SLITTA
NODO 2
RETE DI
COMUNICAZIONE
DATI
SLITTA
DIAGRAMMA DI DISTRIBUZIONE
CONTROLLO
TRAPANO
TRAPANO
129
MODELLAZIONE UML
UML IN SINTESI
UML È COMPLESSO E VA ADATTATO ALLE ESIGENZE DEI
PROGETTISTI E AL CONTESTO DEL PROGETTO PRENDENDO IN
CONSIDERAZIONE I SEGUENTI FATTORI:
 SETTORE DI ATTIVITÀ
 TIPOLOGIA DI PROGETTO
 ESIGENZE DI CONFORMITÀ A NORME
 COMUNICAZIONE CON COMMITTENTI E FORNITORI
 COMPOSIZIONE E DISTRIBUZIONE DEL GRUPPO DI LAVORO
UML IN SINTESI
130
MODELLAZIONE UML
UML IN SINTESI
UML NON SUGGERISCE NÉ PRESCRIVE UNA SEQUENZA DI
REALIZZAZIONE DEI DIVERSI DIAGRAMMI
UML OFFRE UN’AMPIA GAMMA DI POSSIBILI MODALITÀ DI UTILIZZO
TRA LE QUALI I PROGETTISTI SONO LIBERI DI SCEGLIERE
NON TUTTI I DIAGRAMMI SONO UGUALMENTE UTILI IN OGNI
CIRCOSTANZA
IN OGNI APPLICAZIONE BISOGNA INDIVIDUARE QUALI DIAGRAMMI
SONO EFFETTIVAMENTE NECESSARI PER LA REALIZZAZIONE DEL
MODELLO
UML IN SINTESI
131
MODELLAZIONE UML
CONCLUSIONI
LE METODOLOGIE DI PROGETTO ORIENTATE AGLI OGGETTI SONO
STATE
ADOTTATE
CON
SUCCESSO
NELL’AUTOMAZIONE
INDUSTRIALE PER FAR FRONTE ALLE SEGUENTI ESIGENZE:
• RIDURRE
I
TEMPI
CHE
INTERCORRONO
TRA
LA
PROGETTAZIONE E LA REALIZZAZIONE DI UN SISTEMA
•
SVILUPPARE ARCHITETTURE SOFTWARE AD OGGETTI, CHE
OFFRONO MAGGIORI POSSIBILITÀ DI INTEGRAZIONE TRA
SISTEMI ETEROGENEI
•
REALIZZARE SISTEMI DI PRODUZIONE, IMPIANTI ED APPARATI
CON STRUTTURE MODULARI CHE PERMETTONO:
 UNA SEMPLICE CONFIGURAZIONE DEL SISTEMA
 UNA MANUTENZIONE PIÙ RAPIDA ED ECONOMICA
 LA POSSIBILITÀ DI RICONFIGURAZIONE
 LA POSSIBILITÀ DI INSERIMENTO DI NUOVE UNITÀ
CONCLUSIONI
132
ESEMPIO MODELLAZIONE UML
L’ ESISTENZA DEGLI STANDARD IEC E ISA FORNISCE LE LINEE
GUIDA PER LA PROGETTAZIONE DI ARCHITETTURE SOFTWARE
ORIENTATE AGLI OGGETTI
PROGETTARE SISTEMI CON STRUTTURA NON CONFORME AGLI
STANDARD SI RIVELA UN APPROCCIO PERDENTE, PERCHÈ PORTA
ALLA REALIZZAZIONE DI SOLUZIONI PROPRIETARIE SENZA
POSSIBILITÀ DI INTEGRAZIONE CON ALTRI SISTEMI E NON
RIUTILIZZABILI, QUINDI PIÙ COSTOSE
CONCLUSIONI
133
ESEMPIO MODELLAZIONE UML
INTERFACCIA
UN ELEMENTO DI CONGIUNZIONE FRA DUE UNITÀ FUNZIONALI, DEFINITE PER
MEZZO DELLE CARATTERISTICHE FUNZIONALI, DELLE CARATTERISTICHE DEI
SEGNALI O DI ALTRE CARATTERISTICHE PIÙ APPROPRIATE
SISTEMA
UN INSIEME DI ELEMENTI INTERCORRELATI APPARTENENTI AD UN CONTESTO
BEN DEFINITO PRESO COME UNITÀ SEPARATA DELL’AMBIENTE
ESEMPIO DI DATI
UN INSIEME DI VALORI ASSOCIATI ALL’INSIEME DI OPERAZIONI CONSENTITE
DATI
UNA RAPPRESENTAZIONE FORMALIZZATA DI UNA INFORMAZIONE ESPRESSA IN
MANIERA DA POTER ESSERE UTILIZZATA PER LA COMUNICAZIONE,
L’INTERPRETAZIONE E L’ELABORAZIONE
DEFINIZIONI SECONDO LE NORME IEC 65
134
ESEMPIO MODELLAZIONE UML
UNITÀ FUNZIONALE
ENTITÀ HARDWARE E/O SOFTWARE IN GRADO DI RAGGIUNGERE UNA SCOPO
PREDEFINITO
RETE
UNA AGGREGAZIONE DI NODI E DI ELEMENTI DI COLLEGAMENTO
AZIONE (OPERTATION)
UNA AZIONE BEN DEFINITA CHE UNA VOLTA APPLICATA AND UNA COMBINAZIONE DI ENTITÀ NOTE PRODUCE UNA NUOVA ENTITÀ
PARAMETRO
UNA VARIABILE A CUI È ASSEGNATO UN VALORE COSTANTE COLLEGATO AD
UNA APPLICAZIONE SPECIFICA E CHE PUÒ ESSERE INDICATA COME
APPLICAZIONE
CONNESSIONE
UN COLLEGAMENTO STABILITO FRA DUE ENTITÀ FUNZIONALI PER TRASFERIRE
UNA INFORMAZIONE
DEFINIZIONI SECONDO LE NORME IEC 65
135
ESEMPIO MODELLAZIONE UML
HARDWARE
UN DISPOSITIVO FISICO CON FINALITÀ DEFINITE
INFORMAZIONE
SIGNIFICATO CHE VIENE ASSEGNATO AD UN DATO O AD UN INSIEME DI DATI
TRAMITE UNA CONNESSIONE BEN DEFINITA
OGGETTO PER L’AUTOMAZIONE
UNA UNITÀ FUNZIONALE HARDWARE O SOFTWARE PER RENDERE OPERATIVA
L’AUTOMAZIONE O UNA AZIONE DI CONTROLLO
CONFIGURAZIONE DI UN OGGETTO PER L’AUTOMAZIONE
ASSEGNAZIONE DELLA CONFIGURAZIONE O DEI PARAMETRI DI UN OGGETTO
PER L’AUTOMAZIONE
INGRESSO DI UN OGGETTO PER L’AUTOMAZIONE
INTERFACCIA DI UN OGGETTO PER L’AUTOMAZIONE O DEL SUO MODELLO
CHE AGISCE COME LA DESTINAZIONE DI UN OGGETTO PER L’AUTOMAZIONE
DEFINIZIONI SECONDO LE NORME IEC 65
136
ESEMPIO MODELLAZIONE UML
MODELLO DI UN OGGETTO PER L’AUTOMAZIONE
MODELLO DI UN PARTICOLARE ASPETTO DI UN OGGETTO
DIAGRAMMA DI UN OGGETTO PER L’AUTOMAZIONE
UN RETE I CUI NODI SONO MODELLI DI OGGETTI PER L’AUTOMAZIONE E I RAMI
SONO LE CONNESSIONI
USCITA DI UN OGGETTO PER L’AUTOMAZIONE
INTERFACCIA DEL MODELLO DI UN OGGETTO PER L’AUTOMAZIONE CHE
AGISCE COME SORGENTE DI UNA CONNESSIONE
TIPO OGGETTO PER L’AUTOMAZIONE
CARATTERISTICHE DOMINANTI DI UN OGGETTO PER L’AUTOMAZIONE
DEFINIZIONI SECONDO LE NORME IEC 65
137
ESEMPIO MODELLAZIONE UML
DISPOSITIVO
FISICO
NOMEATTUATORE
DEL DISPOSITIVO
STATO
MODALITÀ DI CONTROLLO
ATTRIBUTI
TENSIONE DI ALIMENTAZIONE
POTENZA
COPPIA
ON
OFF
RUNNING
STOP
VALORE
CODICE
BOOLEAN
INTEGER
STRING
FLOATING
NUMERO MODELLO
FORMATO
MODELLO
GRANDEZZE
PRODUTTORE
VARIABILE ATIIVA
OPERAZIONI
DIAGRAMMA DELLE CLASSI PER UN ATTUATORE
138
ESEMPIO MODELLAZIONE UML
DISPOSITIVO
FISICO
DIAGRAMMA DELLE CLASSI PER UN ATTUATORE
FORMATO
RUN
setSTATO
setON
setOFF
setSTOP
setVARIABLE_ACTIVE
getSTATO
getMODALITÀ_ DI _CONTROLLO
getTENSIONE_ DI_ ALIMENTAZIONE
getPOTENZA
setTMODALITÀ_DI _CONTROLLO
getON
getOFF
getRUNNING
setRUNNING
getSTOP
getVARIABLE_ACTIVE
VARIABILI
STATO
«SETTER»
«GETTER»
OPERAZIONI
VALORE
VALORE
GRANDEZZE
ATTIVAZIONE
RISULTATO
ATTRIBUTI
ATTUATORE
139
ESEMPIO MODELLAZIONE UML
CONCEPTUAL
DATA
MODEL
(CDM)
È
UTILIZZATO
PER
RAPPRESENTARE LA STRUTTURA GENERALE DI UNA APPLICAZIONE,
INDIPENDENTEMENTE DA OGNI SOFTWARE O CONSIDERAZIONE
RELATIVA AL SALVATAGGIO DELLA STRUTTURA DATI (DATABASE
MANAGEMENT SYSTEM DBMS). IL MODELLO, GRAZIE AI DIAGRAMMI
ENTITÀ-RELAZIONE (ENTITY RELATIONSHIP DIAGRAMS -ERD),
FORNISCE
UNA
RAPPRESENTAZIONE
FORMALE
DELLA
ORGANIZZAZIONE
DEI
DATI
DESCRIVENDO
LE
RELAZIONI
CONCETTUALI DI TIPI DIFFERENTI DI INFORMAZIONI PIUTTOSTO CHE
LA LORO STRUTTURA FISICA.
PHYSICAL DATA MODEL (PDM) È UTILIZZATO PER MODELLARE LA
STRUTTURA FISICA DI UN DATABASE, TENENDO CONTO DEL
SOFTWARE E DELLE CONSIDERAZIONI RELATIVE DBMS. IL MODELLO
SUPPORTA L’UTENTE CON DIVERSI TIPI DIAGRAMMI, A SECONDA CHE
SI VOGLIA MODELLARE L’IMPLEMENTAZIONE FISICA DEL DATABASE
OPPURE DEFINIRE DATA-QUERIES SU DATI OPERAZIONALI.
DIFFERENTI TIPI DI MODELLO
140
ESEMPIO MODELLAZIONE UML
OBJECT ORIENTED MODEL (OOM) È UTILIZZATO PER MODELLARE UN
SISTEMA SOFTWARE/HARDWARE/GESTIONALE UTILIZZANDO UN
APPROCCIO ORIENTATO AGLI OGGETTI PER JAVA ED ALTRI LINGUAGGI
DI PROGRAMMAZIONE COME AD ESEMPIO C#, C++, VISUAL BASIC
.NET, XML
BUSINESS PROCESS MODEL (BPM) È UTILIZZATO PER MODELLARE I
SIGNIFICATI DI UNO O PIÙ PROCESSI BUSINESS
XML MODEL (XSM) PER MODELLARE LA STRUTTURA DI UN FILE XML
REQUIREMENTS MODEL (RQM) È UTILIZZATO PER SPECIFICARE E
DOCUMENTARE LE NECESSITÀ DEI CLIENTI CHE DEVONO ESSERE
SODDISFATTE DURANTE IL PROCESSO DI SVILUPPO
INFORMATION LIQUIDITY MODEL (ILM) È UTILIZZATO PER MODELLARE
LA REPLICAZIONE DELLE INFORMAZIONI DA UN DATABASE SORGENTE
A PIÙ DATABASE REMOTI, USANDO MOTORI DI REPLICAZIONE.
FREE MODEL (FEM) È UTILIZZATO PER CREARE OGNI TIPO DI CHARTDIAGRAM, IN UN CONSTESTO DI AMBIENTE GENERICO
DIFFERENTI TIPI DI MODELLO
141
ESEMPIO MODELLAZIONE UML
PRESTAZIONI
DESIDERATE
E
PROGETTAZIONE
AD OGGETTI
MODELLO
DELLE
PRESTAZIONI
CONCEPTUAL MODEL
BUSINESS PROCESS MODEL
PHYSICAL DATA MODEL
OBJECT ORIENTED MODEL
XML MODEL
OGGETTI COINVOLTI
E LORO PRESTAZIONI
INFORMATION LIQUIDITY MODEL
ORGANIZZAZIONE DELLE PROGETTAZIONE PER MODELLI
142
ESEMPIO MODELLAZIONE UML
DIAGRAMMA DELLE CLASSI PER UN ATTUATORE
143
Scarica

università degli studi di roma “la sapienza” dipartimento di