350 likes | 382 Views
Utility Integration Bus Architecture (and Implementation). the KCPL CIM / UIB Project EMS Users Group June, 1999 Pat Brown, KCPL John Kishpaugh, KCPL. KCPL CIM / UIB Project. 1997 EMS Users Group presentation the KCPL integration problem the progress of electric utility standards
E N D
Utility Integration Bus Architecture (and Implementation) the KCPL CIM / UIB Project EMS Users Group June, 1999 Pat Brown, KCPL John Kishpaugh, KCPL
KCPL CIM / UIB Project • 1997 EMS Users Group presentation • the KCPL integration problem • the progress of electric utility standards • the promise of distributed object technology “A fascinating intersection of industry readiness and technology readiness”
Electric Utility Software Standards a fascinating intersection... our standards are... • high quality • becoming commonly used? that 5-letter “C” word... CORBA (Common Object Request Broker Architecture) • allows software and data to be spread across platforms
KCPL CIM / UIB Project • 1998 EMS Users Group presentation • the KCPL integration problem • designing solutions with electric utility standards • and distributed object technology “Why we’re using an integration bus”
the KCPL Business Solution: the KCPL Technical Problem Desktop Access Power Pool CIM Database ICCP Maintenance Management System DFMS Distribution Facilities Management System EMS Energy Management System Real-Time Data Historian Substation Automation
the KCPL Technical Solution Power Pool Desktop Access DFMS Distribution Facilities Management System EMS Energy Management System ICCP CIM Database Utility Integration Bus Real-Time Data Historian Substation Automation Maintenance Management System
KCPL CIM / UIB Project • 1999 EMS Users Group presentation • the KCPL integration problem • the key architectural concepts of the Utility Integration Bus, an electric utility standard integration framework using distributed object technology “What is the Utility Integration Bus?”
KCPL CIM / UIB Project Overview • An integration of 4 control center applications, that supports: • data sharing • real-time • electrical system model • one-line display data • remote requests • supervisory control
CIM / UIB Project Applications Integrated Trans & Power Operators RTUs EMS Energy Management System real-time “point” data electrical system model info supy control requests
CIM / UIB Project Applications Integrated Trans & Power Operators Distribution Operators RTUs CADS DFMS Distribution Facilities Management System EMS Energy Management System real-time “point” data electrical system model info display info supy control requests
CIM / UIB Project Applications Integrated Trans & Power Operators Distribution Operators KCPL-wide Desktop Access RTUs CADS DFMS Distribution Facilities Management System TOM Transmission Operations Model database EMS Energy Management System real-time “point” data electrical system model info display info supy control requests
CIM / UIB Project Applications Integrated Trans & Power Operators Distribution Operators KCPL-wide Desktop Access Power Pool RTUs CADS DFMS Distribution Facilities Management System TOM Transmission Operations Model database ICCP Inter-Control Center Communications Protocol package EMS Energy Management System real-time “point” data electrical system model info display info supy control requests
Utility Integration Bus (UIB) KCPL CIM/UIB Project Overview Trans & Power Operators Distribution Operators KCPL-wide Desktop Access Power Pool RTUs CADS DFMS Distribution Facilities Management System TOM Transmission Operations Model database ICCP Inter-Control Center Communications Protocol package EMS Energy Management System DFMS/UIB Interface TOM/UIB Interface ICCP/UIB Interface EMS/UIB Interface
KCPL CIM/UIB Project Timeline • 1996 - selling the project • 1997 - designing the bus • 1998 - implementing the simple bus • 1999 - deploying the first simple bus • 2000 - sending out the SISCO fleet?? Observations: • EVERYTHING takes longer than you expect • being standards-based is worth the pain
CIM/UIB Project UIB Philosophies • Review of integration strategies • Key UIB design concepts
solves short term problem, • but each subsequent • application addition • becomes more difficult • Central Database • 1 interface between each • application and the database • cleaner, but leads to the database “kitchen sink” problem • no support of application-to-application interaction Possible Integration Strategies • Point-to-point interfaces • 1 interface per • source/destination pair
applications are autonomous • interface to bus is standard • shared data is modeled and is extensible The Integration Framework Strategy • Integration Bus • 1 interface between each application and the integration framework Observation: • integration frameworks make integration easier, not easy
CIM/UIB Project UIB Key Concept #1 • The integration problem • stand-aloneapplications • sharing info about / making requests related to business objects Application A Application B Application C business objects
CIM/UIB Project UIB Key Concept #2 • Data sharing • is done by announcements of changes related to business objects called events • which are passed over the bus from a supplier application to one or more consumer applications Application A (supplier) Application B (consumer) Application C (consumer) X x x x
CIM/UIB Project UIB Key Concept #3 • Inter-application communication • is accomplished via business object-related request / replies • requests are passed over the bus from one client application to one server application Application A (server) Application B (client) Application C ? X x x
CIM/UIB Project UIBKey Concept #3 • Inter-application communication • replies return information or acknowledgement to the client Application A (server) Application B (client) Application C ? X x x
CIM/UIB Project UIB Key Concept #4 • Applications are blissfully unaware of the identity of other applications • suppliers issue events to the bus Application A (supplier) Application B Application C X x
CIM/UIB Project UIB Key Concept #4 • Applications are blissfully unaware of the identity of other applications • consumers receive events from the bus Application A Application B Application C (consumer) x
CIM/UIB Project UIB Key Concept #4 • Applications are blissfully unaware of the identity of other applications • clients make requests of the bus Application A Application B (client) Application C ? X x
CIM/UIB Project UIB Key Concept #4 • Applications are blissfully unaware of the identity of other applications • except, perhaps, when servers reply Application A (server) Application B (client) Application C ? X x x
Application D CIM/UIB Project UIB Key Concept #4 • Applications are blissfully unaware of the identity of other applications • therefore, adding an application requires no change to any existing application Application A Application B Application C x x
CIM/UIB Project UIB Key Concept #5 • Applications have roles • they can be event announcers and request servers in their support role Application A SUPPORT Application B Application C X x x
CIM/UIB Project UIB Key Concept #5 • Applications have roles • they can be event consumers and/or request clients in their interest role Application B INTEREST Application A SUPPORT Application C INTEREST ? X X x x x x x
CIM/UIB Project UIB Key Concept #5 • Applications have roles • they can be both! Application A SUPPORT Application B SUPPORT/ INTEREST Application C INTEREST ? ? X Y X Y x Y x Y x Y x x
CIM/UIB Project UIB Key Concept #6 • Most applications have an internal model • and the job of the interface is to translate business object information from the application’s internal model to the bus model (or vice versa) Application A Application B Application C interface interface interface
CIM/UIB Project UIB Key Concept #7 • When applications interact in any UIB deployment • the message package and the interaction mechanicsare the same • only the contents of the event or request package change
Application X Application Y Application Z UIB Deployment 2 CIM/UIB Project UIB Key Concept #7 Application A Application B Application C UIB Deployment 1
CIM/UIB Project UIB Key Concept #8 • Business objects • are modeled in an OO way • are described in classes that have attributes, events and methods and relationships • have a model, the Information Exchange Model, that is “understood” by the participating applications • whose reference can be a standard…like the CIM! Information Exchange Model Class FooToo Class Foo attribute1 attribute1 event1 event2 event3 method1 event1 event2
Class FooToo interface interface CIM/UIB Project UIB Key Concept #9 • Adding to the interaction • requires modifications only to the business object model and to involved / interested application interfaces • does not affect existing applications that have no interest Information Exchange Model Application A Application B Application C interface interface interface Class Foo
Utility Integration Bus (UIB) KCPL CIM / UIB Project Trans & Power Operators Distribution Operators KCPL-wide Desktop Access Power Pool RTUs CADS DFMS Distribution Facilities Management System TOM Transmission Operations Model database ICCP Inter-Control Center Communications Protocol package EMS Energy Management System Trans Ops Model DFMS/UIB Interface TOM/UIB Interface ICCP/UIB Interface EMS/UIB Interface