Politecnico di Milano Tesi di Diploma di: Diego Favareto
Michele Doto Tutor universitari: prof. S. Cavalieri dott. S. Terzi
Tutor aziendale: ing. D. Belloli Anno Accademico 2001-2002
POLITECNICO DI MILANO Facolt di Ingegneria Corso di Diploma in
Ingegneria Logistica e della Produzione ANALISI DELLAPPLICABILIT DI
UN SIMULATORE OBJECT-ORIENTED PER LA COSTRUZIONE IN AUTOMATICO DI
UN MODELLO DI SIMULAZIONE
Slide 2
Politecnico di Milano Il progetto Europeo Remote Factory Remote
Factory Per Remote Factory si intende la possibilit di effettuare
un processo di schedulazione e controllo a distanza (remoto) di un
sistema produttivo o di una sua emulazione, mediante lutilizzo di
tecnologie web Controllo : sistemi di controllo e di programmazione
operativa per contesti manifatturieri Progetto finanziato dalla
Comunit Europea nellambito dellIMS Network of Excellence Utilizzo
della web-based simulation per il benchmarking di sistemi di
schedulazione e controllo di impianti produttivi manifatturieri
Alla base del concetto di Remote Factory c la possibilit di
separare il livello fisico di un sistema produttivo dal livello di
controllo ed effettuare tale controllo utilizzando Internet
Esigenze Mancanza di collaborazione tra aziende, produttori
tecnologici e ricercatori Mancanza di una collezione di casi
manifatturieri che si riferiscano ad un qualsiasi impianto
produttivo e che siano caratterizzati da una certa complessit
realistica Mancanza di criteri standard di valutazione dei sistemi
di schedulazione e controllo sito web Remote Factory sito web
Remote Factory problemi, confronti researchersresearchers
technology vendors industrial users
Slide 3
Politecnico di Milano Visione generale del progetto diagramma
ad oggetti interfaccia grafica oggettiistanziatioggettiistanziati
modellologicomodellologico A ) Strumento di supporto alla
progettazione ed istanziamento di nuovi casi di benchmarking
industrial strenght modello di controllo modellofisicomodellofisico
B ) Valutazione delle performance di una logica di controllo su
testbed gi instanziati disponibili in rete Physical Model Builder
A+B ) Integrazione dei due moduli: tradurre un nuovo modello logico
di sistema produttivo in un modello di simulazione mediante
physical model builder
Slide 4
Politecnico di Milano Evoluzione del progetto passi logici
passi progettuali collegamento client-server collegamento
client-server visualizzazione delle performance e analisi di
benchmarking phyisical model builder progettazione delle interfacce
di comunicazione progettazione delle interfacce di comunicazione
creazione di pagine web per la visualizzazione modello di
simulazione del sistema fisico stesura del framework modello logico
del framework rappresentazione object-oriented interfaccia grafica
testbed case studies aziendali stesura del framework modello logico
del framework rappresentazione object-oriented interfaccia grafica
testbedtestbed case studies aziendali modello di simulazione del
sistema fisico phyisical model builder
collegamentoclient-servercollegamentoclient-server progettazione
delle interfacce di comunicazione progettazione delle interfacce di
comunicazione visualizzazione delle performance e analisi di
benchmarking creazione di pagine web per la visualizzazione sistema
di controllo
Slide 5
Politecnico di Milano Test bench assistant : definizione dei
testbed Con interfacce grafiche in cascata sar possibile
customizzare un nuovo testbed istanziando gli oggetti definiti nel
modello logico del framework
Slide 6
Politecnico di Milano collegamento client-server collegamento
client-server visualizzazione delle performance e analisi di
benchmarking phyisical model builder progettazione delle interfacce
di comunicazione progettazione delle interfacce di comunicazione
creazione di pagine web per la visualizzazione modello di
simulazione del sistema fisico stesura del framework modello logico
del framework rappresentazione object-oriented interfaccia grafica
testbed case studies aziendali modello di simulazione del sistema
fisico SILK passi logici passi progettuali stesura del framework
modello logico del framework rappresentazione object-oriented
interfaccia grafica testbedtestbed case studies aziendali
Evoluzione del progetto sistema di controllo
Slide 7
Politecnico di Milano diagramma ad oggetti interfaccia grafica
oggettiistanziatioggettiistanziati modellologicomodellologico A )
Strumento di supporto alla progettazione ed istanziamento di nuovi
casi di benchmarking industrial strenght modello di controllo
modellofisicomodellofisico B ) Valutazione delle performance di una
logica di controllo su testbed gi instanziati disponibili in rete
Physical Model Builder A+B ) Integrazione dei due moduli: tradurre
un nuovo modello logico di sistema produttivo in un modello di
simulazione mediante physical model builder SILK Evoluzione del
progetto
Slide 8
Politecnico di Milano Simulazione e Silk Le caratteristiche
salienti di Silk 4a4a4a4ampiezza del vocabolario c he formato da
costrutti Silk e istruzioni Java 4a4a4a4architettura
object-oriented del modello di simulazione e del simulatore
4u4u4u4utilizzo dei Java threads (multitasking) per modellare la
presenza simultanea di entit nel sistema e per gestire la
simulazione 4e4e4e4esecuzione come applet Java: S ilk indipendente
dalla piattaforma ed utilizzabile con tecnologie web-based 4S4S ilk
lideale in un a aa ambiente di simulazione distribuito
4v4v4v4versione di Java : resta uno standard nel mercato IT Silk un
software sviluppato dalla Threadtec Inc. linguaggi general purpose
linguaggi di simulazione SILK pacchetti di simulazione Silk Silk un
linguaggio di simulazione object-oriented basato su Java
Slide 9
Politecnico di Milano linguaggio di simulazione Silk
Architettura object-oriented di Silk vocabolario MODELLO DI
SIMULAZIONE componenti e attivit attributi variabili di stato
eventi variazioni stocastiche MODELLO DI SIMULAZIONE componenti e
attivit attributi variabili di stato eventi variazioni stocastiche
SIMULATORE motore del simulatore parametri di simulazione
elaborazioni statistiche MODELLO DI SIMULAZIONE SILK classi di
oggetti dati membro classi di oggetti metodi classi di oggetti
MODELLO DI SIMULAZIONE SILK classi di oggetti dati membro classi di
oggetti metodi classi di oggetti SIMULATORE SILK classe di oggetti
variabili classi di oggetti
Slide 10
Politecnico di Milano Casi di studio complessit simulabilit
casi didattici casi aziendali reali linea manuale La Pavoni
job-shop job-shop Frattini produzione di processo
Slide 11
Politecnico di Milano modello logico Il caso Frattini reparto
torniturareparto fresatura 2 torni2 frese modello di simulazione
Silk
Slide 12
Politecnico di Milano Lo sviluppo in Silk Mappatura delle
classi Silk con gli oggetti definiti nel modello logico del
framework Process Plan Process plan code / total process time /
total process cost Operation Operation type Operation code
Sequential position (from OPERATION) Part Part code Dimension
Weight Material Specification part conformity state report status()
(from Production Planning) 1..* has in imput 1..* has in output
1..* 1 1 Physical Component Physical dimension Physical component
type (from Physical Resource) Resource Name Id Icon Resource cost
Specification Position state change state() end operation()
maintenance() report status() report finish time() (from Physical
Resource) Choice Choice code 1..* Processor Type Capacity : int
actual capacity setup() processing() (from Physical Resource)
Processing 1..* involves 1..* executes MODELLO DI SIMULAZIONE SILK
classe Entity classe Resource classe Queue classe StateVar classe
Distribution classe Observationaal classe TimeDependent MODELLO DI
SIMULAZIONE SILK classe Entity classe Resource classe Queue classe
StateVar classe Distribution classe Observationaal classe
TimeDependent
Slide 13
Politecnico di Milano Il caso La Pavoni caldaia portafiltro
base leva gruppo valvola di sicurezza colonnina livello acqua
manometro tappo caldaia gruppo erogatore di caff resistenza e parte
elettrica volantino vapore operatore 1operatore 3operatore 4
operatore 5operatore 6 operatore 2 Produzione di una famiglia di
macchine da caff: linea di assemblaggio manuale formata da 4
stazioni in ciascuna delle quali lavora un operatore. Inoltre, ci
sono altri due operatori al pre-assemblaggio di varie parti di
prodotto pi piccole che saranno assemblate definitivamente in linea
modello di simulazione Silk
Slide 14
Politecnico di Milano Run number 1 over at time 884.0000000
Elapsed time 0:0:0.61 Observational Variables: Standard Identifier
Average Deviation Minimum Maximum Final Count Flow time 28.9366343
7.8709431 24.9267639 79.6594471 30.8204492 220 Throughput 0.2095929
0.0485673 0.0126368 0.2496724 0.2496724 220 Time Dependent
Variables: Standard Identifier Average Deviation Minimum Maximum
Final Time Period Operatore 1 0.9106934 0.2851858 0.0000000
1.0000000 1.0000000 880.0000000 Operatore 2 0.9266709 0.2606759
0.0000000 1.0000000 1.0000000 880.0000000 Operatore 3 0.9043984
0.2940441 0.0000000 1.0000000 1.0000000 880.0000000 Operatore 4
0.9119934 0.2833045 0.0000000 1.0000000 1.0000000 880.0000000
Operatore 5 0.9675530 0.1771841 0.0000000 1.0000000 1.0000000
880.0000000 WIP 7.3862421 1.0259237 3.0000000 9.0000000 9.0000000
880.0000000 Run number 2 over at time 884.0000000 Elapsed time
0:0:0.61 Observational Variables: Standard Identifier Average
Deviation Minimum Maximum Final Count Flow time 28.9366343
7.8709431 24.9267639 79.6594471 30.8204492 220 Throughput 0.2095929
0.0485673 0.0126368 0.2496724 0.2496724 220 Time Dependent
Variables: Standard Identifier Average Deviation Minimum Maximum
Final Time Period Operatore 1 0.9106934 0.2851858 0.0000000
1.0000000 1.0000000 880.0000000 Operatore 2 0.9266709 0.2606759
0.0000000 1.0000000 1.0000000 880.0000000 Operatore 3 0.9043984
0.2940441 0.0000000 1.0000000 1.0000000 880.0000000 Operatore 4
0.9119934 0.2833045 0.0000000 1.0000000 1.0000000 880.0000000
Operatore 5 0.9675530 0.1771841 0.0000000 1.0000000 1.0000000
880.0000000 WIP 7.3862421 1.0259237 3.0000000 9.0000000 9.0000000
880.0000000 Mappatura delle classi Silk con gli oggetti definiti
nel modello logico del framework Executing Pavoni... Executing
start( )... Executing Silk... Executing Executive... Prodotti
finiti al run numero 1: 220 Prodotti finiti al run numero 2: 222
Prodotti finiti al run numero 3: 220 Prodotti finiti al run numero
4: 220 Prodotti finiti al run numero 5: 221 Finished executing
Executive. Finished executing Silk. Run number 3 over at time
884.0000000 Elapsed time 0:0:0.61 Observational Variables: Standard
Identifier Average Deviation Minimum Maximum Final Count Flow time
28.9366343 7.8709431 24.9267639 79.6594471 30.8204492 220
Throughput 0.2095929 0.0485673 0.0126368 0.2496724 0.2496724 220
Time Dependent Variables: Standard Identifier Average Deviation
Minimum Maximum Final Time Period Operatore 1 0.9106934 0.2851858
0.0000000 1.0000000 1.0000000 880.0000000 Operatore 2 0.9266709
0.2606759 0.0000000 1.0000000 1.0000000 880.0000000 Operatore 3
0.9043984 0.2940441 0.0000000 1.0000000 1.0000000 880.0000000
Operatore 4 0.9119934 0.2833045 0.0000000 1.0000000 1.0000000
880.0000000 Operatore 5 0.9675530 0.1771841 0.0000000 1.0000000
1.0000000 880.0000000 WIP 7.3862421 1.0259237 3.0000000 9.0000000
9.0000000 880.0000000 Run number 4 over at time 884.0000000 Elapsed
time 0:0:0.61 Observational Variables: Standard Identifier Average
Deviation Minimum Maximum Final Count Flow time 28.9366343
7.8709431 24.9267639 79.6594471 30.8204492 220 Throughput 0.2095929
0.0485673 0.0126368 0.2496724 0.2496724 220 Time Dependent
Variables: Standard Identifier Average Deviation Minimum Maximum
Final Time Period Operatore 1 0.9106934 0.2851858 0.0000000
1.0000000 1.0000000 880.0000000 Operatore 2 0.9266709 0.2606759
0.0000000 1.0000000 1.0000000 880.0000000 Operatore 3 0.9043984
0.2940441 0.0000000 1.0000000 1.0000000 880.0000000 Operatore 4
0.9119934 0.2833045 0.0000000 1.0000000 1.0000000 880.0000000
Operatore 5 0.9675530 0.1771841 0.0000000 1.0000000 1.0000000
880.0000000 WIP 7.3862421 1.0259237 3.0000000 9.0000000 9.0000000
880.0000000 Run number 5 over at time 884.0000000 Elapsed time
0:0:0.61 Observational Variables: Standard Identifier Average
Deviation Minimum Maximum Final Count Flow time 28.9366343
7.8709431 24.9267639 79.6594471 30.8204492 220 Throughput 0.2095929
0.0485673 0.0126368 0.2496724 0.2496724 220 Time Dependent
Variables: Standard Identifier Average Deviation Minimum Maximum
Final Time Period Operatore 1 0.9106934 0.2851858 0.0000000
1.0000000 1.0000000 880.0000000 Operatore 2 0.9266709 0.2606759
0.0000000 1.0000000 1.0000000 880.0000000 Operatore 3 0.9043984
0.2940441 0.0000000 1.0000000 1.0000000 880.0000000 Operatore 4
0.9119934 0.2833045 0.0000000 1.0000000 1.0000000 880.0000000
Operatore 5 0.9675530 0.1771841 0.0000000 1.0000000 1.0000000
880.0000000 WIP 7.3862421 1.0259237 3.0000000 9.0000000 9.0000000
880.0000000 prodotti finiti livello di saturazione degli operatori
della linea Il caso La Pavoni class Operator extends Resource
Office TurnTime TypeOfWorker curPosition goInSystem( ) goOutSystem(
) move( ) Work( ) updatePosition( ) reportCurPosition( ) class
Operator extends Resource Office TurnTime TypeOfWorker curPosition
goInSystem( ) goOutSystem( ) move( ) Work( ) updatePosition( )
reportCurPosition( ) modello logico modello Silk Mappatura delle
classi Analisi dei risultati
Slide 15
Politecnico di MilanoConclusioni Vantaggi di Silk Vantaggi di
Silk Applicabilit e stabilit del simulatore Java based:
espandibile; web based; network based Corrispondenza framework
object oriented Svantaggi di Silk Svantaggi di Silk ancora in fase
di sviluppo Lentezza nella programmazione (essendo codice) modello
fisicoSimple++ SILK Test bench assistant modello logico
Slide 16
Politecnico di Milano Sviluppi futuri Consolidamento del
framework di riferimento Mappatura delle classi di oggetti del
framework con altri simulatori Sperimentazione del Physical Model
Builder Standardizzazione delle modalit di comunicazione tra il
livello fisico e quello di controllo