Laurea Mag. in Ing. dell'Automazione
Real-Time Message Servi e
soluzione middleware per la gestione
ed il monitoraggio di pro essi
in tempo reale
a ura di
Edoardo Canepa
Supervisori: Prof. Ing. Andrea Caiti
Prof. Ing. AldoBalestrino
Prof. Ing. Alberto Landi
Questo do umento des rive l'ideazione e la realizzazione di una soluzione
software perilRapid ControlPrototyping (RCP) basatasuipiù diusi
stru-mentiperilComputerAidedControlSystemsDesign(CACSD),qualiS iLab
e MATLAB. Il middleware presentato è orientato alla reazione di
interfa - e per pro essi in tempo reale he simulino o ontrollino un impianto ed è
stato utilizzatoe a ementenella reazione disoftware permonitoraggiodi
ma hinari industriali,perstrumentiembeddedattiallaregolazionein linea
delle strategie di ontrollo e per lo sviluppo di piattaforme didatti he
na-lizzate all'apprendimento ed all'insegnamento della teoria del ontrollo. A
partire dall'inquadramento della soluzione nel panorama già esistente degli
strumenti di RCP, la tesi presenterà in dettaglio le s elte progettuali
eet-tuate el'implementazionedelsoftware, per pro edere on l'esposizione delle
appli azioni e on ludere quindi on leproposte di futura espansione in
ter-mini di servizi oerti al software di più alto livello e ompatibilità on le
A Rapid ControlPrototyping environmentbased onlarge s ope automation
Computer Aided Control Systems Design software, like S iLab and MA
T-LAB tools is des ribed on this report. The proposed middleware solution
is spe i ally suited for fast GUI prototyping a tivities related to real-time
simulation and ontrol. A numberof user appli ations realizedover the
im-plemented middleware ommuni ation is presented, to fully understand its
appli ability to embedded systems, ontrol laws tuning and ontrol theory
e-learningworkstationsdeveloping su haswellknownremoteorvirtual
lab-oratories. Thisreportwillbeginwith apresentationof ommonlyused RCP
te hniquesand pro esses, afterwhi hadetaileddes riptionof design hoi es
and pro edures willbe presented and, nally, willshowsolution'sexpansion
apabilitiesforhigher levelappli ationsand ompatibilitywith ommonlow
1 Introduzione 1
1.1 Informatizzazionenell'automazione . . . 3
1.1.1 Informatizzazionedel i lo diprogettazione. . . 3
1.1.2 FasidivalidazioneedimplementazionemedianteCACSD 6 1.1.3 Controllo di pro essi industriali . . . 9
1.1.4 Informatizzazionedelpro esso di apprendimento. . . . 11
1.2 Analisideipro essi e sintesi degli obiettivi . . . 14
1.3 Strati azione delsoftware ed introduzionealmiddleware . . . 19
2 Piattaforma e s elte progettuali 23 2.1 Hardware . . . 24
2.2 Introduzione ai me anismi diese uzione in tempo reale . . . 26
2.2.1 Vin olitemporali . . . 26
2.2.2 Ese uzione es hedulazione . . . 30
2.2.3 Componenti hardware per il tempo reale ed indi i di prestazione . . . 34
2.3 SistemiOperativiin tempo reale. . . 36
2.4 ProgettazioneCACSD e generazionedi odi e . . . 40
2.5 Spe i he erequisiti . . . 41
3 Ar hitettura e realizzazione 45 3.1 Ar hitettura . . . 47
3.1.1 Ese uzione intemporeale . . . 49
3.1.2 Strutture dati e distribuzione . . . 50
3.2 Realizzazione: RTMS Server . . . 53
3.2.1 Modulo digestione delmodello . . . 57
3.2.2 Modulo digestione deitasks RTAI . . . 59
3.2.3 Modulo digestione deisegnali . . . 60
3.3 Realizzazione: RTMS Client . . . 64
3.3.1 Modulo digestione delmodello . . . 66
3.3.2 Modulo digestione deisegnali . . . 67
3.4 Spe i he e veri a . . . 69
4 Appli azioni 75 4.1 Introduzione . . . 75
4.2 Appli azione di Rapid ControlPrototyping . . . 80
4.3 Appli azione SCADA . . . 85
4.4 Telelaboratorioed e-Learning . . . 86
5 Prospettive di sviluppo e on lusioni 91 5.1 Componente server . . . 91
5.2 Componente lient . . . 93
5.3 Con lusioni . . . 94
Appendi e 95
1.1 Ci lo diprogettazione di un ontrollore . . . 4
1.2 S hema dell'Hardware-in-the-loop . . . 7
1.3 S hema delRapid Control Prototyping . . . 8
1.4 S hema diun sistema SCADA . . . 9
1.5 S hema diun tele-laboratorio . . . 12
1.6 S hema dianalisi . . . 14
1.7 S hema delusso informativo . . . 15
1.8 Piramideinversa di d'Agapeye [33℄ . . . 19
1.9 S hema deilivellidisoftware per le omponenti delsistema . . 20
2.1 Componentidell'RTU . . . 23
2.2 Dierenze neilinguaggidi programmazionetra PC e PLC . . 25
2.3 Modello Time/Utility . . . 27
2.4 Componentie politi he dis hedulazione . . . 33
2.5 Piattaformadimisurazione delle prestazioni . . . 35
2.6 Appro i peri nu lei dei SistemiOperativi . . . 37
2.7 LibreriaRTAILab perMATLAB . . . 41
2.8 RealizzazioneRCP-HIL on piattaforma x86 . . . 42
3.1 Utenza etipologie di onnessione . . . 45
3.2 Ar hitettura e separazione deiussi di omuni azione . . . 48
3.3 Rappresentazione delmodello . . . 50
3.4 Proto ollo di omuni azione . . . 52
3.5 Diagrammadelle lassi astrattedel proto ollo XML-RPC . . . 54
3.6 Diagrammadisequenza dell'attivitàdi olloquioXML-RPC . 56 3.7 Diagrammadelle lassi delmodulo di gestionedelmodello . . 58
3.8 Diagramma delle lassi delmodulo deitasks . . . 59
3.9 Diagramma delle lassi delmodulo digestione deisegnali . . . 60
3.10 Rappresentazione del ampione nella realizzazionedel lient . 61 3.11 Listato dell'attivitàdi spedizionedel pa hetto. . . 63
3.12 Oggetto lient . . . 65
3.13 Oggetto gestoredel modello . . . 66
3.14 Oggetto parametro remoto . . . 67
3.15 Componenti delmodulo di gestionedeisegnali . . . 68
3.16 Design Patern Observer-Subje t . . . 68
4.1 Pannelloprin ipale dell'appli azione DCL [7℄ . . . 76
4.2 Plugins di base delDCL . . . 77
4.3 Listato dell'interfa iaDCLPlugin . . . 78
4.4 Interfa ia di omuni azione delDCL on l'RTMS lient . . . 79
4.5 Regolazione PID nell'industriaameri ana . . . 80
4.6 S hema di regolazione on relay a i lo hiuso . . . 81
4.7 Risposta algradino unitariodell'esperimento diregolazione . . 82
4.8 Appli azione di regolazionee valutazione . . . 83
4.9 Dettaglio deiplugins DCL realizzati. . . 84
4.10 Appli azione SCADA delDCL alPolite ni odiMilano . . . . 85
4.11 S hema dell'appli azione SCADA . . . 86
4.12 EsperimentoPi k & Pla e . . . 87
4.13 S hema omplessivo deltelelaboratorioa uradel DSEA . . . 88
4.14 A esso adun esperimento . . . 88
2.1 Confronto traleprestazioni dei sistemioperativi . . . 39
2.2 Requisiti minimiper laRTU . . . 43
3.1 Requisiti minimiper i omponentiRTMS . . . 69
3.2 Sessionidi test per ilsoftware . . . 73
µ
C/OS-II Mi ro ontroller OperatingSystem Version II. ABS A tive Brake System.ACPI Advan ed Conguration and PowerInterfa e.
ADC Analog-to-DigitalConverter.
AMQP Advan edMessage Queuing Proto ol.
API Appli ationProgramming Interfa e.
APIC Advan ed Programmable Interrupt Controller.
CACE Computer-Aided ControlEngineering.
CACSD Computer-Aided ControlSystem Design.
CAE Computer-Aided Engineering.
CGI Common Gateway Interfa e.
COMEDI COntroland MEasurament Devi e Interfa e.
CORBA Common Obje t Request Broker Ar hite ture.
CSN/ATM Communi ation, Navigation,Surveillan e,and AirTra
Ma-nagement.
DCL DistributedControlLab.
DFT Dis rete FourierTransformation.
DRE distributed real-timeand embedded.
DSEA Dipartimentodi SistemiElettri i eAutomazione.
DSP DigitalSignal Pro essor.
ECU Ele troni ControlUnit.
EDF Erliest Deadline First.
EMC Enhan ed Ma hine Controller.
FOPTD First-Order Plus Time Delay.
FPGA Field-ProgrammableGate Array.
GUI Graphi alUser Interfa e.
HIL Hardware-In-the-Loop.
HMI Human Ma hine Interfa e.
HPET High Pre isionEvent Timer.
IDE Integrated Development Environment.
INRIA Institut Nationalde Re her he en Informatique et Automatique.
IPC Inter-Pro ess Communi ation.
IRQ Interrupt ReQuest.
ISA International So iety of Automation.
IT Information Te hnology.
JEHUTY Java wEb HypermodUlarinTerfa e sYstem.
JMS JavaMessage Servi e.
JVM Java Virtual Ma hine.
KDE K Desktop Environment.
LabVIEW Laboratory Virtual Instrumentation Engineering Workben h,
©NationalInstruments, In .
LDIM LearningDesign InformationModel.
LDWG LearningDesign Working Group.
LGPL GNULesser GeneralPubli Li ense.
LTS Long TimeSupport.
MATLAB MATrix LABoratory, ©Mathworks, In .
MMI Man Ma hine Interfa e.
MMU Memory Management Unit.
NIST National Institute of Standards and Te hnology.
OMAC Organization forMa hine Automationand Control.
PC Personal Computer.
PIT ProgrammableInterval Timer.
PLC Programmable Logi Controller.
POSIX Portable Operating System Interfa e forComputer Environments.
PXI PCI eXtensions forInstrumentation.
RCP RapidControlPrototyping.
RMS Rate-Monotoni s heduling.
RPC Remote Pro edureCall.
RTAI Real-TimeAppli ationInterfa e.
RTC Real-TimeClo k.
RTMS Real TimeMessage Servi e.
RTOS Real TimeOperating System.
RTSJ Real-TimeSpe i ation forJava.
RTU Remote Terminal Unit.
RTW Real-TimeWorkshop, ©Mathworks,In .
SCADA Supervisory Control AndData A quisition.
S iLab S ien e Laboratory.
SMP Symmetri MultiPro essor.
SMT Simultaneous MultiThreading.
SOAP Simple Obje t A ess Proto ol.
SRA Airborne S anning Radar Altimeter.
TAO The ACE ORB.
TC Time Constraint.
TCB Task Controlling Blo k.
TCP Transmission Control Proto ol.
TIGER Telepresen e Istant Groupware for higherEdu ation in Roboti s.
UDP User Datagram Proto ol.
WCET Worst Case Exe ution Time.
WCRT Worst CaseResponse Time.
WSN Wireless Sensors Networks.