CIM Ingestion Overview
Introduction
The Common Information Model (CIM) is an international standard for representing electric power system data. OpenDSO uses CIM as its primary ingestion format for circuit and asset models because it provides a standardized, vendor-neutral way to exchange power system information.
This overview explains what CIM is, why it's important in the utility industry, and why OpenDSO uses it as the ingestion point for circuit utilities.
What is CIM?
The Common Information Model (CIM) is a standardized data model defined by the International Electrotechnical Commission (IEC) through a series of standards, primarily:
- IEC 61970: Focuses on transmission systems, energy management systems (EMS), SCADA, and planning applications
- IEC 61968: Extends CIM for distribution systems, including distribution management systems (DMS), outage management, asset management, and customer information systems
- IEC 62325: Covers electricity market business processes
CIM Technical Structure
CIM is defined using:
- Object-Oriented Modeling: Represents power system components as classes and relationships
- UML (Unified Modeling Language): Platform-independent notation for defining the model
- XML/RDF: Standard exchange format using Resource Description Framework (RDF)
CIM Versions
OpenDSO works with two primary CIM versions:
- CIM16 (IEC61970CIM16v26a): Earlier version widely adopted in the industry
- CIM100 (IEC61970CIM100): Extended version with additional support for North American distribution systems, including extensions developed under the U.S. Department of Energy's GridAPPS-D project
Why Utilities Use CIM
Industry Standardization
CIM has become the de facto standard for power system data exchange because:
- Interoperability: Allows different software systems (SCADA, GIS, EMS, DMS) to exchange data seamlessly
- Vendor-Neutral: Reduces vendor lock-in by providing a common data format
- Enterprise Integration: Enables holistic modeling across transmission, distribution, and market operations
- Data Consistency: Reduces errors and inconsistencies in data management
Common Use Cases
Utilities use CIM for:
- Model Exchange: Sharing circuit models between operational and planning systems
- Asset Management: Integrating asset data across multiple systems
- System Integration: Connecting independently developed applications from different vendors
- Data Migration: Moving data between different utility software platforms
- Regulatory Compliance: Meeting industry standards and data exchange requirements
Why OpenDSO Uses CIM as Its Ingestion Point
Strategic Alignment with Industry Standards
OpenDSO uses CIM as its primary ingestion format to:
- Support Multiple Data Sources: Accept circuit models from various utility systems (CYME, Synergi, Aspen, etc.) through CIM export
- Enable Standardization: Provide a consistent data model regardless of source system
- Facilitate Integration: Allow OpenDSO to integrate with existing utility workflows and systems
- Future-Proof: Align with industry direction toward standardized data models
Technical Benefits
Using CIM provides OpenDSO with:
- Comprehensive Data Model: CIM captures all necessary circuit and asset information
- Relationship Modeling: Clear representation of connectivity and hierarchies in the power system
- Geospatial Information: Support for geographic coordinates and location data
- Extensibility: Ability to add custom extensions while maintaining standard compliance
OpenDSO's CIM Processing Pipeline
OpenDSO processes CIM files through:
- CIM Ingestion: Parse CIM XML files using the topology-genesis service (also known as CIMEX)
- Data Transformation: Convert CIM objects into OpenDSO Data Transfer Objects (DTOs)
- Storage: Save processed data in the OpenDSO Data Service (ODS)
- Access: Make circuit and asset data available to OpenDSO applications and services
CIM Profiles Supported
OpenDSO supports the following CIM profiles:
- Functional (FUN): Defines the functional characteristics of equipment
- Electrical Properties (EP): Specifies electrical parameters
- Topological (TOPO): Represents connectivity and topology
- Catalog (CAT): Contains equipment catalog information
- Geographic (GEO): Provides spatial/location data
- Steady-State Hypothesis (SSH): Defines operating states and settings
Equipment Types Imported
OpenDSO can ingest the following equipment types from CIM:
- Breakers: Circuit breakers and protective devices
- Reclosers: Automatic circuit reclosers
- Switches: Load break switches and air switches
- Power Transformers: Distribution transformers
- Voltage Regulators: Line voltage regulators (with TapChangerControl and RatioTapChanger)
- Line Segments: Distribution lines and cables
- Energy Sources: Substation sources
- Energy Consumers: Loads
- Capacitors: Linear shunt compensators (capacitor banks)
- DER Equipment:
- Photovoltaic/Solar: PowerElectronicsConnection with PhotovoltaicUnit
- Energy Storage Systems (ESS): PowerElectronicsConnection with BatteryUnit
- Jumpers/Taps: Connection points
Obtaining CIM Files for OpenDSO
OpenDSO accepts CIM XML files from any source, as long as they conform to the CIM16 or CIM100 standard. Common sources of CIM files include:
Utility Systems
Most modern utility systems can export circuit models in CIM format:
- CYME: Distribution planning and analysis software
- Synergi Electric: Distribution management and planning system
- Aspen: Power system modeling and analysis
- GIS Systems: Geographic information systems with electrical network data
- OMS/DMS: Outage management and distribution management systems
- EMS/SCADA: Energy management and supervisory control systems
Utilities typically export CIM files from their system of record (planning or operations system) and provide them to OpenDSO for ingestion.
CIM Conversion Tools
If your circuit model exists in another format, various industry tools can convert to CIM:
- CIMHub: PNNL tool for bidirectional CIM conversion
- CIM Tools: Vendor-provided conversion utilities
- Custom Scripts: Utility-specific conversion processes
Testing and Development
For testing, development, and lab environments, OES provides tools to generate CIM files:
- OpenDSS to CIM: For circuits modeled in OpenDSS (see DSS to CIM Process)
- Mav.json to CIM: OES's simplified format for test circuits (see Mav.json to CIM Process)
These OES-specific tools are primarily used for building small test circuits, lab environments, and development work. Production deployments typically use CIM files exported directly from utility systems.
Next Steps
Once you have a CIM file from any source:
- Validate Your CIM File: Ensure it's well-formed XML and contains required CIM elements
- Ingest into OpenDSO: Follow the CIM Ingestion Process guide
The ingestion process is the same regardless of where your CIM file originated—whether from a utility planning system, a commercial tool, or a test circuit generator.