corba in control systems
DESCRIPTION
CORBA in Control Systems. Ricardo Sanz. Contents. The Control Landscape Why CORBA ? What is CORBA ? CORBA Basics CORBA in Control Systems. The Control Landscape. Trends and Perspectives in Software-based Control Systems. RS-232 Interface To Others. Superloop (10 Mbaud, 250 Nodes). - PowerPoint PPT PresentationTRANSCRIPT
WP1 / R.Sanz / Viena September 11-13, 2002
1
HRTC
Hard Real-time CORBA
IST 37652
CORBA in Control SystemsCORBA in Control Systems
Ricardo Sanz
WP1 / R.Sanz / Viena September 11-13, 2002 2
HRTC
IST 37652Hard Real-time CORBA
ContentsContents
The Control Landscape Why CORBA ? What is CORBA ? CORBA Basics CORBA in Control Systems
WP1 / R.Sanz / Viena September 11-13, 2002
3
HRTC
Hard Real-time CORBA
IST 37652
The Control LandscapeThe Control Landscape
Trends and Perspectives in Software-based Control Systems
ManagementCommand System(MCS) 10,000 tags
Module Bus (32 Addr.)
Superloop (10 Mbaud, 250 Nodes)RS-232 InterfaceTo Others
Process ControlUnit (PCU)
CommunicationGateway
Plant Loop (500 Kbaud, 63 Nodes)
Process ControlUnit (PCU)
OperatorInterface Unit
(OIU) 5,000 tags
EngineeringWorkstation
(EWS)
Loop/BusInterface(LIM/BIM)
Computer InterfaceUnit (CIU)
ProcessControl View
(PCV) 1,500 tags
Slave Bus 64 Addr.
AnalogI/O
Slaves
Termination Units
Logic MasterModule (LMM)
DigitalI/O Slaves
DigitalLogic
Station(DLS)
ControllerModule(COM)
RedundantAnalog MasterModule (AMM)
RedundantMulti-FunctionController (MFC)
DigitalControlStation
(DCS)
I/OSlaves
Slave Bus 64 Addr.
I/OSlaves
Configuration& Tuning
Module (CTM)
Stand AloneController
WP1 / R.Sanz / Viena September 11-13, 2002 5
HRTC
IST 37652Hard Real-time CORBA
Field Management
Process Management
Business Management
Continuous Process Plant
Fieldbus
Control Network
Enterprise Network
Process Control
MIS
Data Storage
Process Operation
Field Configuration
Sensing and Acting
Safety
Software Intensive ControlSoftware Intensive Control
WP1 / R.Sanz / Viena September 11-13, 2002 6
HRTC
IST 37652Hard Real-time CORBA
Design Issues / ChallengesDesign Issues / Challenges
Scaling Communication Coordination Transparency Naming Load sharing
Consistency Failures Security Heterogeneity Mobility Predictability
WP1 / R.Sanz / Viena September 11-13, 2002
7
HRTC
Hard Real-time CORBA
IST 37652
Why CORBA ?Why CORBA ?
Reasons for using CORBA in control systems engineering
WP1 / R.Sanz / Viena September 11-13, 2002 8
HRTC
IST 37652Hard Real-time CORBA
A Device Maps to an ObjectA Device Maps to an Object
ps.getADC()
ps.getDAC()
ps.setDAC()
ps.getStatus() ps.off()
interface PS {
ADC: double RO
DAC: double RW
status: bits RO
on(): void
off(): void
}
RampedPS : PS {
start(): void
stop(): void
}
WP1 / R.Sanz / Viena September 11-13, 2002 9
HRTC
IST 37652Hard Real-time CORBA
Simple ExampleSimple Example
Object-Wrapping a robot to build a simple master-slave relation:• Master: A master• Slave: A robot
Robot.Goto(x)
WP1 / R.Sanz / Viena September 11-13, 2002 10
HRTC
IST 37652Hard Real-time CORBA
DOC BenefitsDOC Benefits
Distributed computing can improve• Collaboration through connectivity and interworking• Performance through parallel processing• Reliability and availability through replication• Constructability, scalability and portability through
modularity• Extensibility through dynamic configuration and
reconfiguration• Cost effectiveness through resource sharing and
reusability• Lifespan through standardization
WP1 / R.Sanz / Viena September 11-13, 2002 11
HRTC
IST 37652Hard Real-time CORBA
Technical advantagesTechnical advantages
Legacy assets can be leveraged by wrapping. Programmers have the ability to distribute
components of an application to computers that best fit the task of each object without having to change the rest of the application using these objects.
Since objects appear to be local to their clients, a client does not need to know what machine, or even what kind of machine, an object resides on.
Systems integration can be performed to a higher degree.
WP1 / R.Sanz / Viena September 11-13, 2002 12
HRTC
IST 37652Hard Real-time CORBA
Elements in DOCElements in DOC
Object Models: OO classics on the net Component Models: Black-box Reuse Middleware: Integration and interoperation Transports: Distribution Services: Prebuilt reusable functionality
• Vertical domains• Horizontal domains
WP1 / R.Sanz / Viena September 11-13, 2002
13
HRTC
Hard Real-time CORBA
IST 37652
What is CORBA ? What is CORBA ?
A Brief Intro to Distributed Object Computing
WP1 / R.Sanz / Viena September 11-13, 2002 14
HRTC
IST 37652Hard Real-time CORBA
IntegrationIntegration
In-Thread• Method call: No concurrency, simplicity
In-Process• Inter thread requests: complex, fast, reliable
In-Host• Inter process requests: fast, reliable
In-Net• Inter hosts requests: unpredictable, unreliable
WP1 / R.Sanz / Viena September 11-13, 2002 15
HRTC
IST 37652Hard Real-time CORBA
RPCRPC ServerServer
ServerServerIn-process In-process
ServerServerIPCIPC
Client Process Server Process
In-HostIn-Host
In-NetIn-Net Server MachineClient Machine
IntegrationIntegration
RPCRPC
ClientClient
ClientClient
ClientClient
WP1 / R.Sanz / Viena September 11-13, 2002 16
HRTC
IST 37652Hard Real-time CORBA
MM
MMIPCIPC
RPCRPC
MM
RPCRPCMM
MM ServerServer
ServerServer
ServerServer
Simplification: MiddlewareSimplification: Middleware
ClientClient
ClientClient
ClientClient
In-process In-process
In-HostIn-Host
In-NetIn-Net
MiddlewareMiddleware
MiddlewareMiddleware
MiddlewareMiddleware
WP1 / R.Sanz / Viena September 11-13, 2002 17
HRTC
IST 37652Hard Real-time CORBA
Brokering MiddlewareBrokering Middleware
ServerServerClientClient
ServerServer
ClientClient
ServerServerClientClient
MiddlewareMiddleware
WP1 / R.Sanz / Viena September 11-13, 2002 18
HRTC
IST 37652Hard Real-time CORBA
Making a requestMaking a request
IIOP(CORBA) or ORPC(DCOM) IIOP(CORBA) or ORPC(DCOM) or JRMP(Java/RMI)or JRMP(Java/RMI)
ServerServerClientClient
ClientClientStubStub
ServerServerStubStub
WP1 / R.Sanz / Viena September 11-13, 2002 19
HRTC
IST 37652Hard Real-time CORBA
VendorVendorSpecificSpecific
LogicLogic
OPCOPCServerServer
OPCOPCCustomCustom
I/FI/F
OPCOPCAutomationAutomation
I/FI/F
OPC StructureOPC Structure
C++C++ClientClient
VBVBClientClient
WP1 / R.Sanz / Viena September 11-13, 2002 20
HRTC
IST 37652Hard Real-time CORBA
CORBACORBA
CORBA is the acronym for Common Object Request Broker Architecture.
CORBA is OMG's open, vendor-independent specification for an architecture and infrastructure that computer applications use to work together over networks.
Interoperability results from two key parts of the specification: • OMG Interface Definition Language (OMG IDL), • The standardized protocols GIOP and IIOP.
WP1 / R.Sanz / Viena September 11-13, 2002 21
HRTC
IST 37652Hard Real-time CORBA
CORBACORBA
CORBA is standardized middleware CORBA is a non-proprietary standard It is based on industry requirements Is demonstrated by implementations Is tailorable and extensible Runs on heterogeneous platforms Multiple implementations for suitability Vendor and language independent Multiple services for easy development
WP1 / R.Sanz / Viena September 11-13, 2002
22
HRTC
Hard Real-time CORBA
IST 37652
CORBA BasicsCORBA Basics
Basic ideas about the technology
WP1 / R.Sanz / Viena September 11-13, 2002 23
HRTC
IST 37652Hard Real-time CORBA
LifecycleEventsNamingPersistenceTransactionsConcurrency
ExternalizationSecurityTimePropertiesQueryLicensing
Compound DocsObject LinkingHelp FacilitiesDesktop Mgmt
Not standardized by OMG; Scope isSingle application or vendor
Business ObjectsHealthcareFinanceTelecommunication
ApplicationObjects
HorizontalCORBA Facilities
CORBA Services
VerticalCORBA Facilities
OMA OverviewOMA Overview
Object Request BrokerObject Request Broker
Object Management Architecture
WP1 / R.Sanz / Viena September 11-13, 2002 24
HRTC
IST 37652Hard Real-time CORBA
OMA StructureOMA Structure
TraderTrader
NamingNaming PersistencePersistence TransactionTransaction EventEventQueryQuery
ConcurrencyConcurrency SecuritySecurity TimeTime
UtilitiesUtilities
ManufacturingManufacturing
E-CommerceE-Commerce
MedicalMedicalRepositoriesRepositories
InternationalizationInternationalizationMOFMOF
Input MethodInput Method
Common Object Services
Horizontal Facilities Vertical (domain) facilities
Application Specific Objects
Object Request Broker
Object Management Architecture
WP1 / R.Sanz / Viena September 11-13, 2002 25
HRTC
IST 37652Hard Real-time CORBA
POA
ORB Core
Client Object Implementation
ClientStubs
ORBInterface
DIIServer
Skeleton
One interface
One interface per object operationOne interface per object adaptor
Proprietary interfaceNormal call interfaceUp call interface
DSI
DSI: Dynamic Skeleton Interface POA: Portable Object AdapterDII: Dynamic Invocation Interface
ORB ComponentsORB Components
WP1 / R.Sanz / Viena September 11-13, 2002 26
HRTC
IST 37652Hard Real-time CORBA
UMLModeling CORBAservices
CORBAfacilities
Business Object Facility
Common Business Objects
CORBADomains
CORBADomains
CORBADomains
Me
ta-O
bje
ct F
aci
lity
SE
CU
RIT
Y
IDL Interfaces, Mappings, & ORB
Realtime, Embedded options
Interoperability: IIOP, Asynch
Components, Scripting
Not Just InteroperabilityNot Just Interoperability
WP1 / R.Sanz / Viena September 11-13, 2002 27
HRTC
IST 37652Hard Real-time CORBA
Domains in the OMADomains in the OMA
CORBAservices
Horizontal CORBAfacilities
BOF, basic Business Objects & Framework
FinancialObjects
TransprtationObjects
E-CommerceObjects
HealthcareObjects
TelecomObjects
ManufctringObjects
Acc
ou
nti
ng
Ban
kin
g
Insu
ran
ce
PD
M
Tel
e N
etw
k M
gm
t
Sh
op
Flo
or
Au
to
ER
P
Med
ical
MP
I
Tel
e S
ervi
ces
Str
eam
Co
ntr
ol
EC
Ser
vice
s
E-P
aym
ent
Den
tal
Mar
ine
Rai
l
Off
er L
oc/
Tra
de
Inte
rmo
dal
WP1 / R.Sanz / Viena September 11-13, 2002 28
HRTC
IST 37652Hard Real-time CORBA
OMG Adoption ProcessOMG Adoption Process
RFI (Request for Information) to establish range of commercially available software.
RFP (Request for Proposals) to gather explicit descriptions of available software.
Letters of Intent to establish corporate direction. Task Force Development End User evaluation & recommendation; simultaneous
Business Committee examination. Board decision based on TC, End User, and BC
recommendations.
WP1 / R.Sanz / Viena September 11-13, 2002 29
HRTC
IST 37652Hard Real-time CORBA
Model Driven ArchitectureModel Driven Architecture
Is a new way of writing specifications and developing applications, based on a platform-independent model (PIM) and mappings to implementations using tools .
A complete MDA specification consists of:• A platform-independent base UML model
• One or more platform-specific models (PSM)
• Interface definition sets
A complete MDA application consists of a definitive PIM, plus one or more PSMs and complete implementations
MDA development focuses first on the functionality and behavior of a distributed application or system
WP1 / R.Sanz / Viena September 11-13, 2002 30
HRTC
IST 37652Hard Real-time CORBA
Analysis and DesignAnalysis and Design
The Unified Modeling Language (UML) is a graphical standard modeling language
The MetaObject Facility (MOF), standardizes a meta-model (i.e. the concepts that you use to build your application model).
XML Metadata Interchange (XMI), is a stream format for interchange of metadata (including the UML models)
The Common Warehouse Metamodel (CWM) standardizes a basis for data modeling commonality within an enterprise, across databases and data stores.
WP1 / R.Sanz / Viena September 11-13, 2002
31
HRTC
Hard Real-time CORBA
IST 37652
CORBA in Control SystemsCORBA in Control Systems
Examples of Use
WP1 / R.Sanz / Viena September 11-13, 2002 32
HRTC
IST 37652Hard Real-time CORBA
Synchronized PendulumsSynchronized Pendulums
Simplex ControllerLynx OS
Node A: ILU ORB
Simplex ControllerLynx OS
Node B: ILU ORB
SunOSNode C: ILU ORB
outer loop controlCORBA
WP1 / R.Sanz / Viena September 11-13, 2002 33
HRTC
IST 37652Hard Real-time CORBA
Object Request Broker
Browser
Application
JTIDS
Controls &
Displays
Link 16 Interface Software
F-15 JTIDS TerminalC2 JTIDS Terminal
Virtual Target
Folder
Open Weapon SystemsOpen Weapon SystemsCollaboration
Server
C4I
Simulation
Quality of Service Management
Quality Object
Framework
Link 16 Interface Software
Pluggable ProtocolPluggable Protocol
Collaboration
Client
Link 16
C2C2 F-15F-15
Resource Mgmt
Adaptive
WP1 / R.Sanz / Viena September 11-13, 2002 34
HRTC
IST 37652Hard Real-time CORBA
BehaviorBehavior
Virtual Arm TeleoperationVirtual Arm Teleoperation
KavisKavis
6 DOF Master6 DOF Master
WP1 / R.Sanz / Viena September 11-13, 2002 36
HRTC
IST 37652Hard Real-time CORBA
RiskRisk ManManagementagement
WP1 / R.Sanz / Viena September 11-13, 2002 37
HRTC
IST 37652Hard Real-time CORBA
CameraCamera
User Interface
User Interface
Real time WAN videoReal time WAN video
Remote operation of hydraulic power plants
WP1 / R.Sanz / Viena September 11-13, 2002 38
HRTC
IST 37652Hard Real-time CORBA
OperatorTerminal
IED-2
IED-1
Pushbutton
Ethernet Hub
10BaseFL
10BaseT
GPS
Camera
10BaseT
Doorbell
ConfigurationTerminal
Leveraging StandardsLeveraging Standards
Electric Utilities / IEC 61850
WP1 / R.Sanz / Viena September 11-13, 2002 39
HRTC
IST 37652Hard Real-time CORBA
Problems Facing DOCProblems Facing DOC
More complex lifecycle models Lack of complete end-to-end methods More diverse architectures to deal with Lack of established development processes Lack of tools Integration and testing starting from early stages Multiple threads of control More complex risk profile
WP1 / R.Sanz / Viena September 11-13, 2002 40
HRTC
IST 37652Hard Real-time CORBA
Going Down in ControlGoing Down in Control
Strategic ControlStrategic Control
Complex LoopsComplex Loops
Advanced ControlAdvanced Control
Operational ControlOperational Control
Tactical ControlTactical Control
Sensors & ActuatorsSensors & Actuators
Simple LoopsSimple Loops
MISMIS
PlantPlant
Optimization
Plan execution
Reactivity
Conventional Process Control
User
Inte
rface
User
Inte
rface
HRTC