Terminal in CIM vs DistributionBus in GDM#
Figure below shows an UML diagram for Terminal
and ConnectivityNode
in Common Information Model (CIM) which is used to connect terminals of
ac conducting equipment which is analogous to DistributionBus
in grid data models. The CIM diagram is accessed from here.. Terminal
class inherits from IdentifiedObject
class which has name
, description
and mrid
. IdentifiedObject.mrid
is analogous to ComponentWithQuantities.uuid
. Note in GDM we also have system_uuid
to sort of manage which system these assets belong to. Also DistributionBus
has coordinate
attribute of type Location
which is equivalent to PositionPoint
in CIM.
GDM |
CIM |
Note |
---|---|---|
|
|
Both of them are string. |
|
|
Unique identifier for the component. |
|
N/A |
System UUID to which this component belongs to. |
|
|
Note nominal voltage is unit aware but BaseVoltage is not. |
|
|
x coordinate of the component. |
|
|
y coordinate of the component |
|
N/A |
Coordinate reference system for geo coordinates. |
|
N/A |
Differentiates from line to line voltage to line to ground voltage |
|
Name of the feeder to which this component belong to |
|
|
Name of the substation to which this component belongs to. |
|
|
|
List of phases. |
|
Limit type min or max |
|
|
Value for limit. |
Here is an UML diagram of DistributionBus
from Grid data models.
classDiagram class ComponentWithQuantities ComponentWithQuantities: +name str ComponentWithQuantities: +uuid UUID ComponentWithQuantities: +system_uuid UUID | None class PowerSystemBus PowerSystemBus: +nominal_voltage PositiveVoltage PowerSystemBus: +coordinate Location | None class Location Location: +x float Location: +y float Location: +crs str | None class DistributionBus DistributionBus: +voltage_type VoltageTypes DistributionBus: +belongs_to DistributionComponent | None DistributionBus: +phases list[Phase] DistributionBus: +voltagelimits list[VoltageLimitSet] class VoltageTypes{ <<enumeration>> LINE_TO_LINE LINE_TO_GROUND } class DistributionComponent DistributionComponent: +feeder str DistributionComponent: +substation str class Phase{ <<enumeration>> A B C N s1 s2 } class VoltageLimitSet VoltageLimitSet: +limit_type LimitType VoltageLimitSet: +value PositiveVoltage class LimitType{ <<enumerations>> MIN MAX } PowerSystemBus --|> ComponentWithQuantities Location --* PowerSystemBus DistributionBus --|> PowerSystemBus DistributionComponent <-- DistributionBus VoltageLimitSet "0..*" --> "1" DistributionBus