01 introduction to cim october 2010
DESCRIPTION
cim interfaceTRANSCRIPT
1
Welcome to the CIM University
San Francisco, California, USA11 October 2010
2
Introduction to CIMAnd Its Role in the Utility Enterprise
Data Preparation, Exchange, Integration,and Enterprise Information Management
3
Presentation Contents
• Background• What is the CIM• How the CIM is used in the Utility Enterprise
– As a semantic model for information exchange
• Three Layer Architecture for Using the CIM Standards• CIM UML model• Profiles for business context• Implementation syntax
– XML Schema – for messaging– RDF Schema - for model exchange
• Where to get CIM information
4
CIM History• 1992 – Unified Information turned over a data model based on the EPRI OTS to
the CCAPI Task Force with the understanding it would be turned into an industry standard model
• 1993 to 1996 - The CCAPI task force expanded the data model with a primary goal of enabling use of plug compatible applications to help protect utility investment in applications
– Entity Relationship Visio Diagram with MS Access database • 1996 – The CIM was turned over to IEC Technical Committee 57, Working Group
13&14, where it is advancing through the standards process. It covers both electric utility transmission and distribution business operations
– Converted to UML and initially maintained in Rational Rose • 2000 – NERC mandates CIM and first IOP test• 2003 – ISO/RTO Council and EPRI sponsored an initiative to expand CIM into
Market Operations, a.k.a. CME, followed by extensions for Planning and Dynamics• 2005 – First edition of IEC 61970-301 CIM Base• 2005 – CIM Users Group established under UCA Users Group• 2008 – CIM adopted by UCTE• 2009 – NIST identifies CIM as key standard for Smart Grid interoperability• 2010 – ENTSO-E migrates to CIM and holds first IOP test
5
The IEC Common Information Model (CIM) - What Is It?• A set of standards in enable system integration and information exchange
based on a common information model– Provides a general information model and message/file schemas for
messages/files exchanged between systems• A key differentiator: The CIM standards are based on a Unified Modeling
Language (UML) based information model representing real-world objects and information entities exchanged within the value chain of the electric power industry
– Provides common semantics for all information exchanges• Referred to as Model-Driven Integration (MDI)
– Not tied to a particular application’s view of the world• But permits same model to be used by all applications to facilitate information sharing
between applications– Maintained by IEC in Sparx Enterprise Architect modeling tools– Many tools available generating design artifacts and documentation– Enable data access to enterprise data warehouse in a standard way
6
GridWise Interoperability Framework
Role of CIM
7
Sample Power System Model
Generator AC Line Substation
Company
Load
Operates
Operates
Belongs To
Member Of
Owns
Load Area
Connects To
Connects To
Connects To
8
Application of Information Model
SISCO SYSTEMS
Common model creates understanding
Application 1 Application 2
Mod
el M
appi
ng
Mod
el M
appi
ng
9
Information is Needed From Many Individual Systems
AM/FM/GIS
Mobile
SCADA
Work Mgmt
CustomerInformation
NetworkManagement
Maintenance& Inspection
HRFinancial
ContractManagement
ProtectionAsset
Planning
RiskAnalysis
NetworkPlanning
Historian OutageManagement
PropertyMgmt Compliance
The CIM
VENDORHELP!
10
The Common Language Should Provide Relevant Information To A User Regardless of Source
EngineeringConcerns
MaterialsManagement
ConcernsConstruction
Concerns
OperationsConcerns
ProtectionConcerns
MaintenanceConcerns
11
The Needs of Various Users – Some Same, Some Different
Engineering Concerns The logical view of how the type of equipment fits (will fit) in the electrical network. Nominal configuration of “as-built” and “future” states. Field Name Spatial Location Version Physical Connectivity Load Projections Capacity Requirements Compatible Unit Equipment Ratings
Construction Concerns Lifecycle information regarding when and how to install equipment: Field Name Location Equipment Manufacturer/Model Compatible Unit Equipment Ratings Work Order Work Design Installation Schedule &Budget Permits Manufacturer Specifications Safety Requirements
Materials Management Concerns Planning and tracking material requirements for construction and maintenance. Information about physical pieces of equipment. Asset Identifier Compatible Unit Equipment Component Type Equipment Manufacturer/Model Serial Number Location Equipment Location History Manufacturer Specifications
12
The Needs of Various Users – Some Same, Some Different (continued)
Operations Concerns Real-time condition of equipment and electrical network necessary to maintain reliable network operation: Field Name Schematics & Spatial Location Electrical Connectivity Operational Limits (dynamic) Equipment Status Clearances Network Measurements (voltage,
current, frequency) Equipment Faults Weather Measurements Operational Restrictions
Maintenance Concerns Lifecycle information regarding when and how equipment is maintained: Field Name Location Equipment Manufacturer/Model Equipment Ratings Routine Maintenance Testing & Diagnostics
Procedures Equipment Condition Inspection Schedule Equipment Repair Records Site Service Records Maintenance Budget Safety Requirements
Protection Concerns Setting and configuring relays based on equipment and network protection requirements: Field Name Schematics Electrical Connectivity Maximum Capacity Zones Of Protection Equipment Status Clearances Network Measurements
(voltage, current, frequency, transients)
Equipment Faults
13
Exchanging Common Language Messages Among Systems Should Provide Relevant Information To Each System That Is Harmonious With All Other Systems’ Information
WorkBlah, Blah, Blah,
Organization,Blah, Blah, Blah
MaintenanceBlah, Blah, Blah,
Organization,Blah, Blah, Blah Switching Schedule
Blah, Blah, Blah, Organization,
Blah, Blah, Blah
Load Data SetBlah, Blah, Blah,
Organization,Blah, Blah, Blah
Meter ReadingBlah, Blah, Blah,
Organization,Blah, Blah, Blah
Load ControlBlah, Blah, Blah,
Organization,Blah, Blah, Blah
Asset CatalogBlah, Blah, Blah,
Organization,Blah, Blah, Blah
CrewBlah, Blah, Blah,
Organization,Blah, Blah, Blah
Service ConnectionRequest
Blah, Blah, Blah, Organization,
Blah, Blah, Blah
Planned OutageBlah, Blah, Blah,
Organization,Blah, Blah, Blah
For example, in each of the message exchanges depicted above, the same Organization is referenced for different reasons. There should be NO inconsistencies about this Organization in them!
14
For example, a common language-based logical infrastructure facilitates collaboration among the many applications involved in Asset Management
Asset Strategy
Asset Portfolios
Risk Management
RegulatoryReporting
Financial Management
ResourceScheduling &
Planning
Equip./FleetManagement
Supply Chain Management
ContractManagement
Mobile Workforce
Mgmt.
Work Collaboration & Reporting
Work Design
Asset OwnerAsset Owner Asset ManagerAsset Manager Service ProviderService Provider
Asset Investment PlanningAsset Investment Planning Asset Program ManagementAsset Program Management
Customer ManagementCustomer Management Asset OperationsAsset Operations
CIS
CRM
IVR eBusiness EMS DMS
SCADA
OMS
Asset Planning Tool
Budget Load Forecast
ReliabilityAnalysis
NetworkAnalysis
Asset Repository
ExecutiveDashboard
Program Mgmt.
Work Mgmt.
Mobile & Dispatching
Contract Mgmt.
GISRevenue
Facility I&M
Portal
SA/DA
Metering
SRCM
[source: DistribuTECH 2003 paper by Zhou & Robinson]
15
Application To Common Language Mapping –The Typical Field to Field Process Is Cumbersome
• Individual fields of data models from data sources are mapped to each other
• Approach does not scale well as the number of maps grows exponentially with each new data source
• Mapping is a challenge as ‘mappers’ must have an in depth understanding of all relevant data sources – a tall order!
16
Using A Semantic Model ToSimplify & Scale Up The Mapping Process
• What is a Semantic Model?– The key ingredients that make up a semantic model are a vocabulary of
basic terms, a precise specification of what those terms mean and how they relate to each other.
• How is it used?– Before making mappings, a model (or an ontology) of a given business
domain is defined. – The model is expressed in a knowledge representation language and it
contains business concepts, relationships between them and a set of rules.
– By organizing knowledge in a discrete layer for use by information systems, semantic models enable communication between computer systems in a way that is independent of the individual system technologies, information architectures and applications.
– Compared to one-to-one mappings, mapping data sources to a common semantic model offer a much more scaleable and maintainable way to manage and integrate enterprise data.
[source: TopQuadrant Technology Briefing, July 2003]
17
ETLIntegration BusWeb Services
Apps.
GenericServices
Composite Applications
DW
Business Intelligence
CommonLanguage
SemanticModel
Metadata
The CIM Provides a Semantic Layer in an Enterprise Architecture
18
App CIMY.1 X.1Y.2 X.2Y.3 X.3Y.4 X.4Y.5 X.5
Publisher
Publishers:One Application Connector:•Obtains Data From Application And/Or Database•Transforms Data (if necessary) to the “Common Language” (a Canonical Data Model)•Puts Data Into Message Template•Publishes The Message (Fires & Forgets)
DataWarehouse
SubstationAutomation
OMS
DistWiresModel
GridWiresModel
DAC
CIS
VRU
AM/FM/GIS
DistributionAutomation
HumanResources
OutageReporting
Event History WorkManagement
EMS
...
CIMX.1 X.2 X.3 X.4 X.5
Subscriber
CIM AppX.1 B.1X.2 B.2X.3 X.4 X.5
Subscriber
CIM AppX.1 A.1X.2 X.3 X.4 A.4X.5 A.5
Subscriber
CIM AppX.1 C.1X.2 X.3 C.3X.4 C.4X.5
Subscriber
Subscribers:Several Application Adapters Receive The Same MessageEach Adapter:•Parses Message, Pulling Out Data Needed By Application•Transforms Data (if necessary) to Local Application Format•Passes Data To Local Application And/Or Database Through Most Appropriate Means
Message Type Instance: ChangedNetworkDataSet (Expressed In Common Language)
Decoupled InformationExchange
2003-2004 Xtensible Solutions, Inc. 18
19
The IEC 61968-1 Interface Reference Model (IRM) Provides The Framework For Identifying Information Exchange Requirements Among Utility Business Functions
IEC 61968 Compliant Middleware Services
(NE)Network
ExtensionPlanning
(CS)CustomerSupport
(M R)M eter
Reading &Control
(AM )Records &
AssetM anagement
(M C)M aintenance
&Construction
InterfaceS tandard: Part 4
In terfaceS tandard: P art 6
InterfaceS tandard: P art 7
InterfaceS tandard: Part 8
In terfaceS tandard : P art 9
(ACT)CustomerAccount
M anagement
(FIN)Financial
(PRM )Premises
(HR)Human
Resources
(EM S)Energy
M anagement &Energy Trading
(RET)Retail
In terfaceS tandard : P art 10
(SC)Supply
Chain andLogistics
(NO)Network
Operation
InterfaceS tandard: P art 3
(OP)OperationalPlanning &
Optimization
In terfaceS tandard : P art 5
In terfaceS tandard : P art 10
InterfaceS tandard : P art 10
InterfaceS tandard : P art 10
InterfaceS tandard: P art 10
InterfaceS tandard : P art 10
InterfaceS tandard : Part 10
Electric D istribution Netw orkPlanning , Constructing ,
M aintaining , and O perating
G eneration and T ransm ission M anagem ent,Enterprise Resource Planning, Supply Chain, and
G eneral Corporate Services
Business FunctionsExternal T o D istribution
M anagem ent
D istribution M anagem entBusiness Functions
All IEC 61968 Activity Diagrams and Sequence Diagrams are organized by the IRM
20
The CIM and Related Standards
• But the CIM standards are more than just an abstract information model expressed in UML
• Profiles for specifying a subset of the CIM classes and attributes for a specific business context at a specific system interface or system interaction
• Implementation models– Use of XML to create serialized files and messages
• RDF Schema-based standards for power system model exchange• XML Schema-based standards for information message payloads
– ETL based on CIM for data base access• DDLs for data tables
We Need An Organizing Framework
• Layered Reference Architecture for TC57• Based on UN/CEFACT
– Information Model– Contextual Model– Message Syntax
• Rules for Message Assembly
22
TC57 Layered Architecture
CIM UML
Information and Semantic Models
Context
Message Syntax
Profile
MessageXML Schema
Contextual layer restricts information model• Constrain or modify data types• Cardinality (may make mandatory)• Cannot add to information model
Message syntax describes format for instance data• Can re-label elements• Change associations to define single structure for message payloads• Mappings to various technologies can be defined
Information Model• Generalized model of all utility objects and their
relationships• Application independent
23
Semantic Models and Profiles
CIM UML
Information and Semantic Models
Context
Message Syntax
Profile
MessageXML Schema
CIM/XMLRDF Schema
RelationalDatabase
61968Rules
CIM/XMLRules
ProjectRules
Message Assembly
24
To Summarize
• The CIM is an abstract information model standard expressed in UML.
• Profiles specifying a subset of the CIM classes and attributes for specific business context
• Implementation technologies, such as use of XML to create serialized files and messages– Standards for power system models– Standards for information message payloads
• Also, the CIM UML can be extended– Standard extensions for new functional areas– Private extensions for specific utility requirements
25
Let’s Look at each Layer of the CIM
CIM UML
Information and Semantic Models
Context
Message Syntax
Profiles
XML/RDFSchema
Information Model• Defines all concepts needed for any
application
Contextual layer restricts information model• Specifies which part of CIM is used for
given profile• Mandatory and optional• Restrictions• But cannot add to information model
File syntax• Can re-label elements• Change associations to define single
structure for message payloads• Mappings to various technologies can
be defined
26
Foundational Relationships Of The CIM
PowerSystemResourceElectrical Network Role Used For
Planning, Operations, etc.
AssetPhysical Plant Filling A Role
Such As A Transformer, Pole, etc.
LocationWhere To Find Something By
GPS, Address, Electronically, etc.
OrganisationEntities Performing Roles Such
As Operations, Tax Authority
ContactPeople Performing Roles SuchDispatcher, Field Operator, etc.
DocumentInformation Containers Such AsTrouble Ticket, Work Orders, etc.
CustomerIndustrial, Commercial, & Residential Which Can Have Multiple Accounts
27
CIM Packagesclass Main
EnergySchedulingFinancialMarketOperations
CombinedVersion{root}
+ date: AbsoluteDateTime [0..1] = 2008-12-17-see-... {readOnly}+ version: String [0..1] = iec61970CIM13v1... {readOnly}
Reservation
IEC61970
IEC61968
WG13
WG14
WG16
28
WG13 CIM Packages - 61970class Main
Equivalents
Protection
SCADA
Generation
OutageLoadModel
Topology Meas
Wires
«Global»Domain
Core
OperationalLimits
ControlArea
GenerationDynamics
(from Generation)
Production
(from Generat ion)
«WorkInProgress»StateVariables
«WorkInProgress»Contingency
29
WG14 CIM Packages - 61968pkg Main
AssetsPointOriented
Customers
Common
Operations
ERPSupport
Work
Assets
Metering PaymentMetering
Domain2Locations
TypeAssetAssetModelsAssetsLinear
Planning
LoadControl
GMLSupport
Parts 3, 4 (and 5?)
Part 4
Parts (5 and 7)?
Part 6
Part 8
Part 9
Part 10?
30
WG16 CIM Market Extensions
SecurityConstraints
Bid FTR
RTO
ClearingResults
Resource
31
CIM IEC Standards
• 61970 CIM UML has annual release cycle– Current official annual release is IEC61970CIM14v13– Basis for IEC 61970-301 CIM Base Fourth Edition
• Word document auto-generated from the UML electronic model– Information system and Profile documents are synchronized with
UML model release
• 61968 CIM UML different update cycles– Basis for IEC 61968-11 CIM Distribution Information Exchange
Model
• Complete CIM UML available as a combined model on CIMug Sharepoint site– iec61970cim14v13_iec61968cim10v28_combined
32
Structure
height : ShortLengthweedAbate : BooleanweedRemDate : AbsoluteDatefumigant : StringfumigantApplyDate : AbsoluteDatejpaRefNum : String
Asset
code : Stringutc : Stringnumber : StringserialNumber : SerialNumberassetType : StringmaufacturedDate : AbsoluteDateinstallationDate : AbsoluteDateinServiceDate : AbsoluteDateoutOfServiceDate : AbsoluteDateremovalDate : AbsoluteDatewarrantyDate : AbsoluteDatefinancialValue : Moneystatus : StringstatusDate : AbsoluteDatecritical : BooleancorpStandard : StringremovalReason : Stringcondition : StringplantTransferDate : AbsoluteDateusage : StringpurchaseDate : AbsoluteDatepurchasePrice : MoneypurchaseOrderNumber : String
(from AssetBasics)
Pole
classification : Stringspecies : Stringtreatment : Stringbase : Stringpreservative : StringtreatedDate : AbsoluteDatebreastBlock : Boolean
Streetlight
rating : StringarmLength : ShortLength
0..1
0..n
+AttachedTo_Pole
0..1 +Support_Streetlights0..n
The CIM Is Expressed In Unified Modeling Language (UML) Notation*
Class Name usually describes things in the real world
Associations connect classes and areassigned a role that describes the relationship
Class Attributes describesignificant aspects about the thing
This Specialization indicates that a “Pole” is a type of“Structure.” Since a “Structure” is a type of “Asset,” the Poleinherits all of the attributes from both Structure and Asset
* For more information on UML notation (a standard), refer to Martin Fowler’s book“UML Distilled,” Addison-Wesley
33
Concepts: Generalization/Inheritance
• Breaker: Specialization of ProtectedSwitch
• ProtectedSwitch: Specialization of Switch
• Switch: Specialization of Conducting Equipment
• ConductingEquipment: Specialization of Equipment
• Equipment: Specialization of PowerSystem Resource
class DocumentationExampleInheritance
IdentifiedObjectCore::
PowerSystemResource
Core::Equipment
Core::ConductingEquipment
Breaker
ProtectedSwitch
PowerTransformer
Switch
34
Equipment InheritanceHierarchy
class InheritanceHierarchy
TransformerWinding
Core::PowerSystemResource
HeatExchanger
BusbarSection
VoltageControlZone
ShuntCompensator
ACLineSegment
DCLineSegment
LoadBreakSwitch
Core::VoltageLevel
TapChanger
PowerTransformer
Fuse
StaticVarCompensator
RegulatingCondEq
RectifierInverter
Junction
Jumper
Ground
Conductor
Disconnector
EnergySource
SeriesCompensator
ProtectedSwitch
Core::IdentifiedObject
PlantLine
FrequencyConverter
Connector
Core::Bay
Switch
Core::ConnectivityNodeContainer
Core::Substation
EnergyConsumer
GroundDisconnector
Core::ConductingEquipment
Breaker
SynchronousMachine
Core::Equipment
Core::EquipmentContainerCompositeSwitch
35
NamingHierarchy 1
class NamingHierarchyPart1
Core::Substation
Core::Bay
Core::VoltageLevel
Core::SubGeographicalRegion
Line
Core::GeographicalRegion
Core::IdentifiedObject
+ aliasName: String [0..1]+ description: String [0..1]+ localName: String [0..1]+ mRID: String [0..1]+ name: String [0..1]+ pathName: String [0..1]
Core::Equipment
Core::EquipmentContainer
Core::PowerSystemResource
Plant
Core::ConnectivityNodeContainer
+EquipmentContainer0..1
+Equipments0..*
+Region 0..1
+Regions 0..*
+Region 0..1
+Substations 0..*
+Region0..1
+Lines 0..*
+VoltageLevel0..1
+Bays0..*
+Bays 0..*
+Substation
0..1
+Substation 1
+VoltageLevels 0..*
36
NamingHierarchy 2
class NamingHierarchyPart2
Fuse
EnergyConsumer
ShuntCompensator
Connector
BusbarSection
Breaker
ACLineSegment
Disconnector
Jumper
FrequencyConverter
EnergySource
StaticVarCompensator
RectifierInverter
Conductor
Core::ConductingEquipment
Core::Equipment
DCLineSegment
SynchronousMachine
CompositeSwitch
Switch
Meas::Measurement Core::
PowerSystemResource
TransformerWinding
TapChanger
PowerTransformer
Ground
RegulatingCondEq
GroundDisconnector
Production::GeneratingUnit
Core::IdentifiedObject
+ aliasName: String [0..1]+ description: String [0..1]+ localName: String [0..1]+ mRID: String [0..1]+ name: String [0..1]+ pathName: String [0..1]
SeriesCompensator
ProtectedSwitch
LoadBreakSwitch
Junction
HeatExchanger
+PowerSystemResource
0..1
+Measurements
0..*
+TransformerWindings 1..*
+PowerTransformer 1
+GeneratingUnit 0..1+SynchronousMachines 1..*
+HeatExchanger 0..1
+PowerTransformer 1
+CompositeSwitch 0..1+Switches 0..*
37
ConnectivityandTopology Model
class Main
Core::EquipmentContainer
Switch/Node static Model
ConnectivityNode
Core::ConnectivityNodeContainer
Core::Terminal
Bus/ Branch calculated Model
TopologicalNode
Meas::Measurement
Core::ConductingEquipment
TopologicalIsland
Core::PowerSystemResource
Core::IdentifiedObject
BusNameMarker
Core::Equipment
Bus/ Branch bus naming specificaitonstatic model.
ControlArea::ControlArea
+ netInterchange: ActivePower+ pTolerance: ActivePower+ type: ControlAreaTypeKind
+Terminals
0..*+ConductingEquipment
1
+TopologicalNode
0..*
+ControlArea 0..1
+AngleRef_TopologicalIsland0..1
+AngleRef_TopologicalNode0..1
+Terminal 0..*
+TopologicalNode 0..1
+ConnectivityNodes
0..*
+TopologicalNode 0..1
+Measurements 0..*
+Terminal 0..1+ConnectivityNodes
0..*
+MemberOf_EquipmentContainer
1
+TopologicalNode
0..*
+ConnectivityNodeContainer
0..1+BusNameMarker 0..1
+ConnectivityNode
0..*
+Terminals
0..*+ConnectivityNode
0..1
+BusNameMarker 0..*
+ControlArea
0..1
+TopologicalNodes 1..*
+TopologicalIsland 1
38
Converting a Circuit to CIM Objects
• Example to show how voltage levels, current transformers, power transformers and generators are modelled
• Circuit contains a single generating source, load, line and busbar. The circuit also contains two power transformers resulting in three voltage levels of 17kV, 33kV and 132kV
Taken from McMorran, “An Introduction to IEC 61970-301 & 61968-11: The Common Information Model”, University of Strathclyde, Glasgow, UK
39
Example Circuit as a Single Line Diagram
EnergyConsumer
Breaker
SynchronousMachine
GeneratingUnit
Breaker
BusbarSection
Breaker
ACLineSegment
Current measurement represented by Measurement
connected to Terminal
40
Representing a Power Transformer as CIM Objects• A power transformer is not mapped to a single
CIM class– Represented by a number of components with a single
PowerTransformer container class– Two-winding power transformer becomes two
TransformerWinding objects within a PowerTransformer container
• If a tap changer is present to control one of the windings– An instance of the TapChanger class is associated
with that particular winding– Also contained within the PowerTransformer instance
41
Transformer Class Diagram
Inherits from Equipment, since does not conduct
electricity
Physically connected to network and conducts electricity, so inherits
from ConductingEquipment
Part of TransformerWinding, not
separate piece of equipment
Shell of transformer, containing windings, insulation, magnetic
core, etc.
42
CIM Mapping for Transformer 17-33
• Transformer 17-33 is represented as four CIM objects
43
Transformer Model Diagram from 61970-301CIM Base
ConductingEquipment(from Core)
Equipment(from Core)
PowerSystemResource(from Core)
RegulationSchedule
TapChanger
0..1
0..n
+RegulationSchedule0..1
+TapChangers0..n
WindingTest
HeatExchanger
TransformerWinding
0..n+TapChangers
0..n
+TransformerWinding
1
1
0..n
+From_TransformerWinding1
+From_WindingTests1
0..n
+To_WindingTest
+To_TransformeWindings0..n
PowerTransformer
0..1
1
+HeatExchanger0..1
+PowerTransformer 1
1..n
1
+Contains_TransformerWindings
+MemberOf_PowerTransformer
1
44
Transformer Winding Attributes
Transformer Winding b: Susceptance insulationKV: Voltage connectionType: WindingConnection emergencyMVA : ApparentPower g: Conductance grounded: Boolean r: Resistance r0: Resistance ratedKV: Voltage rated MVA: ApparentPower rground: Resistance shortTermMVA: ApparentPower windingType: WindingType x: Reactance x0: Reactance xground: Reactance
45
Example Circuit with Full CIM Mappings
• Maps to– 17 CIM classes– 45 CIM objects
• Could be extended further with addition of objects for
– control areas– equipment
owners– measurement
units– generation and
load curves– asset data
46
How The CIM Handles Location For Logical Devices And/Or The Physical Asset Performing The Device’s Role
Asset(f rom AssetBasics)
0..n+Assets
1..n
0..n
+Location1..n
Locationcoordinate : CoordinatePaircoordinateList : PointSequencepolygonFlag : Booleantype : Stringcode : String
0..n+Location
0..n
0..n+PowerSystemResources
0..n
PowerSystemResource(from Core)
0..1+PowerSystemResource1
0..1+Asset1
47
Types Of Document Relationship Inherited By All Assets
AssetModelnumber : Stringversion : String
0..n
0..n
Document(f rom DocumentationPackage)...)
QualificationRequirementqualificationID : String
AssetPropertypropertyType : StringpropertyValue : Stringunits : String
AssetRatingratingType : Stringproperty : StringratingValue : Floatunits : String
InspectionRoutine(f rom AssetsInspection)
MaintenanceProceduretype : String
0..n
0..n
PowerSystemResource(from Core)
48
Activity Records
History
0..n
0..1
ErpContact(f rom ERP_Support)
0..n
0..n
ActivityRecordcreatedOn : AbsoluteDateTimestatus : StringstatusReason : Stringremarks : String
Customer(f rom ConsumerPackage)
0..n
0..n
0..n
0..n
0..n
0..1
0..n
0..n
Asset(f rom AssetBasics)
1..n
1
0..n
0..n
PowerSystemResource(from Core)
Location(f rom LocationPackage)
Organisation(f rom TopLev elPackage)
0..n 0..n
Work(f rom WorkInit iationPackage)...)
WorkTask(f rom WorkDesignPackage)
49
CIM UML in Enterprise Architect
• The CIM UML model is maintained in Sparx Enterprise Architect (EA)
• Current ENTSO-E CIM UML Model for IOP– iec61970cim15v15_iec61968cim10v16_combined.eap
• Go to UML model in EA
50
Questions?
51
Let’s Look at each Layer of the CIM
CIM UML
Information and Semantic Models
Context
Message Syntax
Profiles
XML/RDFSchema
Information Model• Defines all concepts needed for any
application
Contextual layer restricts information model• Specifies which part of CIM is used for
given profile• Mandatory and optional• Restrictions• But cannot add to information model
File syntax• Can re-label elements• Change associations to define single
structure for message payloads• Mappings to various technologies can
be defined
52
Profile Documents
• IEC 61970-4xx series of Component Interface Standards (CIS)– Specifies the functional requirements for interfaces that
a component (or application) implements to exchange information with other components (or applications) and/or to access publicly available data in a standard way
– Component interfaces describe the specific message contents and services that can be used by applications for this purpose
– Implementation of these messages in a particular technology is described in Part 5 of the standard
53
Common Power System Model (CPSM) Profile• IEC 61970-452 specifies the specific profile (or subset) of the CIM for
exchange of static power system data between utilities, security coordinators and other entities participating in a interconnected power system
• All parties have access to the modeling of their neighbor’s systems that is necessary to execute state estimation or power flow applications
• A companion standard, IEC 61970-552, defines the CIM XML Model Exchange Format based on the Resource Description Framework (RDF) Schema specification language which can be used to transfer power system model data for a particular profile
• Interoperability tests have validated several vendor’s products for exchanging complete power system models, partial models, and incremental updates
54
61970-452CPSMProfileTOC Snippet
Scope .............................................................................................................................. 7 2 Normative References ............................................................................................... 8 3 Definitions ................................................................................................................. 8 4 Overview of Data Requirements ................................................................................ 10
4.1 Overview.......................................................................................................... 10 4.2 General Requirements ..................................................................................... 10 4.3 Transformer Modeling ...................................................................................... 11 4.4 Modeling Authorities ........................................................................................ 12 4.5 Use of Measurement Classes ........................................................................... 12
4.5.1 ICCP Data Exchange ........................................................................... 14 4.6 Voltage or Active Power Regulation ................................................................. 14 4.7 Use of Curves ................................ .................................................................. 14
4.7.1 Generating Unit Reactive Power Limits ................................................ 14 4.8 Definition of Schedules .................................................................................... 15
5 CIM Classes.............................................................................................................. 16 5.1 61970................................ ................................................................ ............... 16
5.1.1 IEC61970CIMVersion ........................................................................... 16 5.2 Core Package ................................ .................................................................. 17
5.2.1 BaseVoltage......................................................................................... 17 5.2.2 Bay ......................................................................................................17 5.2.3 CurveData ................................................................ ............................ 17 5.2.4 Geographical Region ............................................................................ 18 5.2.5 RegularTimePoint................................................................................. 18 5.2.6 SubGeographical Region......................................................................18 5.2.7 Substation ................................................................ ............................ 19 5.2.8 Terminal ............................................................................................... 19 5.2.9 Unit ......................................................................................................19 5.2.10 VoltageLevel ........................................................................................ 20
5.3 Topology Package ........................................................................................... 21 5.3.1 ConnectivityNode ................................................................................. 21
5.4 Wires Package ................................................................................................. 22 5.4.1 ACLineSegment ................................................................................... 22 5.4.2 Breaker ................................................................................................ 22 5.4.3 BusbarSection ...................................................................................... 23 5.4.4 Disconnector ........................................................................................ 23 5.4.5 EnergyConsumer.................................................................................. 24 5.4.6 Line......................................................................................................24 5.4.7 LoadBreakSwitch ................................................................................. 25 5.4.8 PowerTransformer ................................................................................ 25 5.4.9 ReactiveCapabilityCurve ......................................................................26 5.4.10 RegulatingControl ................................................................................ 26
55
Let’s Look at each Layer of the CIM
CIM UML
Information and Semantic Models
Context
Message Syntax
Profiles
XML/RDFSchema
Information Model• Defines all concepts needed for any
application
Contextual layer restricts information model• Specifies which part of CIM is used for
given profile• Mandatory and optional• Restrictions• But cannot add to information model
File syntax• Can re-label elements• Change associations to define single
structure for message payloads• Mappings to various technologies can
be defined
56
XML Implementation Technologies
• XML Schema– Used for generation of message payloads for system
interfaces in system integration use cases• RDF Schema
– Used for exchange of power system models
57
What is XML?
• eXtensible Markup Language– A text-based tag language, similar in style to HTML but
with user-definable tags• Similar in use of ASCII text and tags
– Based on Standard Generalized Markup Language (SGML), which is ISO 8879.
• Self-describing• Open industry standard - W3C Recommendation
(spec)– Broad usage across industries (many XML tools
available)• Cross-platform and vendor-neutral standard• Easy to use, easy to implement
58
Basic Syntax
• Starts with XML declaration<?xml version="1.0"?>
• Rest of document inside the "root element"<TEI.2>…</TEI.2>
• Tags are used to provide information about the document content (metadata)
• Start and end tags must match exactly
59
What is an XML Element?• An XML element is everything from (including) the element's start tag to (including) the
element's end tag.• An element can contain other elements, simple text or a mixture of both. Elements can
also have attributes.• <bookstore>
<book category="CHILDREN"> <title>Harry Potter</title> <author>J K. Rowling</author> <year>2005</year> <price>29.99</price> </book> <book category="WEB"> <title>Learning XML</title> <author>Erik T. Ray</author> <year>2003</year> <price>39.95</price> </book></bookstore>
• In the example above, <bookstore> and <book> have element contents, because they contain other elements. <author> has text content because it contains text.
• In the example above only <book> has an attribute (category="CHILDREN").
60
Implementation Syntax – XML Schema
• Example of use of XML Schema• Mapping Proprietary EMS Interfaces to the CIM
– Provide enterprise system access to transformer data
61
Mapping EMS Interfaces to the CIM – User access to transformer data
• EMS Native Interface attributes:– TRANS_NAME – The Transformer’s name– WINDINGA_R – The Transformer’s primary winding resistance– WINDINGA_X – The Transformer’s primary winding reactance– WINDINGB_R – The Transformer’s secondary winding resistance– WINDINGB_X – The Transformer’s secondary winding reactance– WINDINGA_V – The Transformer’s primary winding voltage– WINDINGB_V – The Transformer’s secondary winding voltage
62
Transformer Class Diagram in CIM
63
CIM Interface Mapping- Beginnings of Profile/Message Payload Definition
Two different interface attributes (WINDINGA_R
and WINDINGB_R) map to same CIM attribute
Aggregation changed from 0..n to 2
Multiplicity changed from
0..1 to 1
Multiplicity changed from
0..1 to 1
64
Message Payload in UML
Note:• Associations changed to aggregations• Parent classes removed
• Not required in actual message content• Parent classes already known by both sender and receiver
• Corollary: Only those parts of the CIM used in message exchange need to be supported by interface applications
• End result – modified class structure• Example of application of business context to information model
65
Schemas – Meta Data
– A Schema is a description or definition of the structure of a database or other data source. It provides:
• Allowable content or structure of data of a variety of types• Abstract definition of the relationships and characteristics of a class
of objects or pieces of data
– Database Schema• Defines the table names and columns, describes the relationships
between tables (via keys), and acts as a repository for triggers and stored procedures.
– XML Schema• Describes the ordering and inter-relationship of
– XML elements (i.e., sequence and nesting of tags) and – Attributes (i.e., values, types, defaults) in the class of XML documents to
which the schema applies.
(source: “Professional XML Meta Data,” by Kal Ahmed, et al.)
66
XML Schema of CIM
• An XML Schema of the CIM can be generated with XML tools
• The CIM classes and attributes are used to define tags
• Then the CIM can be shown in XML as well as UML
• Example is PowerTransformer
67
Transformer Model Diagram from 61970-301CIM Base
ConductingEquipment(from Core)
Equipment(from Core)
PowerSystemResource(from Core)
RegulationSchedule
TapChanger
0..1
0..n
+RegulationSchedule0..1
+TapChangers0..n
WindingTest
HeatExchanger
TransformerWinding
0..n+TapChangers
0..n
+TransformerWinding
1
1
0..n
+From_TransformerWinding1
+From_WindingTests1
0..n
+To_WindingTest
+To_TransformeWindings0..n
PowerTransformer
0..1
1
+HeatExchanger0..1
+PowerTransformer 1
1..n
1
+Contains_TransformerWindings
+MemberOf_PowerTransformer
1
68
XML Schema for Transformer Message
69
Sample Transformer Interface Message Payload in XML
<cim:PowerTransformer> <cim:Naming.name>Transformer SGT1</cim:Naming.name> <cim:PowerTransformer.Contains_TransformerWindings> <cim:TransformerWinding.r>0.23</cim:TransformerWinding.r> <cim:TransformerWinding.x>0.78</cim:TransformerWinding.x> <cim:TransformerWinding.windingType>WindingType.primary </cim:TransformerWinding.windingType> <cim:Equipment.MemberOf_EquipmentContainer> <cim:VoltageLevel.BaseVoltage> <cim:BaseVoltage.nominaVoltage>400 </cim:BaseVoltage.nominalVoltage> </cim:VoltageLevel.BaseVoltage> </cim:Equipment.MemberOf_EquipmenContainer> </cim:PowerTransformer.Contains_TransformerWindings> <cim:PowerTransformer.Contains_TransformerWindings> <cim:TransformerWinding.r>0.46</cim:TransformerWinding.r> <cim:TransformerWinding.x>0.87</cim:TransformerWinding.x> <cim:TransformerWinding.windingType>WindingType.secondary </cim:TransformerWinding.windingType> <cim:Equipment.MemberOf_EquipmentContainer> <cim:VoltageLevel.BaseVoltage> <cim:BaseVoltage.nominaVoltage>275 </cim:BaseVoltage.nominalVoltage> </cim:VoltageLevel.BaseVoltage> </cim:Equipment.MemberOf_EquipmenContainer> </cim:PowerTransformer.Contains_TransformerWindings>
</cim:PowerTransformer>
70
XML Implementation Technologies
• XML Schema– Used for generation of message payloads for system
interfaces in system integration use cases• RDF Schema
– Used for exchange of power system models
71
Big Issue
• “Although we can swap our documents with each other through XML, we still haven’t a clue what they mean.”
» (“Professional XML Meta Data,” by Kal Ahmed, et al.)
• Resource Description Framework (RDF) Is W3C’s Means To Resolve This.
72
RDF Schema
• RDF Schema mechanism is a set of RDF resources (including properties) and constraints on their relationships
• Defines application-specific RDF vocabularies, for example CIM vocabulary
• RDF Schema URI unambiguously identifies a single version of a schema
[Courtesy Of Leila Schneburger]
73
Technical Approach
• RDF (Resource Description Framework) - Defines mechanism for describing resources that makes no assumptions about a particular application domain, nor defines the semantics of any application domain. The definition of the mechanism is domain neutral, yet the mechanism is suitable for describing information about any domain:– For more information: http://www.w3.org/RDF– Status: W3C Recommendation 22 February 1999
• http://www.w3.org/TR/REC-rdf-syntax/
• RDF Schema - Defines a schema specification language. Provides a basic type system for use in RDF models. It defines resources and properties such as Class and subClassOf that are used in specifying application-specific schemas:– Status: W3C Proposed Recommendation 03 March 1999
• http://www.w3.org/TR/PR-rdf-schema/
74
Technical Approach (Cont.)
• Namespaces - provide a simple method for qualifying element and attribute names used in XML documents by associating them with namespaces identified by URI references:– Status: WC3 Recommendation 14-January-1999
• http://www.w3.org/TR/REC-xml-names/
• URI (Uniform Resource Identifiers) - provide a simple and extensible means for identifying a resource:– Status: Internet RFC August 1998
• ftp://ftp.isi.edu/in-notes/rfc2396.txt
75
XML Namespaces
• Distinguish between duplicate element type and attribute names
• Collection of element type and attribute names. The namespace is identified by a URI.
• Declared with an xmlns attribute, which can associate a prefix with the namespace.
• If XML namespace declaration contains a prefix, refer to element type and attribute names in that namespace with the prefix. E.g. cim:Substation, UCTE:Substation
• If XML namespace declaration does not contain a prefix, the namespace is the default XML namespace, refer to element type names in that namespace without a prefix.
76
CIM UML=>RDF Schema=>RDBMS
UML. RDF Relational Model
Object Resource Tuple (i.e. row)
Attribute or association
Property Attribute (i.e. column) or foreign key
Class Class Relation (i.e. table)
Resource Description
Tuple value
URI Key value
Value Field value
[Courtesy Of Leila Schneburger]
77
Simple Network Example
78
Simple Network Connectivity Modeled with CIM Topology
BDD-RSK2
T1 T2
79
Siemens 100 Bus Network Model in RDF
<?xml version="1.0" encoding="UTF-8"?><rdf:RDF xml:base="siemens" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:cim="http://iec.ch/TC57/2001/CIM-schema-cim10#"><cim:ACLineSegment rdf:ID="_6B1DD5C2CB934E86AC53FFD886E2D1B3"><cim:Naming.name>BBD-RSK2</cim:Naming.name><cim:Conductor.bch>2.79</cim:Conductor.bch><cim:Conductor.x>4.3378</cim:Conductor.x><cim:Conductor.r>0.4761</cim:Conductor.r></cim:ACLineSegment><cim:Terminal rdf:ID="_EB6085D9DF364DA78A884D4D0A571371"><cim:Naming.name>T2</cim:Naming.name><cim:Terminal.ConnectivityNode rdf:resource="#_CC312D30C85C4236948A4129AEE3B5F7"/><cim:Terminal.ConductingEquipment rdf:resource="#_6B1DD5C2CB934E86AC53FFD886E2D1B3"/></cim:Terminal><cim:Terminal rdf:ID="_7C8354E0DA247DBB3611E2E8BF8A86D"><cim:Naming.name>T1</cim:Naming.name><cim:Terminal.ConnectivityNode rdf:resource="#_D16FD63501444AECBF8157D1E4764E38"/><cim:Terminal.ConductingEquipment rdf:resource="#_6B1DD5C2CB934E86AC53FFD886E2D1B3"/></cim:Terminal><cim:ACLineSegment rdf:ID="_E83B07FE54A945539A95FD2DB2CDD4FC"><cim:Naming.name>BKR-TUR</cim:Naming.name><cim:Conductor.bch>0.39</cim:Conductor.bch><cim:Conductor.x>4.1262</cim:Conductor.x><cim:Conductor.r>1.0051</cim:Conductor.r></cim:ACLineSegment><cim:Terminal rdf:ID="_E273D9258F9D42FCA018B274BE6F5FA6"><cim:Naming.name>T2</cim:Naming.name><cim:Terminal.ConnectivityNode rdf:resource="#_576B6D171B174B8BACB7AFF7289D0434"/><cim:Terminal.ConductingEquipment rdf:resource="#_E83B07FE54A945539A95FD2DB2CDD4FC"/></cim:Terminal><cim:Terminal rdf:ID="_B23175B9692441AFBD2C581E86300550"><cim:Naming.name>T1</cim:Naming.name><cim:Terminal.ConnectivityNode rdf:resource="#_A69ED82F4EB4B65A8840CDD1E064887"/><cim:Terminal.ConductingEquipment rdf:resource="#_E83B07FE54A945539A95FD2DB2CDD4FC"/></cim:Terminal><cim:Unit rdf:ID="_5EAAD38A446E429E9905FAC32070D6FC"><cim:Naming.name>Amperes</cim:Naming.name></cim:Unit><cim:ACLineSegment rdf:ID="_329884C01F6B4DC08492F711088538D6"><cim:Naming.name>CRS-ANY1</cim:Naming.name><cim:Conductor.bch>5.03</cim:Conductor.bch><cim:Conductor.x>12.90761</cim:Conductor.x><cim:Conductor.r>1.2696</cim:Conductor.r></
Top of RDF Schema version of Siemens 100 bus model
80
ACLineSegment in RDF
Siemens 100 bus model - RDF schema
<?xml version="1.0" encoding="UTF-8"?><rdf:RDF xml:base="siemens" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:cim="http://iec.ch/TC57/2001/CIM-schema-cim10#">
<cim:ACLineSegment rdf:ID="_6B1DD5C2CB934E86AC53FFD886E2D1B3"><cim:Naming.name>BBD-RSK2</cim:Naming.name><cim:Conductor.bch>2.79</cim:Conductor.bch><cim:Conductor.x>4.3378</cim:Conductor.x><cim:Conductor.r>0.4761</cim:Conductor.r>
</cim:ACLineSegment>
<cim:Terminal rdf:ID="_EB6085D9DF364DA78A884D4D0A571371"><cim:Naming.name>T2</cim:Naming.name><cim:Terminal.ConnectivityNode rdf:resource="#_CC312D30C85C4236948A4129AEE3B5F7"/><cim:Terminal.ConductingEquipment rdf:resource="#_6B1DD5C2CB934E86AC53FFD886E2D1B3"/>
</cim:Terminal>
<cim:Terminal rdf:ID="_7C8354E0DA247DBB3611E2E8BF8A86D"><cim:Naming.name>T1</cim:Naming.name><cim:Terminal.ConnectivityNode rdf:resource="#_D16FD63501444AECBF8157D1E4764E38"/><cim:Terminal.ConductingEquipment rdf:resource="#_6B1DD5C2CB934E86AC53FFD886E2D1B3"/>
</cim:Terminal>
81
ACLineSegment in RDF
Siemens 100 bus model - RDF schema
<?xml version="1.0" encoding="UTF-8"?><rdf:RDF xml:base="siemens" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:cim="http://iec.ch/TC57/2001/CIM-schema-cim10#">
<cim:ACLineSegment rdf:ID="_6B1DD5C2CB934E86AC53FFD886E2D1B3"><cim:Naming.name>BBD-RSK2</cim:Naming.name><cim:Conductor.bch>2.79</cim:Conductor.bch><cim:Conductor.x>4.3378</cim:Conductor.x><cim:Conductor.r>0.4761</cim:Conductor.r>
</cim:ACLineSegment>
<cim:Terminal rdf:ID="_EB6085D9DF364DA78A884D4D0A571371"><cim:Naming.name>T2</cim:Naming.name><cim:Terminal.ConnectivityNode rdf:resource="#_CC312D30C85C4236948A4129AEE3B5F7"/><cim:Terminal.ConductingEquipment rdf:resource="#_6B1DD5C2CB934E86AC53FFD886E2D1B3"/>
</cim:Terminal>
<cim:Terminal rdf:ID="_7C8354E0DA247DBB3611E2E8BF8A86D"><cim:Naming.name>T1</cim:Naming.name><cim:Terminal.ConnectivityNode rdf:resource="#_D16FD63501444AECBF8157D1E4764E38"/><cim:Terminal.ConductingEquipment rdf:resource="#_6B1DD5C2CB934E86AC53FFD886E2D1B3"/>
</cim:Terminal>
82
Containment in RDFSubstation VOL with 230 KV voltage level and Bay 240W79 with Breaker CB
<cim:Substation rdf:ID="_277B2933524E43E19DAAF1D138DC62C4"><cim:Naming.name>VOL</cim:Naming.name><cim:Substation.LoadArea rdf:resource="#_BA2173878B0645A7AC8EA57B6249D537"/>
</cim:Substation>
<cim:VoltageLevel rdf:ID="_C20AF84C15E047218D75C47870C34C87"><cim:Naming.name>230K</cim:Naming.name><cim:VoltageLevel.MemberOf_Substation rdf:resource="#_277B2933524E43E19DAAF1D138DC62C4"/><cim:VoltageLevel.BaseVoltage rdf:resource="#_CF8BD1450E264399891F7FE5653D0760"/>
</cim:VoltageLevel>
<cim:BusbarSection rdf:ID="_5E0DBC09FE4D4A0DB902FEFF18AA4C30"><cim:Naming.name>VOL 2304</cim:Naming.name><cim:Equipment.MemberOf_EquipmentContainer rdf:resource="#_C20AF84C15E047218D75C47870C34C87"/>
</cim:BusbarSection>
Further down in document
Substation VOL with 230 KV voltage level and Bay 240W79 with Breaker CB
<cim:Bay rdf:ID="_7DBBA5E32C834B6AB08BB6FB07155D46"><cim:Naming.name>240W79</cim:Naming.name><cim:Bay.MemberOf_VoltageLevel rdf:resource="#_C20AF84C15E047218D75C47870C34C87"/>
</cim:Bay>
<cim:Breaker rdf:ID="_4A74B55420834E40B85F0304B6F9ADF8"><cim:Naming.name>CB</cim:Naming.name><cim:Switch.normalOpen>false</cim:Switch.normalOpen><cim:Equipment.MemberOf_EquipmentContainer rdf:resource="#_7DBBA5E32C834B6AB08BB6FB07155D46"/>
</cim:Breaker>
83
Measurement in RDF
<cim:Measurement rdf:ID="_5B22599688AC4DE6B99FD8B13C1BA36F"><cim:Naming.name>LN 1 MVAr</cim:Naming.name><cim:Measurement.MeasurementType rdf:resource="#_83D7B035901D4D2E80C040609D5ED7EC"/><cim:Measurement.Unit rdf:resource="#_61784D3DA1954750A4E09444BE5206CB"/>
</cim:Measurement>
<cim:MeasurementValue rdf:ID="_FF332A9A82FF43719AAF4E5DAFCFB9CD"><cim:Naming.aliasName>ICCP ID 24</cim:Naming.aliasName><cim:Naming.name>MVAr</cim:Naming.name><cim:MeasurementValue.MeasurementValueSource
rdf:resource="#_F0F5BA1CDE23483A8C80D20A4907A272"/><cim:MeasurementValue.MemberOf_Measurement rdf:resource="#_
5B22599688AC4DE6B99FD8B13C1BA36F"/></cim:MeasurementValue>
84
Implementation Syntax – WG13 61970
• Part 501 specifies the translation of the CIM in UML form into a machine readable format as expressed in the Extensible Markup Language (XML) representation of that schema using the Resource Description Framework (RDF) Schema specification language
– The resulting CIM RDF schema supports CIM Model Exchange specifications, as presented in IEC 61970-452 and others
• Part 552 describes the CIM XML format at a level for implementation to support the model exchange requirements in IEC 61970-452
– This standard relies upon the CIM RDF Schema of IEC 61970-501
85
Basics: Schema from CIM
EnterpriseArchitect
CIM (in UML)
UMLto RDF
Transformers
CIM asXML/RDFSchema
specifies
PowerSystem Data
Exporter
PowerSystem Data
as XML/RDF
references
86
Key Standards Key Standards and Related Organizationsand Related Organizations
OLEProcessControl(OPC)
WG14DMS
Coordination
WG19
WG13EMS
WGs 10Substations
OpenApplication
Group
WG7ControlCenters
TC57
WG9Distribution
Feeders
EPRIUCA2ProjectEPRI
CCAPIProject
W3C
CIM/61850
ebXMLObjectMgmt.Group
WG17
WG16
WG18
OASIS
UCA : User groups
MultiSpeak(NRECA)
CIM
87
Where to Get More Information About the CIM and Related Standards• Visit CIM User Group (CIMug) Web Site
– http://cimug.ucaiug.org • Single site for gaining access to information about the CIM and related
standards– Includes all standards being developed by IEC TC57 Working Groups 13, 14, 16,
and 19• Now provide access to:
– Announcements of CIM-related activities and events – Calendar of activities – CIM electronic model in various formats – Lists of CIM-related tools and access to open source tools – Documents that are publicly available
• Draft IEC TC57 CIM standards for CIMug members – Lists of the CIMug working groups and works in progress as well as minutes of
meetings and conference calls – CIM issues lists and status of resolution – Help desk – Discussion forums – Links to other CIM-related sites
90
How Are CIM Standards Used?
• Unlike most standards we use– Ex: ICCP/TASE.2 Communication Protocol standard– Fixed functionality, very stable, easy to test compliance, but inflexible
• CIM standards can be strictly applied and tested for compliance– Ex: CIM/XML Power system model exchange– Product interfaces can be developed and tested for compliance– Subject of several EPRI-sponsored interoperability tests for specific
interface definition
91
Example: Power Flow Network Model Exchange
CIM UML
Information and Semantic Models
Context
Message Syntax
Power SystemModel Profile
Group
CIM/RDFSchema
Information Model• Defines all concepts needed for
exchange of operational load flow models
– Reused parts– New extensions
Contextual layer restricts information model• Specifies which part of CIM is used for
static/dynamic model exchange• Mandatory and optional• Restrictions• But cannot add to information model
File syntax• Can re-label elements• Change associations to define single
structure for message payloads• Mappings to various technologies can
be defined
Conforms to IEC 61970-301 CIM
Conforms to IEC 61970-452, 453,
456, othersModel Exchange
Profile
Conforms to IEC 61970-501 and -552
CIM XML Model Exchange Format
92
Ex: Power Flow Network Model Exchange
Information Model• Defines all concepts needed for
exchange of operational load flow models
– Reused parts– New extensions
Contextual layer restricts information model• Specifies which part of CIM is used for
static model exchange• Mandatory and optional• Restrictions• But cannot add to information model
File syntax• Can re-label elements• Change associations to define single
structure for message payloads• Mappings to various technologies can
be defined
CIM UML
Profile
CIM/XML RDFSchema
ConcreteMessage
Conforms to IEC 61970-301 CIM
Conforms to IEC 61970-452
Model ExchangeProfile
Conforms to IEC 61970-552-4
CIM XML Model Exchange Format
93
The IEC Standards for Power System Model Exchange
• The CIM translated into the industry standard eXtensible Markup Language (XML):– Uses a standard XML format that any EMS can understand using
standard Internet and/or Microsoft technologies• IEC 61970 series of standards
– Part 301 CIM Base• Specifies UML model
– Parts 452 and 456 CIM Model Exchange Specification• Specifies guidelines for the definition of specific profiles (or subsets) of the
CIM for particular power system model exchange requirements– Part 501 CIM RDF Schema
• Specifies mapping between UML model and XML model using RDF Schema• This was mandated by NERC for exchange of models between Reliability
Coordinators– Part 552 CIM XML Model Exchange Format
• Specifies simplified RDF Schema and extensions to transfer incremental updates via difference file
94
How Are CIM Standards Used?
• Unlike most standards that we are used to– Ex: IDDP/TASE.2 Communication Protocol standard– Fixed functionality, very stable, easy to test compliance, but inflexible
• CIM standards can be strictly applied and tested for compliance– Ex: CIM/XML Power system model exchange– Product interfaces can be developed and tested for compliance– Subject of several EPRI-sponsored interoperability tests for specific
interface definition• CIM can also be used as a starter kit
– Basis for an Enterprise Semantic Model (ESM) which includes other models/semantics from other sources
– Ex: Sempra Information Model (SIM)– Interfaces are usually project-defined, so no standard tests– System interfaces are managed and tested for each project
95
GridWise Interoperability Framework
Role of CIM
96
Enterprise Semantic Models– CIM + Other Industry Standards
CIM UMLPrivate UMLExtensions
Merge – resolvesemantic
differences
Other Information
Models
Context
Message Syntax
Profile
SchemasXSD, RDFS,
DDL
Contextual layer restricts information model• Constrain or modify data types• Cardinality (may make mandatory)• Cannot add to information model
Message/data syntax describes format for instance data• Can re-label elements• Change associations to define single structure for message payloads• Mappings to various technologies can be defined
97
3) Generate Canonicals•Syntactically and semantically consistent canonical models
Semantic Consistency
1) Establish Vocabulary•Control Content•Collaborate•Identify and refine semantics
Semantic Formalization
Context Refinement
2) Develop ESM•Model using vocabulary terms•Refine context
ClassA
ClassB
ClassC
Existing Terminologyand Metadata
Building and Using an ESM for GeneratingCanonicals (XSDs, DDLs, others)
Compliments Xtensible MD3i
98
Role of Enterprise Semantic Model
Enterprise Integration Platforms
Application Information
Process Integration
Business Intelligence
BPM/Workflow
EnterpriseSemantic
Model
Open Standards
ApplicationsMetadata
Bus
ines
sD
efin
ition
s
99
Let’s Apply to a Utility Project- Interface Architecture
CIM UMLCIM UMLExtensions
Context
Interface Syntax
Profile 1
MessageXML Schema
Profile 2
CIM/RDFSchema
Profile 3
DDL
BridgeOther
Information Models
System Interface Design
Document
Profile 1Profile 1
100
Ex: Project Interaction Test
Enterprise Semantic Model• Defines all concepts needed for
Enterprise– Reused parts– New extensions for project
ESM
Profile
XML Schema
ConcreteMessage
Conforms to Utility ESM
Conforms to Profiles defined
for each system interaction
Conforms to WSDLs and Message
XML Schemas
Contextual layer restricts ESM• Specifies which part of ESM is used
for specific system interaction• Mandatory and optional• Restrictions• But cannot add to information model
File syntax• Can re-label elements• Change associations to define single
structure for message payloads• Mappings to various technologies can
be defined
101
Project Integration Architecture
102
Data Architecture – Model
CIM
Semantic Model
XML SchemaDB Schema
CIS OTHERREFEFENCE MODELS
SEMPRA MODEL
MESSAGES
SCHEMAS
Business Entity
Business Entity
Business Entity
103
Use of ESM to Implement a Service Oriented Architecture (SOA)
• CAISO designed a new power market system– Multi-year program that involved many vendors, new systems, as
well as numerous legacy systems• Includes EMS, Full Network Model, Outage Management, PI
Historian, Market Systems, many others• External interfaces to Market Participants included
• Integration Competency Center decided on a Service Oriented Architecture (SOA) for the integration framework– Require all new applications and systems to be “Integration
Ready” with service-enabled interfaces– Use only standard CAISO-defined services– Payloads based on the CIM– Based on Web services– CIM and Model Driven Integration (MDI) methodology used to
define information exchange
104
Interface Examples:
Interface Type Example Implemented by
Utilized by Description
Information Creation
submitBid(XML) Vendor Enterprise These interfaces are for creating or modifying information within a system of record.
Information Transfer
publishCleanBidSet(XML) CAISO Vendor These interfaces are for transferring information and releasing custody.
Information Interest
receiveCleanBidSet(XML) Vendor EAI These interfaces are implemented by vendors to allow systems to receive information as it becomes available. This indicates a subscription type interest in data.
Information Sharing
getResourceInfo(XML) XML
Vendor Enterprise These interfaces are implemented by the vendors to surface information currently within custody to the enterprise.
(Slide from Stipe Fustar, KEMA)
105
System A Integration Layer
PI
BITS
MC
broadcastMarketMeterDataWS
retrieveMarketMeterData WS
broadcastMarketMeterData
WSretrieveMarketInterchange
WS
receiveMarketMeterDataWS
receiveMarketMeterDataWS
broadcastInvoiceData WS
broadcastGeneralLedgerData WS
receiveInvoiceData WS
receiveGeneralLedgerData WS
broadcastStatusInvoiceDataWS
(Slide from Stipe Fustar, KEMA)
106(Slide from Stipe Fustar, KEMA)
107(Slide from Stipe Fustar, KEMA)
108
CAISO Project Statistics22 Systems• Dispatch System• MP Report Interface• Load Forecast• Transmission Capacity
Calculator• Real Time Nodal System• Settlement and Market
Clearing• Bid Interface and Validation
7 Vendors• Siemens - Market Systems• ABB - EMS system• Areva - Settlement System• Legacy - CAISO system• Nexant - Congestion
Revenue Rights System• MCG - Interchange
Scheduling System• Potomac - Default Energy
Bids
• Default Energy Bids• Real Time Metering• Adjusted Metering• Market Participants
– Bidding– Market Results– Settlement– Outage Scheduling– Dispatch Signals
• Forward Market Nodal System
• EMS
• OASIS• Interchange Scheduling
System• Congestion Revenue Rights• Intermittent Resources• Compliance• RMR Validation• Generation Outage Scheduling• Transmission Outage
Scheduling• Market Quality System
(ATF updates)
Appr 130 integrations between the 22 systemsAppr 75 message schemasAppr 175 service definitionsAppr 450 publisher/consumer testable data transfers
between systems
109
Pacificorp Use of CIM
• PacifiCorp is successfully using CIM to design both interfaces and databases– CIM was adopted in 1999 as PacifiCorp’s application integration standard – Used for both messaging and database design for new projects– Existing interfaces are reworked when the need arises
• Model Driven Integration based on the CIM viewed internally as “Best Practice”– Having a common vocabulary reduces semantic misinterpretation– Reusing messages minimizes integration costs – Minimal knowledge of internal application designs required– Xtensible MDI Workbench used for message creation, management, and
maintenance • CIM is here to stay
– CIM is standard design practice– PacifiCorp vendors are getting used to the idea– PacifiCorp’s data warehouse is based on the CIM– EMS/SCADA system (Ranger) uses a CIM-based data maintenance tool
110
CIM Scorecard – Examples of CIM useBusiness Units
Application/Project
Message(s) CIM Pct of message that is CIM
Power Delivery
Substation Measurements
IntervalRead, SubstationEquipment.Measurement MeasurementList 90%
Outage Center Call Handing
TroubleCalls, TroubleReportAlerts, TroubleReportDetails, TroubleReportSummary, Customer Info, Customer Balance, Customer Account Balance
OutageManagement 80%
Retail Access Project
RegisterReadRequest, BillDeterminant, CustDrop, Enroll.DACust, EnrollmentChange, NonDACust, Reg.ESSRegister, Register.ESS, ESStatusChange, SESSESSRelationshipChange, RegisterReadResponse, CnIConsumption, DAEnrollConsumption, EnrollmentChange, NonDAEnrollConsumption, ESSStatusChange
CustomerMeterDataSet,CustomerServiceAgreement,MeasurmentList,Document, ActivityRecord, CustomerBilling, BillingDeterminant
80%
Pole Attachment System
FacilityPoint, JointUse.Agreement, JointUse.Attachment, JointUse.Notice, JointNoticeRequest, FacilityPoint
AssetList 70%
Transmission Transmission Planned Outages
PlannedOutage.Change PlannedOutageNotification 50%
Transmission Wholesale Billing System
TransmissionData, STLossData, LTLossData, Scheduling.LoadData,ConsumptionData, InvoiceData
Settlement and MarketClearing 70%
EMS SCADA WeatherData MeasurementList 100%
111
CIM Scorecard Cont’dBusiness Units
Application/Project
Message(s) CIM Pct of message that is CIM
Power Supply/Generation
Availability Information System
GeoThermalPlantGeneration MeasurementList 60%
Hydro Information Website
FlowDisplay MeasurementList 100%
Generation Equipment Performance Work Management
SolutionNotification, Performance, SolutionProject, EquipmentGroupRepetitiveTasks, Inventory.StockingPlan, WorkHistoryDocument
WorkWorkHistory
90%
Commercial & Trading
CRS MarkToMarketData MarkToMarket (Not in CIM) 80%
California ISO interface
EDI810 Settlement 50%
Corporate Giving Campaign
EmployeeDetails, ContributionPayrollDetails Employee (erpPerson) 70%
Sarbanes Oxley Audit
ChangeAuditReport ChangeAudit (Not in CIM) 90%
112
Addressing Objections to the Use of the CIM Standards• Claim: CIM is not stable
– Fact: The CIM UML model is evolving as new applications are identified– Fact: Only small part of CIM information model is used for a given interface, so change of information model
unlikely to affect specific interface.– Solution: Version control - tie interface designs to project specifications, not directly to standard
• CIM is to complex too learn and contains many parts I do not need– Fact: The overall CIM UML model is large and complex– Reality: A typical interface requires only very small subset of information model
• CIM creates too much overhead in message content– Fact: Only instantiated concrete class/attributes are actually sent in a message instance– Reality: Message payload is no larger than any XML formatted message
• I don’t want to add in an extra step of converting to CIM for system integration– Fact: There is an extra step of mapping to CIM for one connection– Reality: Consequence of not mapping to a common language is solution that does not scale:
• n(n-1) instead of 2n connection mappings• I can’t expect my vendors to adopt the CIM model for their interface
– Fact: Only a few parts of the CIM need to be “Known” by the vendor– Reality: Approach is to specify the mappings to a common language (CIM) as part of the interface contract
• I don’t want to convert all my metadata to the CIM– Fact: CIM is a starter kit– Reality: Use CIM as appropriate for building your own ESM – far better than starting from scratch
• CIM does not contain everything I need or in the form I need for my interfaces– Fact: CIM UML is extensible– Reality: Many utilities still use the CIM as a starting point, using namespaces to maintain traceability
113
CIM Usage• Many EMS vendors support power system model exchange using CIM/RDF/XML,
some with CIM-based databases behind the scenes• EPRI has sponsored 12 interoperability tests for transmission model exchange and
service validation and more recently for planning and distribution• Utilities have implemented CIM-based integration using EAI technologies
– Utilities have used the CIM as the basis for developing common messages for integration• Asset and work management vendors as well as GIS application vendors are
supporting CIM/XSD standards• AMI (Smart Meter) projects use IEC 61968 Part 9 for meter related information
exchange• CIM has been extended into the power market, planning, and dynamic model exchange• CIM provides a foundation for Service-Oriented Architecture (SOA) and Web service
implementations• Vendors have developed tools to build CIM-based information exchange messaging,
ESB and OPC interfaces, and repository applications that can process CIM-aware data• MultiSpeak is converting to CIM-based UML models and XML• ENTSO_E is converting power model exchanges and day-ahead forecasts for
planning/operational applications to CIM based format– Second IOP conducted in July 2010 (first was UCTE IOP in March 2009)
• Many Smart Grid-related activities based on CIM– Separate presentations during week
114
CIM Acceptance
• In use at dozens of utilities throughout world– In North America, used at TSOs, RTO/ISOs and NERC as well– In Europe now being adopted by UCTE and TOs
• 50+ applications based on CIM• 40+ suppliers sell application/products based on CIM
– See CIM Reference List for Details• Endorsed by other standards organizations
– Multispeak, Zigbee, HAN, UCTE, etc. • Foundation for information exchange between utilities and/or other
external organizations• Foundation for Model-Driven Integration (MDI) architecture based on
Enterprise Information Model (EIM) within an enterprise• Key building block in Smart Grid to achieve interoperability• CIM User Group to deal with questions and issues arising from
increased use
115
Concluding Remarks
• Bottom line: CIM standards are different and much more powerful– Can be applied in many ways– Support many types of functions/applications through
combination of reuse and extension– Architecture supports future, unknown applications
120
Profiles Defined• Equipment
– Identifies equipment, describes basic characteristics, and electrical connectivity that would be input to topology processing
• Schedules – Describes input to functions
that derive parameters for a specific point in time
• Measurement Specs– Describes how SCADA will
obtain measurements and what equipment objects are measured
• Measurement Set – The set of SCADA values for
measurements for a particular point in time
Topology The result of topology processing.
i.e. Description of how equipment connects into buses and how buses makeup connected systems
State Variables This is the set of state variables
used in the mathematical formulation that the algorithms work with
Schematic Layouts Describes how equipment objects
are placed on schematic diagrams Dynamics
Adds dynamics to static network model
Diagram Layout
121
61970 Profile Groups
61970-452ProfileGroup
Equipment Model
61970-456 Profile Group
Common Objects
Topology
State Variables
61970-453 Profile
Schedules
Schematic Layouts
Measurement Set
Measurement Specifications
Boundary Objects
Future 61970-45x Profile
DynamicModels
•Provided by Jay Britton
122
Typical Workflow for Model Exchange
•S1
•S2
•S3
•S4
•S5
•S6
•S7
•S8
•E1
•E1.1•Time
•T1
•Profile•Full model
•DifferentialModel•Predecessor
•DependsOnModel
•T1.1
•T1.3
•T1.2
Equipment Topology StateVariables