< 上一个 | 内容 | 下一个 >

B.2 IEEE 2030.5 package


B.2.1 Introduction


The IEEE 2030.5 model is organized into function sets, represented by sub-packages. However, all structures are defined inside a single namespace.


class Version Information IEEE 2030.5


tags

defaultNamespace = urn:ieee:std:2030.5:ns elementFormDefault = qualified

schemaLocation = sep.xsd

targetNamespace = urn:ieee:std:2030.5:ns trace_id =

version = 2.1.0

class Version Information IEEE 2030.5


tags

defaultNamespace = urn:ieee:std:2030.5:ns elementFormDefault = qualified

schemaLocation = sep.xsd

targetNamespace = urn:ieee:std:2030.5:ns trace_id =

version = 2.1.0

class Version Information IEEE 2030.5


tags

defaultNamespace = urn:ieee:std:2030.5:ns elementFormDefault = qualified

schemaLocation = sep.xsd

targetNamespace = urn:ieee:std:2030.5:ns trace_id =

version = 2.1.0

image

Figure B.1—Version information


B.2.2 DeviceCapability package


Contains definition of the objects used to convey the resources that are implemented by the publishing host.


image

class DeviceCapability


DeviceCapability

class DeviceCapability


DeviceCapability

class DeviceCapability


DeviceCapability

ListLink

ListLink

ListLink

EndDeviceListLink

EndDeviceListLink

EndDeviceListLink

«XSDattribute»

+ pollRate: UInt32 [0..1] = 900

«XSDattribute»

+ pollRate: UInt32 [0..1] = 900

«XSDattribute»

+ pollRate: UInt32 [0..1] = 900

0..1

0..1

0..1

ListLink

MirrorUsagePointListLink

ListLink

MirrorUsagePointListLink

ListLink

MirrorUsagePointListLink

Resource

FunctionSetAssignmentsBase

Resource

FunctionSetAssignmentsBase

Resource

FunctionSetAssignmentsBase

Making DeviceCapability

inherit from FunctionSetAssignments allows those group

resources to be published with or without use of FunctionSetAssignments.

Making DeviceCapability

inherit from FunctionSetAssignments allows those group

resources to be published with or without use of FunctionSetAssignments.

Making DeviceCapability

inherit from FunctionSetAssignments allows those group

resources to be published with or without use of FunctionSetAssignments.

Link

Link

Link

«XSDattribute»

::Resource

+ href: anyURI [0..1]

«XSDattribute»

::Resource

+ href: anyURI [0..1]

«XSDattribute»

::Resource

+ href: anyURI [0..1]

SelfDeviceLink

SelfDeviceLink

SelfDeviceLink

Figure B.2—DeviceCapability DeviceCapability object (FunctionSetAssignmentsBase)

Returned by the URI provided by DNS-SD, to allow clients to find the URIs to the resources in which they are interested.


pollRate attribute (UInt32) [0..1] «XSDattribute»

The default polling rate for this function set (this resource and all resources below), in seconds. If not specified, a default of 900 seconds (15 minutes) is used. It is RECOMMENDED that a client poll the resources of this function set every pollRate seconds.


B.2.3 Common package


B.2.3.1 Introduction


This package contains objects that are used in multiple function sets.


B.2.3.2 Identification package


Contains super-classes that define the attributes common to categories of objects.


image

class Identification

class Identification

class Identification

Resource

Resource

Resource

List

List

List

Link

Link

Link

ListLink

ListLink

ListLink

«XSDattribute»

+ href: anyURI [0..1]

«XSDattribute»

+ href: anyURI [0..1]

«XSDattribute»

+ href: anyURI [0..1]

«XSDattribute»

+ all: UInt32

+ results: UInt32

«XSDattribute»

+ all: UInt32

+ results: UInt32

«XSDattribute»

+ all: UInt32

+ results: UInt32

«XSDattribute»

+ href: anyURI

«XSDattribute»

+ href: anyURI

«XSDattribute»

+ href: anyURI

«XSDattribute»

+ all: UInt32 [0..1]

«XSDattribute»

+ all: UInt32 [0..1]

«XSDattribute»

+ all: UInt32 [0..1]

IdentifiedObject

+ description: String32 [0..1]

+ mRID: mRIDType

+ version: VersionType [0..1] = 0

IdentifiedObject

+ description: String32 [0..1]

+ mRID: mRIDType

+ version: VersionType [0..1] = 0

IdentifiedObject

+ description: String32 [0..1]

+ mRID: mRIDType

+ version: VersionType [0..1] = 0

SubscribableIdentifiedObject

SubscribableIdentifiedObject

SubscribableIdentifiedObject

SubscribableList

SubscribableList

SubscribableList

RespondableIdentifiedObject

RespondableIdentifiedObject

RespondableIdentifiedObject

+ description: String32 [0..1]

+ mRID: mRIDType

+ version: VersionType [0..1] = 0

+ description: String32 [0..1]

+ mRID: mRIDType

+ version: VersionType [0..1] = 0

+ description: String32 [0..1]

+ mRID: mRIDType

+ version: VersionType [0..1] = 0

«XSDattribute»

+ all: UInt32

+ results: UInt32

«XSDattribute»

+ all: UInt32

+ results: UInt32

«XSDattribute»

+ all: UInt32

+ results: UInt32

+ description: String32 [0..1]

+ mRID: mRIDType

+ version: VersionType [0..1] = 0

+ description: String32 [0..1]

+ mRID: mRIDType

+ version: VersionType [0..1] = 0

+ description: String32 [0..1]

+ mRID: mRIDType

+ version: VersionType [0..1] = 0

+ description: String32 [0..1]

+ mRID: mRIDType

+ version: VersionType [0..1] = 0

«XSDattribute»

+ subscribable: SubscribableType [0..1] = 0

+ description: String32 [0..1]

+ mRID: mRIDType

+ version: VersionType [0..1] = 0

«XSDattribute»

+ subscribable: SubscribableType [0..1] = 0

+ description: String32 [0..1]

+ mRID: mRIDType

+ version: VersionType [0..1] = 0

«XSDattribute»

+ subscribable: SubscribableType [0..1] = 0

RespondableSubscribableIdentifiedObject

RespondableSubscribableIdentifiedObject

RespondableSubscribableIdentifiedObject

«XSDattribute»

+ replyTo: anyURI [0..1]

+ responseRequired: HexBinary8 [0..1] = 00

«XSDattribute»

+ replyTo: anyURI [0..1]

+ responseRequired: HexBinary8 [0..1] = 00

«XSDattribute»

+ replyTo: anyURI [0..1]

+ responseRequired: HexBinary8 [0..1] = 00

«XSDattribute»

+ subscribable: SubscribableType [0..1] = 0

«XSDattribute»

+ subscribable: SubscribableType [0..1] = 0

«XSDattribute»

+ subscribable: SubscribableType [0..1] = 0

RespondableResource

RespondableResource

RespondableResource

SubscribableResource

SubscribableResource

SubscribableResource

Figure B.3—Identification IdentifiedObject object (Resource)

This is a root class to provide common naming attributes for all classes needing naming attributes.


description attribute (String32) [0..1]

The description is a human-readable text describing or naming the object.


mRID attribute (mRIDType)

The global identifier of the object.


version attribute (VersionType) [0..1]

Contains the version number of the object. See the type definition for details.


Link object ()

Links provide a reference, via URI, to another resource.


href attribute (anyURI) «XSDattribute»

A URI reference.


List Object (Resource)

Container to hold a collection of object instances or references. See Clause 4 (design pattern) for additional details.


all attribute (UInt32) «XSDattribute»

The number specifying “all” of the items in the list. Required on a response to a GET, ignored otherwise.


results attribute (UInt32) «XSDattribute»

Indicates the number of items in this page of results.


ListLink Object (Link)

ListLinks provide a reference, via URI, to a List.


all attribute (UInt32) [0..1] «XSDattribute»

Indicates the total number of items in the referenced list. This attribute SHALL be present if the href is a local or relative URI. This attribute SHOULD NOT be present if the href is a remote or absolute URI, as the server may be unaware of changes to the value.


Resource object ()

A resource is an addressable unit of information, either a collection (List) or instance of an object (identifiedObject, or simply, Resource).


href attribute (anyURI) [0..1] «XSDattribute»

A reference to the resource address (URI). Required in a response to a GET, ignored otherwise.


RespondableIdentifiedObject object (RespondableResource)

An IdentifiedObject to which a Response can be requested.


description attribute (String32) [0..1]

The description is a human-readable text describing or naming the object.


mRID attribute (mRIDType)

The global identifier of the object.


version attribute (VersionType) [0..1]

Contains the version number of the object. See the type definition for details.


RespondableResource object (Resource)

A Resource to which a Response can be requested.


replyTo attribute (anyURI) [0..1] «XSDattribute»

A reference to the response resource address (URI). Required on a response to a GET if responseRequired is “true.”


responseRequired attribute (HexBinary8) [0..1] «XSDattribute»

Indicates whether or not a response is required upon receipt, creation, or update of this resource. Responses shall be posted to the collection specified in “replyTo.”


If the resource has a deviceCategory field, devices that match one or more of the device types indicated in deviceCategory SHALL respond according to the rules listed below. If the category does not match, the device SHALL NOT respond. If the resource does not have a deviceCategory field, a device receiving the resource SHALL respond according to the rules listed below.


Value encoded as hex according to the following bit assignments, any combination is possible. See Table 27 for the list of appropriate response status codes to be sent for these purposes.

0 = End device shall indicate that message was received

1 = End device shall indicate specific response

2 = End user/customer response is required All other values reserved.

RespondableSubscribableIdentifiedObject object (RespondableResource)

An IdentifiedObject to which a Response can be requested.


description attribute (String32) [0..1]

The description is a human-readable text describing or naming the object.


mRID attribute (mRIDType)

The global identifier of the object.


subscribable attribute (SubscribableType) [0..1] «XSDattribute»

Indicates whether or not subscriptions are supported for this resource, and whether or not conditional (thresholds) are supported. If not specified, is “not subscribable” (0).


version attribute (VersionType) [0..1]

Contains the version number of the object. See the type definition for details.


SubscribableIdentifiedObject object (SubscribableResource)

An IdentifiedObject to which a Subscription can be requested.


description attribute (String32) [0..1]

The description is a human-readable text describing or naming the object.


mRID attribute (mRIDType)

The global identifier of the object.


version attribute (VersionType) [0..1]

Contains the version number of the object. See the type definition for details.


SubscribableList object (SubscribableResource)

A List to which a Subscription can be requested.


all attribute (UInt32) «XSDattribute»

The number specifying “all” of the items in the list. Required on GET, ignored otherwise.


results attribute (UInt32) «XSDattribute»

Indicates the number of items in this page of results.


SubscribableResource object (Resource)

A Resource to which a Subscription can be requested.


subscribable attribute (SubscribableType) [0..1] «XSDattribute»

Indicates whether or not subscriptions are supported for this resource, and whether or not conditional (thresholds) are supported. If not specified, is “not subscribable” (0).


B.2.3.3 Objects package


Contains definitions of objects used by multiple function sets.


image

class Events

class Events

class Events

RespondableResource

RespondableSubscribableIdentifiedObject

+ description: String32 [0..1]

+ mRID: mRIDType

+ version: VersionType [0..1] = 0

«XSDattribute»

+ subscribable: SubscribableType [0..1] = 0

RespondableResource

RespondableSubscribableIdentifiedObject

+ description: String32 [0..1]

+ mRID: mRIDType

+ version: VersionType [0..1] = 0

«XSDattribute»

+ subscribable: SubscribableType [0..1] = 0

RespondableResource

RespondableSubscribableIdentifiedObject

+ description: String32 [0..1]

+ mRID: mRIDType

+ version: VersionType [0..1] = 0

«XSDattribute»

+ subscribable: SubscribableType [0..1] = 0

EventStatus

EventStatus

EventStatus

RandomizableEvent

RandomizableEvent

RandomizableEvent

Event

Event

Event

+ currentStatus: UInt8

+ currentStatus: UInt8

+ currentStatus: UInt8

+ randomizeDuration: OneHourRangeType [0..1] = 0

+ randomizeStart: OneHourRangeType [0..1] = 0

+ randomizeDuration: OneHourRangeType [0..1] = 0

+ randomizeStart: OneHourRangeType [0..1] = 0

+ randomizeDuration: OneHourRangeType [0..1] = 0

+ randomizeStart: OneHourRangeType [0..1] = 0

+ creationTime: TimeType

+ interval: DateTimeInterval

+ creationTime: TimeType

+ interval: DateTimeInterval

+ creationTime: TimeType

+ interval: DateTimeInterval

+ dateTime: TimeType

1

+ dateTime: TimeType

1

+ dateTime: TimeType

1

+ potentiallySuperseded: boolean

+ potentiallySupersededTime: TimeType [0..1]

+ reason: String192 [0..1]

+ potentiallySuperseded: boolean

+ potentiallySupersededTime: TimeType [0..1]

+ reason: String192 [0..1]

+ potentiallySuperseded: boolean

+ potentiallySupersededTime: TimeType [0..1]

+ reason: String192 [0..1]

TimeTariffInterval

TimeTariffInterval

TimeTariffInterval

DERControl

DERControl

DERControl

TextMessage

TextMessage

TextMessage

+ touTier: TOUType

+ touTier: TOUType

+ touTier: TOUType

+ deviceCategory: DeviceCategoryType [0..1]

+ deviceCategory: DeviceCategoryType [0..1]

+ deviceCategory: DeviceCategoryType [0..1]

+ originator: String20 [0..1]

+ priority: PriorityType

+ textMessage: string

+ originator: String20 [0..1]

+ priority: PriorityType

+ textMessage: string

+ originator: String20 [0..1]

+ priority: PriorityType

+ textMessage: string

EndDeviceControl

+ deviceCategory: DeviceCategoryType

+ drProgramMandatory: boolean

+ loadShiftForward: boolean

+ overrideDuration: UInt16 [0..1] = 0

EndDeviceControl

+ deviceCategory: DeviceCategoryType

+ drProgramMandatory: boolean

+ loadShiftForward: boolean

+ overrideDuration: UInt16 [0..1] = 0

EndDeviceControl

+ deviceCategory: DeviceCategoryType

+ drProgramMandatory: boolean

+ loadShiftForward: boolean

+ overrideDuration: UInt16 [0..1] = 0

Figure B.4—Events


image

class Programs

class Programs

class Programs

IdentifiedObject

IdentifiedObject

IdentifiedObject

UInt8

UInt8

UInt8

DemandResponseProgram PrimacyType

+ availabilityUpdatePercentChangeThreshold: PerCent [0..1] = 0

+ availabilityUpdatePowerChangeThreshold: ActivePower [0..1] = 0

+ primacy: PrimacyType

DemandResponseProgram PrimacyType

+ availabilityUpdatePercentChangeThreshold: PerCent [0..1] = 0

+ availabilityUpdatePowerChangeThreshold: ActivePower [0..1] = 0

+ primacy: PrimacyType

DemandResponseProgram PrimacyType

+ availabilityUpdatePercentChangeThreshold: PerCent [0..1] = 0

+ availabilityUpdatePowerChangeThreshold: ActivePower [0..1] = 0

+ primacy: PrimacyType

IdentifiedObject

IdentifiedObject

IdentifiedObject

TariffProfile

TariffProfile

TariffProfile

notes

Values possible for indication of "Primary" provider: 0: In home energy management system

1: Contracted premises service provider 2: Non-contractual service provider

3 - 64: Reserved

65 - 191: User-defined

192 - 255: Reserved

notes

Values possible for indication of "Primary" provider: 0: In home energy management system

1: Contracted premises service provider 2: Non-contractual service provider

3 - 64: Reserved

65 - 191: User-defined

192 - 255: Reserved

notes

Values possible for indication of "Primary" provider: 0: In home energy management system

1: Contracted premises service provider 2: Non-contractual service provider

3 - 64: Reserved

65 - 191: User-defined

192 - 255: Reserved

+ currency: CurrencyCode [0..1]

+ pricePowerOfTenMultiplier: PowerOfTenMultiplierType [0..1]

+ primacy: PrimacyType

+ rateCode: String20 [0..1]

+ serviceCategoryKind: ServiceKind

+ currency: CurrencyCode [0..1]

+ pricePowerOfTenMultiplier: PowerOfTenMultiplierType [0..1]

+ primacy: PrimacyType

+ rateCode: String20 [0..1]

+ serviceCategoryKind: ServiceKind

+ currency: CurrencyCode [0..1]

+ pricePowerOfTenMultiplier: PowerOfTenMultiplierType [0..1]

+ primacy: PrimacyType

+ rateCode: String20 [0..1]

+ serviceCategoryKind: ServiceKind

Lower numbers indicate higher priority.


UInt8

PriorityType

Lower numbers indicate higher priority.


UInt8

PriorityType

Lower numbers indicate higher priority.


UInt8

PriorityType

SubscribableIdentifiedObject

MessagingProgram

SubscribableIdentifiedObject

MessagingProgram

SubscribableIdentifiedObject

MessagingProgram

+

+

+

+

+

+

locale: LocaleType

primacy: PrimacyType

locale: LocaleType

primacy: PrimacyType

locale: LocaleType

primacy: PrimacyType

Event

Event

Event

TextMessage

TextMessage

TextMessage

SubscribableIdentifiedObject

DERProgram

SubscribableIdentifiedObject

DERProgram

SubscribableIdentifiedObject

DERProgram

+ originator: String20 [0..1]

+ priority: PriorityType

+ textMessage: string

+ originator: String20 [0..1]

+ priority: PriorityType

+ textMessage: string

+ originator: String20 [0..1]

+ priority: PriorityType

+ textMessage: string

notes

Indicates the priority of a message:

0 - Low

1 - Normal

2 - High

3 - Critical

All other values reserved.

notes

Indicates the priority of a message:

0 - Low

1 - Normal

2 - High

3 - Critical

All other values reserved.

notes

Indicates the priority of a message:

0 - Low

1 - Normal

2 - High

3 - Critical

All other values reserved.

+ primacy: PrimacyType

+ primacy: PrimacyType

+ primacy: PrimacyType

Figure B.5—Programs


image

class Error

class Error

class Error

reasonCode

Code indicating the reason for failure.


0 - Invalid request format

1 - Invalid request values (e.g. invalid threshold values)

2 - Resource limit reached

3 - Conditional subscription field not supported

4 - Maximum request frequency exceeded All other values reserved

reasonCode

Code indicating the reason for failure.


0 - Invalid request format

1 - Invalid request values (e.g. invalid threshold values)

2 - Resource limit reached

3 - Conditional subscription field not supported

4 - Maximum request frequency exceeded All other values reserved

reasonCode

Code indicating the reason for failure.


0 - Invalid request format

1 - Invalid request values (e.g. invalid threshold values)

2 - Resource limit reached

3 - Conditional subscription field not supported

4 - Maximum request frequency exceeded All other values reserved

+ maxRetryDuration: UInt16 [0..1]

+ reasonCode: UInt16

+ maxRetryDuration: UInt16 [0..1]

+ reasonCode: UInt16

+ maxRetryDuration: UInt16 [0..1]

+ reasonCode: UInt16

Error

Error

Error

Figure B.6—Error


Error object ()

Contains information about the nature of an error if a request could not be completed successfully.


maxRetryDuration attribute (UInt16) [0..1]

Contains the number of seconds the client SHOULD wait before retrying the request.


reasonCode attribute (UInt16)

Code indicating the reason for failure.

0 = Invalid request format

1 = Invalid request values (e.g., invalid threshold values)

2 = Resource limit reached

3 = Conditional Subscription field not supported

4 = Maximum request frequency exceeded All other values reserved.

Event object (RespondableSubscribableIdentifiedObject)

An Event indicates information that applies to a particular period of time. Events SHALL be executed relative to the time of the server, as described in the Time function set, 9.2.


creationTime attribute (TimeType)

The time at which the Event was created.


interval attribute (DateTimeInterval)

The period during which the Event applies.


EventStatus object ()

Current status information relevant to a specific object. The Status object is used to indicate the current status of an Event. Devices can read the containing resource (e.g., TextMessage) to get the most up-to-date status of the event. Devices can also subscribe to a specific resource instance to get updates when any of its attributes change, including the Status object.


currentStatus attribute (UInt8)

Field representing the current status type.


0 = Scheduled


This status indicates that the event has been scheduled and the event has not yet started. The server SHALL set the event to this status when the event is first scheduled and persist until the event has become active or has been cancelled. For events with a start time less than or equal to the current time, this status SHALL never be indicated, the event SHALL start with a status of “Active.”


1 = Active


This status indicates that the event is currently active. The server SHALL set the event to this status when the event reaches its earliest Effective Start Time.


2 = Cancelled


When events are cancelled, the Status.dateTime attribute SHALL be set to the time the cancellation occurred, which cannot be in the future. The server is responsible for maintaining the cancelled event in its collection for the duration of the original event, or until the server has run out of space and needs to store a new event. Client devices SHALL be aware of Cancelled events, determine if the Cancelled event applies to them, and cancel the event immediately if applicable.


3 = Cancelled with Randomization


The server is responsible for maintaining the cancelled event in its collection for the duration of the Effective Scheduled Period. Client devices SHALL be aware of Cancelled with Randomization events, determine if the Cancelled event applies to them, and cancel the event immediately, using the larger of (absolute value of randomizeStart) and (absolute value of randomizeDuration) as the end randomization, in seconds. This Status.type SHALL NOT be used with “regular” Events, only with specializations of RandomizableEvent.


4 = Superseded


Events marked as Superseded by servers are events that may have been replaced by new events from the same program that targets the exact same set of deviceCategory’s (if applicable) and DERControl controls (e.g., opModTargetW) (if applicable), and overlap for a given period of time. Servers SHALL mark an event as Superseded at the earliest Effective Start Time of the overlapping event. Servers are responsible for maintaining the Superseded event in their collection for the duration of the Effective Scheduled Period.


Client devices encountering a Superseded event SHALL terminate execution of the event immediately and commence execution of the new event immediately, unless the current time is within the start randomization window of the superseded event, in which case the client SHALL obey the start randomization of the new event. This Status.type SHALL NOT be used with TextMessage, since multiple text messages can be active.


All other values reserved.


dateTime attribute (TimeType)

The dateTime attribute will provide a timestamp of when the current status was defined. dateTime MUST be set to the time at which the status change occurred, not a time in the future or past.


potentiallySuperseded attribute (boolean)

Set to true by a server of this event if there are events that overlap this event in time and also overlap in some, but not all, deviceCategory’s (if applicable) and DERControl controls (e.g., opModTargetW) (if applicable) in the same function set instance.


potentiallySupersededTime attribute (TimeType) [0..1]

Indicates the time that the potentiallySuperseded flag was set.


reason attribute (String192) [0..1]

The Reason attribute allows a Service provider to provide a textual explanation of the status.


RandomizableEvent object (Event)

An Event that can indicate time ranges over which the start time and duration SHALL be randomized.


randomizeDuration attribute (OneHourRangeType) [0..1]

Number of seconds boundary inside which a random value must be selected to be applied to the associated interval duration, to avoid sudden synchronized demand changes. If related to price level changes, sign may be ignored. Valid range is −3600 to 3600. If not specified, 0 is the default.


randomizeStart attribute (OneHourRangeType) [0..1]

Number of seconds boundary inside which a random value must be selected to be applied to the associated interval start time, to avoid sudden synchronized demand changes. If related to price level changes, sign may be ignored. Valid range is −3600 to 3600. If not specified, 0 is the default.


B.2.3.4 Types package


Contains definitions of reusable data types.


image

class Types

class Types

class Types

UnitType

UnitType

UnitType

unsignedByte

«XSDsimple...

UInt8

unsignedByte

«XSDsimple...

UInt8

unsignedByte

«XSDsimple...

UInt8

byte

byte

byte

«XSDsimpleType»

SubscribableType

«XSDsimpleType»

SubscribableType

«XSDsimpleType»

SubscribableType

«XSDsimple...

Int8

«XSDsimple...

Int8

«XSDsimple...

Int8

PowerOfTenMultiplierType

PowerOfTenMultiplierType

PowerOfTenMultiplierType

PriorityType

PriorityType

PriorityType

PerCent

PerCent

PerCent

UomType

UomType

UomType

unsignedShort

unsignedShort

unsignedShort

short

short

short

SignedPerCent

SignedPerCent

SignedPerCent

KindType

KindType

KindType

«XSDsimple...

UInt16

«XSDsimple...

UInt16

«XSDsimple...

UInt16

CurrencyCode

CurrencyCode

CurrencyCode

«XSDsimple...

Int16

«XSDsimple...

Int16

«XSDsimple...

Int16

OneHourRangeType

OneHourRangeType

OneHourRangeType

AccumulationBehaviourType

AccumulationBehaviourType

AccumulationBehaviourType

VersionType

VersionType

VersionType

DataQualifierType

DataQualifierType

DataQualifierType

unsignedInt

unsignedInt

unsignedInt

int

int

int

«XSDsimple...

UInt32 PINType

«XSDsimple...

UInt32 PINType

«XSDsimple...

UInt32 PINType

«XSDsimple...

Int32

«XSDsimple...

Int32

«XSDsimple...

Int32

TimeOffsetType

TimeOffsetType

TimeOffsetType

FlowDirectionType


ConsumptionBlockType PENType

FlowDirectionType


ConsumptionBlockType PENType

FlowDirectionType


ConsumptionBlockType PENType

TOUType

TOUType

TOUType

unsignedLong

«XSDsimple...

UInt40

unsignedLong

«XSDsimple...

UInt40

unsignedLong

«XSDsimple...

UInt40

SFDIType

SFDIType

SFDIType

long

«XSDsimple...

Int64

long

«XSDsimple...

Int64

long

«XSDsimple...

Int64

TimeType

TimeType

TimeType

CommodityType


PhaseCode

CommodityType


PhaseCode

CommodityType


PhaseCode

hexBinary

«XSDsimple...

HexBinary16

hexBinary

«XSDsimple...

HexBinary16

hexBinary

«XSDsimple...

HexBinary16

RoleFlagsType

RoleFlagsType

RoleFlagsType

ServiceKind

ServiceKind

ServiceKind

DERControlType

DERControlType

DERControlType

ChargeKind

ChargeKind

ChargeKind

hexBinary

hexBinary

hexBinary

string

string

string

DERType

DERType

DERType

«XSDsimple...

HexBinary32

«XSDsimple...

HexBinary32

«XSDsimple...

HexBinary32

DeviceCategoryType

DeviceCategoryType

DeviceCategoryType

«XSDsimple...

String42

«XSDsimple...

String42

«XSDsimple...

String42

LocaleType

LocaleType

LocaleType

DstRuleType

DstRuleType

DstRuleType

DERCurveType

DERCurveType

DERCurveType

hexBinary

hexBinary

hexBinary

ApplianceLoadReductionType

ApplianceLoadReductionType

ApplianceLoadReductionType

«XSDsimple...

HexBinary128

«XSDsimple...

HexBinary128

«XSDsimple...

HexBinary128

mRIDType

mRIDType

mRIDType

Figure B.7—Types


AccumulationBehaviourType object (UInt8)

0 = Not Applicable (default, if not specified) 3 = Cumulative

The sum of the previous billing period values. Note: “Cumulative” is commonly used in conjunction with “demand.” Each demand reset causes the maximum demand value for the present billing period (since the last demand reset) to accumulate as an accumulative total of all maximum demands. So instead of “zeroing” the demand register, a demand reset has the affect of adding the present maximum demand to this accumulating total.


4 = DeltaData


The difference between the value at the end of the prescribed interval and the beginning of the interval. This is used for incremental interval data.


Note: One common application would be for load profile data; another use might be to report the number of events within an interval (such as the number of equipment energizations within the specified period of time).


6 = Indicating


As if a needle is swung out on the meter face to a value to indicate the current value. (Note: An “indicating” value is typically measured over hundreds of milliseconds or greater, or may imply a “pusher” mechanism to capture a value. Compare this to “instantaneous” which is measured over a shorter period of time.)


9 = Summation


A form of accumulation which is selective with respect to time.


NOTE—“Summation” could be considered a specialization of “Bulk Quantity” according to the rules of inheritance where “Summation” selectively accumulates pulses over a timing pattern, and “BulkQuantity” accumulates pulses all of the time.


12 = Instantaneous


Typically measured over the fastest period of time allowed by the definition of the metric (usually milliseconds or tens of milliseconds). (Note: “Instantaneous” was moved to attribute #3 in 61968-9Ed2 from attribute #1 in 61968-9Ed1.)


All other values reserved.


ApplianceLoadReductionType object (UInt8)

0 = Delay Appliance Load


Parameter requesting the appliance to respond by providing a moderate load reduction for the duration of a delay period. Typically referring to a “non-emergency” event in which appliances can continue operating if already in a load-consuming period.


1 = Temporary appliance load reduction


Parameter requesting the appliance to respond by providing an aggressive load reduction for a short time period. Typically referring to an “emergency/spinning reserve” event in which an appliance should start shedding load if currently in a load-consuming period.


Full definition of how appliances react when receiving each parameter is document in the EPA document, ENERGY STAR® Program Requirements, Product Specification for Residential Refrigerators and Freezers, Eligibility Criteria 5, Draft 2 Version 5.0.


All other values reserved.


CommodityType object (UInt8)

0 = Not applicable (default, if not specified)


1 = Electricity secondary metered value (a premises meter is typically on the low voltage, or secondary, side of a service transformer)


2 = Electricity primary metered value (measured on the high voltage, or primary, side of the service transformer)


4 = Air


7 = NaturalGas


8 = Propane


9 = PotableWater


10 = Steam


11 = WasteWater


12 = HeatingFluid


13 = CoolingFluid


All other values reserved.


ConsumptionBlockType object (UInt8)

0 = Not Applicable (default, if not specified)


1 = Block 1


2 = Block 2


3 = Block 3


4 = Block 4


5 = Block 5


6 = Block 6


7 = Block 7


8 = Block 8


9 = Block 9


10 = Block 10


11 = Block 11


12 = Block 12


13 = Block 13


14 = Block 14


15 = Block 15


16 = Block 16


All other values reserved.


CurrencyCode object (UInt16)

Follows codes defined in ISO 4217.


0 = Not applicable (default, if not specified) 36 = Australian dollar

124 = Canadian dollar 840 = U.S. dollar

978 = Euro


This is not a complete list.


DataQualifierType object (UInt8)

0 = Not applicable (default, if not specified) 2 = Average

8 = Maximum


9 = Minimum


12 = Normal


29 = Standard deviation of a population (typically indicated by a lower case sigma)


30 = Standard deviation of a sample drawn from a population (typically indicated by a lower case “s”) All other values reserved.

DateTimeInterval object «Compound» ()

Interval of date and time.


duration attribute (UInt32)

Duration of the interval, in seconds.


start attribute (TimeType)

Date and time of the start of the interval.


DeviceCategoryType object (HexBinary32)

The Device category types defined.


Bit positions SHALL be defined as follows:


0 = Programmable communicating thermostat


1 = Strip heaters


2 = Baseboard heaters


3 = Water heater


4 = Pool pump


5 = Sauna


6 = Hot tub


7 = Smart appliance


8 = Irrigation pump


9 = Managed commercial and industrial (C&I) loads


10 = Simple misc. (residential on/off) loads


11 = Exterior lighting


12 = Interior lighting


13 = Load control switch


14 = Energy management system


15 = Smart energy module


16 = Electric vehicle


17 = Electric vehicle supply equipment (EVSE)


18 = Virtual or mixed DER


19 = Reciprocating engine


20 = Fuel cell


21 = Photovoltaic system


22 = Combined heat and power


23 = Combined PV and storage


24 = Other generation system


25 = Other storage system All other values reserved.

DstRuleType object (HexBinary32)

Bit map encoded rule from which is calculated the start or end time, within the current year, to which daylight savings time offset must be applied.


The rule encoding:


Bits 0 to 11: seconds 0 to 3599


Bits 12 to 16: hours 0 to 23


Bits 17 to 19: day of the week 0 = not applicable, 1 to 7 (Monday = 1)


Bits 20 to 24: day of the month 0 = not applicable, 1 to 31 Bits 25 to 27: operator (detailed below)

Bits 28 to 31: month 1 to 12


Rule value of 0xFFFFFFFF means rule processing/DST correction is disabled. The operators:

0: DST starts/ends on the Day of the Month


1: DST starts/ends on the Day of the Week that is on or after the Day of the Month 2: DST starts/ends on the first occurrence of the Day of the Week in a month

3: DST starts/ends on the second occurrence of the Day of the Week in a month 4: DST starts/ends on the third occurrence of the Day of the Week in a month 5: DST starts/ends on the forth occurrence of the Day of the Week in a month 6: DST starts/ends on the fifth occurrence of the Day of the Week in a month

7: DST starts/ends on the last occurrence of the Day of the Week in a month


An example: DST starts on the third Friday in March at 1:45 AM. The rule... Seconds: 2700

Hours: 1


Day of week: 5 Day of month: 0 Operator: 4


Month: 3


FlowDirectionType object (UInt8)

0 = Not applicable (default, if not specified)


1 = Forward (delivered to customer) 19 = Reverse (received from customer) All other values reserved.

GPSLocationType object «Compound» ()

Specifies a GPS location, expressed in WGS 84 coordinates.


lat attribute (String32)

Specifies the latitude from equator. −90 (south) to +90 (north) in decimal degrees.


lon attribute (String32)

Specifies the longitude from Greenwich Meridian. −180 (west) to +180 (east) in decimal degrees.


KindType object (UInt8)

0 = Not applicable (default, if not specified) 3 = Currency

8 = Demand


12 = Energy


37 = Power


All other values reserved.


LocaleType object (String42)

IETF RFC 4646 identifier of a language-region.


mRIDType object (HexBinary128)

A master resource identifier. The IANA Private Enterprise Number (PEN) provider ID SHALL be specified in bits 0 to 31, the least-significant bits, and objects created by that provider SHALL be assigned unique IDs with the remaining 96 bits.


0xFFFFFFFFFFFFFFFFFFFFFFFF[XXXXXXXX], where [XXXXXXXX] is the PEN, is reserved for a object that is being created (e.g., a ReadingSet for the current time that is still accumulating).


Except for this special reserved identifier, each modification of an object (resource) representation MUST have a different “version.”


OneHourRangeType object (Int16)

A signed time offset, typically applied to a Time value, expressed in seconds, with range −3600 to 3600.


PENType object (UInt32)

IANA Private Enterprise Number (PEN).


PerCent object (UInt16)

Used for percentages, specified in hundredths of a percent, 0 to 10 000. (10 000 = 100%)


PhaseCode object (UInt8)

0 = Not applicable (default, if not specified)


32 = Phase C (and S2)


33 = Phase CN (and S2N) 40 = Phase CA

64 = Phase B


65 = Phase BN


66 = Phase BC


128 = Phase A (and S1)


129 = Phase AN (and S1N) 132 = Phase AB

224 = Phase ABC


All other values reserved.


PINType object (UInt32)

Six digit unsigned decimal integer (0 to 999999).


(Note that this only requires 20 bits, if it can be allocated.)


PowerOfTenMultiplierType object (Int8)

−9 = Nano 109


−6 = Micro 106


−3 = Milli 103


0 = None = 1 (default, if not specified)


1 = Deca 10


2 = Hecto 100


3 = Kilo 1000


6 = Mega 106


9 = Giga 109


This is not a complete list. Any integer between −9 and 9 SHALL be supported, indicating the power of ten multiplier for the units.


PrimacyType object (UInt8)

Values possible for indication of “Primary” provider:


0 = In-home energy management system


1 = Contracted premises service provider


2 = Non-contractual service provider


3 to 64 -= Reserved


65 to 191 = User-defined


192 to 255 = Reserved


Lower numbers indicate higher priority.


RealEnergy object ()

Real electrical energy.


multiplier attribute (PowerOfTenMultiplierType)

Multiplier for “unit.”


value attribute (UInt48)

Value of the energy in watt-hours (uom 72).


RoleFlagsType object (HexBinary16)

Specifies the roles that apply to a usage point.


Bit 0—isMirror—SHALL be set if the server is not the measurement device


Bit 1—isPremisesAggregationPoint—SHALL be set if the UsagePoint is the point of delivery for a premises


Bit 2—isPEV—SHALL be set if the usage applies to an electric vehicle


Bit 3—isDER—SHALL be set if the usage applies to a distributed energy resource, capable of delivering power to the grid


Bit 4—isRevenueQuality—SHALL be set if usage was measured by a device certified as revenue quality Bit 5—isDC—SHALL be set if the usage point measures direct current

Bit 6—isSubmeter—SHALL be set if the usage point is not a premises aggregation point Bit 7 to 15—Reserved

ServiceKind object (UInt8)

Service kind:


0 = Electricity


1 = Gas


2 = Water


3 = Time


4 = Pressure


5 = Heat


6 = Cooling


All other values reserved.


SFDIType object (UInt40)

Unsigned integer, maximum inclusive 687194767359, which is 236 1 (68 719 476 735), with added check digit. See 8.4.2 for check digit calculation.


SignedPerCent object (Int16)

Used for signed percentages, specified in hundredths of a percent, −10 000 to 10 000. (10 000 = 100%)


SignedRealEnergy object ()

Real electrical energy, signed.


multiplier attribute (PowerOfTenMultiplierType)

Multiplier for “unit.”


value attribute (Int48)

Value of the energy in watt-hours (uom 72).


SubscribableType object «XSDsimpleType» (UInt8)

The subscribable values.


0 = Resource does not support subscriptions


1 = Resource supports non-conditional subscriptions


2 = Resource supports conditional subscriptions


3 = Resource supports both conditional and non-conditional subscriptions All other values reserved.

TimeOffsetType object (Int32)

A signed time offset, typically applied to a Time value, expressed in seconds.


TimeType object (Int64)

Time is a signed 64-bit value representing the number of seconds since 0 hours, 0 minutes, 0 seconds, on 1 January 1970, in UTC, not counting leap seconds.


TOUType object (UInt8)

0 = Not applicable (default, if not specified)


1 = TOU A


2 = TOU B


3 = TOU C


4 = TOU D


5 = TOU E


6 = TOU F


7 = TOU G


8 = TOU H


9 = TOU I


10 = TOU J


11 = TOU K


12 = TOU L


13 = TOU M


14 = TOU N


15 = TOU O

All other values reserved.


UnitType object (UInt8)

The unit types defined for end device control target reductions.

0 = kWh

1 = kW

2 = Watts

3 = Cubic meters

4 = Cubic feet

5 = U.S. gallons

6 = Imperial gallons

7 = British thermal units (BTUs)

8 = Liters

9 = kPA (gauge)

10 = kPA (absolute)

11 = Megajoule

12 = Unitless

All other values reserved.


UnitValueType object ()

Type for specification of a specific value, with units and power of ten multiplier.


multiplier attribute (PowerOfTenMultiplierType)

Multiplier for “unit.”


unit attribute (UomType)

Unit in symbol.


value attribute (Int32)

Value in units specified.


UomType object (UInt8)

The following values are recommended values sourced from the unit of measure enumeration in IEC 61968-9. Other values from the unit of measure enumeration in IEC 61968-9 MAY be used.


0 = Not applicable (default, if not specified)


5 = A (current in amperes [rms])


6 = Kelvin (temperature)


23 = Degrees Celsius (relative temperature) 29 = Voltage

31 = J (energy joule) 33 = Hz (frequency)

38 = W (real power in watts) 42 = m3 (cubic meter)

61 = VA (apparent power) 63 = var (reactive power)

65 = CosTheta (displacement power factor) 67 = V2 (volts squared)

69 = A2 (amp squared)


71 = VAh (apparent energy)


72 = Wh (real energy in watt-hours)


73 = varh (reactive energy)


106 = Ah (ampere-hours/available charge) 119 = ft3 (cubic feet)

122 = ft3/h (cubic feet per hour)


125 = m3/h (cubic meter per hour)


128 = U.S. gallons


129 = U.S. gal/h (U.S. gallons per hour)


130 = Imperial gallons


131 = IMP gal/h (Imperial gallons per hour)


132 = BTU


133 = BTU/h


134 = Liter


137 = L/h (liters per hour) 140 = PA (gauge)

155 = PA (absolute) 169 = Therm

VersionType object (UInt16)

Version SHALL indicate a distinct identifier for each revision of an IdentifiedObject. If not specified, a default version of “0” (initial version) SHALL be assumed. Upon modification of any IdentifiedObject, the mRID SHALL remain the same, but the version SHALL be incremented. Servers MAY NOT modify objects that they did not create, unless they were notified of the change from the entity controlling the object’s PEN.


B.2.3.5 Primitive types package


Contains definitions of primitive data types based on XML Schema primitives.


image

class Primitive Types

unsignedByte

«XSDsimple...

UInt8

class Primitive Types

unsignedByte

«XSDsimple...

UInt8

class Primitive Types

unsignedByte

«XSDsimple...

UInt8

unsignedShort

«XSDsimple...

UInt16

unsignedShort

«XSDsimple...

UInt16

unsignedShort

«XSDsimple...

UInt16

unsignedInt

«XSDsimple...

UInt32

unsignedInt

«XSDsimple...

UInt32

unsignedInt

«XSDsimple...

UInt32

unsignedLong

«XSDsimple...

UInt40

unsignedLong

«XSDsimple...

UInt40

unsignedLong

«XSDsimple...

UInt40

unsignedLong

«XSDsimple...

UInt48

unsignedLong

«XSDsimple...

UInt48

unsignedLong

«XSDsimple...

UInt48

unsignedLong

«XSDsimple...

UInt64

unsignedLong

«XSDsimple...

UInt64

unsignedLong

«XSDsimple...

UInt64

byte

«XSDsimple...

Int8

byte

«XSDsimple...

Int8

byte

«XSDsimple...

Int8

short

«XSDsimple...

Int16

short

«XSDsimple...

Int16

short

«XSDsimple...

Int16

int

«XSDsimple...

Int32

int

«XSDsimple...

Int32

int

«XSDsimple...

Int32

long

«XSDsimple...

Int48

long

«XSDsimple...

Int48

long

«XSDsimple...

Int48

long

«XSDsimple...

Int64

long

«XSDsimple...

Int64

long

«XSDsimple...

Int64

string

«XSDsimple...

String6

string

«XSDsimple...

String6

string

«XSDsimple...

String6

string

«XSDsimple...

String20

string

«XSDsimple...

String20

string

«XSDsimple...

String20

string

«XSDsimple...

String16

string

«XSDsimple...

String16

string

«XSDsimple...

String16

string

«XSDsimple...

String32

string

«XSDsimple...

String32

string

«XSDsimple...

String32

string

«XSDsimple...

String42

string

«XSDsimple...

String42

string

«XSDsimple...

String42

string

«XSDsimple...

String192

string

«XSDsimple...

String192

string

«XSDsimple...

String192

hexBinary

«XSDsimple...

HexBinary8

hexBinary

«XSDsimple...

HexBinary8

hexBinary

«XSDsimple...

HexBinary8

hexBinary

«XSDsimple...

HexBinary16

hexBinary

«XSDsimple...

HexBinary16

hexBinary

«XSDsimple...

HexBinary16

hexBinary

«XSDsimple...

HexBinary32

hexBinary

«XSDsimple...

HexBinary32

hexBinary

«XSDsimple...

HexBinary32

hexBinary

«XSDsimple...

HexBinary48

hexBinary

«XSDsimple...

HexBinary48

hexBinary

«XSDsimple...

HexBinary48

hexBinary

«XSDsimple...

HexBinary64

hexBinary

«XSDsimple...

HexBinary64

hexBinary

«XSDsimple...

HexBinary64

hexBinary

«XSDsimple...

HexBinary128

hexBinary

«XSDsimple...

HexBinary128

hexBinary

«XSDsimple...

HexBinary128

hexBinary

«XSDsimple...

HexBinary160

hexBinary

«XSDsimple...

HexBinary160

hexBinary

«XSDsimple...

HexBinary160

Figure B.8—Primitive types


HexBinary8 object «XSDsimpleType» (hexBinary)

An 8-bit field encoded as a hex string (2 hex characters). Where applicable, bit 0, or the least significant bit, goes on the right. Note that hexBinary requires pairs of hex characters, so an odd number of characters requires a leading “0”.


HexBinary16 object «XSDsimpleType» (hexBinary)

A 16-bit field encoded as a hex string (4 hex characters maximum). Where applicable, bit 0, or the least significant bit, goes on the right. Note that hexBinary requires pairs of hex characters, so an odd number of characters requires a leading “0”.


HexBinary32 object «XSDsimpleType» (hexBinary)

A 32-bit field encoded as a hex string (8 hex characters maximum). Where applicable, bit 0, or the least significant bit, goes on the right. Note that hexBinary requires pairs of hex characters, so an odd number of characters requires a leading “0”.


HexBinary48 object «XSDsimpleType» (hexBinary)

A 48-bit field encoded as a hex string (12 hex characters maximum). Where applicable, bit 0, or the least significant bit, goes on the right. Note that hexBinary requires pairs of hex characters, so an odd number of characters requires a leading “0”.


HexBinary64 object «XSDsimpleType» (hexBinary)

A 64-bit field encoded as a hex string (16 hex characters maximum). Where applicable, bit 0, or the least significant bit, goes on the right. Note that hexBinary requires pairs of hex characters, so an odd number of characters requires a leading “0”.


HexBinary128 object «XSDsimpleType» (hexBinary)

A 128-bit field encoded as a hex string (32 hex characters maximum). Where applicable, bit 0, or the least significant bit, goes on the right. Note that hexBinary requires pairs of hex characters, so an odd number of characters requires a leading “0”.


HexBinary160 object «XSDsimpleType» (hexBinary)

A 160-bit field encoded as a hex string (40 hex characters maximum). Where applicable, bit 0, or the least significant bit, goes on the right. Note that hexBinary requires pairs of hex characters, so an odd number of characters requires a leading “0”.


String6 object «XSDsimpleType» (string)

Character string of maximum length 6. In order to limit internal storage, implementations SHALL reduce the length of strings using multi-byte characters so that the string may be stored using “maxLength” octets in the given encoding.


String16 object «XSDsimpleType» (string)

Character string of maximum length 16. In order to limit internal storage, implementations SHALL reduce the length of strings using multi-byte characters so that the string may be stored using “maxLength” octets in the given encoding.


String20 object «XSDsimpleType» (string)

Character string of maximum length 20. In order to limit internal storage, implementations SHALL reduce the length of strings using multi-byte characters so that the string may be stored using “maxLength” octets in the given encoding.


String32 object «XSDsimpleType» (string)

Character string of maximum length 32. In order to limit internal storage, implementations SHALL reduce the length of strings using multi-byte characters so that the string may be stored using “maxLength” octets in the given encoding.


String42 object «XSDsimpleType» (string)

Character string of maximum length 42. In order to limit internal storage, implementations SHALL reduce the length of strings using multi-byte characters so that the string may be stored using “maxLength” octets in the given encoding.


String192 object «XSDsimpleType» (string)

Character string of maximum length 192. For all string types, in order to limit internal storage, implementations SHALL reduce the length of strings using multi-byte characters so that the string may be stored using “maxLength” octets in the given encoding.


UInt8 object «XSDsimpleType» (unsignedByte)

Unsigned integer, maximum inclusive 255 ( 28 1 ).


UInt16 object «XSDsimpleType» (unsignedShort)

Unsigned integer, maximum inclusive 65 535 ( 216 1 ).


UInt32 object «XSDsimpleType» (unsignedInt)

Unsigned integer, maximum inclusive 4 294 967 295 ( 232 1 ).


UInt40 object «XSDsimpleType» (unsignedLong)

Unsigned integer, maximum inclusive 1 099 511 627 775 ( 240 1).


UInt48 object «XSDsimpleType» (unsignedLong)

Unsigned integer, maximum inclusive 281 474 976 710 655 ( 248 1 ).


UInt64 object «XSDsimpleType» (unsignedLong)

Unsigned integer, maximum inclusive 18 446 744 073 709 551 615 ( 264 1 ).


Int8 object «XSDsimpleType» (byte)

Signed integer, minimum −128, maximum 127.


Int16 object «XSDsimpleType» (short)

Signed integer, minimum −32 768, maximum 32 767.


Int32 object «XSDsimpleType» (int)

Signed integer, maximum inclusive 2 147 483 647 ( 231 ), minimum inclusive −2 147 483 647 (same as xs:int).


Int48 object «XSDsimpleType» (long)

Signed integer, maximum inclusive 140 737 488 355 328 ( 247 ), minimum inclusive −140 737 488 355 328.


Int64 object «XSDsimpleType» (long)

Signed integer, maximum inclusive 9 223 372 036 854 775 807 ( 263 ), minimum inclusive −9 223 372 036

854 775 808 (same as xs:long).


B.2.4 EndDevice package


image

class SelfDevice

class SelfDevice

class SelfDevice

FunctionSetAssignmentsBase

FunctionSetAssignmentsBase

FunctionSetAssignmentsBase

Link

Link

Link

DeviceCapability

DeviceCapability

DeviceCapability

ConfigurationLink

ConfigurationLink

ConfigurationLink

«XSDattribute»

+ pollRate: UInt32 [0..1] = 900

«XSDattribute»

+ pollRate: UInt32 [0..1] = 900

«XSDattribute»

+ pollRate: UInt32 [0..1] = 900

Link

DeviceInformationLink

Link

DeviceInformationLink

Link

DeviceInformationLink

0....1

0....1

0....1

Link

Link

Link

ListLink

FunctionSetAssignmentsListLink

ListLink

FunctionSetAssignmentsListLink

ListLink

FunctionSetAssignmentsListLink

DeviceStatusLink

DeviceStatusLink

DeviceStatusLink

Link

Link

Link

ListLink

ListLink

ListLink

Link

Link

Link

ListLink

IPInterfaceListLink

ListLink

IPInterfaceListLink

ListLink

IPInterfaceListLink

SelfDeviceLink

SelfDeviceLink

SelfDeviceLink

EndDeviceListLink

EndDeviceListLink

EndDeviceListLink

RegistrationLink

RegistrationLink

RegistrationLink

SelfDevice

SelfDevice

SelfDevice

SubscribableList

SubscribableList

SubscribableList

ListLink

ListLink

ListLink

ListLink

LoadShedAvailabilityListLink

ListLink

LoadShedAvailabilityListLink

ListLink

LoadShedAvailabilityListLink

EndDeviceList

EndDeviceList

EndDeviceList

SubscriptionListLink

SubscriptionListLink

SubscriptionListLink

ListLink

LogEventListLink

ListLink

LogEventListLink

ListLink

LogEventListLink

«XSDattribute»

+ pollRate: UInt32 [0..1] = 900

«XSDattribute»

+ pollRate: UInt32 [0..1] = 900

«XSDattribute»

+ pollRate: UInt32 [0..1] = 900

ListLink

FlowReservationRequestListLink

ListLink

FlowReservationRequestListLink

ListLink

FlowReservationRequestListLink

0..*

0..*

0..*

Link

Link

Link

EndDevice

EndDevice

EndDevice

PowerStatusLink

PowerStatusLink

PowerStatusLink

0..1

0..1

0..1

ListLink

FlowReservationResponseListLink

ListLink

FlowReservationResponseListLink

ListLink

FlowReservationResponseListLink

Link

Link

Link

FileStatusLink

FileStatusLink

FileStatusLink

SubscribableResource

SubscribableResource

SubscribableResource

ListLink

ListLink

ListLink

AbstractDevice

AbstractDevice

AbstractDevice

DERListLink

DERListLink

DERListLink

0..1

0..1

0..1

+ deviceCategory: DeviceCategoryType [0..1]

+ lFDI: HexBinary160 [0..1]

+ sFDI: SFDIType

+ deviceCategory: DeviceCategoryType [0..1]

+ lFDI: HexBinary160 [0..1]

+ sFDI: SFDIType

+ deviceCategory: DeviceCategoryType [0..1]

+ lFDI: HexBinary160 [0..1]

+ sFDI: SFDIType

Figure B.9—SelfDevice


image

class EndDevice

class EndDevice

class EndDevice

SubscribableResource

SubscribableResource

SubscribableResource

EndDevice

EndDevice

EndDevice

AbstractDevice

+ deviceCategory: DeviceCategoryType [0..1]

+ lFDI: HexBinary160 [0..1]

+ sFDI: SFDIType

AbstractDevice

+ deviceCategory: DeviceCategoryType [0..1]

+ lFDI: HexBinary160 [0..1]

+ sFDI: SFDIType

AbstractDevice

+ deviceCategory: DeviceCategoryType [0..1]

+ lFDI: HexBinary160 [0..1]

+ sFDI: SFDIType

+ changedTime: TimeType

+ enabled: boolean [0..1] = true

+ postRate: UInt32 [0..1]

00...1... 1

+ changedTime: TimeType

+ enabled: boolean [0..1] = true

+ postRate: UInt32 [0..1]

00...1... 1

+ changedTime: TimeType

+ enabled: boolean [0..1] = true

+ postRate: UInt32 [0..1]

00...1... 1

0..1

0..1

0..1

Link

Link

Link

Link

Link

Link

DeviceStatusLink RegistrationLink

DeviceStatusLink RegistrationLink

DeviceStatusLink RegistrationLink

ListLink

FunctionSetAssignmentsListLink

ListLink

FunctionSetAssignmentsListLink

ListLink

FunctionSetAssignmentsListLink

ListLink

ListLink

ListLink

SubscriptionListLink

SubscriptionListLink

SubscriptionListLink

Resource

Resource

Resource

Resource

Resource

Resource

Registration

Registration

Registration

SubscribableList

FunctionSetAssignmentsList

SubscribableList

FunctionSetAssignmentsList

SubscribableList

FunctionSetAssignmentsList

List

List

List

DeviceStatus

DeviceStatus

DeviceStatus

SubscriptionList

SubscriptionList

SubscriptionList

+ changedTime: TimeType

+ onCount: UInt16 [0..1]

+ opState: UInt8 [0..1] = 0

+ opTime: UInt32 [0..1]

«XSDattribute»

+ pollRate: UInt32 [0..1] = 900

+ changedTime: TimeType

+ onCount: UInt16 [0..1]

+ opState: UInt8 [0..1] = 0

+ opTime: UInt32 [0..1]

«XSDattribute»

+ pollRate: UInt32 [0..1] = 900

+ changedTime: TimeType

+ onCount: UInt16 [0..1]

+ opState: UInt8 [0..1] = 0

+ opTime: UInt32 [0..1]

«XSDattribute»

+ pollRate: UInt32 [0..1] = 900

+ dateTimeRegistered: TimeType

+ pIN: PINType

«XSDattribute»

+ pollRate: UInt32 [0..1] = 900

+ dateTimeRegistered: TimeType

+ pIN: PINType

«XSDattribute»

+ pollRate: UInt32 [0..1] = 900

+ dateTimeRegistered: TimeType

+ pIN: PINType

«XSDattribute»

+ pollRate: UInt32 [0..1] = 900

«XSDattribute»

+ pollRate: UInt32 [0..1] = 900

«XSDattribute»

+ pollRate: UInt32 [0..1] = 900

«XSDattribute»

+ pollRate: UInt32 [0..1] = 900

«XSDattribute»

+ pollRate: UInt32 [0..1] = 900

«XSDattribute»

+ pollRate: UInt32 [0..1] = 900

«XSDattribute»

+ pollRate: UInt32 [0..1] = 900

0..*

0..*

0..*

0..*

0..*

0..*

FunctionSetAssignments

FunctionSetAssignments

FunctionSetAssignments

SubscriptionBase

Subscription

SubscriptionBase

Subscription

SubscriptionBase

Subscription

+ description: String32 [0..1]

+ mRID: mRIDType + encoding: UInt8

+ version: VersionType [0..1] = 0 + level: String16

«XSDattribute» + limit: UInt32

+ subscribable: SubscribableType [0..1] = 0 + notificationURI: anyURI

+ description: String32 [0..1]

+ mRID: mRIDType + encoding: UInt8

+ version: VersionType [0..1] = 0 + level: String16

«XSDattribute» + limit: UInt32

+ subscribable: SubscribableType [0..1] = 0 + notificationURI: anyURI

+ description: String32 [0..1]

+ mRID: mRIDType + encoding: UInt8

+ version: VersionType [0..1] = 0 + level: String16

«XSDattribute» + limit: UInt32

+ subscribable: SubscribableType [0..1] = 0 + notificationURI: anyURI

Resource

FunctionSetAssignmentsBase

Resource

FunctionSetAssignmentsBase

Resource

FunctionSetAssignmentsBase

0..1

0..1

0..1

0..*

0..*

0..*

subject

The subject of the temperature measurement

0 - Enclosure

1 - Transformer

2 - HeatSink

subject

The subject of the temperature measurement

0 - Enclosure

1 - Transformer

2 - HeatSink

subject

The subject of the temperature measurement

0 - Enclosure

1 - Transformer

2 - HeatSink

0..1

0..1

0..1

Temperature

                                                                      

+ multiplier: PowerOfTenMultiplierType

+ subject: UInt8

+ value: Int16

Temperature

                                                                      

+ multiplier: PowerOfTenMultiplierType

+ subject: UInt8

+ value: Int16

Temperature

                                                                      

+ multiplier: PowerOfTenMultiplierType

+ subject: UInt8

+ value: Int16

Link

Link

Link

TimeLink

TimeLink

TimeLink

Figure B.10—EndDevice AbstractDevice object (SubscribableResource)

The EndDevice providing the resources available within the DeviceCapabilities.


deviceCategory attribute (DeviceCategoryType) [0..1]

This field is for use in devices that can adjust energy usage (e.g., demand response, distributed energy resources). For devices that do not respond to EndDeviceControls or DERControls (for instance, an energy services interface [ESI]), this field should not have any bits set.


lFDI attribute (HexBinary160) [0..1]

Long form of device identifier. See Clause 6 (security) for additional details.


sFDI attribute (SFDIType)

Short form of device identifier, WITH the checksum digit. See Clause 6 (security) for additional details.


DeviceStatus object (Resource)

Status of device.


changedTime attribute (TimeType)

The time at which the reported values were recorded.


onCount attribute (UInt16) [0..1]

The number of times that the device has been turned on: Count of “device on” times since the last time the counter was reset.


opState attribute (UInt8) [0..1]

Device operational state:


0 = Not applicable/Unknown


1 = Not operating


2 = Operating


3 = Starting up


4 = Shutting down


5 = At disconnect level


6 = kW ramping


7 = kVar ramping


opTime attribute (UInt32) [0..1]

Total time device has operated: re-settable: Accumulated time in seconds since the last time the counter was reset.


pollRate attribute (UInt32) [0..1] «XSDattribute»

The default polling rate for this function set (this resource and all resources below), in seconds. If not specified, a default of 900 seconds (15 minutes) is used. It is RECOMMENDED that a client poll the resources of this function set every pollRate seconds.


EndDevice object (AbstractDevice)

Asset container that performs one or more end device functions. Contains information about individual devices in the network.


changedTime attribute (TimeType)

The time at which this resource was last modified or created.


enabled attribute (boolean) [0..1]

This attribute indicates whether or not an EndDevice is enabled, or registered, on the server. If a server sets this attribute to false, the device is no longer registered. It should be noted that servers can delete EndDevice instances, but using this attribute for some time is more convenient for clients.


postRate attribute (UInt32) [0..1]

POST rate, or how often EndDevice and subordinate resources should be POSTed, in seconds. A client MAY indicate a preferred postRate when POSTing EndDevice. A server MAY add or modify postRate to indicate its preferred posting rate.


EndDeviceList object (SubscribableList)

A List element to hold EndDevice objects.


pollRate attribute (UInt32) [0..1] «XSDattribute»

The default polling rate for this function set (this resource and all resources below), in seconds. If not specified, a default of 900 seconds (15 minutes) is used. It is RECOMMENDED that a client poll the resources of this function set every pollRate seconds.


Registration object (Resource)

Registration represents an authorization to access the resources on a host.


dateTimeRegistered attribute (TimeType)

Contains the time at which this registration was created, by which clients MAY prioritize information providers with the most recent registrations, when no additional direction from the consumer is available.


pIN attribute (PINType)

Contains the registration personal identification number (PIN) associated with the device, including the checksum digit.


pollRate attribute (UInt32) [0..1] «XSDattribute»

The default polling rate for this function set (this resource and all resources below), in seconds. If not specified, a default of 900 seconds (15 minutes) is used. It is RECOMMENDED that a client poll the resources of this function set every pollRate seconds.


SelfDevice object (AbstractDevice)

The EndDevice providing the resources available within the DeviceCapabilities.


pollRate attribute (UInt32) [0..1] «XSDattribute»

The default polling rate for this function set (this resource and all resources below), in seconds. If not specified, a default of 900 seconds (15 minutes) is used. It is RECOMMENDED that a client poll the resources of this function set every pollRate seconds.


Temperature object ()

Specification of a temperature.


multiplier attribute (PowerOfTenMultiplierType)

Multiplier for “unit.”


subject attribute (UInt8)

The subject of the temperature measurement:


0 = Enclosure


1 = Transformer


2 = HeatSink


value attribute (Int16)

Value in degrees Celsius (uom 23).


B.2.5 FunctionSetAssignments package


image

class FunctionSetAssignments

class FunctionSetAssignments

class FunctionSetAssignments

AbstractDevice

EndDevice

+ changedTime: TimeType

+ enabled: boolean [0..1] = true

+ postRate: UInt32 [0..1]

0..1

AbstractDevice

EndDevice

+ changedTime: TimeType

+ enabled: boolean [0..1] = true

+ postRate: UInt32 [0..1]

0..1

AbstractDevice

EndDevice

+ changedTime: TimeType

+ enabled: boolean [0..1] = true

+ postRate: UInt32 [0..1]

0..1

Link

Link

Link

ListLink

ListLink

ListLink

ListLink

ListLink

ListLink

TimeLink

TimeLink

TimeLink

FunctionSetAssignmentsListLink

FunctionSetAssignmentsListLink

FunctionSetAssignmentsListLink

UsagePointListLink

UsagePointListLink

UsagePointListLink

SubscribableList

FunctionSetAssignmentsList

SubscribableList

FunctionSetAssignmentsList

SubscribableList

FunctionSetAssignmentsList

ListLink

DemandResponseProgramListLink

ListLink

DemandResponseProgramListLink

ListLink

DemandResponseProgramListLink

«XSDattribute»

+ pollRate: UInt32 [0..1] = 900

«XSDattribute»

+ pollRate: UInt32 [0..1] = 900

«XSDattribute»

+ pollRate: UInt32 [0..1] = 900

ListLink

ListLink

ListLink

DERProgramListLink

DERProgramListLink

DERProgramListLink

0..*

0..*

0..*

ListLink

ListLink

ListLink

ListLink

ListLink

ListLink

TariffProfileListLink

TariffProfileListLink

TariffProfileListLink

FunctionSetAssignments

FunctionSetAssignments

FunctionSetAssignments

CustomerAccountListLink

CustomerAccountListLink

CustomerAccountListLink

+ description: String32 [0..1]

+ mRID: mRIDType

+ version: VersionType [0..1] = 0

+ description: String32 [0..1]

+ mRID: mRIDType

+ version: VersionType [0..1] = 0

+ description: String32 [0..1]

+ mRID: mRIDType

+ version: VersionType [0..1] = 0

ListLink

ListLink

ListLink

ListLink

ListLink

ListLink

MessagingProgramListLink

MessagingProgramListLink

MessagingProgramListLink

«XSDattribute»

+ subscribable: SubscribableType [0..1] = 0

«XSDattribute»

+ subscribable: SubscribableType [0..1] = 0

«XSDattribute»

+ subscribable: SubscribableType [0..1] = 0

PrepaymentListLink

PrepaymentListLink

PrepaymentListLink

ListLink

ListLink

ListLink

ListLink

ListLink

ListLink

FileListLink

FileListLink

FileListLink

0..1

0..1

0..1

Resource

FunctionSetAssignmentsBase

Resource

FunctionSetAssignmentsBase

Resource

FunctionSetAssignmentsBase

0..1

0..1

0..1

ResponseSetListLink

ResponseSetListLink

ResponseSetListLink

Figure B.11—FunctionSetAssignments FunctionSetAssignmentsBase object (Resource)

Defines a collection of function set instances that are to be used by one or more devices as indicated by the EndDevice object(s) of the server.


FunctionSetAssignments object (FunctionSetAssignmentsBase)

Provides an identifiable, subscribable collection of resources for a particular device to consume.


description attribute (String32) [0..1]

The description is a human-readable text describing or naming the object.


mRID attribute (mRIDType)

The global identifier of the object.


subscribable attribute (SubscribableType) [0..1] «XSDattribute»

Indicates whether or not subscriptions are supported for this resource, and whether or not conditional (thresholds) are supported. If not specified, is “not subscribable” (0).


version attribute (VersionType) [0..1]

Contains the version number of the object. See the type definition for details.


FunctionSetAssignmentsList object (SubscribableList)

A List element to hold FunctionSetAssignments objects.


pollRate attribute (UInt32) [0..1] «XSDattribute»

The default polling rate for this function set (this resource and all resources below), in seconds. If not specified, a default of 900 seconds (15 minutes) is used. It is RECOMMENDED that a client poll the resources of this function set every pollRate seconds.


B.2.6 Pub-Sub package


Contains resource definitions used to allow subscriptions and notifications of publications.


AbstractDevice

EndDevice



0..1

ListLink

SubscriptionListLink


image

class Pub-Sub

class Pub-Sub

class Pub-Sub

0..*

0..*

0..*

0..*

0..*

0..*

0..1

0..1

0..1

0..1

0..1

0..1

attributeIdentifier

0 = Reading value 1-255 = Reserved

attributeIdentifier

0 = Reading value 1-255 = Reserved

attributeIdentifier

0 = Reading value 1-255 = Reserved

status

0 = Default Status

1 = Subscription canceled, no additional information

2 = Subscription canceled, resource moved

3 = Subscription canceled, resource definition changed (e.g., a new version of IEEE 2030.5)

4 = Subscription canceled, resource deleted All other values reserved.

status

0 = Default Status

1 = Subscription canceled, no additional information

2 = Subscription canceled, resource moved

3 = Subscription canceled, resource definition changed (e.g., a new version of IEEE 2030.5)

4 = Subscription canceled, resource deleted All other values reserved.

status

0 = Default Status

1 = Subscription canceled, no additional information

2 = Subscription canceled, resource moved

3 = Subscription canceled, resource definition changed (e.g., a new version of IEEE 2030.5)

4 = Subscription canceled, resource deleted All other values reserved.

+ attributeIdentifier: UInt8

+ lowerThreshold: Int48

+ upperThreshold: Int48

+ attributeIdentifier: UInt8

+ lowerThreshold: Int48

+ upperThreshold: Int48

+ attributeIdentifier: UInt8

+ lowerThreshold: Int48

+ upperThreshold: Int48

Condition

Condition

Condition

+ encoding: UInt8

+ level: String16

+ limit: UInt32

+ notificationURI: anyURI

+ encoding: UInt8

+ level: String16

+ limit: UInt32

+ notificationURI: anyURI

+ encoding: UInt8

+ level: String16

+ limit: UInt32

+ notificationURI: anyURI

Resource

Resource

Resource

Subscription

Subscription

Subscription

+ subscribedResource: anyURI

«XSDattribute»

::Resource

+ href: anyURI [0..1]

+ subscribedResource: anyURI

«XSDattribute»

::Resource

+ href: anyURI [0..1]

+ subscribedResource: anyURI

«XSDattribute»

::Resource

+ href: anyURI [0..1]

+ newResourceURI: anyURI [0..1]

+ status: UInt8

+ subscriptionURI: anyURI

+ newResourceURI: anyURI [0..1]

+ status: UInt8

+ subscriptionURI: anyURI

+ newResourceURI: anyURI [0..1]

+ status: UInt8

+ subscriptionURI: anyURI

SubscriptionBase

SubscriptionBase

SubscriptionBase

«XSDattribute»

+ pollRate: UInt32 [0..1] = 900

«XSDattribute»

+ pollRate: UInt32 [0..1] = 900

«XSDattribute»

+ pollRate: UInt32 [0..1] = 900

Notification

Notification

Notification

SubscriptionList

SubscriptionList

SubscriptionList

List

List

List

NotificationList

NotificationList

NotificationList

List

List

List

ListLink

NotificationListLink

ListLink

NotificationListLink

ListLink

NotificationListLink

Figure B.12—Pub-Sub


Condition object ()

Indicates a condition that must be satisfied for the Notification to be triggered.


attributeIdentifier attribute (UInt8)

0 = Reading value


1 to 255 = Reserved


lowerThreshold attribute (Int48)

The value of the lower threshold.


upperThreshold attribute (Int48)

The value of the upper threshold.


SubscriptionBase object (Resource)

Holds the information related to a client Subscription to receive updates to a resource automatically. The actual resources may be passed in the Notification by specifying a specific xsi:type for the Resource and passing the full representation.


subscribedResource attribute (anyURI)

The resource for which the Subscription applies. Query string parameters SHALL NOT be specified when subscribing to list resources. Should a query string parameter be specified, servers SHALL ignore them.


Subscription object (SubscriptionBase)

Holds the information related to a client Subscription to receive updates to a resource automatically.


encoding attribute (UInt8)

0 = application/sep+xml


1 = application/sep-exi


2 to 255 = Reserved


level attribute (String16)

Contains the preferred schema and extensibility level indication such as “+S1”.


limit attribute (UInt32)

This element is used to indicate the maximum number of list items that should be included in a Notification when the subscribed resource changes. This limit is meant to be functionally equivalent to the “limit” query string parameter, but applies to both list resources as well as other resources. For list resources, if a limit of 0 is specified, then Notifications SHALL contain a list resource with results = 0 (equivalent to a simple change Notification). For list resources, if a limit greater than 0 is specified, then Notifications SHALL contain a list resource with results equal to the limit specified (or less, should the list contain fewer items than the limit specified or should the server be unable to provide the requested number of items for any reason) and follow the same rules for list resources (e.g., ordering). For non-list resources, if a limit of 0 is specified, then Notifications SHALL NOT contain a resource representation (equivalent to a simple change Notification). For non-list resources, if a limit greater than 0 is specified, then Notifications SHALL contain the representation of the changed resource.


notificationURI attribute (anyURI)

The resource to which to post the Notifications about the requested subscribed resource. Because this URI will exist on a server other than the one being POSTed to, this attribute SHALL be a fully-qualified absolute URI, not a relative reference.


SubscriptionList object (List)

A List element to hold Subscription objects.


pollRate attribute (UInt32) [0..1] «XSDattribute»

The default polling rate for this function set (this resource and all resources below), in seconds. If not specified, a default of 900 seconds (15 minutes) is used. It is RECOMMENDED that a client poll the resources of this function set every pollRate seconds.


Notification object (SubscriptionBase)

Holds the information related to a client Subscription to receive updates to a resource automatically. The actual resources may be passed in the Notification by specifying a specific xsi:type for the Resource and passing the full representation.


newResourceURI attribute (anyURI) [0..1]

The new location of the resource, if moved. This attribute SHALL be a fully-qualified absolute URI, not a relative reference.


status attribute (UInt8)

0 = Default status


1 = Subscription canceled, no additional information


2 = Subscription canceled, resource moved


3 = Subscription canceled, resource definition changed (e.g., a new version of IEEE Std 2030.5)


4 = Subscription canceled, resource deleted All other values reserved.

subscriptionURI attribute (anyURI)

The Subscription from which this Notification was triggered. This attribute SHALL be a fully-qualified absolute URI, not a relative reference.


NotificationList object (List)

A List element to hold Notification objects.


B.2.7 Response package


Contains definitions of objects enabling responses to be sent back to suppliers and providers.


image

class Response

Resource

FunctionSetAssignmentsBase


0..1

ListLink

ResponseSetListLink


List

class Response

Resource

FunctionSetAssignmentsBase


0..1

ListLink

ResponseSetListLink


List

class Response

Resource

FunctionSetAssignmentsBase


0..1

ListLink

ResponseSetListLink


List

DutyCycle

DutyCycle

DutyCycle

ResponseSetList

ResponseSetList

ResponseSetList

+ normalValue: UInt8

+ normalValue: UInt8

+ normalValue: UInt8

«XSDattribute»

+ pollRate: UInt32 [0..1] = 900

«XSDattribute»

+ pollRate: UInt32 [0..1] = 900

«XSDattribute»

+ pollRate: UInt32 [0..1] = 900

Offset

Offset

Offset

0..*

IdentifiedObject

ResponseSet

0..*

IdentifiedObject

ResponseSet

0..*

IdentifiedObject

ResponseSet

DERControlResponse

DERControlResponse

DERControlResponse

+ coolingOffset: UInt8 [0..1]

+ heatingOffset: UInt8 [0..1]

+ loadAdjustmentPercentageOffset: PerCent [0..1]

+ coolingOffset: UInt8 [0..1]

+ heatingOffset: UInt8 [0..1]

+ loadAdjustmentPercentageOffset: PerCent [0..1]

+ coolingOffset: UInt8 [0..1]

+ heatingOffset: UInt8 [0..1]

+ loadAdjustmentPercentageOffset: PerCent [0..1]

0..1

0..1

0..1

FlowReservationResponseResponse

FlowReservationResponseResponse

FlowReservationResponseResponse

SetPoint

SetPoint

SetPoint

ListLink

ResponseListLink

ListLink

ResponseListLink

ListLink

ResponseListLink

+ coolingSetpoint: Int16 [0..1]

+ heatingSetpoint: Int16 [0..1]

+ coolingSetpoint: Int16 [0..1]

+ heatingSetpoint: Int16 [0..1]

+ coolingSetpoint: Int16 [0..1]

+ heatingSetpoint: Int16 [0..1]

List

List

List

PriceResponse

PriceResponse

PriceResponse

ResponseList

ResponseList

ResponseList

AppliedTargetReduction

AppliedTargetReduction

AppliedTargetReduction

0..*

0..*

0..*

TextResponse

TextResponse

TextResponse

+ type: UnitType

+ value: UInt16

+ type: UnitType

+ value: UInt16

+ type: UnitType

+ value: UInt16

Resource

Response

+ createdDateTime: TimeType [0..1]

+ endDeviceLFDI: HexBinary160

+ status: UInt8 [0..1]

+ subject: mRIDType

Resource

Response

+ createdDateTime: TimeType [0..1]

+ endDeviceLFDI: HexBinary160

+ status: UInt8 [0..1]

+ subject: mRIDType

Resource

Response

+ createdDateTime: TimeType [0..1]

+ endDeviceLFDI: HexBinary160

+ status: UInt8 [0..1]

+ subject: mRIDType

                                                                                 

                                                                                 

                                                                                 

DrResponse

DrResponse

DrResponse

ApplianceLoadReduction

ApplianceLoadReduction

ApplianceLoadReduction

+ overrideDuration: UInt16 [0..1]

+ overrideDuration: UInt16 [0..1]

+ overrideDuration: UInt16 [0..1]

0..1

0..1

0..1

+ type: ApplianceLoadReductionType

+ type: ApplianceLoadReductionType

+ type: ApplianceLoadReductionType

Figure B.13—Response DERControlResponse object (Response)

A response to a DERControl.


FlowReservationResponseResponse object (Response)

A response to a FlowReservationResponse.


AppliedTargetReduction object ()

Specifies the value of the TargetReduction applied by the device.


type attribute (UnitType)

Enumerated field representing the type of reduction requested.


value attribute (UInt16)

Indicates the requested amount of the relevant commodity to be reduced.


DrResponse object (Response)

A response to a Demand Response Load Control (EndDeviceControl) message.


overrideDuration attribute (UInt16) [0..1]

Indicates the amount of time, in seconds, that the client partially opts-out during the demand response event. When overriding within the allowed override duration, the client SHALL send a partial opt-out (response status code 8) for partial opt-out upon completion, with the total time the event was overridden (this attribute) populated. The client SHALL send a no participation status response (status type 10) if the user partially opts-out for longer than EndDeviceControl.overrideDuration.


PriceResponse object (Response)

A response related to a price message.


Response object (Resource)

The Response object is the generic response data repository which is extended for specific function sets.


createdDateTime attribute (TimeType) [0..1]

The createdDateTime field contains the date and time when the acknowledgement/status occurred in the client. The client will provide the timestamp to ensure the proper time is captured in case the response is delayed in reaching the server (server receipt time would not be the same as the actual confirmation time). The time reported from the client should be relative to the time server indicated by the FunctionSetAssignment that also indicated the event resource; if no FunctionSetAssignment exists, the time of the server where the event resource was hosted.


endDeviceLFDI attribute (HexBinary160)

Contains the long-form device identifier (LFDI) of the device providing the response.


status attribute (UInt8) [0..1]

The status field contains the acknowledgement or status. Each event type (DRLC, DER, Price, or Text) can return different status information (e.g., an Acknowledge will be returned for a Price event where a Demand Response Load Control (DRLC) event can return Event Received, Event Started, and Event Completed). The status field value definitions are defined in Table 27.


subject attribute (mRIDType)

The subject field provides a method to match the response with the originating event. It is populated with the mRID of the original object.


ResponseList object (List)

A List element to hold Response objects.


ResponseSet object (IdentifiedObject)

A container for a ResponseList.


ResponseSetList object (List)

A List element to hold ResponseSet objects.


pollRate attribute (UInt32) [0..1] «XSDattribute»

The default polling rate for this function set (this resource and all resources below), in seconds. If not specified, a default of 900 seconds (15 minutes) is used. It is RECOMMENDED that a client poll the resources of this function set every pollRate seconds.


TextResponse object (Response)

A response to a text message.


B.2.8 Time package


image

class Time

class Time

class Time

Int64

Int64

Int64

TimeType

TimeType

TimeType

0..1

0..1

0..1

0..1

0..1

0..1

notes

Time is a signed 64 bit value representing the number of seconds since 0 hours, 0 minutes, 0 seconds, on the 1st of January, 1970, in UTC, not counting leap seconds.

notes

Time is a signed 64 bit value representing the number of seconds since 0 hours, 0 minutes, 0 seconds, on the 1st of January, 1970, in UTC, not counting leap seconds.

notes

Time is a signed 64 bit value representing the number of seconds since 0 hours, 0 minutes, 0 seconds, on the 1st of January, 1970, in UTC, not counting leap seconds.

Link

TimeLink


Resource

Time

quality

+ currentTime: TimeType Metric indicating the quality of the time source from which the service

+ dstEndTime: TimeType acquired time. Lower (smaller) quality enumeration values are assumed

+ dstOffset: TimeOffsetType to be more accurate.

+ dstStartTime: TimeType 3 - time obtained from external authoritative source such as NTP

+ localTime: TimeType [0..1] 4 - time obtained from level 3 source

+ quality: UInt8 5 - time manually set or obtained from level 4 source

+ tzOffset: TimeOffsetType 6 - time obtained from level 5 source

«XSDattribute» 7 - time intentionally uncoordinated

+ pollRate: UInt32 [0..1] = 900 All other values are reserved for future use.

Link

TimeLink


Resource

Time

quality

+ currentTime: TimeType Metric indicating the quality of the time source from which the service

+ dstEndTime: TimeType acquired time. Lower (smaller) quality enumeration values are assumed

+ dstOffset: TimeOffsetType to be more accurate.

+ dstStartTime: TimeType 3 - time obtained from external authoritative source such as NTP

+ localTime: TimeType [0..1] 4 - time obtained from level 3 source

+ quality: UInt8 5 - time manually set or obtained from level 4 source

+ tzOffset: TimeOffsetType 6 - time obtained from level 5 source

«XSDattribute» 7 - time intentionally uncoordinated

+ pollRate: UInt32 [0..1] = 900 All other values are reserved for future use.

Link

TimeLink


Resource

Time

quality

+ currentTime: TimeType Metric indicating the quality of the time source from which the service

+ dstEndTime: TimeType acquired time. Lower (smaller) quality enumeration values are assumed

+ dstOffset: TimeOffsetType to be more accurate.

+ dstStartTime: TimeType 3 - time obtained from external authoritative source such as NTP

+ localTime: TimeType [0..1] 4 - time obtained from level 3 source

+ quality: UInt8 5 - time manually set or obtained from level 4 source

+ tzOffset: TimeOffsetType 6 - time obtained from level 5 source

«XSDattribute» 7 - time intentionally uncoordinated

+ pollRate: UInt32 [0..1] = 900 All other values are reserved for future use.

Resource

DeviceStatus

Resource

DeviceStatus

Resource

DeviceStatus

Resource

FunctionSetAssignmentsBase

Resource

FunctionSetAssignmentsBase

Resource

FunctionSetAssignmentsBase

Figure B.14—Time


Time object (Resource)

Contains the representation of time, constantly updated.


currentTime attribute (TimeType)

The current time, in the format defined by TimeType.


dstEndTime attribute (TimeType)

Time at which daylight savings ends (dstOffset no longer applied). Result of dstEndRule calculation.


dstOffset attribute (TimeOffsetType)

Daylight savings time offset from local standard time. A typical practice is advancing clocks one hour when daylight savings time is in effect, which would result in a positive dstOffset.


dstStartTime attribute (TimeType)

Time at which daylight savings begins (apply dstOffset). Result of dstStartRule calculation.


localTime attribute (TimeType) [0..1]

Local time: localTime = currentTime + tzOffset (+ dstOffset when in effect).


pollRate attribute (UInt32) [0..1] «XSDattribute»

The default polling rate for this function set (this resource and all resources below), in seconds. If not specified, a default of 900 seconds (15 minutes) is used. It is RECOMMENDED that a client poll the resources of this function set every pollRate seconds.


quality attribute (UInt8)

Metric indicating the quality of the time source from which the service acquired time. Lower (smaller) quality enumeration values are assumed to be more accurate.


3 = Time obtained from external authoritative source such as NTP


4 = Time obtained from level 3 source


5 = Time manually set or obtained from level 4 source


6 = Time obtained from level 5 source


7 = Time intentionally uncoordinated


All other values are reserved for future use.


tzOffset attribute (TimeOffsetType)

Local time zone offset from currentTime. Does not include any daylight savings time offsets. For American time zones, a negative tzOffset SHALL be used (e.g., EST = GMT −5 which is −18 000).


B.2.9 DeviceInformation package


Contains general information about devices.


image

class DeviceInformation


SubscribableResource

AbstractDevice

class DeviceInformation


SubscribableResource

AbstractDevice

class DeviceInformation


SubscribableResource

AbstractDevice

UInt8

PowerSourceType

UInt8

PowerSourceType

UInt8

PowerSourceType

0..1

Link

DeviceInformationLink

0..1

Link

DeviceInformationLink

0..1

Link

DeviceInformationLink

Resource

Resource

Resource

DeviceInformation

DeviceInformation

DeviceInformation

                                  

notes

0 - none

1 - mains

2 - battery

3 - local generation

4 - emergency

5 - unknown

All other values reserved.

                                  

notes

0 - none

1 - mains

2 - battery

3 - local generation

4 - emergency

5 - unknown

All other values reserved.

                                  

notes

0 - none

1 - mains

2 - battery

3 - local generation

4 - emergency

5 - unknown

All other values reserved.

+ functionsImplemented: HexBinary64 [0..1]

+ gpsLocation: GPSLocationType [0..1]

+ lFDI: HexBinary160

+ mfDate: TimeType

+ mfHwVer: String32

+ mfID: PENType

+ mfInfo: String32 [0..1]

+ mfModel: String32

+ mfSerNum: String32

+ primaryPower: PowerSourceType

+ secondaryPower: PowerSourceType

+ swActTime: TimeType

+ swVer: String32

«XSDattribute»

+ pollRate: UInt32 [0..1] = 900

+ functionsImplemented: HexBinary64 [0..1]

+ gpsLocation: GPSLocationType [0..1]

+ lFDI: HexBinary160

+ mfDate: TimeType

+ mfHwVer: String32

+ mfID: PENType

+ mfInfo: String32 [0..1]

+ mfModel: String32

+ mfSerNum: String32

+ primaryPower: PowerSourceType

+ secondaryPower: PowerSourceType

+ swActTime: TimeType

+ swVer: String32

«XSDattribute»

+ pollRate: UInt32 [0..1] = 900

+ functionsImplemented: HexBinary64 [0..1]

+ gpsLocation: GPSLocationType [0..1]

+ lFDI: HexBinary160

+ mfDate: TimeType

+ mfHwVer: String32

+ mfID: PENType

+ mfInfo: String32 [0..1]

+ mfModel: String32

+ mfSerNum: String32

+ primaryPower: PowerSourceType

+ secondaryPower: PowerSourceType

+ swActTime: TimeType

+ swVer: String32

«XSDattribute»

+ pollRate: UInt32 [0..1] = 900

functionsImplemented

Bitmap indicating the function sets used by the device as a client.

0 - Device Capability

1 - Self Device Resource

2 - End Device Resource

3 - Function Set Assignments

4 - Subscription/Notification Mechanism

5 - Response

6 - Time

7 - Device Information

8 - Power Status

9 - Network Status

10 - Log Event

functionsImplemented

Bitmap indicating the function sets used by the device as a client.

0 - Device Capability

1 - Self Device Resource

2 - End Device Resource

3 - Function Set Assignments

4 - Subscription/Notification Mechanism

5 - Response

6 - Time

7 - Device Information

8 - Power Status

9 - Network Status

10 - Log Event

functionsImplemented

Bitmap indicating the function sets used by the device as a client.

0 - Device Capability

1 - Self Device Resource

2 - End Device Resource

3 - Function Set Assignments

4 - Subscription/Notification Mechanism

5 - Response

6 - Time

7 - Device Information

8 - Power Status

9 - Network Status

10 - Log Event

                             11 - Configuration Resource

12 - Software Download

13 - DRLC

14 - Metering

15 - Pricing

                             11 - Configuration Resource

12 - Software Download

13 - DRLC

14 - Metering

15 - Pricing

                             11 - Configuration Resource

12 - Software Download

13 - DRLC

14 - Metering

15 - Pricing

0..1

0..1

0..1

16 - Messaging

17 - Billing

18 - Prepayment

19 - Flow Reservation

20 - DER Control

16 - Messaging

17 - Billing

18 - Prepayment

19 - Flow Reservation

20 - DER Control

16 - Messaging

17 - Billing

18 - Prepayment

19 - Flow Reservation

20 - DER Control

0..1

0..1

0..1

DRLCCapabilities

DRLCCapabilities

DRLCCapabilities

ListLink

SupportedLocaleListLink

ListLink

SupportedLocaleListLink

ListLink

SupportedLocaleListLink

+ averageEnergy: RealEnergy

+ maxDemand: ActivePower

+ optionsImplemented: HexBinary32

+ averageEnergy: RealEnergy

+ maxDemand: ActivePower

+ optionsImplemented: HexBinary32

+ averageEnergy: RealEnergy

+ maxDemand: ActivePower

+ optionsImplemented: HexBinary32

optionsImplemented

Bitmap indicating the DRLC options implemented by the device.

0 - Target reduction (kWh)

1 - Target reduction (kW)

2 - Target reduction (Watts)

3 - Target reduction (Cubic Meters)

4 - Target reduction (Cubic Feet)

5 - Target reduction (US Gallons)

6 - Target reduction (Imperial Gallons)

7 - Target reduction (BTUs)

8 - Target reduction (Liters)

9 - Target reduction (kPA (gauge))

10 - Target reduction (kPA (absolute))

11 - Target reduction (Mega Joule)

12 - Target reduction (Unitless) 13-15 - Reserved

16 - Temperature set point

17 - Temperature offset

18 - Duty cycle

19 - Load adjustment percentage

20 - Appliance load reduction 21-31 - Reserved

optionsImplemented

Bitmap indicating the DRLC options implemented by the device.

0 - Target reduction (kWh)

1 - Target reduction (kW)

2 - Target reduction (Watts)

3 - Target reduction (Cubic Meters)

4 - Target reduction (Cubic Feet)

5 - Target reduction (US Gallons)

6 - Target reduction (Imperial Gallons)

7 - Target reduction (BTUs)

8 - Target reduction (Liters)

9 - Target reduction (kPA (gauge))

10 - Target reduction (kPA (absolute))

11 - Target reduction (Mega Joule)

12 - Target reduction (Unitless) 13-15 - Reserved

16 - Temperature set point

17 - Temperature offset

18 - Duty cycle

19 - Load adjustment percentage

20 - Appliance load reduction 21-31 - Reserved

optionsImplemented

Bitmap indicating the DRLC options implemented by the device.

0 - Target reduction (kWh)

1 - Target reduction (kW)

2 - Target reduction (Watts)

3 - Target reduction (Cubic Meters)

4 - Target reduction (Cubic Feet)

5 - Target reduction (US Gallons)

6 - Target reduction (Imperial Gallons)

7 - Target reduction (BTUs)

8 - Target reduction (Liters)

9 - Target reduction (kPA (gauge))

10 - Target reduction (kPA (absolute))

11 - Target reduction (Mega Joule)

12 - Target reduction (Unitless) 13-15 - Reserved

16 - Temperature set point

17 - Temperature offset

18 - Duty cycle

19 - Load adjustment percentage

20 - Appliance load reduction 21-31 - Reserved

List

List

List

SupportedLocaleList

SupportedLocaleList

SupportedLocaleList

0..*

0..*

0..*

String42

LocaleType

String42

LocaleType

String42

LocaleType

Resource

SupportedLocale

Resource

SupportedLocale

Resource

SupportedLocale

notes

[RFC 4646] identifier of a language-region

notes

[RFC 4646] identifier of a language-region

notes

[RFC 4646] identifier of a language-region

RealEnergy

RealEnergy

RealEnergy

+ locale: LocaleType

+ locale: LocaleType

+ locale: LocaleType

+ multiplier: PowerOfTenMultiplierType

+ value: UInt48

+ multiplier: PowerOfTenMultiplierType

+ value: UInt48

+ multiplier: PowerOfTenMultiplierType

+ value: UInt48

Figure B.15—DeviceInformation DeviceInformation object (Resource)

Contains identification and other information about the device that changes very infrequently, typically only when updates are applied, if ever.


functionsImplemented attribute (HexBinary64) [0..1]

Bitmap indicating the function sets used by the device as a client.


0 = Device capability


1 = SelfDevice resource


2 = EndDevice resource


3 = Function set assignments


4 = Subscription/Notification mechanism


5 = Response


6 = Time


7 = Device information


8 = Power status


9 = Network status


10 = Log event


11 = Configuration resource


12 = Software download


13 = DRLC


14 = Metering


15 = Pricing


16 = Messaging


17 = Billing


18 = Prepayment


19 = Flow reservation


20 = DER control


gpsLocation attribute (GPSLocationType) [0..1]

GPS location of this device.


lFDI attribute (HexBinary160)

Long form device identifier. See Clause 6 (security) for full details.


mfDate attribute (TimeType)

Date/time of manufacture.


mfHwVer attribute (String32)

Manufacturer hardware version.


mfID attribute (PENType)

The manufacturer’s IANA Enterprise Number.


mfInfo attribute (String32) [0..1]

Manufacturer dependent information related to the manufacture of this device.


mfModel attribute (String32)

Manufacturer’s model number.


mfSerNum attribute (String32)

Manufacturer assigned serial number.


pollRate attribute (UInt32) [0..1] «XSDattribute»

The default polling rate for this function set (this resource and all resources below), in seconds. If not specified, a default of 900 seconds (15 minutes) is used. It is RECOMMENDED that a client poll the resources of this function set every pollRate seconds.


primaryPower attribute (PowerSourceType)

Primary source of power.


secondaryPower attribute (PowerSourceType)

Secondary source of power.


swActTime attribute (TimeType)

Activation date/time of currently running software.


swVer attribute (String32)

Currently running software version.


DRLCCapabilities object ()

Contains information about the static capabilities of the device, to allow service providers to know what types of functions are supported, what the normal operating ranges and limits are, and other similar information, in order to provide better suggestions of applicable programs to receive the maximum benefit.


averageEnergy attribute (RealEnergy)

The average hourly energy usage when in normal operating mode.


maxDemand attribute (ActivePower)

The maximum demand rating of this end device.


optionsImplemented attribute (HexBinary32)

Bitmap indicating the DRLC options implemented by the device.


0 = Target reduction (kWh)


1 = Target reduction (kW)


2 = Target reduction (watts)


3 = Target reduction (cubic meters)


4 = Target reduction (cubic feet)


5 = Target reduction (U.S. gallons)


6 = Target reduction (Imperial gallons)


7 = Target reduction (BTUs)


8 = Target reduction (liters)


9 = Target reduction (kPA [gauge])


10 = Target reduction (kPA [absolute])


11 = Target reduction (megajoule)


12 = Target reduction (unitless)


13 to 15 = Reserved


16 = Temperature set point


17 = Temperature offset


18 = Duty cycle


19 = Load adjustment percentage


20 = Appliance load reduction


21 to 31 = Reserved


SupportedLocale object (Resource)

Specifies a locale that is supported.


locale attribute (LocaleType)

The code for a locale that is supported.


SupportedLocaleList object (List)

A List element to hold SupportedLocale objects.


B.2.10 PowerStatus package


image

class PowerStatus

SubscribableResource

AbstractDevice

class PowerStatus

SubscribableResource

AbstractDevice

class PowerStatus

SubscribableResource

AbstractDevice

0..1

0..1

0..1

Link

Link

Link

PowerStatusLink

PowerStatusLink

PowerStatusLink

Resource

Resource

Resource

PowerStatus

PowerStatus

PowerStatus

UInt8

PowerSourceType

UInt8

PowerSourceType

UInt8

PowerSourceType

+

+

+

+

+

+

+

+

+

+

+

+

+

+

+

+

+

+

+

+

+

batteryStatus: UInt8

changedTime: TimeType currentPowerSource: PowerSourceType

estimatedChargeRemaining: PerCent [0..1] estimatedTimeRemaining: UInt32 [0..1]

sessionTimeOnBattery: UInt32 [0..1] totalTimeOnBattery: UInt32 [0..1]

«XSDattribute»

batteryStatus: UInt8

changedTime: TimeType currentPowerSource: PowerSourceType

estimatedChargeRemaining: PerCent [0..1] estimatedTimeRemaining: UInt32 [0..1]

sessionTimeOnBattery: UInt32 [0..1] totalTimeOnBattery: UInt32 [0..1]

«XSDattribute»

batteryStatus: UInt8

changedTime: TimeType currentPowerSource: PowerSourceType

estimatedChargeRemaining: PerCent [0..1] estimatedTimeRemaining: UInt32 [0..1]

sessionTimeOnBattery: UInt32 [0..1] totalTimeOnBattery: UInt32 [0..1]

«XSDattribute»

PEVInfo

PEVInfo

PEVInfo

notes

notes

notes

+ pollRate: UInt32 [0..1] = 900

+ pollRate: UInt32 [0..1] = 900

+ pollRate: UInt32 [0..1] = 900

+

+

+

0..1 +

+

+

+

+

+

+

0..1 +

+

+

+

+

+

+

0..1 +

+

+

+

chargingPowerNow: ActivePower

energyRequestNow: RealEnergy maxForwardPower: ActivePower minimumChargingDuration: UInt32 targetStateOfCharge: PerCent timeChargeIsNeeded: TimeType timeChargingStatusPEV: TimeType

chargingPowerNow: ActivePower

energyRequestNow: RealEnergy maxForwardPower: ActivePower minimumChargingDuration: UInt32 targetStateOfCharge: PerCent timeChargeIsNeeded: TimeType timeChargingStatusPEV: TimeType

chargingPowerNow: ActivePower

energyRequestNow: RealEnergy maxForwardPower: ActivePower minimumChargingDuration: UInt32 targetStateOfCharge: PerCent timeChargeIsNeeded: TimeType timeChargingStatusPEV: TimeType

0 - none

1 - mains

2 - battery

3 - local generation

4 - emergency

5 - unknown

All other values reserved.

0 - none

1 - mains

2 - battery

3 - local generation

4 - emergency

5 - unknown

All other values reserved.

0 - none

1 - mains

2 - battery

3 - local generation

4 - emergency

5 - unknown

All other values reserved.

Figure B.16—PowerStatus


PowerStatus object (Resource)

Contains the status of the device’s power sources.


batteryStatus attribute (UInt8)

Battery system status:


0 = Unknown


1 = Normal (more than LowChargeThreshold remaining)


2 = Low (less than LowChargeThreshold remaining)


3 = Depleted (0% charge remaining)


4 = Not applicable (mains powered only)


changedTime attribute (TimeType)

The time at which the reported values were recorded.


currentPowerSource attribute (PowerSourceType)

This value will be fixed for devices powered by a single source. This value may change for devices able to transition between multiple power sources (mains to battery backup, etc.).


estimatedChargeRemaining attribute (PerCent) [0..1]

Estimate of remaining battery charge as a percent of full charge.


estimatedTimeRemaining attribute (UInt32) [0..1]

Estimated time (in seconds) to total battery charge depletion (undercurrent load).


pollRate attribute (UInt32) [0..1] «XSDattribute»

The default polling rate for this function set (this resource and all resources below), in seconds. If not specified, a default of 900 seconds (15 minutes) is used. It is RECOMMENDED that a client poll the resources of this function set every pollRate seconds.


sessionTimeOnBattery attribute (UInt32) [0..1]

If the device has a battery, this is the time since the device last switched to battery power, or the time since the device was restarted, whichever is less, in seconds.


totalTimeOnBattery attribute (UInt32) [0..1]

If the device has a battery, this is the total time the device has been on battery power, in seconds. It may be reset when the battery is replaced.


PowerSourceType object (UInt8)

0 = None


1 = Mains


2 = Battery


3 = Local generation


4 = Emergency


5 = Unknown


All other values reserved.


PEVInfo object ()

Contains attributes that can be exposed by PEVs and other devices that have charging requirements.


chargingPowerNow attribute (ActivePower)

This is the actual power flow in or out of the charger or inverter. This is calculated by the vehicle based on actual measurements. This number is positive for charging.


energyRequestNow attribute (RealEnergy)

This is the amount of energy that must be transferred from the grid to EVSE and PEV to achieve the target state of charge allowing for charger efficiency and any vehicle and EVSE parasitic loads. This is calculated


by the vehicle and changes throughout the connection as forward or reverse power flow change the battery state of charge. This number is positive for charging.


maxForwardPower attribute (ActivePower)

This is the maximum power transfer capability that could be used for charging the PEV to perform the requested energy transfer. It is the lower of the vehicle or EVSE physical power limitations. It is not based on economic considerations. The vehicle may draw less power than this value based on its charging cycle. The vehicle defines this parameter. This number is positive for charging power flow.


minimumChargingDuration attribute (UInt32)

This is computed by the PEV based on the charging profile to complete the energy transfer if the maximum power is authorized. The value will never be smaller than the ratio of the energy request to the power request because the charging profile may not allow the maximum power to be used throughout the transfer. This is a critical parameter for determining whether any slack time exists in the charging cycle between the current time and the Time Charge Is Needed (TCIN).


targetStateOfCharge attribute (PerCent)

This is the target state of charge that is to be achieved during charging before the time of departure (TCIN). The default value is 100%. The value cannot be set to a value less than the actual state of charge.


timeChargeIsNeeded attribute (TimeType)

Time Charge Is Needed (TCIN) is the time that the PEV is expected to depart. The value is manually entered using controls and displays in the vehicle, or on the EVSE, or using a mobile device. It is authenticated and saved by the PEV. This value may be updated during a charging session.


timeChargingStatusPEV attribute (TimeType)

This is the time that the parameters are updated, except for changes to TCIN.


B.2.11 NetworkStatus package


image

class NetworkStatus

SubscribableResource

AbstractDevice


0..1

ListLink

IPInterfaceListLink

class NetworkStatus

SubscribableResource

AbstractDevice


0..1

ListLink

IPInterfaceListLink

class NetworkStatus

SubscribableResource

AbstractDevice


0..1

ListLink

IPInterfaceListLink

ListLink

ListLink

ListLink

List

List

List

IPAddrListLink

IPAddrListLink

IPAddrListLink

ListLink

RPLInstanceListLink

ListLink

RPLInstanceListLink

ListLink

RPLInstanceListLink

ListLink

RPLSourceRoutesListLink

ListLink

RPLSourceRoutesListLink

ListLink

RPLSourceRoutesListLink

IPInterfaceList


«XSDattribute»

+ pollRate: UInt32 [0..1] = 900

IPInterfaceList


«XSDattribute»

+ pollRate: UInt32 [0..1] = 900

IPInterfaceList


«XSDattribute»

+ pollRate: UInt32 [0..1] = 900

List

List

List

IPAddrList

IPAddrList

IPAddrList

List

RPLInstanceList

List

RPLInstanceList

List

RPLInstanceList

List

RPLSourceRoutesList

List

RPLSourceRoutesList

List

RPLSourceRoutesList

0..*

0..*

0..*

0..*

0..*

0..*

0..*

0..*

0..*

0..*

0..*

0..*

Resource Resource Resource Resource

IPInterface IPAddr RPLInstance RPLSourceRoutes

Resource Resource Resource Resource

IPInterface IPAddr RPLInstance RPLSourceRoutes

Resource Resource Resource Resource

IPInterface IPAddr RPLInstance RPLSourceRoutes

+ ifDescr: String192 [0..1]

+ ifHighSpeed: UInt32 [0..1]

+ ifInBroadcastPkts: UInt32 [0..1]

+ ifIndex: UInt32 [0..1]

+ ifInDiscards: UInt32 [0..1]

+ ifInErrors: UInt32 [0..1]

+ ifInMulticastPkts: UInt32 [0..1]

+ ifInOctets: UInt32 [0..1]

+ ifInUcastPkts: UInt32 [0..1]

+ ifInUnknownProtos: UInt32 [0..1]

+ ifMtu: UInt32 [0..1]

+ ifName: String16 [0..1]

+ ifOperStatus: UInt8 [0..1]

+ ifOutBroadcastPkts: UInt32 [0..1]

+ ifOutDiscards: UInt32 [0..1]

+ ifOutErrors: UInt32 [0..1]

+ ifOutMulticastPkts: UInt32 [0..1]

+ ifOutOctets: UInt32 [0..1]

+ ifOutUcastPkts: UInt32 [0..1]

+ ifPromiscuousMode: boolean [0..1]

+ ifSpeed: UInt32 [0..1]

+ ifType: UInt16 [0..1]

+ lastResetTime: Int64 [0..1]

+ lastUpdatedTime: Int64 [0..1]

+ ifDescr: String192 [0..1]

+ ifHighSpeed: UInt32 [0..1]

+ ifInBroadcastPkts: UInt32 [0..1]

+ ifIndex: UInt32 [0..1]

+ ifInDiscards: UInt32 [0..1]

+ ifInErrors: UInt32 [0..1]

+ ifInMulticastPkts: UInt32 [0..1]

+ ifInOctets: UInt32 [0..1]

+ ifInUcastPkts: UInt32 [0..1]

+ ifInUnknownProtos: UInt32 [0..1]

+ ifMtu: UInt32 [0..1]

+ ifName: String16 [0..1]

+ ifOperStatus: UInt8 [0..1]

+ ifOutBroadcastPkts: UInt32 [0..1]

+ ifOutDiscards: UInt32 [0..1]

+ ifOutErrors: UInt32 [0..1]

+ ifOutMulticastPkts: UInt32 [0..1]

+ ifOutOctets: UInt32 [0..1]

+ ifOutUcastPkts: UInt32 [0..1]

+ ifPromiscuousMode: boolean [0..1]

+ ifSpeed: UInt32 [0..1]

+ ifType: UInt16 [0..1]

+ lastResetTime: Int64 [0..1]

+ lastUpdatedTime: Int64 [0..1]

+ ifDescr: String192 [0..1]

+ ifHighSpeed: UInt32 [0..1]

+ ifInBroadcastPkts: UInt32 [0..1]

+ ifIndex: UInt32 [0..1]

+ ifInDiscards: UInt32 [0..1]

+ ifInErrors: UInt32 [0..1]

+ ifInMulticastPkts: UInt32 [0..1]

+ ifInOctets: UInt32 [0..1]

+ ifInUcastPkts: UInt32 [0..1]

+ ifInUnknownProtos: UInt32 [0..1]

+ ifMtu: UInt32 [0..1]

+ ifName: String16 [0..1]

+ ifOperStatus: UInt8 [0..1]

+ ifOutBroadcastPkts: UInt32 [0..1]

+ ifOutDiscards: UInt32 [0..1]

+ ifOutErrors: UInt32 [0..1]

+ ifOutMulticastPkts: UInt32 [0..1]

+ ifOutOctets: UInt32 [0..1]

+ ifOutUcastPkts: UInt32 [0..1]

+ ifPromiscuousMode: boolean [0..1]

+ ifSpeed: UInt32 [0..1]

+ ifType: UInt16 [0..1]

+ lastResetTime: Int64 [0..1]

+ lastUpdatedTime: Int64 [0..1]

+ address: HexBinary128

+ address: HexBinary128

+ address: HexBinary128

0..1

0..1

0..1

+ DODAGid: UInt8

+ DODAGroot: boolean

+ flags: UInt8

+ groundedFlag: boolean 0..1

+ MOP: UInt8

+ PRF: UInt8

+ rank: UInt16

+ RPLInstanceID: UInt8

+ versionNumber: UInt8

+ DODAGid: UInt8

+ DODAGroot: boolean

+ flags: UInt8

+ groundedFlag: boolean 0..1

+ MOP: UInt8

+ PRF: UInt8

+ rank: UInt16

+ RPLInstanceID: UInt8

+ versionNumber: UInt8

+ DODAGid: UInt8

+ DODAGroot: boolean

+ flags: UInt8

+ groundedFlag: boolean 0..1

+ MOP: UInt8

+ PRF: UInt8

+ rank: UInt16

+ RPLInstanceID: UInt8

+ versionNumber: UInt8

+ DestAddress: HexBinary128

+ SourceRoute: HexBinary128

+ DestAddress: HexBinary128

+ SourceRoute: HexBinary128

+ DestAddress: HexBinary128

+ SourceRoute: HexBinary128

0..1

0..1

0..1

0..1

0..1

0..1

ListLink

LLInterfaceListLink

ListLink

LLInterfaceListLink

ListLink

LLInterfaceListLink

List

LLInterfaceList


0..*

List

LLInterfaceList


0..*

List

LLInterfaceList


0..*

Resource

Resource

Resource

LLInterface

LLInterface

LLInterface

+ CRCerrors: UInt32

+ EUI64: HexBinary64

+ linkLayerType: UInt8

+ LLAckNotRx: UInt32 [0..1]

+ LLCSMAFail: UInt32 [0..1]

+ LLFramesDropRx: UInt32 [0..1]

+ LLFramesDropTx: UInt32 [0..1]

+ LLFramesRx: UInt32 [0..1]

+ LLFramesTx: UInt32 [0..1]

+ LLMediaAccessFail: UInt32 [0..1]

+ LLOctetsRx: UInt32 [0..1]

+ LLOctetsTx: UInt32 [0..1]

+ LLRetryCount: UInt32 [0..1]

+ LLSecurityErrorRx: UInt32 [0..1]

+ CRCerrors: UInt32

+ EUI64: HexBinary64

+ linkLayerType: UInt8

+ LLAckNotRx: UInt32 [0..1]

+ LLCSMAFail: UInt32 [0..1]

+ LLFramesDropRx: UInt32 [0..1]

+ LLFramesDropTx: UInt32 [0..1]

+ LLFramesRx: UInt32 [0..1]

+ LLFramesTx: UInt32 [0..1]

+ LLMediaAccessFail: UInt32 [0..1]

+ LLOctetsRx: UInt32 [0..1]

+ LLOctetsTx: UInt32 [0..1]

+ LLRetryCount: UInt32 [0..1]

+ LLSecurityErrorRx: UInt32 [0..1]

+ CRCerrors: UInt32

+ EUI64: HexBinary64

+ linkLayerType: UInt8

+ LLAckNotRx: UInt32 [0..1]

+ LLCSMAFail: UInt32 [0..1]

+ LLFramesDropRx: UInt32 [0..1]

+ LLFramesDropTx: UInt32 [0..1]

+ LLFramesRx: UInt32 [0..1]

+ LLFramesTx: UInt32 [0..1]

+ LLMediaAccessFail: UInt32 [0..1]

+ LLOctetsRx: UInt32 [0..1]

+ LLOctetsTx: UInt32 [0..1]

+ LLRetryCount: UInt32 [0..1]

+ LLSecurityErrorRx: UInt32 [0..1]

linkLayerType

Specifies the type of link layer interface associated with the IPInterface. Values are below.

0 = Unspecified

1 = IEEE 802.3 (Ethernet)

2 = IEEE 802.11 (WLAN)

3 = IEEE 802.15 (PAN)

4 = IEEE 1901 (PLC)

All other values reserved.

linkLayerType

Specifies the type of link layer interface associated with the IPInterface. Values are below.

0 = Unspecified

1 = IEEE 802.3 (Ethernet)

2 = IEEE 802.11 (WLAN)

3 = IEEE 802.15 (PAN)

4 = IEEE 1901 (PLC)

All other values reserved.

linkLayerType

Specifies the type of link layer interface associated with the IPInterface. Values are below.

0 = Unspecified

1 = IEEE 802.3 (Ethernet)

2 = IEEE 802.11 (WLAN)

3 = IEEE 802.15 (PAN)

4 = IEEE 1901 (PLC)

All other values reserved.

IEEE_802_15_4

+ capabilityInfo: HexBinary8

0..1

IEEE_802_15_4

+ capabilityInfo: HexBinary8

0..1

IEEE_802_15_4

+ capabilityInfo: HexBinary8

0..1

ListLink

NeighborListLink

ListLink

NeighborListLink

ListLink

NeighborListLink

+ shortAddress: UInt16

+ shortAddress: UInt16

+ shortAddress: UInt16

0..1

0..1

0..1

List

NeighborList

List

NeighborList

List

NeighborList

0..*

0..*

0..*

loWPAN

loWPAN

loWPAN

Resource

Resource

Resource

0..1 + octetsRx: UInt32 [0..1]

+ octetsTx: UInt32 [0..1]

+ packetsRx: UInt32

+ packetsTx: UInt32

+ rxFragError: UInt32

0..1 + octetsRx: UInt32 [0..1]

+ octetsTx: UInt32 [0..1]

+ packetsRx: UInt32

+ packetsTx: UInt32

+ rxFragError: UInt32

0..1 + octetsRx: UInt32 [0..1]

+ octetsTx: UInt32 [0..1]

+ packetsRx: UInt32

+ packetsTx: UInt32

+ rxFragError: UInt32

Neighbor

Neighbor

Neighbor

+ isChild: boolean

+ linkQuality: UInt8

+ shortAddress: UInt16

+ isChild: boolean

+ linkQuality: UInt8

+ shortAddress: UInt16

+ isChild: boolean

+ linkQuality: UInt8

+ shortAddress: UInt16

Figure B.17—NetworkStatus


IEEE_802_15_4 object ()

Contains 802.15.4 link layer specific attributes.


capabilityInfo attribute (HexBinary8)

As defined by IEEE Std 802.15.4.


shortAddress attribute (UInt16)

As defined by IEEE Std 802.15.4.


IPAddr object (Resource)

An Internet Protocol (IP) address object.


address attribute (HexBinary128)

An IP address value.


IPAddrList object (List)

List of IPAddr instances.


IPInterface object (Resource)

Specific IPInterface resource. This resource may be thought of as network status information for a specific network (IP) layer interface.


ifDescr attribute (String192) [0..1]

Use rules from IETF RFC 2863.


ifHighSpeed attribute (UInt32) [0..1]

Use rules from IETF RFC 2863.


ifInBroadcastPkts attribute (UInt32) [0..1]

Use rules from IETF RFC 2863.


ifIndex attribute (UInt32) [0..1]

Use rules from IETF RFC 2863.


ifInDiscards attribute (UInt32) [0..1]

Use rules from IETF RFC 2863. Can be thought of as Input Datagrams Discarded.


ifInErrors attribute (UInt32) [0..1]

Use rules from IETF RFC 2863.


ifInMulticastPkts attribute (UInt32) [0..1]

Use rules from IETF RFC 2863. Can be thought of as Multicast Datagrams Received.


ifInOctets attribute (UInt32) [0..1]

Use rules from IETF RFC 2863. Can be thought of as Bytes Received.


ifInUcastPkts attribute (UInt32) [0..1]

Use rules from IETF RFC 2863. Can be thought of as Datagrams Received.


ifInUnknownProtos attribute (UInt32) [0..1]

Use rules from IETF RFC 2863. Can be thought of as Datagrams with Unknown Protocol Received.


ifMtu attribute (UInt32) [0..1]

Use rules from IETF RFC 2863.


ifName attribute (String16) [0..1]

Use rules from IETF RFC 2863.


ifOperStatus attribute (UInt8) [0..1]

Use rules and assignments from IETF RFC 2863.


ifOutBroadcastPkts attribute (UInt32) [0..1]

Use rules from IETF RFC 2863. Can be thought of as Broadcast Datagrams Sent.


ifOutDiscards attribute (UInt32) [0..1]

Use rules from IETF RFC 2863. Can be thought of as Output Datagrams Discarded.


ifOutErrors attribute (UInt32) [0..1]

Use rules from IETF RFC 2863.


ifOutMulticastPkts attribute (UInt32) [0..1]

Use rules from IETF RFC 2863. Can be thought of as Multicast Datagrams Sent.


ifOutOctets attribute (UInt32) [0..1]

Use rules from IETF RFC 2863. Can be thought of as Bytes Sent.


ifOutUcastPkts attribute (UInt32) [0..1]

Use rules from IETF RFC 2863. Can be thought of as Datagrams Sent.


ifPromiscuousMode attribute (boolean) [0..1]

Use rules from IETF RFC 2863.


ifSpeed attribute (UInt32) [0..1]

Use rules from IETF RFC 2863.


ifType attribute (UInt16) [0..1]

Use rules and assignments from IETF RFC 2863.


lastResetTime attribute (Int64) [0..1]

Similar to ifLastChange in IETF RFC 2863.


lastUpdatedTime attribute (Int64) [0..1]

The date/time of the reported status.

IPInterfaceList object (List)

List of IPInterface instances.


pollRate attribute (UInt32) [0..1] «XSDattribute»

The default polling rate for this function set (this resource and all resources below), in seconds. If not specified, a default of 900 seconds (15 minutes) is used. It is RECOMMENDED that a client poll the resources of this function set every pollRate seconds.

LLInterface object (Resource)

A link-layer interface object.


CRCerrors attribute (UInt32)

Contains the number of CRC errors since reset.


EUI64 attribute (HexBinary64)

Contains the EUI-64 of the link layer interface. 48-bit MAC addresses SHALL be changed into an EUI-64 using the method defined in IETF RFC 4291, Appendix A. (The method is to insert “0xFFFE” as described in the reference.)


linkLayerType attribute (UInt8)

Specifies the type of link layer interface associated with the IPInterface. Values are below.

0 = Unspecified

1 = IEEE 802.3 (Ethernet)

2 = IEEE 802.11 (WLAN)

3 = IEEE 802.15 (PAN)

4 = IEEE 1901 (PLC)

All other values reserved.


LLAckNotRx attribute (UInt32) [0..1]

Number of times an ACK was not received for a frame transmitted (when ACK was requested).


LLCSMAFail attribute (UInt32) [0..1]

Number of times CSMA failed.


LLFramesDropRx attribute (UInt32) [0..1]

Number of dropped receive frames.


LLFramesDropTx attribute (UInt32) [0..1]

Number of dropped transmit frames.


LLFramesRx attribute (UInt32) [0..1]

Number of link layer frames received.


LLFramesTx attribute (UInt32) [0..1]

Number of link layer frames transmitted.


LLMediaAccessFail attribute (UInt32) [0..1]

Number of times access to media failed.


LLOctetsRx attribute (UInt32) [0..1]

Number of bytes received.


LLOctetsTx attribute (UInt32) [0..1]

Number of bytes transmitted.


LLRetryCount attribute (UInt32) [0..1]

Number of MAC transmit retries.


LLSecurityErrorRx attribute (UInt32) [0..1]

Number of receive security errors.


LLInterfaceList Object (List)

List of LLInterface instances.


loWPAN Object ()

Contains information specific to 6LoWPAN.


octetsRx attribute (UInt32) [0..1]

Number of bytes received.


octetsTx attribute (UInt32) [0..1]

Number of bytes transmitted.


packetsRx attribute (UInt32)

Number of packets received.


packetsTx attribute (UInt32)

Number of packets transmitted.


rxFragError attribute (UInt32)

Number of errors receiving fragments.


Neighbor object (Resource)

Contains 802.15.4 link layer specific attributes.


isChild attribute (boolean)

True if the neighbor is a child.


linkQuality attribute (UInt8)

The quality of the link, as defined by IEEE Std 802.15.4.


shortAddress attribute (UInt16)

As defined by IEEE Std 802.15.4.


NeighborList object (List)

List of 802.15.4 neighbors.


RPLInstance object (Resource)

Specific RPLInstance resource. This resource may be thought of as network status information for a specific RPL instance associated with IPInterface.


DODAGid attribute (UInt8)

See IETF RFC 6550.


DODAGroot attribute (boolean)

See IETF RFC 6550.


flags attribute (UInt8)

See IETF RFC 6550.


groundedFlag attribute (boolean)

See IETF RFC 6550.


MOP attribute (UInt8)

See IETF RFC 6550.


PRF attribute (UInt8)

See IETF RFC 6550.


rank attribute (UInt16)

See IETF RFC 6550.


RPLInstanceID attribute (UInt8)

See IETF RFC 6550.


versionNumber attribute (UInt8)

See IETF RFC 6550.


RPLInstanceList object (List)

List of RPLInstances associated with the IPInterface.


RPLSourceRoutes object (Resource)

A RPL source routes object.


DestAddress attribute (HexBinary128)

See IETF RFC 6554.


SourceRoute attribute (HexBinary128)

See IETF RFC 6554.


RPLSourceRoutesList object (List)

List of RPL source routes if the hosting device is the DODAGroot.


B.2.12 LogEvents package


SubscribableResource

AbstractDevice



0..1

ListLink

LogEventListLink


SubscribableList

LogEventList

«XSDattribute»

+ pollRate: UInt32 [0..1] = 900


0..*

Resource

LogEvent

+ createdDateTime: TimeType

+ details: String32 [0..1]

+ extendedData: UInt32 [0..1]

+ functionSet: UInt8

+ logEventCode: UInt8

+ logEventID: UInt16

+ logEventPEN: PENType

+ profileID: UInt8


image

class LogEvents

class LogEvents

class LogEvents

Figure B.18—LogEvents


LogEvent object (Resource)

A time-stamped instance of a significant event detected by the device.


createdDateTime attribute (TimeType)

The date and time that the event occurred.


details attribute (String32) [0..1]

Human-readable text that MAY be used to transmit additional details about the event. A host MAY remove this field when received.


extendedData attribute (UInt32) [0..1]

May be used to transmit additional details about the event.


functionSet attribute (UInt8)

If the profileID indicates this is IEEE 2030.5, the functionSet is defined by IEEE Std 2030.5 and SHALL be one of the values from the list below (IEEE 2030.5 function set identifiers). If the profileID is anything else, the functionSet is defined by the identified profile.


0 = General (not specific to a function set)


1 = Publish and subscribe


2 = End device


3 = Function set assignment


4 = Response


5 = Demand response and load control


6 = Metering


7 = Pricing


8 = Messaging


9 = Billing


10 = Prepayment


11 = Distributed energy resources


12 = Time


13 = Software download


14 = Device information


15 = Power status


16 = Network status


17 = Log event list


18 = Configuration


19 = Security


All other values are reserved.


logEventCode attribute (UInt8)

An 8-bit unsigned integer. logEventCodes are scoped to a profile and a function set. If the profile is IEEE 2030.5, the logEventCode is defined by IEEE Std 2030.5 within one of the function sets of IEEE Std 2030.5. If the profile is anything else, the logEventCode is defined by the specified profile.


logEventID attribute (UInt16)

This 16-bit value, combined with createdDateTime, profileID, and logEventPEN, should provide a reasonable level of uniqueness.


logEventPEN attribute (PENType)

The Private Enterprise Number (PEN) of the entity that defined the profileID, functionSet, and logEventCode of the logEvent. IEEE Std 2030.5-assigned logEventCodes SHALL use the IEEE 2030.5 PEN. Combinations of profileID, functionSet, and logEventCode SHALL have unique meaning within a logEventPEN and are defined by the owner of the PEN.


profileID attribute (UInt8)

The profileID identifies which profile (HA, BA, SE, etc.) defines the following event information.


0 = Not profile specific


1 = Vendor defined


2 = IEEE 2030.5


3 = Home automation


4 = Building automation


All other values are reserved.


LogEventList object (SubscribableList)

A List element to hold LogEvent objects.


pollRate attribute (UInt32) [0..1] «XSDattribute»

The default polling rate for this function set (this resource and all resources below), in seconds. If not specified, a default of 900 seconds (15 minutes) is used. It is RECOMMENDED that a client poll the resources of this function set every pollRate seconds.


B.2.13 Configuration package


image

class Configuration

SubscribableResource

AbstractDevice


0..1

Link

ConfigurationLink


SubscribableResource

Configuration

class Configuration

SubscribableResource

AbstractDevice


0..1

Link

ConfigurationLink


SubscribableResource

Configuration

class Configuration

SubscribableResource

AbstractDevice


0..1

Link

ConfigurationLink


SubscribableResource

Configuration

ListLink

ListLink

ListLink

+ currentLocale: LocaleType

+ userDeviceName: String32

«XSDattribute»

+ currentLocale: LocaleType

+ userDeviceName: String32

«XSDattribute»

+ currentLocale: LocaleType

+ userDeviceName: String32

«XSDattribute»

0..1

0..1

0..1

PriceResponseCfgListLink

PriceResponseCfgListLink

PriceResponseCfgListLink

List

List

List

+ pollRate: UInt32 [0..1] = 900

+ pollRate: UInt32 [0..1] = 900

+ pollRate: UInt32 [0..1] = 900

PriceResponseCfgList


0..*

PriceResponseCfgList


0..*

PriceResponseCfgList


0..*

0..1

0..1

0..1

Resource

PriceResponseCfg

+ consumeThreshold: Int32

+ maxReductionThreshold: Int32

Resource

PriceResponseCfg

+ consumeThreshold: Int32

+ maxReductionThreshold: Int32

Resource

PriceResponseCfg

+ consumeThreshold: Int32

+ maxReductionThreshold: Int32

TimeConfiguration

TimeConfiguration

TimeConfiguration

PowerConfiguration

PowerConfiguration

PowerConfiguration

1

1

1

+

+

+

+

+

+

+

+

+

+

+

+

dstEndRule: DstRuleType

dstOffset: TimeOffsetType dstStartRule: DstRuleType tzOffset: TimeOffsetType

dstEndRule: DstRuleType

dstOffset: TimeOffsetType dstStartRule: DstRuleType tzOffset: TimeOffsetType

dstEndRule: DstRuleType

dstOffset: TimeOffsetType dstStartRule: DstRuleType tzOffset: TimeOffsetType

+ batteryInstallTime: TimeType [0..1]

+ lowChargeThreshold: UInt32 [0..1]

+ batteryInstallTime: TimeType [0..1]

+ lowChargeThreshold: UInt32 [0..1]

+ batteryInstallTime: TimeType [0..1]

+ lowChargeThreshold: UInt32 [0..1]

Link

RateComponentLink

Link

RateComponentLink

Link

RateComponentLink

Figure B.19—Configuration Configuration object (SubscribableResource)

This resource contains various settings to control the operation of the device.


currentLocale attribute (LocaleType)

IETF RFC 4646 identifier of the language-region currently in use.


pollRate attribute (UInt32) [0..1] «XSDattribute»

The default polling rate for this function set (this resource and all resources below), in seconds. If not specified, a default of 900 seconds (15 minutes) is used. It is RECOMMENDED that a client poll the resources of this function set every pollRate seconds.


userDeviceName attribute (String32)

User assigned, convenience name used for network browsing displays, etc. For example, “My Thermostat.”


PowerConfiguration object ()

Contains configuration related to the device’s power sources.


batteryInstallTime attribute (TimeType) [0..1]

Time/Date at which battery was installed.


lowChargeThreshold attribute (UInt32) [0..1]

In context of the PowerStatus resource, this is the value of EstimatedTimeRemaining below which BatteryStatus “low” is indicated and the PS_LOW_BATTERY is raised.


PriceResponseCfg object (Resource)

Configuration data that specifies how price-responsive devices SHOULD respond to price changes while acting upon a given RateComponent.


consumeThreshold attribute (Int32)

Price-responsive clients acting upon the associated RateComponent SHOULD consume the associated commodity while the price is less than this threshold.


maxReductionThreshold attribute (Int32)

Price-responsive clients acting upon the associated RateComponent SHOULD reduce consumption to the maximum extent possible while the price is greater than this threshold.


PriceResponseCfgList object (List)

A List element to hold PriceResponseCfg objects.


TimeConfiguration object ()

Contains attributes related to the configuration of the time service.


dstEndRule attribute (DstRuleType)

Rule to calculate end of daylight savings time in the current year. Result of dstEndRule must be greater than result of dstStartRule.


dstOffset attribute (TimeOffsetType)

Daylight savings time offset from local standard time.


dstStartRule attribute (DstRuleType)

Rule to calculate start of daylight savings time in the current year. Result of dstEndRule must be greater than result of dstStartRule.


tzOffset attribute (TimeOffsetType)

Local time zone offset from UTCTime. Does not include any daylight savings time offsets.


B.2.14 SoftwareDownload package


image

class Files


Resource

FunctionSetAssignmentsBase

class Files


Resource

FunctionSetAssignmentsBase

class Files


Resource

FunctionSetAssignmentsBase

SubscribableResource

AbstractDevice

SubscribableResource

AbstractDevice

SubscribableResource

AbstractDevice

0..1 0..1

ListLink Link

FileListLink FileStatusLink

0..1 0..1

ListLink Link

FileListLink FileStatusLink

0..1 0..1

ListLink Link

FileListLink FileStatusLink

List

List

List

Resource

Resource

Resource

FileList

FileList

FileList

type

A value indicating the type of the file. MUST be one of the following values: 00 = Software Image

01 = Security Credential 02 = Configuration

03 = Log

04–7FFF = reserved

8000-FFFF = Manufacturer defined

type

A value indicating the type of the file. MUST be one of the following values: 00 = Software Image

01 = Security Credential 02 = Configuration

03 = Log

04–7FFF = reserved

8000-FFFF = Manufacturer defined

type

A value indicating the type of the file. MUST be one of the following values: 00 = Software Image

01 = Security Credential 02 = Configuration

03 = Log

04–7FFF = reserved

8000-FFFF = Manufacturer defined

FileStatus

FileStatus

FileStatus

Link

Link

Link

«XSDattribute»

+ pollRate: UInt32 [0..1] = 900

«XSDattribute»

+ pollRate: UInt32 [0..1] = 900

«XSDattribute»

+ pollRate: UInt32 [0..1] = 900

+ activateTime: TimeType [0..1]

+ loadPercent: UInt8

+ nextRequestAttempt: TimeType

+ request503Count: UInt16

+ requestFailCount: UInt16

+ status: UInt8

+ statusTime: TimeType

«XSDattribute»

+ pollRate: UInt32 [0..1] = 900

+ activateTime: TimeType [0..1]

+ loadPercent: UInt8

+ nextRequestAttempt: TimeType

+ request503Count: UInt16

+ requestFailCount: UInt16

+ status: UInt8

+ statusTime: TimeType

«XSDattribute»

+ pollRate: UInt32 [0..1] = 900

+ activateTime: TimeType [0..1]

+ loadPercent: UInt8

+ nextRequestAttempt: TimeType

+ request503Count: UInt16

+ requestFailCount: UInt16

+ status: UInt8

+ statusTime: TimeType

«XSDattribute»

+ pollRate: UInt32 [0..1] = 900

0..1

0..1

0..1

FileLink

FileLink

FileLink

0..*

0..*

0..*

Resource

Resource

Resource

File

File

File

+ activateTime: TimeType [0..1]

+ fileURI: anyURI

+ lFDI: HexBinary160 [0..1]

+ mfHwVer: String32 [0..1]

+ mfID: PENType

+ mfModel: String32

+ mfSerNum: String32 [0..1]

+ mfVer: String16

+ size: UInt32

+ type: HexBinary16

+ activateTime: TimeType [0..1]

+ fileURI: anyURI

+ lFDI: HexBinary160 [0..1]

+ mfHwVer: String32 [0..1]

+ mfID: PENType

+ mfModel: String32

+ mfSerNum: String32 [0..1]

+ mfVer: String16

+ size: UInt32

+ type: HexBinary16

+ activateTime: TimeType [0..1]

+ fileURI: anyURI

+ lFDI: HexBinary160 [0..1]

+ mfHwVer: String32 [0..1]

+ mfID: PENType

+ mfModel: String32

+ mfSerNum: String32 [0..1]

+ mfVer: String16

+ size: UInt32

+ type: HexBinary16

status

Current loading status of the file indicated by FileLink. This element MUST be set to one of the following values:

0 - No load operation in progress

1 - File load in progress (first request for file content has been issued by LD)

2 - File load failed

3 - File loaded successfully (full content of file has been received by the LD), signature verification in progress

4 - File signature verification failed

5 - File signature verified, waiting to activate file.

6 - File activation failed

7 - File activation in progress

8 - File activated successfully (this state may not be reached/persisted through an image activation) 9-255 - Reserved for future use.

status

Current loading status of the file indicated by FileLink. This element MUST be set to one of the following values:

0 - No load operation in progress

1 - File load in progress (first request for file content has been issued by LD)

2 - File load failed

3 - File loaded successfully (full content of file has been received by the LD), signature verification in progress

4 - File signature verification failed

5 - File signature verified, waiting to activate file.

6 - File activation failed

7 - File activation in progress

8 - File activated successfully (this state may not be reached/persisted through an image activation) 9-255 - Reserved for future use.

status

Current loading status of the file indicated by FileLink. This element MUST be set to one of the following values:

0 - No load operation in progress

1 - File load in progress (first request for file content has been issued by LD)

2 - File load failed

3 - File loaded successfully (full content of file has been received by the LD), signature verification in progress

4 - File signature verification failed

5 - File signature verified, waiting to activate file.

6 - File activation failed

7 - File activation in progress

8 - File activated successfully (this state may not be reached/persisted through an image activation) 9-255 - Reserved for future use.

Figure B.20—Files


File object (Resource)

This resource contains various meta-data describing a file’s characteristics. The meta-data provides general file information and also is used to support filtered queries of file lists.


activateTime attribute (TimeType) [0..1]

This element MUST be set to the date/time at which this file is activated. If the activation time is less than or equal to current time, the LD MUST immediately place the file into the activated state (in the case of a firmware file, the file is now the running image). If the activation time is greater than the current time, the LD MUST wait until the specified activation time is reached, then MUST place the file into the activated state. Omission of this element means that the LD MUST NOT take any action to activate the file until a subsequent GET to this File resource provides an activateTime.


fileURI attribute (anyURI)

This element MUST be set to the URI location of the file binary artifact. This is the binary large object (BLOB) that is actually loaded by the LD.


lFDI attribute (HexBinary160) [0..1]

This element MUST be set to the LFDI of the device for which this file in targeted.


mfHwVer attribute (String32) [0..1]

This element MUST be set to the hardware version for which this file is targeted.


mfID attribute (PENType)

This element MUST be set to the manufacturer’s Private Enterprise Number (assigned by IANA).


mfModel attribute (String32)

This element MUST be set to the manufacturer model number for which this file is targeted. The syntax and semantics are left to the manufacturer.


mfSerNum attribute (String32) [0..1]

This element MUST be set to the manufacturer serial number for which this file is targeted. The syntax and semantics are left to the manufacturer.


mfVer attribute (String16)

This element MUST be set to the software version information for this file. The syntax and semantics are left to the manufacturer.


size attribute (UInt32)

This element MUST be set to the total size (in bytes) of the file referenced by fileURI.


type attribute (HexBinary16)

A value indicating the type of the file. MUST be one of the following values: 00 = Software image

01 = Security credential 02 = Configuration

03 = Log


04 to 7FFF = reserved


8000 to FFFF = Manufacturer defined


FileList object (List)

A List element to hold File objects.


pollRate attribute (UInt32) [0..1] «XSDattribute»

The default polling rate for this function set (this resource and all resources below), in seconds. If not specified, a default of 900 seconds (15 minutes) is used. It is RECOMMENDED that a client poll the resources of this function set every pollRate seconds.


FileStatus object (Resource)

This object provides status of device file load and activation operations.


activateTime attribute (TimeType) [0..1]

Date/time at which this File, referred to by FileLink, will be activated. Omission of, or presence and value of, this element MUST exactly match omission or presence and value of the activateTime element from the File resource.


loadPercent attribute (UInt8)

This element MUST be set to the percentage of the file, indicated by FileLink, that was loaded during the latest load attempt. This value MUST be reset to 0 each time a load attempt is started for the File indicated by FileLink. This value MUST be increased when an LD receives HTTP response containing file content. This value MUST be set to 100 when the full content of the file has been received by the LD.


nextRequestAttempt attribute (TimeType)

This element MUST be set to the time at which the LD will issue its next GET request for file content from the File indicated by FileLink.


pollRate attribute (UInt32) [0..1] «XSDattribute»

The default polling rate for this function set (this resource and all resources below), in seconds. If not specified, a default of 900 seconds (15 minutes) is used. It is RECOMMENDED that a client poll the resources of this function set every pollRate seconds.


request503Count attribute (UInt16)

This value MUST be reset to 0 when FileLink is first pointed at a new File. This value MUST be incremented each time an LD receives a 503 error from the FS.


requestFailCount attribute (UInt16)

This value MUST be reset to 0 when FileLink is first pointed at a new File. This value MUST be incremented each time a GET request for file content fails. 503 errors MUST be excluded from this counter.


status attribute (UInt8)

Current loading status of the file indicated by FileLink. This element MUST be set to one of the following values:


0 = No load operation in progress


1 = File load in progress (first request for file content has been issued by LD)


2 = File load failed


3 = File loaded successfully (full content of file has been received by the LD), signature verification in progress


4 = File signature verification failed


5 = File signature verified, waiting to activate file


6 = File activation failed


7 = File activation in progress


8 = File activated successfully (this state may not be reached/persisted through an image activation)


9 to 255 = Reserved for future use


statusTime attribute (TimeType)

This element MUST be set to the time at which file status transitioned to the value indicated in the status element.


B.2.15 DRLC package


Contains definitions for Demand Response Load Control functionality.


ListLink

DemandResponseProgramListLink

ListLink

DemandResponseProgramListLink

ListLink

DemandResponseProgramListLink


image

DRLC Event

DRLC Event

DRLC Event

EventStatus

EventStatus

EventStatus

RespondableSubscribableIdentifiedObject

Event

RespondableSubscribableIdentifiedObject

Event

RespondableSubscribableIdentifiedObject

Event

+ currentStatus: UInt8

+ dateTime: TimeType

+ potentiallySuperseded: boolean

+ potentiallySupersededTime: TimeType [0..1]

+ reason: String192 [0..1]

+ currentStatus: UInt8

+ dateTime: TimeType

+ potentiallySuperseded: boolean

+ potentiallySupersededTime: TimeType [0..1]

+ reason: String192 [0..1]

+ currentStatus: UInt8

+ dateTime: TimeType

+ potentiallySuperseded: boolean

+ potentiallySupersededTime: TimeType [0..1]

+ reason: String192 [0..1]

1

1

1

+ creationTime: TimeType

+ interval: DateTimeInterval

+ creationTime: TimeType

+ interval: DateTimeInterval

+ creationTime: TimeType

+ interval: DateTimeInterval

Resource

FunctionSetAssignmentsBase

Resource

FunctionSetAssignmentsBase

Resource

FunctionSetAssignmentsBase

RandomizableEvent

RandomizableEvent

RandomizableEvent

0..1

0..1

0..1

+ randomizeDuration: OneHourRangeType [0..1] = 0

+ randomizeStart: OneHourRangeType [0..1] = 0

+ randomizeDuration: OneHourRangeType [0..1] = 0

+ randomizeStart: OneHourRangeType [0..1] = 0

+ randomizeDuration: OneHourRangeType [0..1] = 0

+ randomizeStart: OneHourRangeType [0..1] = 0

IdentifiedObject

IdentifiedObject

IdentifiedObject

ListLink

ActiveEndDeviceControlListLink

ListLink

ActiveEndDeviceControlListLink

ListLink

ActiveEndDeviceControlListLink

DemandResponseProgram

DemandResponseProgram

DemandResponseProgram

+ availabilityUpdatePercentChangeThreshold: PerCent [0..1] = 0

+ availabilityUpdatePowerChangeThreshold: ActivePower [0..1] = 0

+ primacy: PrimacyType

::IdentifiedObject

+ description: String32 [0..1]

+ mRID: mRIDType

+ version: VersionType [0..1] = 0

«XSDattribute»

::Resource

+ href: anyURI [0..1]

+ availabilityUpdatePercentChangeThreshold: PerCent [0..1] = 0

+ availabilityUpdatePowerChangeThreshold: ActivePower [0..1] = 0

+ primacy: PrimacyType

::IdentifiedObject

+ description: String32 [0..1]

+ mRID: mRIDType

+ version: VersionType [0..1] = 0

«XSDattribute»

::Resource

+ href: anyURI [0..1]

+ availabilityUpdatePercentChangeThreshold: PerCent [0..1] = 0

+ availabilityUpdatePowerChangeThreshold: ActivePower [0..1] = 0

+ primacy: PrimacyType

::IdentifiedObject

+ description: String32 [0..1]

+ mRID: mRIDType

+ version: VersionType [0..1] = 0

«XSDattribute»

::Resource

+ href: anyURI [0..1]

0..1

0..1

0..1

ListLink

EndDeviceControlListLink

ListLink

EndDeviceControlListLink

ListLink

EndDeviceControlListLink

0..1

0..1

0..1

EndDeviceControl

EndDeviceControl

EndDeviceControl

HexBinary32

DeviceCategoryType

notes

The Device category types defined.

Bit positions SHALL be defined as follows:

0 - Programmable Communicating Thermostat

1 - Strip Heaters

2 - Baseboard Heaters

3 - Water Heater

4 - Pool Pump

5 - Sauna

6 - Hot Tub

7 - Smart Appliance

8 - Irrigation Pump

9 - Managed Commercial and Industrial (C&I) Loads

10 - Simple Misc. (Residential On/Off) Loads

11 - Exterior Lighting

12 - Interior Lighting

13 - Load Control Switch

14 - Energy Management System

15 - Smart Energy Module

16 - Electric Vehicle

17 - EVSE

18 - Virtual or Mixed DER

19 - Reciprocating Engine

20 - Fuel Cell

21 - Photovoltaic System

22 - Combined Heat and Power

23 - Combined PV and Storage

24 - Other Generation System

25 - Other Storage System All other values reserved.

HexBinary32

DeviceCategoryType

notes

The Device category types defined.

Bit positions SHALL be defined as follows:

0 - Programmable Communicating Thermostat

1 - Strip Heaters

2 - Baseboard Heaters

3 - Water Heater

4 - Pool Pump

5 - Sauna

6 - Hot Tub

7 - Smart Appliance

8 - Irrigation Pump

9 - Managed Commercial and Industrial (C&I) Loads

10 - Simple Misc. (Residential On/Off) Loads

11 - Exterior Lighting

12 - Interior Lighting

13 - Load Control Switch

14 - Energy Management System

15 - Smart Energy Module

16 - Electric Vehicle

17 - EVSE

18 - Virtual or Mixed DER

19 - Reciprocating Engine

20 - Fuel Cell

21 - Photovoltaic System

22 - Combined Heat and Power

23 - Combined PV and Storage

24 - Other Generation System

25 - Other Storage System All other values reserved.

HexBinary32

DeviceCategoryType

notes

The Device category types defined.

Bit positions SHALL be defined as follows:

0 - Programmable Communicating Thermostat

1 - Strip Heaters

2 - Baseboard Heaters

3 - Water Heater

4 - Pool Pump

5 - Sauna

6 - Hot Tub

7 - Smart Appliance

8 - Irrigation Pump

9 - Managed Commercial and Industrial (C&I) Loads

10 - Simple Misc. (Residential On/Off) Loads

11 - Exterior Lighting

12 - Interior Lighting

13 - Load Control Switch

14 - Energy Management System

15 - Smart Energy Module

16 - Electric Vehicle

17 - EVSE

18 - Virtual or Mixed DER

19 - Reciprocating Engine

20 - Fuel Cell

21 - Photovoltaic System

22 - Combined Heat and Power

23 - Combined PV and Storage

24 - Other Generation System

25 - Other Storage System All other values reserved.

+ deviceCategory: DeviceCategoryType

+ drProgramMandatory: boolean

+ loadShiftForward: boolean

+ overrideDuration: UInt16 [0..1] = 0

::RandomizableEvent

+ randomizeDuration: OneHourRangeType [0..1] = 0

+ randomizeStart: OneHourRangeType [0..1] = 0

::Event

+ creationTime: TimeType 0..1 + interval: DateTimeInterval

::RespondableSubscribableIdentifiedObject

+ description: String32 [0..1]

+ mRID: mRIDType

+ version: VersionType [0..1] = 0

«XSDattribute»

::RespondableSubscribableIdentifiedObject

+ subscribable: SubscribableType [0..1] = 0

::RespondableResource

+ replyTo: anyURI [0..1]

+ responseRequired: HexBinary8 [0..1] = 00

::Resource

+ href: anyURI [0..1]


DutyCycle

+ normalValue: UInt8

+ deviceCategory: DeviceCategoryType

+ drProgramMandatory: boolean

+ loadShiftForward: boolean

+ overrideDuration: UInt16 [0..1] = 0

::RandomizableEvent

+ randomizeDuration: OneHourRangeType [0..1] = 0

+ randomizeStart: OneHourRangeType [0..1] = 0

::Event

+ creationTime: TimeType 0..1 + interval: DateTimeInterval

::RespondableSubscribableIdentifiedObject

+ description: String32 [0..1]

+ mRID: mRIDType

+ version: VersionType [0..1] = 0

«XSDattribute»

::RespondableSubscribableIdentifiedObject

+ subscribable: SubscribableType [0..1] = 0

::RespondableResource

+ replyTo: anyURI [0..1]

+ responseRequired: HexBinary8 [0..1] = 00

::Resource

+ href: anyURI [0..1]


DutyCycle

+ normalValue: UInt8

+ deviceCategory: DeviceCategoryType

+ drProgramMandatory: boolean

+ loadShiftForward: boolean

+ overrideDuration: UInt16 [0..1] = 0

::RandomizableEvent

+ randomizeDuration: OneHourRangeType [0..1] = 0

+ randomizeStart: OneHourRangeType [0..1] = 0

::Event

+ creationTime: TimeType 0..1 + interval: DateTimeInterval

::RespondableSubscribableIdentifiedObject

+ description: String32 [0..1]

+ mRID: mRIDType

+ version: VersionType [0..1] = 0

«XSDattribute»

::RespondableSubscribableIdentifiedObject

+ subscribable: SubscribableType [0..1] = 0

::RespondableResource

+ replyTo: anyURI [0..1]

+ responseRequired: HexBinary8 [0..1] = 00

::Resource

+ href: anyURI [0..1]


DutyCycle

+ normalValue: UInt8

Offset

Offset

Offset

+ coolingOffset: UInt8 [0..1]

+ heatingOffset: UInt8 [0..1]

+ loadAdjustmentPercentageOffset: PerCent [0..1]


SetPoint

+ coolingOffset: UInt8 [0..1]

+ heatingOffset: UInt8 [0..1]

+ loadAdjustmentPercentageOffset: PerCent [0..1]


SetPoint

+ coolingOffset: UInt8 [0..1]

+ heatingOffset: UInt8 [0..1]

+ loadAdjustmentPercentageOffset: PerCent [0..1]


SetPoint

+ coolingSetpoint: Int16 [0..1]

+ heatingSetpoint: Int16 [0..1]

+ coolingSetpoint: Int16 [0..1]

+ heatingSetpoint: Int16 [0..1]

+ coolingSetpoint: Int16 [0..1]

+ heatingSetpoint: Int16 [0..1]

TargetReduction

TargetReduction

TargetReduction

+ type: UnitType

+ value: UInt16

+ type: UnitType

+ value: UInt16

+ type: UnitType

+ value: UInt16

ApplianceLoadReduction

+ type: ApplianceLoadReductionType

ApplianceLoadReduction

+ type: ApplianceLoadReductionType

ApplianceLoadReduction

+ type: ApplianceLoadReductionType

Figure B.21—DRLC event


SubscribableResource

AbstractDevice



0..1

ListLink

LoadShedAvailabilityListLink


image

class Load Shed Availability

class Load Shed Availability

class Load Shed Availability

0..*

0..*

0..*

0..1

0..1

0..1

Link

DemandResponseProgramLink

Link

DemandResponseProgramLink

Link

DemandResponseProgramLink

+ availabilityDuration: UInt32 [0..1]

+ sheddablePercent: PerCent [0..1]

+ sheddablePower: ActivePower [0..1]

«XSDattribute»

::Resource

+ href: anyURI [0..1]

+ availabilityDuration: UInt32 [0..1]

+ sheddablePercent: PerCent [0..1]

+ sheddablePower: ActivePower [0..1]

«XSDattribute»

::Resource

+ href: anyURI [0..1]

+ availabilityDuration: UInt32 [0..1]

+ sheddablePercent: PerCent [0..1]

+ sheddablePower: ActivePower [0..1]

«XSDattribute»

::Resource

+ href: anyURI [0..1]

LoadShedAvailability

LoadShedAvailability

LoadShedAvailability

Resource

Resource

Resource

«XSDattribute»

+ pollRate: UInt32 [0..1] = 900

«XSDattribute»

+ pollRate: UInt32 [0..1] = 900

«XSDattribute»

+ pollRate: UInt32 [0..1] = 900

LoadShedAvailabilityList

LoadShedAvailabilityList

LoadShedAvailabilityList

List

List

List

Figure B.22—LoadShedAvailability LoadShedAvailabilityList Object (List)

A List element to hold LoadShedAvailability objects.


pollRate attribute (UInt32) [0..1] «XSDattribute»

The default polling rate for this function set (this resource and all resources below), in seconds. If not specified, a default of 900 seconds (15 minutes) is used. It is RECOMMENDED that a client poll the resources of this function set every pollRate seconds.


ApplianceLoadReduction Object ()

The ApplianceLoadReduction object is used by a Demand Response service provider to provide signals for Energy Star–compliant appliances. See the definition of ApplianceLoadReductionType for more information.


type attribute (ApplianceLoadReductionType)

Indicates the type of appliance load reduction requested.


DemandResponseProgram Object (IdentifiedObject)

Demand response program.


availabilityUpdatePercentChangeThreshold attribute (PerCent) [0..1]

This attribute allows program providers to specify the requested granularity of updates to LoadShedAvailability sheddablePercent. If not present, or set to 0, then updates to LoadShedAvailability SHALL NOT be provided. If present and greater than zero, then clients SHALL provide their LoadShedAvailability if it has not previously been provided, and thereafter if the difference between the previously provided value and the current value of LoadShedAvailability sheddablePercent is greater than availabilityUpdatePercentChangeThreshold.


availabilityUpdatePowerChangeThreshold attribute (ActivePower) [0..1]

This attribute allows program providers to specify the requested granularity of updates to LoadShedAvailability sheddablePower. If not present, or set to 0, then updates to LoadShedAvailability SHALL NOT be provided. If present and greater than zero, then clients SHALL provide their LoadShedAvailability if it has not previously been provided, and thereafter if the difference between the previously provided value and the current value of LoadShedAvailability sheddablePower is greater than availabilityUpdatePowerChangeThreshold.


primacy attribute (PrimacyType)

Indicates the relative primacy of the provider of this program.


DemandResponseProgramList Object (SubscribableList)

A List element to hold DemandResponseProgram objects.


pollRate attribute (UInt32) [0..1] «XSDattribute»

The default polling rate for this function set (this resource and all resources below), in seconds. If not specified, a default of 900 seconds (15 minutes) is used. It is RECOMMENDED that a client poll the resources of this function set every pollRate seconds.


DutyCycle Object ()

Duty cycle control is a device specific issue and is managed by the device. The duty cycle of the device under control should span the shortest practical time period in accordance with the nature of the device under control and the intent of the request for demand reduction. The default factory setting SHOULD be three minutes for each 10% of duty cycle. This indicates that the default time period over which a duty cycle is applied is 30 minutes, meaning a 10% duty cycle would cause a device to be on for 3 minutes. The “off state” SHALL precede the “on state.”


normalValue attribute (UInt8)

Contains the maximum on state duty cycle applied by the end device, as a percentage of time. The field not present indicates that this field has not been used by the end device.


EndDeviceControl Object (RandomizableEvent)

Instructs an EndDevice to perform a specified action.


deviceCategory attribute (DeviceCategoryType)

Specifies the bitmap indicating the categories of devices that SHOULD respond. Devices SHOULD ignore events that do not indicate their device category.


drProgramMandatory attribute (boolean)

A flag to indicate if the EndDeviceControl is considered a mandatory event as defined by the service provider issuing the EndDeviceControl. The drProgramMandatory flag alerts the client/user that they will be subject to penalty or ineligibility based on the service provider’s program rules for that deviceCategory.


loadShiftForward attribute (boolean)

Indicates that the event intends to increase consumption. A value of true indicates the intention to increase usage value, and a value of false indicates the intention to decrease usage.


overrideDuration attribute (UInt16) [0..1]

The overrideDuration attribute provides a duration, in seconds, for which a client device is allowed to override this EndDeviceControl and still meet the contractual agreement with a service provider without opting out. If overrideDuration is not specified, then it SHALL default to 0.


EndDeviceControlList Object (SubscribableList)

A List element to hold EndDeviceControl objects.


LoadShedAvailability Object (Resource)

Indicates current consumption status and ability to shed load.


availabilityDuration attribute (UInt32) [0..1]

Indicates for how many seconds the consuming device will be able to reduce consumption at the maximum response level.


sheddablePercent attribute (PerCent) [0..1]

Maximum percent of current operating load that is estimated to be sheddable.


sheddablePower attribute (ActivePower) [0..1]

Maximum amount of current operating load that is estimated to be sheddable, in watts.


Association object ()


Offset object ()

If a temperature offset is sent that causes the heating or cooling temperature set point to exceed the limit boundaries that are programmed into the device, the device SHALL respond by setting the temperature at the limit.


If an end device control (EDC) is being targeted at multiple devices or to a device that controls multiple devices (e.g., energy management system [EMS]), it can provide multiple Offset types within one EDC. For events with multiple Offset types, a client SHALL select the Offset that best fits their operating function.


Alternatively, an event with a single Offset type can be targeted at an EMS in order to request a percentage load reduction on the average energy usage of the entire premise. An EMS SHOULD use the Metering function set to determine the initial load in the premise, reduce energy consumption by controlling devices at its disposal, and at the conclusion of the event, once again use the Metering function set to determine if the desired load reduction was achieved.


coolingOffset attribute (UInt8) [0..1]

The value change requested for the cooling offset, in °C/10. The value should be added to the normal set point for cooling, or if loadShiftForward is true, then the value should be subtracted from the normal set point.


heatingOffset attribute (UInt8) [0..1]

The value change requested for the heating offset, in °C/10. The value should be subtracted for heating, or if loadShiftForward is true, then the value should be added to the normal set point.


loadAdjustmentPercentageOffset attribute (PerCent) [0..1]

The value change requested for the load adjustment percentage. The value should be subtracted from the normal setting, or if loadShiftForward is true, then the value should be added to the normal setting.


SetPoint object ()

The SetPoint object is used to apply specific temperature set points to a temperature control device. The values of the heatingSetpoint and coolingSetpoint attributes SHALL be calculated as follows:


image

Cooling/Heating Temperature Set Point 100

= temperature in °C where −273.15 °C temperature 327.67 °C,

corresponding to a Cooling and/or Heating Temperature Set Point. The maximum resolution this format allows is 0.01 °C.


The field not present in a Response indicates that this field has not been used by the end device.


If a temperature is sent that exceeds the temperature limit boundaries that are programmed into the device, the device SHALL respond by setting the temperature at the limit.


coolingSetpoint attribute (Int16) [0..1]

This attribute represents the cooling temperature set point in °C /100 (hundredths of a degree Celsius).


heatingSetpoint attribute (Int16) [0..1]

This attribute represents the heating temperature set point in °C/100 (hundredths of a degree Celsius).


TargetReduction Object ()

The TargetReduction object is used by a Demand Response service provider to provide a RECOMMENDED threshold that a device/premises should maintain its consumption below. For example, a service provider can provide a RECOMMENDED threshold of some kWh for a 3-hour event. This means that the device/premises would maintain its consumption below the specified limit for the specified period.


type attribute (UnitType)

Indicates the type of reduction requested.


value attribute (UInt16)

Indicates the requested amount of the relevant commodity to be reduced.


B.2.16 Metering package


Contains definitions related to measurements of energy at usage points.


image

Metering Data

SubscribableList

UsagePointList


«XSDattribute»

+ pollRate: UInt32 [0..1] = 900

Metering Data

SubscribableList

UsagePointList


«XSDattribute»

+ pollRate: UInt32 [0..1] = 900

Metering Data

SubscribableList

UsagePointList


«XSDattribute»

+ pollRate: UInt32 [0..1] = 900

ListLink

0..1 RateComponentListLink

ListLink

0..1 RateComponentListLink

ListLink

0..1 RateComponentListLink

0..*

ListLink

UsagePoint 0..1 MeterReadingListLink

0..*

ListLink

UsagePoint 0..1 MeterReadingListLink

0..*

ListLink

UsagePoint 0..1 MeterReadingListLink

+ deviceLFDI: HexBinary160 [0..1]

+ deviceLFDI: HexBinary160 [0..1]

+ deviceLFDI: HexBinary160 [0..1]

MeterReadingBase

MeterReading

MeterReadingBase

MeterReading

MeterReadingBase

MeterReading

Link

Link

Link

1

1

1

ReadingTypeLink

ReadingTypeLink

ReadingTypeLink

Resource

Resource

Resource

IdentifiedObject

UsagePointBase

IdentifiedObject

UsagePointBase

IdentifiedObject

UsagePointBase

UInt8

ServiceKind

UInt8

ServiceKind

UInt8

ServiceKind

+ roleFlags: RoleFlagsType

+ serviceCategoryKind: ServiceKind

+ status: UInt8

+ roleFlags: RoleFlagsType

+ serviceCategoryKind: ServiceKind

+ status: UInt8

+ roleFlags: RoleFlagsType

+ serviceCategoryKind: ServiceKind

+ status: UInt8

notes

Service kind

0 - electricity

1 - gas

2 - water

3 - time

4 - pressure

5 - heat

6 - cooling

All other values reserved.

notes

Service kind

0 - electricity

1 - gas

2 - water

3 - time

4 - pressure

5 - heat

6 - cooling

All other values reserved.

notes

Service kind

0 - electricity

1 - gas

2 - water

3 - time

4 - pressure

5 - heat

6 - cooling

All other values reserved.

::IdentifiedObject

+ description: String32 [0..1]

+ mRID: mRIDType

+ version: VersionType [0..1] = 0

«XSDattribute»

::Resource

+ href: anyURI [0..1]

::IdentifiedObject

+ description: String32 [0..1]

+ mRID: mRIDType

+ version: VersionType [0..1] = 0

«XSDattribute»

::Resource

+ href: anyURI [0..1]

::IdentifiedObject

+ description: String32 [0..1]

+ mRID: mRIDType

+ version: VersionType [0..1] = 0

«XSDattribute»

::Resource

+ href: anyURI [0..1]

ReadingType

ReadingType

ReadingType

0..1

0..1

0..1

status

Specifies the current status of the service at this usage point.

0 = off

1 = on

status

Specifies the current status of the service at this usage point.

0 = off

1 = on

status

Specifies the current status of the service at this usage point.

0 = off

1 = on

ListLink

ListLink

ListLink

roleFlags

Specifies the roles that

apply to the usage point.

roleFlags

Specifies the roles that

apply to the usage point.

roleFlags

Specifies the roles that

apply to the usage point.

ReadingSetListLink

ReadingSetListLink

ReadingSetListLink

ReadingSetBase

ReadingSet

ReadingSetBase

ReadingSet

ReadingSetBase

ReadingSet

+ accumulationBehaviour: AccumulationBehaviourType [0..1] = 0

+ calorificValue: UnitValueType [0..1]

+ commodity: CommodityType [0..1] = 0

+ conversionFactor: UnitValueType [0..1] = 1

+ dataQualifier: DataQualifierType [0..1] = 0

+ flowDirection: FlowDirectionType [0..1] = 0

+ intervalLength: UInt32 [0..1]

+ kind: KindType [0..1] = 0

+ maxNumberOfIntervals: UInt8 [0..1]

+ numberOfConsumptionBlocks: UInt8 [0..1] = 0

+ numberOfTouTiers: UInt8 [0..1] = 0

+ phase: PhaseCode [0..1] = 0

+ powerOfTenMultiplier: PowerOfTenMultiplierType [0..1] = 0

+ subIntervalLength: UInt32 [0..1]

+ supplyLimit: UInt48 [0..1]

+ tieredConsumptionBlocks: boolean [0..1] = false

+ uom: UomType [0..1] = 0

+ accumulationBehaviour: AccumulationBehaviourType [0..1] = 0

+ calorificValue: UnitValueType [0..1]

+ commodity: CommodityType [0..1] = 0

+ conversionFactor: UnitValueType [0..1] = 1

+ dataQualifier: DataQualifierType [0..1] = 0

+ flowDirection: FlowDirectionType [0..1] = 0

+ intervalLength: UInt32 [0..1]

+ kind: KindType [0..1] = 0

+ maxNumberOfIntervals: UInt8 [0..1]

+ numberOfConsumptionBlocks: UInt8 [0..1] = 0

+ numberOfTouTiers: UInt8 [0..1] = 0

+ phase: PhaseCode [0..1] = 0

+ powerOfTenMultiplier: PowerOfTenMultiplierType [0..1] = 0

+ subIntervalLength: UInt32 [0..1]

+ supplyLimit: UInt48 [0..1]

+ tieredConsumptionBlocks: boolean [0..1] = false

+ uom: UomType [0..1] = 0

+ accumulationBehaviour: AccumulationBehaviourType [0..1] = 0

+ calorificValue: UnitValueType [0..1]

+ commodity: CommodityType [0..1] = 0

+ conversionFactor: UnitValueType [0..1] = 1

+ dataQualifier: DataQualifierType [0..1] = 0

+ flowDirection: FlowDirectionType [0..1] = 0

+ intervalLength: UInt32 [0..1]

+ kind: KindType [0..1] = 0

+ maxNumberOfIntervals: UInt8 [0..1]

+ numberOfConsumptionBlocks: UInt8 [0..1] = 0

+ numberOfTouTiers: UInt8 [0..1] = 0

+ phase: PhaseCode [0..1] = 0

+ powerOfTenMultiplier: PowerOfTenMultiplierType [0..1] = 0

+ subIntervalLength: UInt32 [0..1]

+ supplyLimit: UInt48 [0..1]

+ tieredConsumptionBlocks: boolean [0..1] = false

+ uom: UomType [0..1] = 0

0..1

ListLink

ReadingListLink

0..1

ListLink

ReadingListLink

0..1

ListLink

ReadingListLink

0..1

0..1

0..1

HexBinary16

HexBinary16

HexBinary16

Link

Link

Link

RoleFlagsType

RoleFlagsType

RoleFlagsType

ReadingLink

ReadingLink

ReadingLink

notes

Specifies the roles that apply to a usage point.

Bit 0 - isMirror - SHALL be set if the server is not the measurement device

Bit 1 - isPremisesAggregationPoint - SHALL be set if the UsagePoint is the point of delivery for a premises

Bit 2 - isPEV - SHALL be set if the usage applies to an electric vehicle Bit 3 - isDER - SHALL be set if the usage applies to a distributed energy resource, capable of delivering power to the grid.

Bit 4 - isRevenueQuality - SHALL be set if usage was measured by a device certified as revenue quality

Bit 5 - isDC - SHALL be set if the usage point measures direct current Bit 6 - isSubmeter - SHALL be set if the usage point is not a premises aggregation point

Bit 7-15 - Reserved

notes

Specifies the roles that apply to a usage point.

Bit 0 - isMirror - SHALL be set if the server is not the measurement device

Bit 1 - isPremisesAggregationPoint - SHALL be set if the UsagePoint is the point of delivery for a premises

Bit 2 - isPEV - SHALL be set if the usage applies to an electric vehicle Bit 3 - isDER - SHALL be set if the usage applies to a distributed energy resource, capable of delivering power to the grid.

Bit 4 - isRevenueQuality - SHALL be set if usage was measured by a device certified as revenue quality

Bit 5 - isDC - SHALL be set if the usage point measures direct current Bit 6 - isSubmeter - SHALL be set if the usage point is not a premises aggregation point

Bit 7-15 - Reserved

notes

Specifies the roles that apply to a usage point.

Bit 0 - isMirror - SHALL be set if the server is not the measurement device

Bit 1 - isPremisesAggregationPoint - SHALL be set if the UsagePoint is the point of delivery for a premises

Bit 2 - isPEV - SHALL be set if the usage applies to an electric vehicle Bit 3 - isDER - SHALL be set if the usage applies to a distributed energy resource, capable of delivering power to the grid.

Bit 4 - isRevenueQuality - SHALL be set if usage was measured by a device certified as revenue quality

Bit 5 - isDC - SHALL be set if the usage point measures direct current Bit 6 - isSubmeter - SHALL be set if the usage point is not a premises aggregation point

Bit 7-15 - Reserved

qualityFlags

List of codes indicating the quality of the reading, using specification:

qualityFlags

List of codes indicating the quality of the reading, using specification:

qualityFlags

List of codes indicating the quality of the reading, using specification:

ReadingBase

Reading

+ localID: HexBinary16 [0..1]

::ReadingBase

+ consumptionBlock: ConsumptionBlockType [0..1] = 0

+ qualityFlags: HexBinary16 [0..1] = 00

+ timePeriod: DateTimeInterval [0..1]

+ touTier: TOUType [0..1] = 0

+ value: Int48 [0..1]

«XSDattribute»

+ subscribable: SubscribableType [0..1] = 0

::Resource

+ href: anyURI [0..1]

ReadingBase

Reading

+ localID: HexBinary16 [0..1]

::ReadingBase

+ consumptionBlock: ConsumptionBlockType [0..1] = 0

+ qualityFlags: HexBinary16 [0..1] = 00

+ timePeriod: DateTimeInterval [0..1]

+ touTier: TOUType [0..1] = 0

+ value: Int48 [0..1]

«XSDattribute»

+ subscribable: SubscribableType [0..1] = 0

::Resource

+ href: anyURI [0..1]

ReadingBase

Reading

+ localID: HexBinary16 [0..1]

::ReadingBase

+ consumptionBlock: ConsumptionBlockType [0..1] = 0

+ qualityFlags: HexBinary16 [0..1] = 00

+ timePeriod: DateTimeInterval [0..1]

+ touTier: TOUType [0..1] = 0

+ value: Int48 [0..1]

«XSDattribute»

+ subscribable: SubscribableType [0..1] = 0

::Resource

+ href: anyURI [0..1]

Bit 0 - valid: data that has gone through all required validation

checks and either passed them all or has been verified Bit 1 - manually edited: Replaced or approved by a human

Bit 2 - estimated using reference day: data value was replaced by a machine computed value based on analysis of historical data using the same type of measurement.

Bit 3 - estimated using linear interpolation: data value was computed using linear interpolation based on the readings before and after it

Bit 4 - questionable: data that has failed one or more checks Bit 5 - derived: data that has been calculated (using logic or mathematical operations), not necessarily measured directly Bit 6 - projected (forecast): data that has been calculated as a projection or forecast of future readings

Bit 0 - valid: data that has gone through all required validation

checks and either passed them all or has been verified Bit 1 - manually edited: Replaced or approved by a human

Bit 2 - estimated using reference day: data value was replaced by a machine computed value based on analysis of historical data using the same type of measurement.

Bit 3 - estimated using linear interpolation: data value was computed using linear interpolation based on the readings before and after it

Bit 4 - questionable: data that has failed one or more checks Bit 5 - derived: data that has been calculated (using logic or mathematical operations), not necessarily measured directly Bit 6 - projected (forecast): data that has been calculated as a projection or forecast of future readings

Bit 0 - valid: data that has gone through all required validation

checks and either passed them all or has been verified Bit 1 - manually edited: Replaced or approved by a human

Bit 2 - estimated using reference day: data value was replaced by a machine computed value based on analysis of historical data using the same type of measurement.

Bit 3 - estimated using linear interpolation: data value was computed using linear interpolation based on the readings before and after it

Bit 4 - questionable: data that has failed one or more checks Bit 5 - derived: data that has been calculated (using logic or mathematical operations), not necessarily measured directly Bit 6 - projected (forecast): data that has been calculated as a projection or forecast of future readings

Figure B.23—Metering data


image

Metering Data Types

Metering Data Types

Metering Data Types

Data types based on CIM 61968-9 Annex C, D 2010-12-06 version

Data types based on CIM 61968-9 Annex C, D 2010-12-06 version

Data types based on CIM 61968-9 Annex C, D 2010-12-06 version

UInt8

UInt8

UInt8

Int8

Int8

Int8

PhaseCode PowerOfTenMultiplierType

PhaseCode PowerOfTenMultiplierType

PhaseCode PowerOfTenMultiplierType

UInt8

AccumulationBehaviourType

UInt8

AccumulationBehaviourType

UInt8

AccumulationBehaviourType

UInt8

UInt8

UInt8

UInt8

UInt8

UInt8

KindType

KindType

KindType

UomType

UomType

UomType

notes

0 = Not Applicable (default, if not specified)

32 = Phase C (and S2)

33 = Phase CN (and S2N) 40 = Phase CA

64 = Phase B

65 = Phase BN

66 = Phase BC

128 = Phase A (and S1)

129 = Phase AN (and S1N) 132 = Phase AB

224 = Phase ABC

All other values reserved.

notes

0 = Not Applicable (default, if not specified)

32 = Phase C (and S2)

33 = Phase CN (and S2N) 40 = Phase CA

64 = Phase B

65 = Phase BN

66 = Phase BC

128 = Phase A (and S1)

129 = Phase AN (and S1N) 132 = Phase AB

224 = Phase ABC

All other values reserved.

notes

0 = Not Applicable (default, if not specified)

32 = Phase C (and S2)

33 = Phase CN (and S2N) 40 = Phase CA

64 = Phase B

65 = Phase BN

66 = Phase BC

128 = Phase A (and S1)

129 = Phase AN (and S1N) 132 = Phase AB

224 = Phase ABC

All other values reserved.

notes

notes

notes

-9 = nano=x10^-9

-6 = micro=x10^-6

-3 = milli=x10^-3

0 = none=x1 (default, if not specified)

1 = deca=x10

2 = hecto=x100

3 = kilo=x1000

6 = Mega=x10^6

9 = Giga=x10^9

This is not a complete list. Any integer between -9 and 9 SHALL be supported, indicating the power of ten multiplier for the units.

-9 = nano=x10^-9

-6 = micro=x10^-6

-3 = milli=x10^-3

0 = none=x1 (default, if not specified)

1 = deca=x10

2 = hecto=x100

3 = kilo=x1000

6 = Mega=x10^6

9 = Giga=x10^9

This is not a complete list. Any integer between -9 and 9 SHALL be supported, indicating the power of ten multiplier for the units.

-9 = nano=x10^-9

-6 = micro=x10^-6

-3 = milli=x10^-3

0 = none=x1 (default, if not specified)

1 = deca=x10

2 = hecto=x100

3 = kilo=x1000

6 = Mega=x10^6

9 = Giga=x10^9

This is not a complete list. Any integer between -9 and 9 SHALL be supported, indicating the power of ten multiplier for the units.

See definition for values

See definition for values

See definition for values

notes

0 = Not Applicable (default, if not specified) 3 = Currency

8 = Demand

12 = Energy

37 = Power

All other values reserved.

notes

0 = Not Applicable (default, if not specified) 3 = Currency

8 = Demand

12 = Energy

37 = Power

All other values reserved.

notes

0 = Not Applicable (default, if not specified) 3 = Currency

8 = Demand

12 = Energy

37 = Power

All other values reserved.

UInt8

UInt8

UInt8

TOUType

TOUType

TOUType

UInt8

DataQualifierType

UInt8

DataQualifierType

UInt8

DataQualifierType

UInt8

UInt8

UInt8

CommodityType

CommodityType

CommodityType

UInt8

FlowDirectionType

notes

0 = Not Applicable (default, if not specified) 1 = Forward (delivered to customer)

19 = Reverse (received from customer)

All other values reserved.

UInt8

FlowDirectionType

notes

0 = Not Applicable (default, if not specified) 1 = Forward (delivered to customer)

19 = Reverse (received from customer)

All other values reserved.

UInt8

FlowDirectionType

notes

0 = Not Applicable (default, if not specified) 1 = Forward (delivered to customer)

19 = Reverse (received from customer)

All other values reserved.

notes

0 = Not Applicable (default, if not specified)

2 = Average

8 = Maximum

9 = Minimum

12 = Normal

29 = Standard Deviation of a Population (typically indicated by a lower case sigma)

30 = Standard Deviation of a Sample Drawn from a Population (typically indicated by a lower case 's')

All other values reserved.

notes

0 = Not Applicable (default, if not specified)

2 = Average

8 = Maximum

9 = Minimum

12 = Normal

29 = Standard Deviation of a Population (typically indicated by a lower case sigma)

30 = Standard Deviation of a Sample Drawn from a Population (typically indicated by a lower case 's')

All other values reserved.

notes

0 = Not Applicable (default, if not specified)

2 = Average

8 = Maximum

9 = Minimum

12 = Normal

29 = Standard Deviation of a Population (typically indicated by a lower case sigma)

30 = Standard Deviation of a Sample Drawn from a Population (typically indicated by a lower case 's')

All other values reserved.

notes

0 = Not Applicable (default, if not specified)

1 = Electricity secondary metered value (a premises meter is typically on the low voltage, or secondary, side of a service transformer)

2 = Electricity primary metered value (measured on the high voltage, or primary, side of the service transformer)

4 = Air

7 = NaturalGas

8 = Propane

9 = PotableWater

10 = Steam

11 = WasteWater

12 = HeatingFluid

13 = CoolingFluid

All other values reserved.

notes

0 = Not Applicable (default, if not specified)

1 = Electricity secondary metered value (a premises meter is typically on the low voltage, or secondary, side of a service transformer)

2 = Electricity primary metered value (measured on the high voltage, or primary, side of the service transformer)

4 = Air

7 = NaturalGas

8 = Propane

9 = PotableWater

10 = Steam

11 = WasteWater

12 = HeatingFluid

13 = CoolingFluid

All other values reserved.

notes

0 = Not Applicable (default, if not specified)

1 = Electricity secondary metered value (a premises meter is typically on the low voltage, or secondary, side of a service transformer)

2 = Electricity primary metered value (measured on the high voltage, or primary, side of the service transformer)

4 = Air

7 = NaturalGas

8 = Propane

9 = PotableWater

10 = Steam

11 = WasteWater

12 = HeatingFluid

13 = CoolingFluid

All other values reserved.

notes

0 = Not Applicable (default, if not specified)

1 = TOU A

2 = TOU B

3 = TOU C

4 = TOU D

5 = TOU E

6 = TOU F

7 = TOU G

8 = TOU H

9 = TOU I

10 = TOU J

11 = TOU K

12 = TOU L

13 = TOU M

14 = TOU N

15 = TOU O

All other values reserved.

notes

0 = Not Applicable (default, if not specified)

1 = TOU A

2 = TOU B

3 = TOU C

4 = TOU D

5 = TOU E

6 = TOU F

7 = TOU G

8 = TOU H

9 = TOU I

10 = TOU J

11 = TOU K

12 = TOU L

13 = TOU M

14 = TOU N

15 = TOU O

All other values reserved.

notes

0 = Not Applicable (default, if not specified)

1 = TOU A

2 = TOU B

3 = TOU C

4 = TOU D

5 = TOU E

6 = TOU F

7 = TOU G

8 = TOU H

9 = TOU I

10 = TOU J

11 = TOU K

12 = TOU L

13 = TOU M

14 = TOU N

15 = TOU O

All other values reserved.

notes

The following values are recommended values sourced from the unit of measure enumeration in IEC 61968-9 [61968]. Other values from the unit of measure enumeration in IEC 61968-9 [61968] MAY be used.

0 = Not Applicable (default, if not specified)

5 = A (Current in Amperes (RMS))

6 = Kelvin (Temperature)

23 = Degrees Celsius (Relative temperature) 29 = Voltage

UInt8 31 = J (Energy joule)

ConsumptionBlockType 33 = Hz (Frequency)

38 =W (Real power in Watts)

notes 42 = m3 (Cubic Meter)

0 = Not Applicable 61 = VA (Apparent power) (default, if not specified) 63 = var (Reactive power)

1 = Block 1 65 = CosTheta (Displacement Power Factor)

2 = Block 2 67 = V² (Volts squared)

3 = Block 3 69 = A² (Amp squared)

4 = Block 4 71 = VAh (Apparent energy)

5 = Block 5 72 = Wh (Real energy in Watt-hours)

6 = Block 6 73 = varh (Reactive energy)

7 = Block 7 106 = Ah (Ampere-hours / Available Charge)

8 = Block 8 119 = ft3 (Cubic Feet)

9 = Block 9 122 = ft3/h (Cubic Feet per Hour)

10 = Block 10 125 = m3/h (Cubic Meter per Hour)

11 = Block 11 128 = US gl (US Gallons)

12 = Block 12 129 = US gl/h (US Gallons per Hour)

13 = Block 13 130 = IMP gl (Imperial Gallons)

14 = Block 14 131 = IMP gl/h (Imperial Gallons per Hour)

15 = Block 15 132 = BTU

16 = Block 16 133 = BTU/

All other values reserved.

notes

The following values are recommended values sourced from the unit of measure enumeration in IEC 61968-9 [61968]. Other values from the unit of measure enumeration in IEC 61968-9 [61968] MAY be used.

0 = Not Applicable (default, if not specified)

5 = A (Current in Amperes (RMS))

6 = Kelvin (Temperature)

23 = Degrees Celsius (Relative temperature) 29 = Voltage

UInt8 31 = J (Energy joule)

ConsumptionBlockType 33 = Hz (Frequency)

38 =W (Real power in Watts)

notes 42 = m3 (Cubic Meter)

0 = Not Applicable 61 = VA (Apparent power) (default, if not specified) 63 = var (Reactive power)

1 = Block 1 65 = CosTheta (Displacement Power Factor)

2 = Block 2 67 = V² (Volts squared)

3 = Block 3 69 = A² (Amp squared)

4 = Block 4 71 = VAh (Apparent energy)

5 = Block 5 72 = Wh (Real energy in Watt-hours)

6 = Block 6 73 = varh (Reactive energy)

7 = Block 7 106 = Ah (Ampere-hours / Available Charge)

8 = Block 8 119 = ft3 (Cubic Feet)

9 = Block 9 122 = ft3/h (Cubic Feet per Hour)

10 = Block 10 125 = m3/h (Cubic Meter per Hour)

11 = Block 11 128 = US gl (US Gallons)

12 = Block 12 129 = US gl/h (US Gallons per Hour)

13 = Block 13 130 = IMP gl (Imperial Gallons)

14 = Block 14 131 = IMP gl/h (Imperial Gallons per Hour)

15 = Block 15 132 = BTU

16 = Block 16 133 = BTU/

All other values reserved.

notes

The following values are recommended values sourced from the unit of measure enumeration in IEC 61968-9 [61968]. Other values from the unit of measure enumeration in IEC 61968-9 [61968] MAY be used.

0 = Not Applicable (default, if not specified)

5 = A (Current in Amperes (RMS))

6 = Kelvin (Temperature)

23 = Degrees Celsius (Relative temperature) 29 = Voltage

UInt8 31 = J (Energy joule)

ConsumptionBlockType 33 = Hz (Frequency)

38 =W (Real power in Watts)

notes 42 = m3 (Cubic Meter)

0 = Not Applicable 61 = VA (Apparent power) (default, if not specified) 63 = var (Reactive power)

1 = Block 1 65 = CosTheta (Displacement Power Factor)

2 = Block 2 67 = V² (Volts squared)

3 = Block 3 69 = A² (Amp squared)

4 = Block 4 71 = VAh (Apparent energy)

5 = Block 5 72 = Wh (Real energy in Watt-hours)

6 = Block 6 73 = varh (Reactive energy)

7 = Block 7 106 = Ah (Ampere-hours / Available Charge)

8 = Block 8 119 = ft3 (Cubic Feet)

9 = Block 9 122 = ft3/h (Cubic Feet per Hour)

10 = Block 10 125 = m3/h (Cubic Meter per Hour)

11 = Block 11 128 = US gl (US Gallons)

12 = Block 12 129 = US gl/h (US Gallons per Hour)

13 = Block 13 130 = IMP gl (Imperial Gallons)

14 = Block 14 131 = IMP gl/h (Imperial Gallons per Hour)

15 = Block 15 132 = BTU

16 = Block 16 133 = BTU/

All other values reserved.

Figure B.24—Metering data types


MeterReading object (MeterReadingBase)

Set of values obtained from the meter.


MeterReadingList object (SubscribableList)

A List element to hold MeterReading objects.


Reading object (ReadingBase)

Specific value measured by a meter or other asset.


localID attribute (HexBinary16) [0..1]

The local identifier for this reading within the reading set. localIDs are assigned in order of creation time. For interval data, this value SHALL increase with each interval time, and for block/tier readings, localID SHALL not be specified.


subscribable attribute (SubscribableType) [0..1] «XSDattribute»

Indicates whether or not subscriptions are supported for this resource, and whether or not conditional (thresholds) are supported. If not specified, is “not subscribable” (0).


ReadingList object (SubscribableList)

A List element to hold Reading objects.


ReadingSet object (ReadingSetBase)

A set of Readings of the ReadingType indicated by the parent MeterReading.


ReadingSetList object (SubscribableList)

A List element to hold ReadingSet objects.


ReadingType object (Resource)

Type of data conveyed by a specific Reading. See IEC 61968 Part 9 Annex C for full definitions of these values.


accumulationBehaviour attribute (AccumulationBehaviourType) [0..1]

The accumulation behaviour indicates how the value is represented to accumulate over time.


calorificValue attribute (UnitValueType) [0..1]

The amount of heat generated when a given mass of fuel is completely burned. The CalorificValue is used to convert the measured volume or mass of gas into kWh. The CalorificValue attribute represents the current active value.


commodity attribute (CommodityType) [0..1]

Indicates the commodity applicable to this ReadingType.


conversionFactor attribute (UnitValueType) [0..1]

Accounts for changes in the volume of gas based on temperature and pressure. The ConversionFactor attribute represents the current active value. The ConversionFactor is dimensionless. The default value for the ConversionFactor is 1, which means no conversion is applied. A price server can advertise a new/different value at any time.


dataQualifier attribute (DataQualifierType) [0..1]

The data type can be used to describe a salient attribute of the data. Possible values are average, absolute, etc.


flowDirection attribute (FlowDirectionType) [0..1]

Anything involving current might have a flow direction. Possible values include forward and reverse.


intervalLength attribute (UInt32) [0..1]

Default interval length specified in seconds.


kind attribute (KindType) [0..1]

Compound class that contains kindCategory and kindIndex.


maxNumberOfIntervals attribute (UInt8) [0..1]

To be populated for mirrors of interval data to set the expected number of intervals per ReadingSet. Servers may discard intervals received that exceed this number.


numberOfConsumptionBlocks attribute (UInt8) [0..1]

Number of consumption blocks. 0 means not applicable, and is the default if not specified. The value needs to be at least 1 if any actual prices are provided.


numberOfTouTiers attribute (UInt8) [0..1]

The number of TOU tiers that can be used by any resource configured by this ReadingType. Servers SHALL populate this value with the largest touTier value that will ever be used while this ReadingType is in effect. Servers SHALL set numberOfTouTiers equal to the number of standard TOU tiers plus the number of critical peak pricing (CPP) tiers that may be used while this ReadingType is in effect. Servers SHALL specify a value between 0 and 255 (inclusive) for numberOfTouTiers (servers providing flat rate pricing SHOULD set numberOfTouTiers to 0, as in practice there is no difference between having no tiers and having one tier).


phase attribute (PhaseCode) [0..1]

Contains phase information associated with the type.


powerOfTenMultiplier attribute (PowerOfTenMultiplierType) [0..1]

Indicates the power of ten multiplier applicable to the unit of measure of this ReadingType.


subIntervalLength attribute (UInt32) [0..1]

Default sub-interval length specified in seconds for Readings of ReadingType. Some demand calculations are done over a number of smaller intervals. For example, in a rolling demand calculation, the demand value is defined as the rolling sum of smaller intervals over the intervalLength. The subintervalLength is the length of the smaller interval in this calculation. It SHALL be an integral division of the intervalLength. The number of sub-intervals can be calculated by dividing the intervalLength by the subintervalLength.


supplyLimit attribute (UInt48) [0..1]

Reflects the supply limit set in the meter. This value can be compared to the Reading value to understand if limits are being approached or exceeded. Units follow the same definition as in this ReadingType.


tieredConsumptionBlocks attribute (boolean) [0..1]

Specifies whether or not the consumption blocks are differentiated by TOUTier or not. Default is false, if not specified.


true = consumption accumulated over individual tiers false = consumption accumulated over all tiers

uom attribute (UomType) [0..1]

Indicates the measurement type for the units of measure for the readings of this type.


UsagePoint object (UsagePointBase)

Logical point on a network at which consumption or production is either physically measured (e.g., metered) or estimated (e.g., unmetered street lights).


deviceLFDI attribute (HexBinary160) [0..1]

The LFDI of the source device. This attribute SHALL be present when mirroring.


UsagePointList object (SubscribableList)

A List element to hold UsagePoint objects.


pollRate attribute (UInt32) [0..1] «XSDattribute»

The default polling rate for this function set (this resource and all resources below), in seconds. If not specified, a default of 900 seconds (15 minutes) is used. It is RECOMMENDED that a client poll the resources of this function set every pollRate seconds.


B.2.16.1 MeteringMirror package


image

class Metering Mirror

FunctionSetAssignmentsBase

DeviceCapability

class Metering Mirror

FunctionSetAssignmentsBase

DeviceCapability

class Metering Mirror

FunctionSetAssignmentsBase

DeviceCapability

List

List

List

MirrorMeterReadingList

MirrorMeterReadingList

MirrorMeterReadingList

«XSDattribute»

+ pollRate: UInt32 [0..1] = 900


0..1

«XSDattribute»

+ pollRate: UInt32 [0..1] = 900


0..1

«XSDattribute»

+ pollRate: UInt32 [0..1] = 900


0..1

0..*

MeterReadingBase

MirrorMeterReading

0..*

MeterReadingBase

MirrorMeterReading

0..*

MeterReadingBase

MirrorMeterReading

ListLink

MirrorUsagePointListLink


List

ListLink

MirrorUsagePointListLink


List

ListLink

MirrorUsagePointListLink


List

+ lastUpdateTime: TimeType [0..1]

+ nextUpdateTime: TimeType [0..1]

::IdentifiedObject

+ description: String32 [0..1]

+ mRID: mRIDType

+ version: VersionType [0..1] = 0

«XSDattribute»

::Resource

+ href: anyURI [0..1]

+ lastUpdateTime: TimeType [0..1]

+ nextUpdateTime: TimeType [0..1]

::IdentifiedObject

+ description: String32 [0..1]

+ mRID: mRIDType

+ version: VersionType [0..1] = 0

«XSDattribute»

::Resource

+ href: anyURI [0..1]

+ lastUpdateTime: TimeType [0..1]

+ nextUpdateTime: TimeType [0..1]

::IdentifiedObject

+ description: String32 [0..1]

+ mRID: mRIDType

+ version: VersionType [0..1] = 0

«XSDattribute»

::Resource

+ href: anyURI [0..1]

Resource

Resource

Resource

MirrorUsagePointList

MirrorUsagePointList

MirrorUsagePointList

0..1

0..1

0..1

ReadingType

ReadingType

ReadingType

«XSDattribute»

+ pollRate: UInt32 [0..1] = 900

«XSDattribute»

+ pollRate: UInt32 [0..1] = 900

«XSDattribute»

+ pollRate: UInt32 [0..1] = 900

0..*

0..*

0..*

UsagePointBase

MirrorUsagePoint

UsagePointBase

MirrorUsagePoint

UsagePointBase

MirrorUsagePoint

0..*

0..*

0..*

+ deviceLFDI: HexBinary160

+ postRate: UInt32 [0..1]

+ deviceLFDI: HexBinary160

+ postRate: UInt32 [0..1]

+ deviceLFDI: HexBinary160

+ postRate: UInt32 [0..1]

0..*

ReadingSetBase

MirrorReadingSet

0..*

ReadingSetBase

MirrorReadingSet

0..*

ReadingSetBase

MirrorReadingSet

0..1

0..1

0..1

::ReadingSetBase

+ timePeriod: DateTimeInterval

::IdentifiedObject

+ description: String32 [0..1]

+ mRID: mRIDType

+ version: VersionType [0..1] = 0

«XSDattribute»

::Resource

+ href: anyURI [0..1]

::ReadingSetBase

+ timePeriod: DateTimeInterval

::IdentifiedObject

+ description: String32 [0..1]

+ mRID: mRIDType

+ version: VersionType [0..1] = 0

«XSDattribute»

::Resource

+ href: anyURI [0..1]

::ReadingSetBase

+ timePeriod: DateTimeInterval

::IdentifiedObject

+ description: String32 [0..1]

+ mRID: mRIDType

+ version: VersionType [0..1] = 0

«XSDattribute»

::Resource

+ href: anyURI [0..1]

ReadingBase

ReadingBase

ReadingBase

Reading

Reading

Reading

+ localID: HexBinary16 [0..1]

0..*

«XSDattribute»

+ subscribable: SubscribableType [0..1] = 0

+ localID: HexBinary16 [0..1]

0..*

«XSDattribute»

+ subscribable: SubscribableType [0..1] = 0

+ localID: HexBinary16 [0..1]

0..*

«XSDattribute»

+ subscribable: SubscribableType [0..1] = 0

Figure B.25—Metering mirror


image

class Metering Mirror Inheritance

class Metering Mirror Inheritance

class Metering Mirror Inheritance

Resource

IdentifiedObject

+ description: String32 [0..1]

+ mRID: mRIDType

+ version: VersionType [0..1] = 0

Resource

IdentifiedObject

+ description: String32 [0..1]

+ mRID: mRIDType

+ version: VersionType [0..1] = 0

Resource

IdentifiedObject

+ description: String32 [0..1]

+ mRID: mRIDType

+ version: VersionType [0..1] = 0

UsagePointBase

UsagePointBase

UsagePointBase

MeterReadingBase

MeterReadingBase

MeterReadingBase

ReadingSetBase

ReadingSetBase

ReadingSetBase

+ roleFlags: RoleFlagsType

+ serviceCategoryKind: ServiceKind

+ status: UInt8

+ roleFlags: RoleFlagsType

+ serviceCategoryKind: ServiceKind

+ status: UInt8

+ roleFlags: RoleFlagsType

+ serviceCategoryKind: ServiceKind

+ status: UInt8

+ timePeriod: DateTimeInterval

+ timePeriod: DateTimeInterval

+ timePeriod: DateTimeInterval

UsagePoint

UsagePoint

UsagePoint

MeterReading

MeterReading

MeterReading

ReadingSet

ReadingSet

ReadingSet

+ deviceLFDI: HexBinary160 [0..1]


MirrorUsagePoint

+ deviceLFDI: HexBinary160 [0..1]


MirrorUsagePoint

+ deviceLFDI: HexBinary160 [0..1]


MirrorUsagePoint

MirrorMeterReading

MirrorMeterReading

MirrorMeterReading

MirrorReadingSet

MirrorReadingSet

MirrorReadingSet

+ deviceLFDI: HexBinary160

+ postRate: UInt32 [0..1]

+ deviceLFDI: HexBinary160

+ postRate: UInt32 [0..1]

+ deviceLFDI: HexBinary160

+ postRate: UInt32 [0..1]

+ lastUpdateTime: TimeType [0..1]

0..* + nextUpdateTime: TimeType [0..1]

+ lastUpdateTime: TimeType [0..1]

0..* + nextUpdateTime: TimeType [0..1]

+ lastUpdateTime: TimeType [0..1]

0..* + nextUpdateTime: TimeType [0..1]

0..*

0..*

0..*

0..1

0..1

0..1

0..*

0..*

0..*

Resource

Resource

Resource

ReadingBase

ReadingBase

ReadingBase

BillingReading

BillingReading

BillingReading

Reading

Reading

Reading

+ consumptionBlock: ConsumptionBlockType [0..1] = 0

+ qualityFlags: HexBinary16 [0..1] = 00

+ timePeriod: DateTimeInterval [0..1]

+ touTier: TOUType [0..1] = 0

+ value: Int48 [0..1]

+ consumptionBlock: ConsumptionBlockType [0..1] = 0

+ qualityFlags: HexBinary16 [0..1] = 00

+ timePeriod: DateTimeInterval [0..1]

+ touTier: TOUType [0..1] = 0

+ value: Int48 [0..1]

+ consumptionBlock: ConsumptionBlockType [0..1] = 0

+ qualityFlags: HexBinary16 [0..1] = 00

+ timePeriod: DateTimeInterval [0..1]

+ touTier: TOUType [0..1] = 0

+ value: Int48 [0..1]

+ localID: HexBinary16 [0..1]

«XSDattribute»

+ subscribable: SubscribableType [0..1] = 0

+ localID: HexBinary16 [0..1]

«XSDattribute»

+ subscribable: SubscribableType [0..1] = 0

+ localID: HexBinary16 [0..1]

«XSDattribute»

+ subscribable: SubscribableType [0..1] = 0

Figure B.26—Metering mirror inheritance


MirrorMeterReading object (MeterReadingBase)

Mimic of MeterReading used for managing mirrors.


lastUpdateTime attribute (TimeType) [0..1]

The date and time of the last update.


nextUpdateTime attribute (TimeType) [0..1]

The date and time of the next planned update.


MirrorMeterReadingList object (List)

A list of MirrorMeterReading instances.


MeterReadingBase object (IdentifiedObject)

A container for associating ReadingType, Readings, and ReadingSets.


MirrorReadingSet object (ReadingSetBase)

A set of Readings of the ReadingType indicated by the parent MeterReading.


MirrorUsagePoint object (UsagePointBase)

A parallel to UsagePoint to support mirroring.


deviceLFDI attribute (HexBinary160)

The LFDI of the device being mirrored.


postRate attribute (UInt32) [0..1]

POST rate, or how often mirrored data should be POSTed, in seconds. A client MAY indicate a preferred postRate when POSTing MirrorUsagePoint. A server MAY add or modify postRate to indicate its preferred posting rate.


MirrorUsagePointList object (List)

A list of MirrorUsagePoint instances.


pollRate attribute (UInt32) [0..1] «XSDattribute»

The default polling rate for this function set (this resource and all resources below), in seconds. If not specified, a default of 900 seconds (15 minutes) is used. It is RECOMMENDED that a client poll the resources of this function set every pollRate seconds.


ReadingBase object (Resource)

Specific value measured by a meter or other asset. ReadingBase is abstract, used to define the elements common to Reading and IntervalReading.


consumptionBlock attribute (ConsumptionBlockType) [0..1]

Indicates the consumption block related to the reading. REQUIRED if ReadingType numberOfConsumptionBlocks is non-zero. If not specified, is assumed to be “0 - N/A”.


qualityFlags attribute (HexBinary16) [0..1]

List of codes indicating the quality of the reading, using specification:


Bit 0—valid: Data that have gone through all required validation checks and either passed them all or has been verified.


Bit 1—manually edited: Replaced or approved by a human.


Bit 2—estimated using reference day: Data value was replaced by a machine-computed value based on analysis of historical data using the same type of measurement.


Bit 3—estimated using linear interpolation: Data value was computed using linear interpolation based on the readings before and after it.


Bit 4—questionable: Data that have failed one or more checks.


Bit 5—derived: Data that have been calculated (using logic or mathematical operations), not necessarily measured directly.


Bit 6—projected (forecast): Data that have been calculated as a projection or forecast of future readings.


timePeriod attribute (DateTimeInterval) [0..1]

The time interval associated with the reading. If not specified, then defaults to the intervalLength specified in the associated ReadingType.


touTier attribute (TOUType) [0..1]

Indicates the time of use tier related to the reading. REQUIRED if ReadingType numberOfTouTiers is non- zero. If not specified, is assumed to be “0 - N/A”.


value attribute (Int48) [0..1]

Value in units specified by ReadingType.


ReadingSetBase object (IdentifiedObject)

A set of Readings of the ReadingType indicated by the parent MeterReading. ReadingBase is abstract, used to define the elements common to ReadingSet and IntervalBlock.


timePeriod attribute (DateTimeInterval)

Specifies the time range during which the contained readings were taken.


UsagePointBase Object (IdentifiedObject)

Logical point on a network at which consumption or production is either physically measured (e.g., metered) or estimated (e.g., unmetered street lights). A container for associating ReadingType, Readings, and ReadingSets.


roleFlags attribute (RoleFlagsType)

Specifies the roles that apply to the usage point.


serviceCategoryKind attribute (ServiceKind)

The kind of service provided by this usage point.


status attribute (UInt8)

Specifies the current status of the service at this usage point.


0 = Off


1 = On


B.2.17 Pricing package


Contains definitions of information related to price.


image

Pricing

Resource

FunctionSetAssignmentsBase


0..1

ListLink

TariffProfileListLink


IdentifiedObject

TariffProfile

+ currency: CurrencyCode [0..1]

+ pricePowerOfTenMultiplier: PowerOfTenMultiplierType [0..1]

+ primacy: PrimacyType

+ rateCode: String20 [0..1]

+ serviceCategoryKind: ServiceKind

::IdentifiedObject

+ description: String32 [0..1]

+ mRID: mRIDType

+ version: VersionType [0..1] = 0

«XSDattribute»

::Resource

+ href: anyURI [0..1]

0..1

ListLink

Pricing

Resource

FunctionSetAssignmentsBase


0..1

ListLink

TariffProfileListLink


IdentifiedObject

TariffProfile

+ currency: CurrencyCode [0..1]

+ pricePowerOfTenMultiplier: PowerOfTenMultiplierType [0..1]

+ primacy: PrimacyType

+ rateCode: String20 [0..1]

+ serviceCategoryKind: ServiceKind

::IdentifiedObject

+ description: String32 [0..1]

+ mRID: mRIDType

+ version: VersionType [0..1] = 0

«XSDattribute»

::Resource

+ href: anyURI [0..1]

0..1

ListLink

Pricing

Resource

FunctionSetAssignmentsBase


0..1

ListLink

TariffProfileListLink


IdentifiedObject

TariffProfile

+ currency: CurrencyCode [0..1]

+ pricePowerOfTenMultiplier: PowerOfTenMultiplierType [0..1]

+ primacy: PrimacyType

+ rateCode: String20 [0..1]

+ serviceCategoryKind: ServiceKind

::IdentifiedObject

+ description: String32 [0..1]

+ mRID: mRIDType

+ version: VersionType [0..1] = 0

«XSDattribute»

::Resource

+ href: anyURI [0..1]

0..1

ListLink

ListLink

ConsumptionTariffIntervalListLink


List

ConsumptionTariffIntervalList


0..*

ListLink

ConsumptionTariffIntervalListLink


List

ConsumptionTariffIntervalList


0..*

ListLink

ConsumptionTariffIntervalListLink


List

ConsumptionTariffIntervalList


0..*

Resource

Resource

Resource

ConsumptionTariffInterval

ConsumptionTariffInterval

ConsumptionTariffInterval

ListLink

ListLink

ListLink

RateComponentListLink

RateComponentListLink

RateComponentListLink

ActiveTimeTariffIntervalListLink

ActiveTimeTariffIntervalListLink

ActiveTimeTariffIntervalListLink

0..1

0..1

0..1

IdentifiedObject

RateComponent

IdentifiedObject

RateComponent

IdentifiedObject

RateComponent

ListLink

TimeTariffIntervalListLink

ListLink

TimeTariffIntervalListLink

ListLink

TimeTariffIntervalListLink

1

1

1

+ consumptionBlock: ConsumptionBlockType

+ price: Int32 [0..1]

+ startValue: UInt48

«XSDattribute»

::Resource

+ href: anyURI [0..1]

+ consumptionBlock: ConsumptionBlockType

+ price: Int32 [0..1]

+ startValue: UInt48

«XSDattribute»

::Resource

+ href: anyURI [0..1]

+ consumptionBlock: ConsumptionBlockType

+ price: Int32 [0..1]

+ startValue: UInt48

«XSDattribute»

::Resource

+ href: anyURI [0..1]

+ flowRateEndLimit: UnitValueType [0..1]

+ flowRateStartLimit: UnitValueType [0..1]

+ roleFlags: RoleFlagsType

::IdentifiedObject

+ description: String32 [0..1]

+ mRID: mRIDType

+ version: VersionType [0..1] = 0

«XSDattribute»

::Resource

+ href: anyURI [0..1]

1

+ flowRateEndLimit: UnitValueType [0..1]

+ flowRateStartLimit: UnitValueType [0..1]

+ roleFlags: RoleFlagsType

::IdentifiedObject

+ description: String32 [0..1]

+ mRID: mRIDType

+ version: VersionType [0..1] = 0

«XSDattribute»

::Resource

+ href: anyURI [0..1]

1

+ flowRateEndLimit: UnitValueType [0..1]

+ flowRateStartLimit: UnitValueType [0..1]

+ roleFlags: RoleFlagsType

::IdentifiedObject

+ description: String32 [0..1]

+ mRID: mRIDType

+ version: VersionType [0..1] = 0

«XSDattribute»

::Resource

+ href: anyURI [0..1]

1

RandomizableEvent

TimeTariffInterval

RandomizableEvent

TimeTariffInterval

RandomizableEvent

TimeTariffInterval

0..*


EnvironmentalCost

0..*


EnvironmentalCost

0..*


EnvironmentalCost

Link

ReadingTypeLink

Link

ReadingTypeLink

Link

ReadingTypeLink

+ touTier: TOUType

::RandomizableEvent

+ randomizeDuration: OneHourRangeType [0..1] = 0

+ randomizeStart: OneHourRangeType [0..1] = 0

::Event

+ creationTime: TimeType

+ interval: DateTimeInterval

::RespondableSubscribableIdentifiedObject

+ description: String32 [0..1]

+ mRID: mRIDType

+ version: VersionType [0..1] = 0

«XSDattribute»

::RespondableSubscribableIdentifiedObject

+ subscribable: SubscribableType [0..1] = 0

::RespondableResource

+ replyTo: anyURI [0..1]

+ responseRequired: HexBinary8 [0..1] = 00

::Resource

+ href: anyURI [0..1]

+ touTier: TOUType

::RandomizableEvent

+ randomizeDuration: OneHourRangeType [0..1] = 0

+ randomizeStart: OneHourRangeType [0..1] = 0

::Event

+ creationTime: TimeType

+ interval: DateTimeInterval

::RespondableSubscribableIdentifiedObject

+ description: String32 [0..1]

+ mRID: mRIDType

+ version: VersionType [0..1] = 0

«XSDattribute»

::RespondableSubscribableIdentifiedObject

+ subscribable: SubscribableType [0..1] = 0

::RespondableResource

+ replyTo: anyURI [0..1]

+ responseRequired: HexBinary8 [0..1] = 00

::Resource

+ href: anyURI [0..1]

+ touTier: TOUType

::RandomizableEvent

+ randomizeDuration: OneHourRangeType [0..1] = 0

+ randomizeStart: OneHourRangeType [0..1] = 0

::Event

+ creationTime: TimeType

+ interval: DateTimeInterval

::RespondableSubscribableIdentifiedObject

+ description: String32 [0..1]

+ mRID: mRIDType

+ version: VersionType [0..1] = 0

«XSDattribute»

::RespondableSubscribableIdentifiedObject

+ subscribable: SubscribableType [0..1] = 0

::RespondableResource

+ replyTo: anyURI [0..1]

+ responseRequired: HexBinary8 [0..1] = 00

::Resource

+ href: anyURI [0..1]

0..1

0..1

0..1

+ amount: UInt32

+ costKind: CostKindType

+ costLevel: UInt8

+ numCostLevels: UInt8

+ amount: UInt32

+ costKind: CostKindType

+ costLevel: UInt8

+ numCostLevels: UInt8

+ amount: UInt32

+ costKind: CostKindType

+ costLevel: UInt8

+ numCostLevels: UInt8

UInt8

UInt8

UInt8

CostKindType

CostKindType

CostKindType

UnitValueType

+ multiplier: PowerOfTenMultiplierType

+ unit: UomType

+ value: Int32

UnitValueType

+ multiplier: PowerOfTenMultiplierType

+ unit: UomType

+ value: Int32

UnitValueType

+ multiplier: PowerOfTenMultiplierType

+ unit: UomType

+ value: Int32

notes

0 - Carbon Dioxide emissions, in grams per unit

1 - Sulfur Dioxide emissions, in grams per unit

2 - Nitrogen Oxides emissions, in grams per unit

3 - Renewable generation, as a percentage of overall generation

All other values reserved.

notes

0 - Carbon Dioxide emissions, in grams per unit

1 - Sulfur Dioxide emissions, in grams per unit

2 - Nitrogen Oxides emissions, in grams per unit

3 - Renewable generation, as a percentage of overall generation

All other values reserved.

notes

0 - Carbon Dioxide emissions, in grams per unit

1 - Sulfur Dioxide emissions, in grams per unit

2 - Nitrogen Oxides emissions, in grams per unit

3 - Renewable generation, as a percentage of overall generation

All other values reserved.

Figure B.27—Pricing ConsumptionTariffInterval Object (Resource)

One of a sequence of thresholds defined in terms of consumption quantity of a service such as electricity, water, gas, etc. It defines the steps or blocks in a step tariff structure, where startValue simultaneously defines the entry value of this step and the closing value of the previous step. Where consumption is greater than startValue, it falls within this block and where consumption is less than or equal to startValue, it falls within one of the previous blocks.


consumptionBlock attribute (ConsumptionBlockType)

Indicates the consumption block related to the reading. If not specified, is assumed to be “0 - N/A”.


price attribute (Int32) [0..1]

The charge for this rate component, per unit of measure defined by the associated ReadingType, in currency specified in TariffProfile.


The Pricing service provider determines the appropriate price attribute value based on its applicable regulatory rules. For example, price could be net or inclusive of applicable taxes, fees, or levies.


The Billing function set provides the ability to represent billing information in a more detailed manner.


startValue attribute (UInt48)

The lowest level of consumption that defines the starting point of this consumption step or block. Thresholds start at zero for each billing period.


If specified, the first ConsumptionTariffInterval.startValue for a TimeTariffInteral instance SHALL begin at “0.” Subsequent ConsumptionTariffInterval.startValue elements SHALL be greater than the previous one.


ConsumptionTariffIntervalList Object (List)

A List element to hold ConsumptionTariffInterval objects.


CostKindType Object (UInt8)

0 = Carbon dioxide emissions, in grams per unit


1 = Sulfur dioxide emissions, in grams per unit


2 = Nitrogen oxides emissions, in grams per unit


3 = Renewable generation, as a percentage of overall generation All other values reserved.

EnvironmentalCost Object ()

Provides alternative or secondary price information for the relevant RateComponent. Supports jurisdictions that seek to convey the environmental price per unit of the specified commodity not expressed in currency.


Implementers and consumers can use this attribute to prioritize operations of their HAN devices (e.g., PEV charging during times of high availability of renewable electricity resources).


amount attribute (UInt32)

The estimated or actual environmental or other cost, per commodity unit defined by the ReadingType, for this RateComponent (e.g., grams of carbon dioxide emissions each per kWh).


costKind attribute (CostKindType)

The kind of cost referred to in the amount.


costLevel attribute (UInt8)

The relative level of the amount attribute. In conjunction with numCostLevels, this attribute informs a device of the relative scarcity of the amount attribute (e.g., a high or low availability of renewable generation).


numCostLevels and costLevel values SHALL ascend in order of scarcity, where “0” signals the lowest relative cost and higher values signal increasing cost. For example, if numCostLevels is equal to “3,” then if the lowest relative costLevel were equal to “0,” devices would assume this is the lowest relative period to operate. Likewise, if the costLevel in the next TimeTariffInterval instance is equal to “1,” then the device would assume it is relatively more expensive, in environmental terms, to operate during this TimeTariffInterval instance than the previous one.


There is no limit to the number of relative price levels other than that indicated in the attribute type, but for practicality, service providers should strive for simplicity and recognize the diminishing returns derived from increasing the numCostLevel value greater than four.


numCostLevels attribute (UInt8)

The number of all relative cost levels.


In conjunction with costLevel, numCostLevels signals the relative scarcity of the commodity for the duration of the TimeTariffInterval instance (e.g., a relative indication of cost). This is useful in providing context for nominal cost signals to consumers or devices that might see a range of amount values from different service providers or from the same service provider.


RateComponent Object (IdentifiedObject)

Specifies the applicable charges for a single component of the rate, which could be generation price or consumption price, for example.


flowRateEndLimit attribute (UnitValueType) [0..1]

Specifies the maximum flow rate (e.g., kW for electricity) for which this RateComponent applies, for the usage point and given rate/tariff.


In combination with flowRateStartLimit, allows a service provider to define the demand or output characteristics for the particular tariff design. If a server includes the flowRateEndLimit attribute, then it SHALL also include flowRateStartLimit attribute.


For example, a service provider’s tariff limits customers to 20 kW of demand for the given rate structure. Above this threshold (from 20 kW to 50 kW), there are different demand charges per unit of consumption. The service provider can use flowRateStartLimit and flowRateEndLimit to describe the demand characteristics of the different rates. Similarly, these attributes can be used to describe limits on premises DERs that might be producing a commodity and sending it back into the distribution network.


NOTE—At the time of writing, service provider tariffs with demand-based components were not originally identified as being in scope, and service provider tariffs vary widely in their use of demand components and the method for computing charges. It is expected that industry groups (e.g., OpenSG) will document requirements in the future that the IEEE 2030.5 community can then use as source material for the next version of IEEE Std 2030.5.


flowRateStartLimit attribute (UnitValueType) [0..1]

Specifies the minimum flow rate (e.g., kW for electricity) for which this RateComponent applies, for the usage point and given rate/tariff.


In combination with flowRateEndLimit, allows a service provider to define the demand or output characteristics for the particular tariff design. If a server includes the flowRateStartLimit attribute, then it SHALL also include flowRateEndLimit attribute.


roleFlags attribute (RoleFlagsType)

Specifies the roles that this usage point has been assigned.


RateComponentList object (List)

A List element to hold RateComponent objects.


TariffProfile object (IdentifiedObject)

A schedule of charges; structure that allows the definition of tariff structures such as step (block) and time of use (tier) when used in conjunction with TimeTariffInterval and ConsumptionTariffInterval.


currency attribute (CurrencyCode) [0..1]

The currency code indicating the currency for this TariffProfile.


pricePowerOfTenMultiplier attribute (PowerOfTenMultiplierType) [0..1]

Indicates the power of ten multiplier for the price attribute.


primacy attribute (PrimacyType)

Indicates the relative primacy of the provider of this program.


rateCode attribute (String20) [0..1]

The rate code for this tariff profile. Provided by the Pricing service provider per its internal business needs and practices, and provides a method to identify the specific rate code for the TariffProfile instance. This would typically not be communicated to the user except to facilitate troubleshooting due to its service provider−specific technical nature.


serviceCategoryKind attribute (ServiceKind)

The kind of service provided by this usage point.


TariffProfileList object (SubscribableList)

A List element to hold TariffProfile objects.


pollRate attribute (UInt32) [0..1] «XSDattribute»

The default polling rate for this function set (this resource and all resources below), in seconds. If not specified, a default of 900 seconds (15 minutes) is used. It is RECOMMENDED that a client poll the resources of this function set every pollRate seconds.


TimeTariffInterval object (RandomizableEvent)

Describes the time-differentiated portion of the RateComponent, if applicable, and provides the ability to specify multiple time intervals, each with its own consumption-based components and other attributes.


touTier attribute (TOUType)

Indicates the time of use tier related to the reading. If not specified, is assumed to be “0 - N/A”.


TimeTariffIntervalList object (SubscribableList)

A List element to hold TimeTariffInterval objects.


B.2.18 Messaging package


Contains text message definitions.


Resource

FunctionSetAssignmentsBase



0..1

ListLink

MessagingProgramListLink


SubscribableList

TextMessageList




0..*

Event

TextMessage

+ originator: String20 [0..1]

+ priority: PriorityType

+ textMessage: string

::Event

+ creationTime: TimeType

+ interval: DateTimeInterval

::RespondableSubscribableIdentifiedObject

+ description: String32 [0..1]

+ mRID: mRIDType

+ version: VersionType [0..1] = 0

«XSDattribute»

::RespondableSubscribableIdentifiedObject

+ subscribable: SubscribableType [0..1] = 0

::RespondableResource

+ replyTo: anyURI [0..1]

+ responseRequired: HexBinary8 [0..1] = 00

::Resource

+ href: anyURI [0..1]

image

class TextMessage

class TextMessage

class TextMessage

0..*

0..*

0..*

0..1

0..1

0..1

notes Indicates the priority of a message:

0 - Low

1 - Normal

2 - High

3 - Critical

All other values reserved.

notes Indicates the priority of a message:

0 - Low

1 - Normal

2 - High

3 - Critical

All other values reserved.

notes Indicates the priority of a message:

0 - Low

1 - Normal

2 - High

3 - Critical

All other values reserved.

UInt8

PriorityType

UInt8

PriorityType

UInt8

PriorityType

+ locale: LocaleType

+ primacy: PrimacyType

+ locale: LocaleType

+ primacy: PrimacyType

+ locale: LocaleType

+ primacy: PrimacyType

SubscribableIdentifiedObject

MessagingProgram

SubscribableIdentifiedObject

MessagingProgram

SubscribableIdentifiedObject

MessagingProgram

«XSDattribute»

+ pollRate: UInt32 [0..1] = 900

«XSDattribute»

+ pollRate: UInt32 [0..1] = 900

«XSDattribute»

+ pollRate: UInt32 [0..1] = 900

SubscribableList

MessagingProgramList

SubscribableList

MessagingProgramList

SubscribableList

MessagingProgramList


ListLink

ActiveTextMessageListLink




ListLink

TextMessageListLink




ListLink

ActiveTextMessageListLink




ListLink

TextMessageListLink




ListLink

ActiveTextMessageListLink




ListLink

TextMessageListLink



Figure B.28—TextMessage MessagingProgram object (SubscribableIdentifiedObject)

Provides a container for collections of text messages.


locale attribute (LocaleType)

Indicates the language and region of the messages in this collection.


primacy attribute (PrimacyType)

Indicates the relative primacy of the provider of this program.


MessagingProgramList object (SubscribableList)

A List element to hold MessagingProgram objects.


pollRate attribute (UInt32) [0..1] «XSDattribute»

The default polling rate for this function set (this resource and all resources below), in seconds. If not specified, a default of 900 seconds (15 minutes) is used. It is RECOMMENDED that a client poll the resources of this function set every pollRate seconds.


PriorityType object (UInt8)

Indicates the priority of a message:


0 = Low


1 = Normal


2 = High


3 = Critical


All other values reserved.


TextMessage object (Event)

Text message such as a Notification.


originator attribute (String20) [0..1]

Indicates the human-readable name of the publisher of the message.


priority attribute (PriorityType)

The priority is used to inform the client of the priority of the particular message. Devices with constrained or limited resources for displaying Messages should use this attribute to determine how to handle displaying currently active Messages (e.g., if a device uses a scrolling method with a single Message viewable at a time it MAY want to push a low-priority Message to the background and bring a newly received higher-priority Message to the foreground).


textMessage attribute (string)

The textMessage attribute contains the actual UTF-8 encoded text to be displayed in conjunction with the messageLength attribute which contains the overall length of the textMessage attribute. Clients and servers SHALL support a reception of a Message of 100 bytes in length. Messages that exceed the clients display size will be left to the client to choose what method to handle the message (truncation, scrolling, etc.).


TextMessageList object (SubscribableList)

A List element to hold TextMessage objects.


B.2.19 Billing package


Contains representations of charges and other billing related information.


image

Billing

Billing

Billing

ListLink

CustomerAgreementListLink

ListLink

CustomerAgreementListLink

ListLink

CustomerAgreementListLink

ListLink

ListLink

ListLink

Resource

FunctionSetAssignmentsBase

Resource

FunctionSetAssignmentsBase

Resource

FunctionSetAssignmentsBase

BillingPeriodListLink

BillingPeriodListLink

BillingPeriodListLink

SubscribableList SubscribableList

CustomerAgreementList BillingPeriodList

SubscribableList SubscribableList

CustomerAgreementList BillingPeriodList

SubscribableList SubscribableList

CustomerAgreementList BillingPeriodList

0..1

ListLink

CustomerAccountListLink

0..1

ListLink

CustomerAccountListLink

0..1

ListLink

CustomerAccountListLink

0..*

0..*

0..*

0..*

0..*

0..*

Resource

Resource

Resource

SubscribableList

CustomerAccountList

SubscribableList

CustomerAccountList

SubscribableList

CustomerAccountList

IdentifiedObject

CustomerAgreement

IdentifiedObject

CustomerAgreement

IdentifiedObject

CustomerAgreement

BillingPeriod

BillingPeriod

BillingPeriod

+ serviceAccount: String42 [0..1]

+ serviceLocation: String42 [0..1]

+ serviceAccount: String42 [0..1]

+ serviceLocation: String42 [0..1]

+ serviceAccount: String42 [0..1]

+ serviceLocation: String42 [0..1]

0..1

0..1

0..1

«XSDattribute»

+ pollRate: UInt32 [0..1] = 900

0..*

«XSDattribute»

+ pollRate: UInt32 [0..1] = 900

0..*

«XSDattribute»

+ pollRate: UInt32 [0..1] = 900

0..*

IdentifiedObject

IdentifiedObject

IdentifiedObject

+ billLastPeriod: Int48 [0..1]

+ billToDate: Int48 [0..1]

+ interval: DateTimeInterval

+ statusTimeStamp: TimeType [0..1]

«XSDattribute»

::Resource

+ href: anyURI [0..1]

+ billLastPeriod: Int48 [0..1]

+ billToDate: Int48 [0..1]

+ interval: DateTimeInterval

+ statusTimeStamp: TimeType [0..1]

«XSDattribute»

::Resource

+ href: anyURI [0..1]

+ billLastPeriod: Int48 [0..1]

+ billToDate: Int48 [0..1]

+ interval: DateTimeInterval

+ statusTimeStamp: TimeType [0..1]

«XSDattribute»

::Resource

+ href: anyURI [0..1]

CustomerAccount

+ currency: UInt16

+ customerAccount: String42 [0..1]

+ customerName: String42 [0..1]

+ pricePowerOfTenMultiplier: PowerOfTenMultiplierType

::IdentifiedObject

+ description: String32 [0..1]

+ mRID: mRIDType

+ version: VersionType [0..1] = 0

«XSDattribute»

::Resource

+ href: anyURI [0..1]

CustomerAccount

+ currency: UInt16

+ customerAccount: String42 [0..1]

+ customerName: String42 [0..1]

+ pricePowerOfTenMultiplier: PowerOfTenMultiplierType

::IdentifiedObject

+ description: String32 [0..1]

+ mRID: mRIDType

+ version: VersionType [0..1] = 0

«XSDattribute»

::Resource

+ href: anyURI [0..1]

CustomerAccount

+ currency: UInt16

+ customerAccount: String42 [0..1]

+ customerName: String42 [0..1]

+ pricePowerOfTenMultiplier: PowerOfTenMultiplierType

::IdentifiedObject

+ description: String32 [0..1]

+ mRID: mRIDType

+ version: VersionType [0..1] = 0

«XSDattribute»

::Resource

+ href: anyURI [0..1]

Link

Link

Link

Link

Link

Link

ServiceSupplierLink

ServiceSupplierLink

ServiceSupplierLink

UsagePointLink

UsagePointLink

UsagePointLink

0..1

0..1

0..1

IdentifiedObject

ServiceSupplier

IdentifiedObject

ServiceSupplier

IdentifiedObject

ServiceSupplier

Link

Link

Link

PrepaymentLink

PrepaymentLink

PrepaymentLink

+ email: String32 [0..1]

+ phone: String20 [0..1]

+ providerID: UInt32 [0..1]

+ web: String42 [0..1]

+ email: String32 [0..1]

+ phone: String20 [0..1]

+ providerID: UInt32 [0..1]

+ web: String42 [0..1]

+ email: String32 [0..1]

+ phone: String20 [0..1]

+ providerID: UInt32 [0..1]

+ web: String42 [0..1]

Link

Link

Link

TariffProfileLink

TariffProfileLink

TariffProfileLink

Figure B.29—Billing


image

class Billing Readings

class Billing Readings

class Billing Readings

IdentifiedObject

CustomerAgreement

IdentifiedObject

CustomerAgreement

IdentifiedObject

CustomerAgreement

Resource

Resource

Resource

+ serviceAccount: String42 [0..1]

+ serviceLocation: String42 [0..1]

+ serviceAccount: String42 [0..1]

+ serviceLocation: String42 [0..1]

+ serviceAccount: String42 [0..1]

+ serviceLocation: String42 [0..1]

ReadingBase

ReadingBase

ReadingBase

0..1

0..1

0..1

+ consumptionBlock: ConsumptionBlockType [0..1] = 0

+ qualityFlags: HexBinary16 [0..1] = 00

+ timePeriod: DateTimeInterval [0..1]

+ touTier: TOUType [0..1] = 0

+ value: Int48 [0..1]

+ consumptionBlock: ConsumptionBlockType [0..1] = 0

+ qualityFlags: HexBinary16 [0..1] = 00

+ timePeriod: DateTimeInterval [0..1]

+ touTier: TOUType [0..1] = 0

+ value: Int48 [0..1]

+ consumptionBlock: ConsumptionBlockType [0..1] = 0

+ qualityFlags: HexBinary16 [0..1] = 00

+ timePeriod: DateTimeInterval [0..1]

+ touTier: TOUType [0..1] = 0

+ value: Int48 [0..1]

ListLink

HistoricalReadingListLink

ListLink

HistoricalReadingListLink

ListLink

HistoricalReadingListLink

ListLink

TargetReadingListLink

ListLink

TargetReadingListLink

ListLink

TargetReadingListLink

ListLink

ProjectionReadingListLink

ListLink

ProjectionReadingListLink

ListLink

ProjectionReadingListLink

ListLink

BillingReadingListLink

ListLink

BillingReadingListLink

ListLink

BillingReadingListLink

List List List

HistoricalReadingList TargetReadingList ProjectionReadingList

List List List

HistoricalReadingList TargetReadingList ProjectionReadingList

List List List

HistoricalReadingList TargetReadingList ProjectionReadingList

List

List

List

0..*

0..*

0..*

0..*

0..*

0..*

0..*

0..*

0..*

BillingReadingList

BillingReadingList

BillingReadingList

HistoricalReading

HistoricalReading

HistoricalReading

TargetReading

TargetReading

TargetReading

ProjectionReading

ProjectionReading

ProjectionReading

0..*


BillingReading

0..*


BillingReading

0..*


BillingReading

Link

ReadingTypeLink

Link

ReadingTypeLink

Link

ReadingTypeLink

BillingMeterReadingBase

BillingMeterReadingBase

BillingMeterReadingBase

0..1

0..1

0..1

0..1

0..1

0..1

ListLink

BillingReadingSetListLink

ListLink

BillingReadingSetListLink

ListLink

BillingReadingSetListLink

0..*


Charge

0..*


Charge

0..*


Charge

SubscribableList

BillingReadingSetList

SubscribableList

BillingReadingSetList

SubscribableList

BillingReadingSetList

+ description: String20 [0..1]

+ kind: ChargeKind [0..1]

+ value: Int32

+ description: String20 [0..1]

+ kind: ChargeKind [0..1]

+ value: Int32

+ description: String20 [0..1]

+ kind: ChargeKind [0..1]

+ value: Int32

IdentifiedObject

MeterReadingBase

IdentifiedObject

MeterReadingBase

IdentifiedObject

MeterReadingBase

0..*

0..*

0..*

UInt8

UInt8

UInt8

ChargeKind

ChargeKind

ChargeKind

::IdentifiedObject

+ description: String32 [0..1]

+ mRID: mRIDType

+ version: VersionType [0..1] = 0

«XSDattribute»

::Resource

+ href: anyURI [0..1]

::IdentifiedObject

+ description: String32 [0..1]

+ mRID: mRIDType

+ version: VersionType [0..1] = 0

«XSDattribute»

::Resource

+ href: anyURI [0..1]

::IdentifiedObject

+ description: String32 [0..1]

+ mRID: mRIDType

+ version: VersionType [0..1] = 0

«XSDattribute»

::Resource

+ href: anyURI [0..1]

BillingReadingSet

BillingReadingSet

BillingReadingSet

0..1

0..1

0..1

IdentifiedObject

ReadingSetBase

IdentifiedObject

ReadingSetBase

IdentifiedObject

ReadingSetBase

notes

Kind of charge.

0 - Consumption Charge

1 - Rebate

2 - Auxiliary Charge

3 - Demand Charge

4 - Tax Charge

notes

Kind of charge.

0 - Consumption Charge

1 - Rebate

2 - Auxiliary Charge

3 - Demand Charge

4 - Tax Charge

notes

Kind of charge.

0 - Consumption Charge

1 - Rebate

2 - Auxiliary Charge

3 - Demand Charge

4 - Tax Charge

+ timePeriod: DateTimeInterval

+ timePeriod: DateTimeInterval

+ timePeriod: DateTimeInterval

Figure B.30—Billing readings


BillingPeriod object (Resource)

BillingPeriod relates to the period of time on which a customer is billed. As an example, the billing period interval for a particular customer might be 31 days starting 1 July 2011. The start date and interval can change on each billing period. There may also be multiple billing periods related to a customer agreement to support different tariff structures.


billLastPeriod attribute (Int48) [0..1]

The amount of the bill for the previous billing period.


billToDate attribute (Int48) [0..1]

The bill amount related to the billing period as of the statusTimeStamp.


interval attribute (DateTimeInterval)

The time interval for this billing period.


statusTimeStamp attribute (TimeType) [0..1]

The date/time of the last update of this resource.


BillingPeriodList object (SubscribableList)

A List element to hold BillingPeriod objects.


BillingMeterReadingBase object (MeterReadingBase)

Contains historical, target, and projection readings of various types, possibly associated with charges.


BillingReading object (ReadingBase)

Data captured at regular intervals of time. Interval data could be captured as incremental data, absolute data, or relative data. The source for the data is usually a tariff quantity or an engineering quantity. Data is typically captured in time-tagged, uniform, fixed-length intervals of 5 minutes, 10 minutes, 15 minutes, 30 minutes, or 60 minutes. However, consumption aggregations can also be represented with this class.


BillingReadingList object (List)

A List element to hold BillingReading objects.


BillingReadingSet object (ReadingSetBase)

Time sequence of readings of the same reading type.


BillingReadingSetList object (SubscribableList)

A List element to hold BillingReadingSet objects.


Charge object ()

Charge contains charges on a customer bill. These could be items like taxes, levies, surcharges, rebates, or others. This is meant to allow the HAN device to retrieve enough information to be able to reconstruct an estimate of what the total bill would look like.


Providers can provide line-item billing, including multiple charge kinds (e.g., taxes, surcharges) at whatever granularity is desired, using as many Charges as desired during a billing period. There can also be any number of Charges associated with different ReadingTypes to distinguish between TOU tiers, consumption blocks, or demand charges.


description attribute (String20) [0..1]

A description of the charge.


kind attribute (ChargeKind) [0..1]

The type (kind) of charge.


value attribute (Int32)

A monetary charge.


ChargeKind object (UInt8)

Kind of charge.


0 = Consumption charge


1 = Rebate


2 = Auxiliary charge


3 = Demand charge


4 = Tax charge


CustomerAccount object (IdentifiedObject)

Assignment of a group of products and services purchased by the Customer through a CustomerAgreement, used as a mechanism for customer billing and payment. It contains common information from the various types of CustomerAgreements to create billings (invoices) for a Customer and receive payment.


currency attribute (UInt16)

The ISO 4217 code indicating the currency applicable to the bill amounts in the summary. See list at http://www.unece.org/cefact/recommendations/rec09/rec09_ecetrd203.pdf.


customerAccount attribute (String42) [0..1]

The account number for the customer (if applicable).


customerName attribute (String42) [0..1]

The name of the customer.


pricePowerOfTenMultiplier attribute (PowerOfTenMultiplierType)

Indicates the power of ten multiplier for the prices in this function set.


CustomerAccountList object (SubscribableList)

A List element to hold CustomerAccount objects.


pollRate attribute (UInt32) [0..1] «XSDattribute»

The default polling rate for this function set (this resource and all resources below), in seconds. If not specified, a default of 900 seconds (15 minutes) is used. It is RECOMMENDED that a client poll the resources of this function set every pollRate seconds.


CustomerAgreement object (IdentifiedObject)

Agreement between the customer and the service supplier to pay for service at a specific service location. It records certain billing information about the type of service provided at the service location and is used during charge creation to determine the type of service.


serviceAccount attribute (String42) [0..1]

The account number of the service account (if applicable).


serviceLocation attribute (String42) [0..1]

The address or textual description of the service location.


CustomerAgreementList Object (SubscribableList)

A List element to hold CustomerAgreement objects.


HistoricalReading object (BillingMeterReadingBase)

To be used to present readings that have been processed and possibly corrected (as allowed, due to missing or incorrect data) by backend systems. This includes quality codes valid, verified, estimated, and derived/corrected.


HistoricalReadingList object (List)

A List element to hold HistoricalReading objects.


ProjectionReading object (BillingMeterReadingBase)

Contains values that forecast a future reading for the time or interval specified.


ProjectionReadingList object (List)

A List element to hold ProjectionReading objects.


TargetReading object (BillingMeterReadingBase)

Contains readings that specify a target or goal, such as a consumption target, to which billing incentives or other contractual ramifications may be associated.


TargetReadingList object (List)

A List element to hold TargetReading objects.


ServiceSupplier object (IdentifiedObject)

Organization that provides services to customers.


email attribute (String32) [0..1]

E-mail address for this service supplier.


phone attribute (String20) [0..1]

Human-readable phone number for this service supplier.


providerID attribute (UInt32) [0..1]

Contains the IANA PEN for the commodity provider.


web attribute (String42) [0..1]

Website URI address for this service supplier.


ServiceSupplierList object (List)

A List element to hold ServiceSupplier objects.


B.2.20 Prepayment package


Contains definitions related to storing and using payments.


List

SupplyInterruptionOverrideList



0..*

Resource

SupplyInterruptionOverride

+ description: String32 [0..1]

+ interval: DateTimeInterval


image

class Prepayment

class Prepayment

class Prepayment

0..1

0..1

0..1

0..*

0..*

0..*

0..1

0..1

0..1

Link

1 PrepayOperationStatusLink

Link

1 PrepayOperationStatusLink

Link

1 PrepayOperationStatusLink

1

1

1

Resource

PrepayOperationStatus

+ creditTypeChange: CreditTypeChange [0..1]

+ creditTypeInUse: CreditTypeType [0..1]

+ serviceChange: ServiceChange [0..1]

+ serviceStatus: ServiceStatusType

Resource

PrepayOperationStatus

+ creditTypeChange: CreditTypeChange [0..1]

+ creditTypeInUse: CreditTypeType [0..1]

+ serviceChange: ServiceChange [0..1]

+ serviceStatus: ServiceStatusType

Resource

PrepayOperationStatus

+ creditTypeChange: CreditTypeChange [0..1]

+ creditTypeInUse: CreditTypeType [0..1]

+ serviceChange: ServiceChange [0..1]

+ serviceStatus: ServiceStatusType

0..*

IdentifiedObject

CreditRegister

+ creditAmount: AccountingUnit

+ creditType: CreditTypeType [0..1]

+ effectiveTime: TimeType

+ token: String32

0..*

IdentifiedObject

CreditRegister

+ creditAmount: AccountingUnit

+ creditType: CreditTypeType [0..1]

+ effectiveTime: TimeType

+ token: String32

0..*

IdentifiedObject

CreditRegister

+ creditAmount: AccountingUnit

+ creditType: CreditTypeType [0..1]

+ effectiveTime: TimeType

+ token: String32

AccountingUnit

+ energyUnit: RealEnergy [0..1]

+ monetaryUnit: CurrencyCode

+ multiplier: PowerOfTenMultiplierType

+ value: Int32

AccountingUnit

+ energyUnit: RealEnergy [0..1]

+ monetaryUnit: CurrencyCode

+ multiplier: PowerOfTenMultiplierType

+ value: Int32

AccountingUnit

+ energyUnit: RealEnergy [0..1]

+ monetaryUnit: CurrencyCode

+ multiplier: PowerOfTenMultiplierType

+ value: Int32

RealEnergy

+ multiplier: PowerOfTenMultiplierType

+ value: UInt48

RealEnergy

+ multiplier: PowerOfTenMultiplierType

+ value: UInt48

RealEnergy

+ multiplier: PowerOfTenMultiplierType

+ value: UInt48

UInt8

PrepayModeType

UInt8

PrepayModeType

UInt8

PrepayModeType

UInt8

CreditStatusType

UInt8

CreditStatusType

UInt8

CreditStatusType

UInt8

UInt8

UInt8

UInt8

ServiceStatusType

UInt8

ServiceStatusType

UInt8

ServiceStatusType

CreditTypeType

notes notes

0 - Central Wallet 0 - Credit Ok notes

1 - ESI 1 - Credit Low 0 - Regular

2 - Local 2 - Credit Exhausted 1 - Emergency

3 - Credit 3 - Credit Negative 2 - Regular, then Emergency

All other values All other values 3 - Emergency, then Regular

reserved. reserved. All other values reserved.

CreditTypeType

notes notes

0 - Central Wallet 0 - Credit Ok notes

1 - ESI 1 - Credit Low 0 - Regular

2 - Local 2 - Credit Exhausted 1 - Emergency

3 - Credit 3 - Credit Negative 2 - Regular, then Emergency

All other values All other values 3 - Emergency, then Regular

reserved. reserved. All other values reserved.

CreditTypeType

notes notes

0 - Central Wallet 0 - Credit Ok notes

1 - ESI 1 - Credit Low 0 - Regular

2 - Local 2 - Credit Exhausted 1 - Emergency

3 - Credit 3 - Credit Negative 2 - Regular, then Emergency

All other values All other values 3 - Emergency, then Regular

reserved. reserved. All other values reserved.

notes

0 - Connected

1 - Disconnected

2 - Armed for Connect

3 - Armed for Disconnect

4 - No Contactor

5 - Load Limited

All other values reserved.

notes

0 - Connected

1 - Disconnected

2 - Armed for Connect

3 - Armed for Disconnect

4 - No Contactor

5 - Load Limited

All other values reserved.

notes

0 - Connected

1 - Disconnected

2 - Armed for Connect

3 - Armed for Disconnect

4 - No Contactor

5 - Load Limited

All other values reserved.

+ newType: CreditTypeType

+ startTime: TimeType

+ newType: CreditTypeType

+ startTime: TimeType

+ newType: CreditTypeType

+ startTime: TimeType

CreditTypeChange

CreditTypeChange

CreditTypeChange

+ newStatus: ServiceStatusType

+ startTime: TimeType

+ newStatus: ServiceStatusType

+ startTime: TimeType

+ newStatus: ServiceStatusType

+ startTime: TimeType

ServiceChange

ServiceChange

ServiceChange

+ availableCredit: AccountingUnit

+ creditStatus: CreditStatusType [0..1]

+ emergencyCredit: AccountingUnit [0..1]

+ emergencyCreditStatus: CreditStatusType [0..1]

+ availableCredit: AccountingUnit

+ creditStatus: CreditStatusType [0..1]

+ emergencyCredit: AccountingUnit [0..1]

+ emergencyCreditStatus: CreditStatusType [0..1]

+ availableCredit: AccountingUnit

+ creditStatus: CreditStatusType [0..1]

+ emergencyCredit: AccountingUnit [0..1]

+ emergencyCreditStatus: CreditStatusType [0..1]

AccountBalance

AccountBalance

AccountBalance

Resource

Resource

Resource

ListLink

SupplyInterruptionOverrideListLink

ListLink

SupplyInterruptionOverrideListLink

ListLink

SupplyInterruptionOverrideListLink

ListLink

CreditRegisterListLink

ListLink

CreditRegisterListLink

ListLink

CreditRegisterListLink

+ creditExpiryLevel: AccountingUnit [0..1]

+ lowCreditWarningLevel: AccountingUnit [0..1]

+ lowEmergencyCreditWarningLevel: AccountingUnit [0..1]

+ prepayMode: PrepayModeType

+ creditExpiryLevel: AccountingUnit [0..1]

+ lowCreditWarningLevel: AccountingUnit [0..1]

+ lowEmergencyCreditWarningLevel: AccountingUnit [0..1]

+ prepayMode: PrepayModeType

+ creditExpiryLevel: AccountingUnit [0..1]

+ lowCreditWarningLevel: AccountingUnit [0..1]

+ lowEmergencyCreditWarningLevel: AccountingUnit [0..1]

+ prepayMode: PrepayModeType

Prepayment

Prepayment

Prepayment

IdentifiedObject

IdentifiedObject

IdentifiedObject

«XSDattribute»

+ pollRate: UInt32 [0..1] = 900

«XSDattribute»

+ pollRate: UInt32 [0..1] = 900

«XSDattribute»

+ pollRate: UInt32 [0..1] = 900

SubscribableList

PrepaymentList

SubscribableList

PrepaymentList

SubscribableList

PrepaymentList

Link

AccountBalanceLink

Link

AccountBalanceLink

Link

AccountBalanceLink

Link

UsagePointLink

Link

UsagePointLink

Link

UsagePointLink

PrepaymentListLink

PrepaymentListLink

PrepaymentListLink

ListLink

ListLink

ListLink

Resource

FunctionSetAssignmentsBase

Resource

FunctionSetAssignmentsBase

Resource

FunctionSetAssignmentsBase

List

CreditRegisterList

List

CreditRegisterList

List

CreditRegisterList

Figure B.31—Prepayment AccountBalance object (Resource)

AccountBalance contains the regular credit and emergency credit balance for this given service or commodity prepay instance. It may also contain status information concerning the balance data.


availableCredit attribute (AccountingUnit)

AvailableCredit shows the balance of the sum of credits minus the sum of charges. In a Central Wallet mode this value may be passed down to the Prepayment server via an out-of-band mechanism. In Local or ESI modes, this value may be calculated based upon summation of CreditRegister transactions minus consumption charges calculated using Metering (and possibly Pricing) function set data. This value may be negative; for instance, if disconnection is prevented due to a Supply Interruption Override.


creditStatus attribute (CreditStatusType) [0..1]

CreditStatus identifies whether the present value of availableCredit is considered OK, low, exhausted, or negative.


emergencyCredit attribute (AccountingUnit) [0..1]

EmergencyCredit is the amount of credit still available for the given service or commodity prepayment instance. If both availableCredit and emergyCredit are exhausted, then service will typically be disconnected.


emergencyCreditStatus attribute (CreditStatusType) [0..1]

EmergencyCreditStatus identifies whether the present value of emergencyCredit is considered OK, low, exhausted, or negative.


AccountingUnit object ()

Unit for accounting; use either “energyUnit” or “currencyUnit” to specify the unit for “value.”


energyUnit attribute (RealEnergy) [0..1]

Unit of service.


monetaryUnit attribute (CurrencyCode)

Unit of currency.


multiplier attribute (PowerOfTenMultiplierType)

Multiplier for the “energyUnit” or “monetaryUnit”.


value attribute (Int32)

Value of the monetary aspect.


CreditRegister object (IdentifiedObject)

CreditRegister instances define a credit-modifying transaction. Typically this would be a credit-adding transaction, but may be a subtracting transaction (perhaps in response to an out-of-band debt signal).


creditAmount attribute (AccountingUnit)

CreditAmount is the amount of credit being added by a particular CreditRegister transaction. Negative values indicate that credit is being subtracted.


creditType attribute (CreditTypeType) [0..1]

CreditType indicates whether the credit transaction applies to regular or emergency credit.


effectiveTime attribute (TimeType)

EffectiveTime identifies the time at which the credit transaction goes into effect. For credit addition transactions, this is typically the moment at which the transaction takes place. For credit subtraction transactions, (e.g., non-fuel debt recovery transactions initiated from a back-haul or ESI) this may be a future time at which credit is deducted.


token attribute (String32)

Token is security data that authenticates the legitimacy of the transaction. The details of this token are not defined by IEEE Std 2030.5. How a Prepayment server handles this field is left as vendor-specific implementation or will be defined by one or more other standards.


CreditRegisterList object (List)

A List element to hold CreditRegister objects.


Prepayment object (IdentifiedObject)

Prepayment (inherited from CIM SDPAccountingFunction).


creditExpiryLevel attribute (AccountingUnit) [0..1]

CreditExpiryLevel is the set point for availableCredit at which the service level may be changed. The typical value for this attribute is 0, regardless of whether the account balance is measured in a monetary or commodity basis. The units for this attribute SHALL match the units used for availableCredit.


lowCreditWarningLevel attribute (AccountingUnit) [0..1]

LowCreditWarningLevel is the set point for availableCredit at which the creditStatus attribute in the AccountBalance resource SHALL indicate that available credit is low. The units for this attribute SHALL match the units used for availableCredit. Typically, this value is set by the service provider.


lowEmergencyCreditWarningLevel attribute (AccountingUnit) [0..1] LowEmergencyCreditWarningLevel is the set point for emergencyCredit at which the creditStatus attribute in the AccountBalance resource SHALL indicate that emergencyCredit is low. The units for this attribute SHALL match the units used for availableCredit. Typically, this value is set by the service provider.


prepayMode attribute (PrepayModeType)

PrepayMode specifies whether the given Prepayment instance is operating in Credit, Central Wallet, ESI, or Local Prepayment mode. The Credit mode indicates that prepayment is not presently in effect. The other modes are described in 10.8.1 (overview).


PrepaymentList object (SubscribableList)

A List element to hold Prepayment objects.


pollRate attribute (UInt32) [0..1] «XSDattribute»

The default polling rate for this function set (this resource and all resources below), in seconds. If not specified, a default of 900 seconds (15 minutes) is used. It is RECOMMENDED that a client poll the resources of this function set every pollRate seconds.


PrepayModeType object (UInt8)

0 = Central wallet


1 = ESI


2 = Local


3 = Credit


All other values reserved.


PrepayOperationStatus object (Resource)

PrepayOperationStatus describes the status of the service or commodity being conditionally controlled by the Prepayment function set.


creditTypeChange attribute (CreditTypeChange) [0..1]

CreditTypeChange is used to define a pending change of creditTypeInUse, which will activate at a specified time.


creditTypeInUse attribute (CreditTypeType) [0..1]

CreditTypeInUse identifies whether the present mode of operation is consuming regular credit or emergency credit.


serviceChange attribute (ServiceChange) [0..1]

ServiceChange is used to define a pending change of serviceStatus, which will activate at a specified time.


serviceStatus attribute (ServiceStatusType)

ServiceStatus identifies whether the service is connected or disconnected, or armed for connection or disconnection.


ServiceChange object ()

Specifies a change to the service status.


newStatus attribute (ServiceStatusType)

The new service status, to take effect at the time specified by startTime.


startTime attribute (TimeType)

The date/time when the change is to take effect.


SupplyInterruptionOverride object (Resource)

There may be periods of time when social, regulatory, or other concerns mean that service should not be interrupted, even when available credit has been exhausted. Each Prepayment instance links to a List of SupplyInterruptionOverride instances. Each SupplyInterruptionOverride defines a contiguous period of time during which supply SHALL NOT be interrupted.


description attribute (String32) [0..1]

The description is a human-readable text describing or naming the object.


interval attribute (DateTimeInterval)

Interval defines the period of time during which supply should not be interrupted.


SupplyInterruptionOverrideList object (List)

A List element to hold SupplyInterruptionOverride objects.


CreditStatusType object (UInt8)

0 = Credit OK


1 = Credit low


2 = Credit exhausted


3 = Credit negative


All other values reserved.


CreditTypeType object (UInt8)

0 = Regular


1 = Emergency


2 = Regular, then emergency


3 = Emergency, then regular All other values reserved.

CreditTypeChange object ()

Specifies a change to the credit type.


newType attribute (CreditTypeType)

The new credit type, to take effect at the time specified by startTime.


startTime attribute (TimeType)

The date/time when the change is to take effect.


ServiceStatusType object (UInt8)

0 = Connected


1 = Disconnected


2 = Armed for connect


3 = Armed for disconnect


4 = No contactor


5 = Load limited


All other values reserved.


B.2.21 FlowReservation package


Contains flow (charge) reservation model to allow fine-grained control of high-demand loads such as fast- charging batteries.


image

class FlowReservation

AbstractDevice

EndDevice

+ changedTime: TimeType

+ enabled: boolean [0..1] = true

+ postRate: UInt32 [0..1]


0..1

class FlowReservation

AbstractDevice

EndDevice

+ changedTime: TimeType

+ enabled: boolean [0..1] = true

+ postRate: UInt32 [0..1]


0..1

class FlowReservation

AbstractDevice

EndDevice

+ changedTime: TimeType

+ enabled: boolean [0..1] = true

+ postRate: UInt32 [0..1]


0..1

ListLink

ListLink

ListLink

ListLink

ListLink

ListLink

FlowReservationRequestListLink FlowReservationResponseListLink


List

FlowReservationRequestListLink FlowReservationResponseListLink


List

FlowReservationRequestListLink FlowReservationResponseListLink


List

FlowReservationRequestList

FlowReservationRequestList

FlowReservationRequestList

SubscribableList

FlowReservationResponseList

SubscribableList

FlowReservationResponseList

SubscribableList

FlowReservationResponseList

«XSDattribute»

+ pollRate: UInt32 [0..1] = 900

«XSDattribute»

+ pollRate: UInt32 [0..1] = 900

«XSDattribute»

+ pollRate: UInt32 [0..1] = 900

«XSDattribute»

+ pollRate: UInt32 [0..1] = 900

«XSDattribute»

+ pollRate: UInt32 [0..1] = 900

«XSDattribute»

+ pollRate: UInt32 [0..1] = 900

0..*

0..*

0..*

0..*

0..*

0..*

IdentifiedObject Event

FlowReservationRequest

IdentifiedObject Event

FlowReservationRequest

IdentifiedObject Event

FlowReservationRequest

FlowReservationResponse

FlowReservationResponse

FlowReservationResponse

+

+

+

+

+

+

+

+

+

+

+

+

+

+

+

creationTime: TimeType

durationRequested: UInt16 [0..1] energyRequested: SignedRealEnergy intervalRequested: DateTimeInterval powerRequested: ActivePower

creationTime: TimeType

durationRequested: UInt16 [0..1] energyRequested: SignedRealEnergy intervalRequested: DateTimeInterval powerRequested: ActivePower

creationTime: TimeType

durationRequested: UInt16 [0..1] energyRequested: SignedRealEnergy intervalRequested: DateTimeInterval powerRequested: ActivePower

+ energyAvailable: SignedRealEnergy

+ powerAvailable: ActivePower

+ subject: mRIDType

+ energyAvailable: SignedRealEnergy

+ powerAvailable: ActivePower

+ subject: mRIDType

+ energyAvailable: SignedRealEnergy

+ powerAvailable: ActivePower

+ subject: mRIDType

::IdentifiedObject

+ description: String32 [0..1]

+ mRID: mRIDType

+ version: VersionType [0..1] = 0

«XSDattribute»

::IdentifiedObject

+ description: String32 [0..1]

+ mRID: mRIDType

+ version: VersionType [0..1] = 0

«XSDattribute»

::IdentifiedObject

+ description: String32 [0..1]

+ mRID: mRIDType

+ version: VersionType [0..1] = 0

«XSDattribute»

::Event

+ creationTime: TimeType

+ interval: DateTimeInterval

::RespondableSubscribableIdentifiedObject

+

+

+

::Event

+ creationTime: TimeType

+ interval: DateTimeInterval

::RespondableSubscribableIdentifiedObject

+

+

+

::Event

+ creationTime: TimeType

+ interval: DateTimeInterval

::RespondableSubscribableIdentifiedObject

+

+

+

::Resource

::Resource

::Resource

description: String32 [0..1]

mRID: mRIDType

version: VersionType [0..1] = 0

«XSDattribute»

description: String32 [0..1]

mRID: mRIDType

version: VersionType [0..1] = 0

«XSDattribute»

description: String32 [0..1]

mRID: mRIDType

version: VersionType [0..1] = 0

«XSDattribute»

+ href: anyURI [0..1]


1


RequestStatus

+ dateTime: TimeType

+ requestStatus: UInt8

+ href: anyURI [0..1]


1


RequestStatus

+ dateTime: TimeType

+ requestStatus: UInt8

+ href: anyURI [0..1]


1


RequestStatus

+ dateTime: TimeType

+ requestStatus: UInt8

requestStatus

Field representing the request status type.

0 = Requested

1 = Cancelled All other values reserved.

requestStatus

Field representing the request status type.

0 = Requested

1 = Cancelled All other values reserved.

requestStatus

Field representing the request status type.

0 = Requested

1 = Cancelled All other values reserved.

::RespondableSubscribableIdentifiedObject

+ subscribable: SubscribableType [0..1] = 0

::RespondableResource

+ replyTo: anyURI [0..1]

+ responseRequired: HexBinary8 [0..1] = 00

::Resource

::RespondableSubscribableIdentifiedObject

+ subscribable: SubscribableType [0..1] = 0

::RespondableResource

+ replyTo: anyURI [0..1]

+ responseRequired: HexBinary8 [0..1] = 00

::Resource

::RespondableSubscribableIdentifiedObject

+ subscribable: SubscribableType [0..1] = 0

::RespondableResource

+ replyTo: anyURI [0..1]

+ responseRequired: HexBinary8 [0..1] = 00

::Resource

+

+

+

href: anyURI [0..1]

href: anyURI [0..1]

href: anyURI [0..1]

SignedRealEnergy

SignedRealEnergy

SignedRealEnergy

ActivePower

ActivePower

ActivePower

+ multiplier: PowerOfTenMultiplierType

+ value: Int48

+ multiplier: PowerOfTenMultiplierType

+ value: Int48

+ multiplier: PowerOfTenMultiplierType

+ value: Int48

+ multiplier: PowerOfTenMultiplierType

+ value: Int16

notes

+ multiplier: PowerOfTenMultiplierType

+ value: Int16

notes

+ multiplier: PowerOfTenMultiplierType

+ value: Int16

notes

The active (real) power P (in W) is the product of

RealEnergy root-mean-square (RMS) voltage, RMS current,

and cos(theta) where theta is the phase angle of

+ multiplier: PowerOfTenMultiplierType current relative to voltage. It is the primary

+ value: UInt48 measure of the rate of flow of energy.

The active (real) power P (in W) is the product of

RealEnergy root-mean-square (RMS) voltage, RMS current,

and cos(theta) where theta is the phase angle of

+ multiplier: PowerOfTenMultiplierType current relative to voltage. It is the primary

+ value: UInt48 measure of the rate of flow of energy.

The active (real) power P (in W) is the product of

RealEnergy root-mean-square (RMS) voltage, RMS current,

and cos(theta) where theta is the phase angle of

+ multiplier: PowerOfTenMultiplierType current relative to voltage. It is the primary

+ value: UInt48 measure of the rate of flow of energy.

Figure B.32—FlowReservation


RequestStatus object ()

The RequestStatus object is used to indicate the current status of a Flow Reservation Request.


dateTime attribute (TimeType)

The dateTime attribute will provide a timestamp of when the request status was set. dateTime MUST be set to the time at which the status change occurred, not a time in the future or past.


requestStatus attribute (UInt8)

Field representing the request status type.


0 = Requested


1 = Cancelled


All other values reserved.


FlowReservationRequest object (IdentifiedObject)

Used to request flow transactions. Client EndDevices submit a request for charging or discharging from the server. The server creates an associated FlowReservationResponse containing the charging parameters and interval to provide a lower aggregated demand at the premises, or within a larger part of the distribution system.


creationTime attribute (TimeType)

The time at which the request was created.


durationRequested attribute (UInt16) [0..1]

A value that is calculated by the storage device that defines the minimum duration, in seconds, that it will take to complete the actual flow transaction, including any ramp times and conditioning times, if applicable.


energyRequested attribute (SignedRealEnergy)

Indicates the total amount of energy, in watt-hours, requested to be transferred between the storage device and the electric power system. Positive values indicate charging and negative values indicate discharging. This sign convention is different than for the DER function where discharging is positive. Note that the energyRequestNow attribute in the PowerStatus object must always represent a charging solution and it is not allowed to have a negative value.


intervalRequested attribute (DateTimeInterval)

The time window during which the Flow Reservation is needed. For example, if an electric vehicle is set with a 7:00 AM time charge needed, and price drops to the lowest tier at 11:00 PM, then this window would likely be from 11:00 PM until 7:00 AM.


powerRequested attribute (ActivePower)

Indicates the sustained level of power, in watts, that is requested. For charging this is calculated by the storage device and it represents the charging system capability (which for an electric vehicle must also account for any power limitations due to the EVSE control pilot). For discharging, a lower value than the inverter capability can be used as a target.


FlowReservationRequestList object (List)

A List element to hold FlowReservationRequest objects.


pollRate attribute (UInt32) [0..1] «XSDattribute»

The default polling rate for this function set (this resource and all resources below), in seconds. If not specified, a default of 900 seconds (15 minutes) is used. It is RECOMMENDED that a client poll the resources of this function set every pollRate seconds.


FlowReservationResponse object (Event)

The server may modify the charging or discharging parameters and interval to provide a lower aggregated demand at the premises, or within a larger part of the distribution system.


energyAvailable attribute (SignedRealEnergy)

Indicates the amount of energy available.


powerAvailable attribute (ActivePower)

Indicates the amount of power available.


subject attribute (mRIDType)

The subject field provides a method to match the response with the originating event. It is populated with the mRID of the corresponding FlowReservationRequest object.


FlowReservationResponseList object (SubscribableList)

A List element to hold FlowReservationResponse objects.


pollRate attribute (UInt32) [0..1] «XSDattribute»

The default polling rate for this function set (this resource and all resources below), in seconds. If not specified, a default of 900 seconds (15 minutes) is used. It is RECOMMENDED that a client poll the resources of this function set every pollRate seconds.


B.2.22 DER package


Contains definitions related to allowing distributed energy resources to provide energy back to the grid.


image

class DER Info

SubscribableResource

AbstractDevice

class DER Info

SubscribableResource

AbstractDevice

class DER Info

SubscribableResource

AbstractDevice

Link

Link

Link

Link

Link

Link

DERStatusLink

DERStatusLink

DERStatusLink

AssociatedUsagePointLink

AssociatedUsagePointLink

AssociatedUsagePointLink

0..1

0..1

0..1

SubscribableResource

SubscribableResource

SubscribableResource

ListLink

ListLink

ListLink

ListLink

AssociatedDERProgramListLink

ListLink

AssociatedDERProgramListLink

ListLink

AssociatedDERProgramListLink

DERStatus

DERStatus

DERStatus

DERListLink

DERListLink

DERListLink

List

List

List

DERList

DERList

DERList

Link

Link

Link

CurrentDERProgramLink

CurrentDERProgramLink

CurrentDERProgramLink

«XSDattribute»

+ pollRate: UInt32 [0..1] = 900


0..*

SubscribableResource

DER

«XSDattribute»

+ pollRate: UInt32 [0..1] = 900


0..*

SubscribableResource

DER

«XSDattribute»

+ pollRate: UInt32 [0..1] = 900


0..*

SubscribableResource

DER

+ alarmStatus: HexBinary32 [0..1]

+ genConnectStatus: ConnectStatusType [0..1]

+ inverterStatus: InverterStatusType [0..1]

+ localControlModeStatus: LocalControlModeStatusType [0..1]

+ manufacturerStatus: ManufacturerStatusType [0..1]

+ operationalModeStatus: OperationalModeStatusType [0..1]

+ readingTime: TimeType

+ stateOfChargeStatus: StateOfChargeStatusType [0..1]

+ storageModeStatus: StorageModeStatusType [0..1]

+ storConnectStatus: ConnectStatusType [0..1]

+ alarmStatus: HexBinary32 [0..1]

+ genConnectStatus: ConnectStatusType [0..1]

+ inverterStatus: InverterStatusType [0..1]

+ localControlModeStatus: LocalControlModeStatusType [0..1]

+ manufacturerStatus: ManufacturerStatusType [0..1]

+ operationalModeStatus: OperationalModeStatusType [0..1]

+ readingTime: TimeType

+ stateOfChargeStatus: StateOfChargeStatusType [0..1]

+ storageModeStatus: StorageModeStatusType [0..1]

+ storConnectStatus: ConnectStatusType [0..1]

+ alarmStatus: HexBinary32 [0..1]

+ genConnectStatus: ConnectStatusType [0..1]

+ inverterStatus: InverterStatusType [0..1]

+ localControlModeStatus: LocalControlModeStatusType [0..1]

+ manufacturerStatus: ManufacturerStatusType [0..1]

+ operationalModeStatus: OperationalModeStatusType [0..1]

+ readingTime: TimeType

+ stateOfChargeStatus: StateOfChargeStatusType [0..1]

+ storageModeStatus: StorageModeStatusType [0..1]

+ storConnectStatus: ConnectStatusType [0..1]

0..1

0..1

0..1

0....1

0....1

0....1

Link

Link

Link

Link

Link

Link

DERCapabilityLink DERSettingsLink

DERCapabilityLink DERSettingsLink

DERCapabilityLink DERSettingsLink

Link

DERAvailabilityLink

Link

DERAvailabilityLink

Link

DERAvailabilityLink

Resource

Resource

Resource

DERCapability

DERCapability

DERCapability

SubscribableResource

DERSettings

SubscribableResource

DERSettings

SubscribableResource

DERSettings

SubscribableResource

DERAvailability

SubscribableResource

DERAvailability

SubscribableResource

DERAvailability

+ modesSupported: DERControlType

+ rtgAbnormalCategory: UInt8 [0..1]

+ rtgMaxA: CurrentRMS [0..1]

+ rtgMaxAh: AmpereHour [0..1]

+ rtgMaxChargeRateVA: ApparentPower [0..1]

+ rtgMaxChargeRateW: ActivePower [0..1]

+ rtgMaxDischargeRateVA: ApparentPower [0..1]

+ rtgMaxDischargeRateW: ActivePower [0..1]

+ rtgMaxV: VoltageRMS [0..1]

+ rtgMaxVA: ApparentPower [0..1]

+ rtgMaxVar: ReactivePower [0..1]

+ rtgMaxVarNeg: ReactivePower [0..1]

+ rtgMaxW: ActivePower

+ rtgMaxWh: WattHour [0..1]

+ rtgMinPFOverExcited: PowerFactor [0..1]

+ rtgMinPFUnderExcited: PowerFactor [0..1]

+ rtgMinV: VoltageRMS [0..1]

+ rtgNormalCategory: UInt8 [0..1]

+ rtgOverExcitedPF: PowerFactor [0..1]

+ rtgOverExcitedW: ActivePower [0..1]

+ rtgReactiveSusceptance: ReactiveSusceptance [0..1]

+ rtgUnderExcitedPF: PowerFactor [0..1]

+ rtgUnderExcitedW: ActivePower [0..1]

+ rtgVNom: VoltageRMS [0..1]

+ type: DERType

+ modesSupported: DERControlType

+ rtgAbnormalCategory: UInt8 [0..1]

+ rtgMaxA: CurrentRMS [0..1]

+ rtgMaxAh: AmpereHour [0..1]

+ rtgMaxChargeRateVA: ApparentPower [0..1]

+ rtgMaxChargeRateW: ActivePower [0..1]

+ rtgMaxDischargeRateVA: ApparentPower [0..1]

+ rtgMaxDischargeRateW: ActivePower [0..1]

+ rtgMaxV: VoltageRMS [0..1]

+ rtgMaxVA: ApparentPower [0..1]

+ rtgMaxVar: ReactivePower [0..1]

+ rtgMaxVarNeg: ReactivePower [0..1]

+ rtgMaxW: ActivePower

+ rtgMaxWh: WattHour [0..1]

+ rtgMinPFOverExcited: PowerFactor [0..1]

+ rtgMinPFUnderExcited: PowerFactor [0..1]

+ rtgMinV: VoltageRMS [0..1]

+ rtgNormalCategory: UInt8 [0..1]

+ rtgOverExcitedPF: PowerFactor [0..1]

+ rtgOverExcitedW: ActivePower [0..1]

+ rtgReactiveSusceptance: ReactiveSusceptance [0..1]

+ rtgUnderExcitedPF: PowerFactor [0..1]

+ rtgUnderExcitedW: ActivePower [0..1]

+ rtgVNom: VoltageRMS [0..1]

+ type: DERType

+ modesSupported: DERControlType

+ rtgAbnormalCategory: UInt8 [0..1]

+ rtgMaxA: CurrentRMS [0..1]

+ rtgMaxAh: AmpereHour [0..1]

+ rtgMaxChargeRateVA: ApparentPower [0..1]

+ rtgMaxChargeRateW: ActivePower [0..1]

+ rtgMaxDischargeRateVA: ApparentPower [0..1]

+ rtgMaxDischargeRateW: ActivePower [0..1]

+ rtgMaxV: VoltageRMS [0..1]

+ rtgMaxVA: ApparentPower [0..1]

+ rtgMaxVar: ReactivePower [0..1]

+ rtgMaxVarNeg: ReactivePower [0..1]

+ rtgMaxW: ActivePower

+ rtgMaxWh: WattHour [0..1]

+ rtgMinPFOverExcited: PowerFactor [0..1]

+ rtgMinPFUnderExcited: PowerFactor [0..1]

+ rtgMinV: VoltageRMS [0..1]

+ rtgNormalCategory: UInt8 [0..1]

+ rtgOverExcitedPF: PowerFactor [0..1]

+ rtgOverExcitedW: ActivePower [0..1]

+ rtgReactiveSusceptance: ReactiveSusceptance [0..1]

+ rtgUnderExcitedPF: PowerFactor [0..1]

+ rtgUnderExcitedW: ActivePower [0..1]

+ rtgVNom: VoltageRMS [0..1]

+ type: DERType

+ modesEnabled: DERControlType [0..1]

+ setESDelay: UInt32 [0..1]

+ setESHighFreq: UInt16 [0..1]

+ setESHighVolt: Int16 [0..1]

+ setESLowFreq: UInt16 [0..1]

+ setESLowVolt: Int16 [0..1]

+ setESRampTms: UInt32 [0..1]

+ setESRandomDelay: UInt32 [0..1]

+ setGradW: UInt16

+ setMaxA: CurrentRMS [0..1]

+ setMaxAh: AmpereHour [0..1]

+ setMaxChargeRateVA: ApparentPower [0..1]

+ setMaxChargeRateW: ActivePower [0..1]

+ setMaxDischargeRateVA: ApparentPower [0..1]

+ setMaxDischargeRateW: ActivePower [0..1]

+ setMaxV: VoltageRMS [0..1]

+ setMaxVA: ApparentPower [0..1]

+ setMaxVar: ReactivePower [0..1]

+ setMaxVarNeg: ReactivePower [0..1]

+ setMaxW: ActivePower

+ setMaxWh: WattHour [0..1]

+ setMinPFOverExcited: PowerFactor [0..1]

+ setMinPFUnderExcited: PowerFactor [0..1]

+ setMinV: VoltageRMS [0..1]

+ setSoftGradW: UInt16 [0..1]

+ setVNom: VoltageRMS [0..1]

+ setVRef: VoltageRMS [0..1]

+ setVRefOfs: VoltageRMS [0..1]

+ updatedTime: TimeType

+ modesEnabled: DERControlType [0..1]

+ setESDelay: UInt32 [0..1]

+ setESHighFreq: UInt16 [0..1]

+ setESHighVolt: Int16 [0..1]

+ setESLowFreq: UInt16 [0..1]

+ setESLowVolt: Int16 [0..1]

+ setESRampTms: UInt32 [0..1]

+ setESRandomDelay: UInt32 [0..1]

+ setGradW: UInt16

+ setMaxA: CurrentRMS [0..1]

+ setMaxAh: AmpereHour [0..1]

+ setMaxChargeRateVA: ApparentPower [0..1]

+ setMaxChargeRateW: ActivePower [0..1]

+ setMaxDischargeRateVA: ApparentPower [0..1]

+ setMaxDischargeRateW: ActivePower [0..1]

+ setMaxV: VoltageRMS [0..1]

+ setMaxVA: ApparentPower [0..1]

+ setMaxVar: ReactivePower [0..1]

+ setMaxVarNeg: ReactivePower [0..1]

+ setMaxW: ActivePower

+ setMaxWh: WattHour [0..1]

+ setMinPFOverExcited: PowerFactor [0..1]

+ setMinPFUnderExcited: PowerFactor [0..1]

+ setMinV: VoltageRMS [0..1]

+ setSoftGradW: UInt16 [0..1]

+ setVNom: VoltageRMS [0..1]

+ setVRef: VoltageRMS [0..1]

+ setVRefOfs: VoltageRMS [0..1]

+ updatedTime: TimeType

+ modesEnabled: DERControlType [0..1]

+ setESDelay: UInt32 [0..1]

+ setESHighFreq: UInt16 [0..1]

+ setESHighVolt: Int16 [0..1]

+ setESLowFreq: UInt16 [0..1]

+ setESLowVolt: Int16 [0..1]

+ setESRampTms: UInt32 [0..1]

+ setESRandomDelay: UInt32 [0..1]

+ setGradW: UInt16

+ setMaxA: CurrentRMS [0..1]

+ setMaxAh: AmpereHour [0..1]

+ setMaxChargeRateVA: ApparentPower [0..1]

+ setMaxChargeRateW: ActivePower [0..1]

+ setMaxDischargeRateVA: ApparentPower [0..1]

+ setMaxDischargeRateW: ActivePower [0..1]

+ setMaxV: VoltageRMS [0..1]

+ setMaxVA: ApparentPower [0..1]

+ setMaxVar: ReactivePower [0..1]

+ setMaxVarNeg: ReactivePower [0..1]

+ setMaxW: ActivePower

+ setMaxWh: WattHour [0..1]

+ setMinPFOverExcited: PowerFactor [0..1]

+ setMinPFUnderExcited: PowerFactor [0..1]

+ setMinV: VoltageRMS [0..1]

+ setSoftGradW: UInt16 [0..1]

+ setVNom: VoltageRMS [0..1]

+ setVRef: VoltageRMS [0..1]

+ setVRefOfs: VoltageRMS [0..1]

+ updatedTime: TimeType

+ availabilityDuration: UInt32 [0..1]

+ maxChargeDuration: UInt32 [0..1]

+ readingTime: TimeType

+ reserveChargePercent: PerCent [0..1]

+ reservePercent: PerCent [0..1]

+ statVarAvail: ReactivePower [0..1]

+ statWAvail: ActivePower [0..1]

+ availabilityDuration: UInt32 [0..1]

+ maxChargeDuration: UInt32 [0..1]

+ readingTime: TimeType

+ reserveChargePercent: PerCent [0..1]

+ reservePercent: PerCent [0..1]

+ statVarAvail: ReactivePower [0..1]

+ statWAvail: ActivePower [0..1]

+ availabilityDuration: UInt32 [0..1]

+ maxChargeDuration: UInt32 [0..1]

+ readingTime: TimeType

+ reserveChargePercent: PerCent [0..1]

+ reservePercent: PerCent [0..1]

+ statVarAvail: ReactivePower [0..1]

+ statWAvail: ActivePower [0..1]

Figure B.33—DER info


image

class DER Info Types

class DER Info Types

class DER Info Types

Related DER Info data types

Related DER Info data types

Related DER Info data types

UInt8

UInt8

UInt8

InverterStatusType

InverterStatusType

InverterStatusType

OperationalModeStatusType

OperationalModeStatusType

OperationalModeStatusType

StorageModeStatusType

StorageModeStatusType

StorageModeStatusType

DERType

notes

0 - Not applicable / Unknown

1 - Virtual or mixed DER

2 - Reciprocating engine

3 - Fuel cell

4 - Photovoltaic system

5 - Combined heat and power

6 - Other generation system

80 - Other storage system

81 - Electric vehicle

82 - EVSE

83 - Combined PV and storage All other values reserved.

DERType

notes

0 - Not applicable / Unknown

1 - Virtual or mixed DER

2 - Reciprocating engine

3 - Fuel cell

4 - Photovoltaic system

5 - Combined heat and power

6 - Other generation system

80 - Other storage system

81 - Electric vehicle

82 - EVSE

83 - Combined PV and storage All other values reserved.

DERType

notes

0 - Not applicable / Unknown

1 - Virtual or mixed DER

2 - Reciprocating engine

3 - Fuel cell

4 - Photovoltaic system

5 - Combined heat and power

6 - Other generation system

80 - Other storage system

81 - Electric vehicle

82 - EVSE

83 - Combined PV and storage All other values reserved.

+ dateTime: TimeType

+ value: UInt8

notes DER InverterStatus value:

0 - N/A

1 - off

2 - sleeping (auto-shutdown) or DER is at low output power/voltage

3 - starting up or ON but not producing power

4 - tracking MPPT power point

5 - forced power reduction/derating

6 - shutting down

7 - one or more faults exist

8 - standby (service on unit) - DER may be at high output voltage/power

9 - test mode

10 - as defined in manufacturer status All other values reserved.

+ dateTime: TimeType

+ value: UInt8

notes DER InverterStatus value:

0 - N/A

1 - off

2 - sleeping (auto-shutdown) or DER is at low output power/voltage

3 - starting up or ON but not producing power

4 - tracking MPPT power point

5 - forced power reduction/derating

6 - shutting down

7 - one or more faults exist

8 - standby (service on unit) - DER may be at high output voltage/power

9 - test mode

10 - as defined in manufacturer status All other values reserved.

+ dateTime: TimeType

+ value: UInt8

notes DER InverterStatus value:

0 - N/A

1 - off

2 - sleeping (auto-shutdown) or DER is at low output power/voltage

3 - starting up or ON but not producing power

4 - tracking MPPT power point

5 - forced power reduction/derating

6 - shutting down

7 - one or more faults exist

8 - standby (service on unit) - DER may be at high output voltage/power

9 - test mode

10 - as defined in manufacturer status All other values reserved.

+ dateTime: TimeType

+ value: UInt8

+ dateTime: TimeType

+ value: UInt8

+ dateTime: TimeType

+ value: UInt8

+ dateTime: TimeType

+ value: UInt8

+ dateTime: TimeType

+ value: UInt8

+ dateTime: TimeType

+ value: UInt8

notes

DER OperationalModeStatus value:

0 - Not applicable / Unknown

1 - Off

2 - Operational mode

3 - Test mode

All other values reserved.

notes

DER OperationalModeStatus value:

0 - Not applicable / Unknown

1 - Off

2 - Operational mode

3 - Test mode

All other values reserved.

notes

DER OperationalModeStatus value:

0 - Not applicable / Unknown

1 - Off

2 - Operational mode

3 - Test mode

All other values reserved.

notes

DER StorageModeStatus value:

0 – storage charging

1 – storage discharging

2 – storage holding

All other values reserved.

notes

DER StorageModeStatus value:

0 – storage charging

1 – storage discharging

2 – storage holding

All other values reserved.

notes

DER StorageModeStatus value:

0 – storage charging

1 – storage discharging

2 – storage holding

All other values reserved.

ConnectStatusType

ConnectStatusType

ConnectStatusType

StateOfChargeStatusType

StateOfChargeStatusType

StateOfChargeStatusType

HexBinary32

DERControlType

HexBinary32

DERControlType

HexBinary32

DERControlType

notes

Control modes supported by the DER. Bit positions SHALL be defined as follows:

0 - Charge mode

1 - Discharge mode

2 - opModConnect (Connect / Disconnect - implies galvanic isolation)

3 - opModEnergize (Energize / De-Energize)

4 - opModFixedPFAbsorbW (Fixed Power Factor Setpoint when absorbing active power)

5 - opModFixedPFInjectW (Fixed Power Factor Setpoint when injecting active power)

6 - opModFixedVar (Reactive Power Setpoint)

7 - opModFixedW (Charge / Discharge Setpoint)

8 - opModFreqDroop (Frequency-Watt Parameterized Mode)

9 - opModFreqWatt (Frequency-Watt Curve Mode)

10 - opModHFRTMayTrip (High Frequency Ride Through, May Trip Mode)

11 - opModHFRTMustTrip (High Frequency Ride Through, Must Trip Mode) 12 - opModHVRTMayTrip (High Voltage Ride Through, May Trip Mode)

13 - opModHVRTMomentaryCessation (High Voltage Ride Through, Momentary Cessation Mode)

14 - opModHVRTMustTrip (High Voltage Ride Through, Must Trip Mode)

15 - opModLFRTMayTrip (Low Frequency Ride Throu

notes

Control modes supported by the DER. Bit positions SHALL be defined as follows:

0 - Charge mode

1 - Discharge mode

2 - opModConnect (Connect / Disconnect - implies galvanic isolation)

3 - opModEnergize (Energize / De-Energize)

4 - opModFixedPFAbsorbW (Fixed Power Factor Setpoint when absorbing active power)

5 - opModFixedPFInjectW (Fixed Power Factor Setpoint when injecting active power)

6 - opModFixedVar (Reactive Power Setpoint)

7 - opModFixedW (Charge / Discharge Setpoint)

8 - opModFreqDroop (Frequency-Watt Parameterized Mode)

9 - opModFreqWatt (Frequency-Watt Curve Mode)

10 - opModHFRTMayTrip (High Frequency Ride Through, May Trip Mode)

11 - opModHFRTMustTrip (High Frequency Ride Through, Must Trip Mode) 12 - opModHVRTMayTrip (High Voltage Ride Through, May Trip Mode)

13 - opModHVRTMomentaryCessation (High Voltage Ride Through, Momentary Cessation Mode)

14 - opModHVRTMustTrip (High Voltage Ride Through, Must Trip Mode)

15 - opModLFRTMayTrip (Low Frequency Ride Throu

notes

Control modes supported by the DER. Bit positions SHALL be defined as follows:

0 - Charge mode

1 - Discharge mode

2 - opModConnect (Connect / Disconnect - implies galvanic isolation)

3 - opModEnergize (Energize / De-Energize)

4 - opModFixedPFAbsorbW (Fixed Power Factor Setpoint when absorbing active power)

5 - opModFixedPFInjectW (Fixed Power Factor Setpoint when injecting active power)

6 - opModFixedVar (Reactive Power Setpoint)

7 - opModFixedW (Charge / Discharge Setpoint)

8 - opModFreqDroop (Frequency-Watt Parameterized Mode)

9 - opModFreqWatt (Frequency-Watt Curve Mode)

10 - opModHFRTMayTrip (High Frequency Ride Through, May Trip Mode)

11 - opModHFRTMustTrip (High Frequency Ride Through, Must Trip Mode) 12 - opModHVRTMayTrip (High Voltage Ride Through, May Trip Mode)

13 - opModHVRTMomentaryCessation (High Voltage Ride Through, Momentary Cessation Mode)

14 - opModHVRTMustTrip (High Voltage Ride Through, Must Trip Mode)

15 - opModLFRTMayTrip (Low Frequency Ride Throu

LocalControlModeStatusType

LocalControlModeStatusType

LocalControlModeStatusType

+ dateTime: TimeType

+ value: HexBinary8

notes

DER ConnectStatus value (bitmap):

0 - Connected

1 - Available

2 - Operating

3 - Test

4 - Fault / Error

All other values reserved.

+ dateTime: TimeType

+ value: HexBinary8

notes

DER ConnectStatus value (bitmap):

0 - Connected

1 - Available

2 - Operating

3 - Test

4 - Fault / Error

All other values reserved.

+ dateTime: TimeType

+ value: HexBinary8

notes

DER ConnectStatus value (bitmap):

0 - Connected

1 - Available

2 - Operating

3 - Test

4 - Fault / Error

All other values reserved.

+ dateTime: TimeType

+ value: PerCent

notes

DER StateOfChargeStatus value: Percent data type

+ dateTime: TimeType

+ value: PerCent

notes

DER StateOfChargeStatus value: Percent data type

+ dateTime: TimeType

+ value: PerCent

notes

DER StateOfChargeStatus value: Percent data type

ManufacturerStatusType

ManufacturerStatusType

ManufacturerStatusType

+ dateTime: TimeType

+ value: UInt8

notes

DER LocalControlModeStatus/value:

0 – local control

1 – remote control

All other values reserved.

+ dateTime: TimeType

+ value: UInt8

notes

DER LocalControlModeStatus/value:

0 – local control

1 – remote control

All other values reserved.

+ dateTime: TimeType

+ value: UInt8

notes

DER LocalControlModeStatus/value:

0 – local control

1 – remote control

All other values reserved.

+ dateTime: TimeType

+ value: String6

notes

DER ManufacturerStatus/value: String data type

+ dateTime: TimeType

+ value: String6

notes

DER ManufacturerStatus/value: String data type

+ dateTime: TimeType

+ value: String6

notes

DER ManufacturerStatus/value: String data type

Figure B.34—DER info types


image

class DER Program

Resource

FunctionSetAssignmentsBase

class DER Program

Resource

FunctionSetAssignmentsBase

class DER Program

Resource

FunctionSetAssignmentsBase

DeviceCapability

DeviceCapability

DeviceCapability

«XSDattribute»

0..1 + pollRate: UInt32 [0..1] = 900

ListLink

DERProgramListLink


SubscribableList

DERProgramList


«XSDattribute»

+ pollRate: UInt32 [0..1] = 900

«XSDattribute»

0..1 + pollRate: UInt32 [0..1] = 900

ListLink

DERProgramListLink


SubscribableList

DERProgramList


«XSDattribute»

+ pollRate: UInt32 [0..1] = 900

«XSDattribute»

0..1 + pollRate: UInt32 [0..1] = 900

ListLink

DERProgramListLink


SubscribableList

DERProgramList


«XSDattribute»

+ pollRate: UInt32 [0..1] = 900

0..*

SubscribableIdentifiedObject

DERProgram

0..*

SubscribableIdentifiedObject

DERProgram

0..*

SubscribableIdentifiedObject

DERProgram

Link

Link

Link

UInt8

UInt8

UInt8

0..1

0..1

0..1

DefaultDERControlLink

DefaultDERControlLink

DefaultDERControlLink

PrimacyType

PrimacyType

PrimacyType

+ primacy: PrimacyType

::SubscribableIdentifiedObject

+ description: String32 [0..1]

+ mRID: mRIDType

+ version: VersionType [0..1] = 0

«XSDattribute»

::SubscribableResource

+ subscribable: SubscribableType [0..1] = 0

::Resource

+ href: anyURI [0..1]

+ primacy: PrimacyType

::SubscribableIdentifiedObject

+ description: String32 [0..1]

+ mRID: mRIDType

+ version: VersionType [0..1] = 0

«XSDattribute»

::SubscribableResource

+ subscribable: SubscribableType [0..1] = 0

::Resource

+ href: anyURI [0..1]

+ primacy: PrimacyType

::SubscribableIdentifiedObject

+ description: String32 [0..1]

+ mRID: mRIDType

+ version: VersionType [0..1] = 0

«XSDattribute»

::SubscribableResource

+ subscribable: SubscribableType [0..1] = 0

::Resource

+ href: anyURI [0..1]

0..1

0..1

0..1

ListLink

ActiveDERControlListLink

ListLink

ActiveDERControlListLink

ListLink

ActiveDERControlListLink

0..1

0..1

0..1

ListLink

DERControlListLink

ListLink

DERControlListLink

ListLink

DERControlListLink

ListLink

ListLink

ListLink

notes

Values possible for indication of "Primary" provider: 0: In home energy management system

1: Contracted premises service provider 2: Non-contractual service provider

3 - 64: Reserved

65 - 191: User-defined

192 - 255: Reserved

notes

Values possible for indication of "Primary" provider: 0: In home energy management system

1: Contracted premises service provider 2: Non-contractual service provider

3 - 64: Reserved

65 - 191: User-defined

192 - 255: Reserved

notes

Values possible for indication of "Primary" provider: 0: In home energy management system

1: Contracted premises service provider 2: Non-contractual service provider

3 - 64: Reserved

65 - 191: User-defined

192 - 255: Reserved

0..1

0..1

0..1

DERCurveListLink

DERCurveListLink

DERCurveListLink

Lower numbers indicate higher priority.

Lower numbers indicate higher priority.

Lower numbers indicate higher priority.

Figure B.35—DER program


IdentifiedObject

DERCurve

+ autonomousVRefEnable: boolean [0..1] = false

+ autonomousVRefTimeConstant: UInt32 [0..1]

+ creationTime: TimeType

+ curveType: DERCurveType

+ openLoopTms: UInt16 [0..1]

+ rampDecTms: UInt16 [0..1]

+ rampIncTms: UInt16 [0..1]

+ rampPT1Tms: UInt16 [0..1]

+ vRef: PerCent [0..1]

+ xMultiplier: PowerOfTenMultiplierType

+ yMultiplier: PowerOfTenMultiplierType

+ yRefType: DERUnitRefType

::IdentifiedObject

+ description: String32 [0..1]

+ mRID: mRIDType

+ version: VersionType [0..1] = 0

«XSDattribute»

::Resource

+ href: anyURI [0..1]


1..10

CurveData

+ excitation: boolean [0..1]

+ xvalue: Int32

+ yvalue: Int32


image

class DER Curves


SubscribableIdentifiedObject

DERProgram

+ primacy: PrimacyType

class DER Curves


SubscribableIdentifiedObject

DERProgram

+ primacy: PrimacyType

class DER Curves


SubscribableIdentifiedObject

DERProgram

+ primacy: PrimacyType

0..1

0..1

0..1

ListLink

ListLink

ListLink

DERCurveListLink

DERCurveListLink

DERCurveListLink

List

List

List

DERCurveList

DERCurveList

DERCurveList

0..*

0..*

0..*

Int8

PowerOfTenMultiplierType

notes

-9 = nano=x10^-9

-6 = micro=x10^-6

-3 = milli=x10^-3

0 = none=x1 (default, if not specified)

1 = deca=x10

2 = hecto=x100

3 = kilo=x1000

6 = Mega=x10^6

9 = Giga=x10^9

This is not a complete list. Any integer between -9 and 9 SHALL be supported, indicating the power of ten multiplier for the units.

Int8

PowerOfTenMultiplierType

notes

-9 = nano=x10^-9

-6 = micro=x10^-6

-3 = milli=x10^-3

0 = none=x1 (default, if not specified)

1 = deca=x10

2 = hecto=x100

3 = kilo=x1000

6 = Mega=x10^6

9 = Giga=x10^9

This is not a complete list. Any integer between -9 and 9 SHALL be supported, indicating the power of ten multiplier for the units.

Int8

PowerOfTenMultiplierType

notes

-9 = nano=x10^-9

-6 = micro=x10^-6

-3 = milli=x10^-3

0 = none=x1 (default, if not specified)

1 = deca=x10

2 = hecto=x100

3 = kilo=x1000

6 = Mega=x10^6

9 = Giga=x10^9

This is not a complete list. Any integer between -9 and 9 SHALL be supported, indicating the power of ten multiplier for the units.

notes

Specifies context for interpreting percent values:

0 - N/A

1 - %setMaxW

2 - %setMaxVar

3 - %statVarAvail

4 - %setEffectiveV

5 - %setMaxChargeRateW

6 - %setMaxDischargeRateW

7 - %statWAvail

All other values reserved.

notes

Specifies context for interpreting percent values:

0 - N/A

1 - %setMaxW

2 - %setMaxVar

3 - %statVarAvail

4 - %setEffectiveV

5 - %setMaxChargeRateW

6 - %setMaxDischargeRateW

7 - %statWAvail

All other values reserved.

notes

Specifies context for interpreting percent values:

0 - N/A

1 - %setMaxW

2 - %setMaxVar

3 - %statVarAvail

4 - %setEffectiveV

5 - %setMaxChargeRateW

6 - %setMaxDischargeRateW

7 - %statWAvail

All other values reserved.

DERUnitRefType

DERUnitRefType

DERUnitRefType

UInt8

UInt8

UInt8

notes

0 - opModFreqWatt (Frequency-Watt Curve Mode)

1 - opModHFRTMayTrip (High Frequency Ride Through, May Trip Mode)

2 - opModHFRTMustTrip (High Frequency Ride Through, Must Trip Mode)

3 - opModHVRTMayTrip (High Voltage Ride Through, May Trip Mode)

4 - opModHVRTMomentaryCessation (High Voltage Ride Through, Momentary Cessation Mode)

5 - opModHVRTMustTrip (High Voltage Ride Through, Must Trip Mode)

6 - opModLFRTMayTrip (Low Frequency Ride Through, May Trip Mode)

7 - opModLFRTMustTrip (Low Frequency Ride Through, Must Trip Mode)

8 - opModLVRTMayTrip (Low Voltage Ride Through, May Trip Mode)

9 - opModLVRTMomentaryCessation (Low Voltage Ride Through, Momentary Cessation Mode)

10 - opModLVRTMustTrip (Low Voltage Ride Through, Must Trip Mode)

11 - opModVoltVar (Volt-Var Mode)

12 - opModVoltWatt (Volt-Watt Mode)

13 - opModWattPF (Watt-PowerFactor Mode)

14 - opModWattVar (Watt-Var Mode) All other values reserved.

notes

0 - opModFreqWatt (Frequency-Watt Curve Mode)

1 - opModHFRTMayTrip (High Frequency Ride Through, May Trip Mode)

2 - opModHFRTMustTrip (High Frequency Ride Through, Must Trip Mode)

3 - opModHVRTMayTrip (High Voltage Ride Through, May Trip Mode)

4 - opModHVRTMomentaryCessation (High Voltage Ride Through, Momentary Cessation Mode)

5 - opModHVRTMustTrip (High Voltage Ride Through, Must Trip Mode)

6 - opModLFRTMayTrip (Low Frequency Ride Through, May Trip Mode)

7 - opModLFRTMustTrip (Low Frequency Ride Through, Must Trip Mode)

8 - opModLVRTMayTrip (Low Voltage Ride Through, May Trip Mode)

9 - opModLVRTMomentaryCessation (Low Voltage Ride Through, Momentary Cessation Mode)

10 - opModLVRTMustTrip (Low Voltage Ride Through, Must Trip Mode)

11 - opModVoltVar (Volt-Var Mode)

12 - opModVoltWatt (Volt-Watt Mode)

13 - opModWattPF (Watt-PowerFactor Mode)

14 - opModWattVar (Watt-Var Mode) All other values reserved.

notes

0 - opModFreqWatt (Frequency-Watt Curve Mode)

1 - opModHFRTMayTrip (High Frequency Ride Through, May Trip Mode)

2 - opModHFRTMustTrip (High Frequency Ride Through, Must Trip Mode)

3 - opModHVRTMayTrip (High Voltage Ride Through, May Trip Mode)

4 - opModHVRTMomentaryCessation (High Voltage Ride Through, Momentary Cessation Mode)

5 - opModHVRTMustTrip (High Voltage Ride Through, Must Trip Mode)

6 - opModLFRTMayTrip (Low Frequency Ride Through, May Trip Mode)

7 - opModLFRTMustTrip (Low Frequency Ride Through, Must Trip Mode)

8 - opModLVRTMayTrip (Low Voltage Ride Through, May Trip Mode)

9 - opModLVRTMomentaryCessation (Low Voltage Ride Through, Momentary Cessation Mode)

10 - opModLVRTMustTrip (Low Voltage Ride Through, Must Trip Mode)

11 - opModVoltVar (Volt-Var Mode)

12 - opModVoltWatt (Volt-Watt Mode)

13 - opModWattPF (Watt-PowerFactor Mode)

14 - opModWattVar (Watt-Var Mode) All other values reserved.

DERCurveType

DERCurveType

DERCurveType

UInt8

UInt8

UInt8

Figure B.36—DER curves


image

class DER Control

SubscribableIdentifiedObject

DERProgram

class DER Control

SubscribableIdentifiedObject

DERProgram

class DER Control

SubscribableIdentifiedObject

DERProgram

Link

Link

Link

FreqDroopType

FreqDroopType

FreqDroopType

0..1

0..1

0..1

DefaultDERControlLink

DefaultDERControlLink

DefaultDERControlLink

0..1

ListLink

DERControlListLink

0..1

ListLink

DERControlListLink

0..1

ListLink

DERControlListLink

SubscribableIdentifiedObject

DefaultDERControl

SubscribableIdentifiedObject

DefaultDERControl

SubscribableIdentifiedObject

DefaultDERControl

+ dBOF: UInt32

+ dBUF: UInt32

+ kOF: UInt16

+ kUF: UInt16

+ openLoopTms: UInt16

+ dBOF: UInt32

+ dBUF: UInt32

+ kOF: UInt16

+ kUF: UInt16

+ openLoopTms: UInt16

+ dBOF: UInt32

+ dBUF: UInt32

+ kOF: UInt16

+ kUF: UInt16

+ openLoopTms: UInt16

SubscribableList

DERControlList

SubscribableList

DERControlList

SubscribableList

DERControlList

+ setESDelay: UInt32 [0..1]

+ setESHighFreq: UInt16 [0..1]

+ setESHighVolt: Int16 [0..1]

+ setESLowFreq: UInt16 [0..1]

+ setESLowVolt: Int16 [0..1]

+ setESRampTms: UInt32 [0..1]

+ setESRandomDelay: UInt32 [0..1]

0..* + setGradW: UInt16 [0..1]

+ setSoftGradW: UInt16 [0..1]

DERControl

+ setESDelay: UInt32 [0..1]

+ setESHighFreq: UInt16 [0..1]

+ setESHighVolt: Int16 [0..1]

+ setESLowFreq: UInt16 [0..1]

+ setESLowVolt: Int16 [0..1]

+ setESRampTms: UInt32 [0..1]

+ setESRandomDelay: UInt32 [0..1]

0..* + setGradW: UInt16 [0..1]

+ setSoftGradW: UInt16 [0..1]

DERControl

+ setESDelay: UInt32 [0..1]

+ setESHighFreq: UInt16 [0..1]

+ setESHighVolt: Int16 [0..1]

+ setESLowFreq: UInt16 [0..1]

+ setESLowVolt: Int16 [0..1]

+ setESRampTms: UInt32 [0..1]

+ setESRandomDelay: UInt32 [0..1]

0..* + setGradW: UInt16 [0..1]

+ setSoftGradW: UInt16 [0..1]

DERControl

+ deviceCategory: DeviceCategoryType [0..1]

+ deviceCategory: DeviceCategoryType [0..1]

+ deviceCategory: DeviceCategoryType [0..1]

1

1

1

DERControlBase

DERControlBase

DERControlBase

1

1

1

+ opModConnect: boolean [0..1]

+ opModEnergize: boolean [0..1]

+ opModFixedPFAbsorbW: PowerFactorWithExcitation [0..1]

+ opModFixedPFInjectW: PowerFactorWithExcitation [0..1]

+ opModFixedVar: FixedVar [0..1]

+ opModFixedW: SignedPerCent [0..1]

+ opModFreqDroop: FreqDroopType [0..1]

+ opModFreqWatt: DERCurveLink [0..1]

+ opModHFRTMayTrip: DERCurveLink [0..1]

+ opModHFRTMustTrip: DERCurveLink [0..1]

+ opModHVRTMayTrip: DERCurveLink [0..1]

+ opModHVRTMomentaryCessation: DERCurveLink [0..1]

+ opModHVRTMustTrip: DERCurveLink [0..1]

+ opModLFRTMayTrip: DERCurveLink [0..1]

+ opModLFRTMustTrip: DERCurveLink [0..1]

+ opModLVRTMayTrip: DERCurveLink [0..1]

+ opModLVRTMomentaryCessation: DERCurveLink [0..1]

+ opModLVRTMustTrip: DERCurveLink [0..1]

+ opModMaxLimW: PerCent [0..1]

+ opModTargetVar: ReactivePower [0..1]

+ opModTargetW: ActivePower [0..1]

+ opModVoltVar: DERCurveLink [0..1]

+ opModVoltWatt: DERCurveLink [0..1]

+ opModWattPF: DERCurveLink [0..1]

+ opModWattVar: DERCurveLink [0..1]

+ rampTms: UInt16 [0..1]

+ opModConnect: boolean [0..1]

+ opModEnergize: boolean [0..1]

+ opModFixedPFAbsorbW: PowerFactorWithExcitation [0..1]

+ opModFixedPFInjectW: PowerFactorWithExcitation [0..1]

+ opModFixedVar: FixedVar [0..1]

+ opModFixedW: SignedPerCent [0..1]

+ opModFreqDroop: FreqDroopType [0..1]

+ opModFreqWatt: DERCurveLink [0..1]

+ opModHFRTMayTrip: DERCurveLink [0..1]

+ opModHFRTMustTrip: DERCurveLink [0..1]

+ opModHVRTMayTrip: DERCurveLink [0..1]

+ opModHVRTMomentaryCessation: DERCurveLink [0..1]

+ opModHVRTMustTrip: DERCurveLink [0..1]

+ opModLFRTMayTrip: DERCurveLink [0..1]

+ opModLFRTMustTrip: DERCurveLink [0..1]

+ opModLVRTMayTrip: DERCurveLink [0..1]

+ opModLVRTMomentaryCessation: DERCurveLink [0..1]

+ opModLVRTMustTrip: DERCurveLink [0..1]

+ opModMaxLimW: PerCent [0..1]

+ opModTargetVar: ReactivePower [0..1]

+ opModTargetW: ActivePower [0..1]

+ opModVoltVar: DERCurveLink [0..1]

+ opModVoltWatt: DERCurveLink [0..1]

+ opModWattPF: DERCurveLink [0..1]

+ opModWattVar: DERCurveLink [0..1]

+ rampTms: UInt16 [0..1]

+ opModConnect: boolean [0..1]

+ opModEnergize: boolean [0..1]

+ opModFixedPFAbsorbW: PowerFactorWithExcitation [0..1]

+ opModFixedPFInjectW: PowerFactorWithExcitation [0..1]

+ opModFixedVar: FixedVar [0..1]

+ opModFixedW: SignedPerCent [0..1]

+ opModFreqDroop: FreqDroopType [0..1]

+ opModFreqWatt: DERCurveLink [0..1]

+ opModHFRTMayTrip: DERCurveLink [0..1]

+ opModHFRTMustTrip: DERCurveLink [0..1]

+ opModHVRTMayTrip: DERCurveLink [0..1]

+ opModHVRTMomentaryCessation: DERCurveLink [0..1]

+ opModHVRTMustTrip: DERCurveLink [0..1]

+ opModLFRTMayTrip: DERCurveLink [0..1]

+ opModLFRTMustTrip: DERCurveLink [0..1]

+ opModLVRTMayTrip: DERCurveLink [0..1]

+ opModLVRTMomentaryCessation: DERCurveLink [0..1]

+ opModLVRTMustTrip: DERCurveLink [0..1]

+ opModMaxLimW: PerCent [0..1]

+ opModTargetVar: ReactivePower [0..1]

+ opModTargetW: ActivePower [0..1]

+ opModVoltVar: DERCurveLink [0..1]

+ opModVoltWatt: DERCurveLink [0..1]

+ opModWattPF: DERCurveLink [0..1]

+ opModWattVar: DERCurveLink [0..1]

+ rampTms: UInt16 [0..1]

EventStatus

+ currentStatus: UInt8

+ dateTime: TimeType

+ potentiallySuperseded: boolean

+ potentiallySupersededTime: TimeType [0..1]

+ reason: String192 [0..1]

1

EventStatus

+ currentStatus: UInt8

+ dateTime: TimeType

+ potentiallySuperseded: boolean

+ potentiallySupersededTime: TimeType [0..1]

+ reason: String192 [0..1]

1

EventStatus

+ currentStatus: UInt8

+ dateTime: TimeType

+ potentiallySuperseded: boolean

+ potentiallySupersededTime: TimeType [0..1]

+ reason: String192 [0..1]

1

RandomizableEvent

RandomizableEvent

RandomizableEvent

RespondableSubscribableIdentifiedObject

Event

RespondableSubscribableIdentifiedObject

Event

RespondableSubscribableIdentifiedObject

Event

+ randomizeDuration: OneHourRangeType [0..1] = 0

+ randomizeStart: OneHourRangeType [0..1] = 0

+ randomizeDuration: OneHourRangeType [0..1] = 0

+ randomizeStart: OneHourRangeType [0..1] = 0

+ randomizeDuration: OneHourRangeType [0..1] = 0

+ randomizeStart: OneHourRangeType [0..1] = 0

+ creationTime: TimeType

+ interval: DateTimeInterval

+ creationTime: TimeType

+ interval: DateTimeInterval

+ creationTime: TimeType

+ interval: DateTimeInterval

Figure B.37—DER control


PowerFactor

+ displacement: UInt16

+ multiplier: PowerOfTenMultiplierType

notes

Specifies a setpoint for Displacement Power Factor, the ratio between apparent and active powers at the fundamental frequency (e.g. 60 Hz).


FixedVar

+ refType: DERUnitRefType

+ value: SignedPerCent

notes

Specifies a signed setpoint for reactive power.


FixedPointType

+ multiplier: PowerOfTenMultiplierType

+ value: Int16

notes

Abstract type for specifying a fixed-point value without a given unit of measure.


image

class DER Control Types

class DER Control Types

class DER Control Types

Related DER Control data types

Related DER Control data types

Related DER Control data types

notes Available electric charge

notes Available electric charge

notes Available electric charge

+ multiplier: PowerOfTenMultiplierType

+ value: UInt16

+ multiplier: PowerOfTenMultiplierType

+ value: UInt16

+ multiplier: PowerOfTenMultiplierType

+ value: UInt16

AmpereHour

AmpereHour

AmpereHour

notes

The reactive power Q (in var) is the product of root mean square (RMS) voltage, RMS current, and sin(theta) where theta is the phase angle of current relative to voltage.

notes

The reactive power Q (in var) is the product of root mean square (RMS) voltage, RMS current, and sin(theta) where theta is the phase angle of current relative to voltage.

notes

The reactive power Q (in var) is the product of root mean square (RMS) voltage, RMS current, and sin(theta) where theta is the phase angle of current relative to voltage.

+ multiplier: PowerOfTenMultiplierType

+ value: Int16

+ multiplier: PowerOfTenMultiplierType

+ value: Int16

+ multiplier: PowerOfTenMultiplierType

+ value: Int16

ReactivePower

ReactivePower

ReactivePower

Active (real) energy

Active (real) energy

Active (real) energy

notes

notes

notes

+ multiplier: PowerOfTenMultiplierType

+ value: UInt16

+ multiplier: PowerOfTenMultiplierType

+ value: UInt16

+ multiplier: PowerOfTenMultiplierType

+ value: UInt16

WattHour

WattHour

WattHour

notes

The active (real) power P (in W) is the product of root-mean-square (RMS) voltage, RMS current, and cos(theta) where theta is the phase angle of current relative to voltage. It is the primary measure of the rate of flow of energy.

notes

The active (real) power P (in W) is the product of root-mean-square (RMS) voltage, RMS current, and cos(theta) where theta is the phase angle of current relative to voltage. It is the primary measure of the rate of flow of energy.

notes

The active (real) power P (in W) is the product of root-mean-square (RMS) voltage, RMS current, and cos(theta) where theta is the phase angle of current relative to voltage. It is the primary measure of the rate of flow of energy.

+ multiplier: PowerOfTenMultiplierType

+ value: Int16

+ multiplier: PowerOfTenMultiplierType

+ value: Int16

+ multiplier: PowerOfTenMultiplierType

+ value: Int16

ActivePower

ActivePower

ActivePower

notes Average flow of charge through a conductor.

notes Average flow of charge through a conductor.

notes Average flow of charge through a conductor.

+ multiplier: PowerOfTenMultiplierType

+ value: UInt16

+ multiplier: PowerOfTenMultiplierType

+ value: UInt16

+ multiplier: PowerOfTenMultiplierType

+ value: UInt16

CurrentRMS

CurrentRMS

CurrentRMS

notes

The apparent power S (in VA) is the product of root mean square (RMS) voltage and RMS current.

notes

The apparent power S (in VA) is the product of root mean square (RMS) voltage and RMS current.

notes

The apparent power S (in VA) is the product of root mean square (RMS) voltage and RMS current.

+ multiplier: PowerOfTenMultiplierType

+ value: UInt16

+ multiplier: PowerOfTenMultiplierType

+ value: UInt16

+ multiplier: PowerOfTenMultiplierType

+ value: UInt16

ApparentPower

ApparentPower

ApparentPower

notes

Average electric potential difference between two points.

notes

Average electric potential difference between two points.

notes

Average electric potential difference between two points.

+ multiplier: PowerOfTenMultiplierType

+ value: UInt16

+ multiplier: PowerOfTenMultiplierType

+ value: UInt16

+ multiplier: PowerOfTenMultiplierType

+ value: UInt16

VoltageRMS

VoltageRMS

VoltageRMS

Figure B.38—DER control types


DefaultDERControl object (SubscribableIdentifiedObject)

Contains control mode information to be used if no active DERControl is found.


setESDelay attribute (UInt32) [0..1]

Enter service delay, in hundredths of a second. When present, this value SHALL update the value of the corresponding setting (DERSettings::setESDelay).


setESHighFreq attribute (UInt16) [0..1]

Enter service frequency high. Specified in hundredths of hertz. When present, this value SHALL update the value of the corresponding setting (DERSettings::setESHighFreq).


setESHighVolt attribute (Int16) [0..1]

Enter service voltage high. Specified as an effective percent voltage, defined as

image

100% (locally measured voltage  setVRefOfs) , in hundredths of a percent. When present, this value

setVRef

SHALL update the value of the corresponding setting (DERSettings::setESHighVolt).


setESLowFreq attribute (UInt16) [0..1]

Enter service frequency low. Specified in hundredths of hertz. When present, this value SHALL update the value of the corresponding setting (DERSettings::setESLowFreq).


setESLowVolt attribute (Int16) [0..1]

Enter service voltage low. Specified as an effective percent voltage, defined as

image

100% (locally measured voltage  setVRefOfs) , in hundredths of a percent. When present, this value

setVRef

SHALL update the value of the corresponding setting (DERSettings::setESLowVolt).


setESRampTms attribute (UInt32) [0..1]

Enter service ramp time, in hundredths of a second. When present, this value SHALL update the value of the corresponding setting (DERSettings::setESRampTms).


setESRandomDelay attribute (UInt32) [0..1]

Enter service randomized delay, in hundredths of a second. When present, this value SHALL update the value of the corresponding setting (DERSettings::setESRandomDelay).


setGradW attribute (UInt16) [0..1]

Set default rate of change (ramp rate) of active power output due to command or internal action, defined in

%setWMax/second. Resolution is in hundredths of a percent/second. A value of 0 means there is no limit. Interpreted as a percentage change in output capability limit per second when used as a default ramp rate. When present, this value SHALL update the value of the corresponding setting (DERSettings::setGradW).


setSoftGradW attribute (UInt16) [0..1]

Set soft-start rate of change (soft-start ramp rate) of active power output due to command or internal action, defined in %setWMax/second. Resolution is in hundredths of a percent/second. A value of 0 means there is no limit. Interpreted as a percentage change in output capability limit per second when used as a ramp rate. When present, this value SHALL update the value of the corresponding setting (DERSettings::setSoftGradW).


FreqDroopType object ()

Type for Frequency-Droop (Frequency-Watt) operation.


dBOF attribute (UInt32)

Frequency droop dead band for over-frequency conditions. In thousandths of hertz.


dBUF attribute (UInt32)

Frequency droop dead band for under-frequency conditions. In thousandths of hertz.


kOF attribute (UInt16)

Frequency droop per-unit frequency change for over-frequency conditions corresponding to one per-unit power output change. In thousandths, unitless.


kUF attribute (UInt16)

Frequency droop per-unit frequency change for under-frequency conditions corresponding to one per-unit power output change. In thousandths, unitless.


openLoopTms attribute (UInt16)

Open loop response time, the duration from a step change in control signal input until the output changes by 90% of its final change before any overshoot, in hundredths of a second. Resolution is 1/100 second. A value of 0 is used to mean no limit.


DER object (SubscribableResource)

Contains links to DER resources.


DERList object (List)

A List element to hold DER objects.


pollRate attribute (UInt32) [0..1] «XSDattribute»

The default polling rate for this function set (this resource and all resources below), in seconds. If not specified, a default of 900 seconds (15 minutes) is used. It is RECOMMENDED that a client poll the resources of this function set every pollRate seconds.


DERSettings object (SubscribableResource)

Distributed energy resource settings.


modesEnabled attribute (DERControlType) [0..1]

Bitmap indicating the DER Controls enabled on the device. See DERControlType for values. If a control is supported (see DERCapability::modesSupported), but not enabled, the control will not be executed if encountered.


setESDelay attribute (UInt32) [0..1]

Enter service delay, in hundredths of a second.


setESHighFreq attribute (UInt16) [0..1]

Enter service frequency high. Specified in hundredths of hertz.


setESHighVolt attribute (Int16) [0..1]

Enter service voltage high. Specified as an effective percent voltage, defined as

image

100% (locally measured voltage  setVRefOfs) , in hundredths of a percent.

setVRef


setESLowFreq attribute (UInt16) [0..1]

Enter service frequency low. Specified in hundredths of hertz.


setESLowVolt attribute (Int16) [0..1]

Enter service voltage low. Specified as an effective percent voltage, defined as

image

100% (locally measured voltage  setVRefOfs) , in hundredths of a percent.

setVRef


setESRampTms attribute (UInt32) [0..1]

Enter service ramp time, in hundredths of a second.


setESRandomDelay attribute (UInt32) [0..1]

Enter service randomized delay, in hundredths of a second.


setGradW attribute (UInt16)

Set default rate of change (ramp rate) of active power output due to command or internal action, defined in

%setWMax/second. Resolution is in hundredths of a percent/second. A value of 0 means there is no limit. Interpreted as a percentage change in output capability limit per second when used as a default ramp rate.


setMaxA attribute (CurrentRMS) [0..1]

AC current maximum. Maximum ac current in rms amperes.


setMaxAh attribute (AmpereHour) [0..1]

Maximum usable energy storage capacity of the DER, in ampere-hours. Note: this may be different from physical capability.


setMaxChargeRateVA attribute (ApparentPower) [0..1]

Apparent power charge maximum. Maximum apparent power the DER can absorb from the grid in voltamperes. May differ from the apparent power maximum (setMaxVA).


setMaxChargeRateW attribute (ActivePower) [0..1]

Maximum rate of energy transfer received by the storage device, in watts. Defaults to rtgMaxChargeRateW.


setMaxDischargeRateVA attribute (ApparentPower) [0..1]

Apparent power discharge maximum. Maximum apparent power the DER can deliver to the grid in voltamperes. May differ from the apparent power maximum (setMaxVA).


setMaxDischargeRateW attribute (ActivePower) [0..1]

Maximum rate of energy transfer delivered by the storage device, in watts. Defaults to rtgMaxDischargeRateW.


setMaxV attribute (VoltageRMS) [0..1]

AC voltage maximum setting.


setMaxVA attribute (ApparentPower) [0..1]

Set limit for maximum apparent power capability of the DER (in VA). Defaults to rtgMaxVA.


setMaxVar attribute (ReactivePower) [0..1]

Set limit for maximum reactive power delivered by the DER (in var). SHALL be a positive value 

rtgMaxVar (default).


setMaxVarNeg attribute (ReactivePower) [0..1]

Set limit for maximum reactive power received by the DER (in var). If present, SHALL be a negative value

≥ rtgMaxVarNeg (default). If absent, defaults to negative setMaxVar.


setMaxW attribute (ActivePower)

Set limit for maximum active power capability of the DER (in watts). Defaults to rtgMaxW.


setMaxWh attribute (WattHour) [0..1]

Maximum energy storage capacity of the DER, in watthours. Note: this may be different from physical capability.


setMinPFOverExcited attribute (PowerFactor) [0..1]

Set minimum power factor displacement limit of the DER when injecting reactive power (over-excited); SHALL be a positive value between 0.0 (typically > 0.7) and 1.0. SHALL be ≥ rtgMinPFOverExcited (default).


setMinPFUnderExcited attribute (PowerFactor) [0..1]

Set minimum power factor displacement limit of the DER when absorbing reactive power (under-excited); SHALL be a positive value between 0.0 (typically > 0.7) and 0.9999. If present, SHALL be ≥ rtgMinPFUnderExcited (default). If absent, defaults to setMinPFOverExcited.


setMinV attribute (VoltageRMS) [0..1]

AC voltage minimum setting.


setSoftGradW attribute (UInt16) [0..1]

Set soft-start rate of change (soft-start ramp rate) of active power output due to command or internal action, defined in %setWMax/second. Resolution is in hundredths of a percent/second. A value of 0 means there is no limit. Interpreted as a percentage change in output capability limit per second when used as a ramp rate.


setVNom attribute (VoltageRMS) [0..1]

AC voltage nominal setting.


setVRef attribute (VoltageRMS) [0..1]

The nominal ac voltage (rms) at the utility’s point of common coupling.


setVRefOfs attribute (VoltageRMS) [0..1]

The nominal ac voltage (rms) offset between the DER’s electrical connection point and the utility’s point of common coupling.


updatedTime attribute (TimeType)

Specifies the time at which the DER information was last updated.


DERType object (UInt8)

0 = Not applicable/unknown


1 = Virtual or mixed DER


2 = Reciprocating engine


3 = Fuel cell


4 = Photovoltaic system


5 = Combined heat and power


6 = Other generation system


80 = Other storage system


81 = Electric vehicle


82 = EVSE


83 = Combined PV and storage All other values reserved.

DERAvailability object (SubscribableResource)

Indicates current reserve generation status.


availabilityDuration attribute (UInt32) [0..1]

Indicates number of seconds the DER will be able to deliver active power at the reservePercent level.


maxChargeDuration attribute (UInt32) [0..1]

Indicates number of seconds the DER will be able to receive active power at the reserveChargePercent level.


readingTime attribute (TimeType)

The timestamp when the DER availability was last updated.


reserveChargePercent attribute (PerCent) [0..1]

Percent of continuous received active power (%setMaxChargeRateW) that is estimated to be available in reserve.


reservePercent attribute (PerCent) [0..1]

Percent of continuous delivered active power (%setMaxW) that is estimated to be available in reserve.


statVarAvail attribute (ReactivePower) [0..1]

Estimated reserve reactive power, in var. Represents the lesser of received or delivered reactive power.


statWAvail attribute (ActivePower) [0..1]

Estimated reserve active power, in watts.


DERCapability object (Resource)

Distributed energy resource type and nameplate ratings.


modesSupported attribute (DERControlType)

Bitmap indicating the DER Controls implemented by the device. See DERControlType for values.


rtgAbnormalCategory attribute (UInt8) [0..1]

Abnormal operating performance category as defined by IEEE Std 1547-2018. One of:


0 = Not specified


1 = Category I


2 = Category II


3 = Category III


All other values reserved.


rtgMaxA attribute (CurrentRMS) [0..1]

Maximum continuous ac current capability of the DER, in amperes (rms).


rtgMaxAh attribute (AmpereHour) [0..1]

Usable energy storage capacity of the DER, in amp hours.


rtgMaxChargeRateVA attribute (ApparentPower) [0..1]

Maximum apparent power charge rating in voltamperes. May differ from the maximum apparent power rating.


rtgMaxChargeRateW attribute (ActivePower) [0..1]

Maximum rate of energy transfer received by the storage DER, in watts.


rtgMaxDischargeRateVA attribute (ApparentPower) [0..1]

Maximum apparent power discharge rating in voltamperes. May differ from the maximum apparent power rating.


rtgMaxDischargeRateW attribute (ActivePower) [0..1]

Maximum rate of energy transfer delivered by the storage DER, in watts. Required for combined generation/storage DERs (e.g., DERType == 83).


rtgMaxV attribute (VoltageRMS) [0..1]

AC voltage maximum rating.


rtgMaxVA attribute (ApparentPower) [0..1]

Maximum continuous apparent power output capability of the DER, in voltamperes.


rtgMaxVar attribute (ReactivePower) [0..1]

Maximum continuous reactive power delivered by the DER, in var.


rtgMaxVarNeg attribute (ReactivePower) [0..1]

Maximum continuous reactive power received by the DER, in var. If absent, defaults to negative rtgMaxVar.


rtgMaxW attribute (ActivePower)

Maximum continuous active power output capability of the DER, in watts. Represents combined generation plus storage output if DERType == 83.


rtgMaxWh attribute (WattHour) [0..1]

Maximum energy storage capacity of the DER, in watthours.


rtgMinPFOverExcited attribute (PowerFactor) [0..1]

Minimum power factor displacement capability of the DER when injecting reactive power (over-excited); SHALL be a positive value between 0.0 (typically > 0.7) and 1.0. If absent, defaults to unity.


rtgMinPFUnderExcited attribute (PowerFactor) [0..1]

Minimum power factor displacement capability of the DER when absorbing reactive power (under- excited); SHALL be a positive value between 0.0 (typically > 0.7) and 0.9999. If absent, defaults to rtgMinPFOverExcited.


rtgMinV attribute (VoltageRMS) [0..1]

AC voltage minimum rating.


rtgNormalCategory attribute (UInt8) [0..1]

Normal operating performance category as defined by IEEE Std 1547-2018. One of:


0 = Not specified


1 = Category A


2 = Category B


All other values reserved.


rtgOverExcitedPF attribute (PowerFactor) [0..1]

Specified over-excited power factor.


rtgOverExcitedW attribute (ActivePower) [0..1]

Active power rating in watts at specified over-excited power factor (rtgOverExcitedPF). If present, rtgOverExcitedPF SHALL be present.


rtgReactiveSusceptance attribute (ReactiveSusceptance) [0..1]

Reactive susceptance that remains connected to the area electric power system (EPS) in the cease to energize and trip state.


rtgUnderExcitedPF attribute (PowerFactor) [0..1]

Specified under-excited power factor.


rtgUnderExcitedW attribute (ActivePower) [0..1]

Active power rating in watts at specified under-excited power factor (rtgUnderExcitedPF). If present, rtgUnderExcitedPF SHALL be present.


rtgVNom attribute (VoltageRMS) [0..1]

AC voltage nominal rating.


type attribute (DERType)

Type of DER; see DERType object.


DERControlBase object ()

Distributed energy resource (DER) control values.


opModConnect attribute (boolean) [0..1]

Set DER as connected (true) or disconnected (false). Used in conjunction with ramp rate when re- connecting. Implies galvanic isolation.


opModEnergize attribute (boolean) [0..1]

Set DER as energized (true) or de-energized (false). Used in conjunction with ramp rate when re- energizing.


opModFixedPFAbsorbW attribute (PowerFactorWithExcitation) [0..1]

The opModFixedPFAbsorbW function specifies a requested fixed power factor (PF) setting for when active power is being absorbed. The actual displacement SHALL be within the limits established by setMinPFOverExcited and setMinPFUnderExcited. If issued simultaneously with other reactive power controls (e.g., opModFixedVar) the control resulting in least var magnitude SHOULD take precedence.


opModFixedPFInjectW attribute (PowerFactorWithExcitation) [0..1]

The opModFixedPFInjectW function specifies a requested fixed power factor (PF) setting for when active power is being injected. The actual displacement SHALL be within the limits established by setMinPFOverExcited and setMinPFUnderExcited. If issued simultaneously with other reactive power controls (e.g., opModFixedVar) the control resulting in least var magnitude SHOULD take precedence.


opModFixedVar attribute (FixedVar) [0..1]

The opModFixedVar function specifies the delivered or received reactive power setpoint. The context for the setpoint value is determined by refType and SHALL be one of %setMaxW, %setMaxVar, or

%statVarAvail. If issued simultaneously with other reactive power controls (e.g., opModFixedPFInjectW) the control resulting in least var magnitude SHOULD take precedence.


opModFixedW attribute (SignedPerCent) [0..1]

The opModFixedW function specifies a requested charge or discharge mode setpoint, in

%setMaxChargeRateW if negative value, or %setMaxW or %setMaxDischargeRateW if positive value (in hundredths).


opModFreqDroop attribute (FreqDroopType) [0..1]

Specifies a frequency-watt operation. This operation limits active power generation or consumption when the line frequency deviates from nominal by a specified amount.


opModFreqWatt attribute (DERCurveLink) [0..1]

Specify DERCurveLink for curveType == 0. The Frequency-Watt function limits active power generation or consumption when the line frequency deviates from nominal by a specified amount. The frequency-watt curve is specified as an array of frequency-watt pairs that are interpolated into a piecewise linear function with hysteresis. The x value of each pair specifies a frequency in hertz. The y value specifies a corresponding active power output in %setMaxW.


opModHFRTMayTrip attribute (DERCurveLink) [0..1]

Specify DERCurveLink for curveType == 1. The High Frequency Ride-Through (HFRT) function is specified by one or two duration-frequency curves that define the operating region under high-frequency conditions. Each HFRT curve is specified by an array of duration-frequency pairs that will be interpolated into a piecewise linear function that defines an operating region. The x value of each pair specifies a duration (time at a given frequency in seconds). The y value of each pair specifies a frequency, in hertz. This control specifies the “may trip” region.


opModHFRTMustTrip attribute (DERCurveLink) [0..1]

Specify DERCurveLink for curveType == 2. The High Frequency Ride-Through (HFRT) function is specified by a duration-frequency curve that defines the operating region under high-frequency conditions. Each HFRT curve is specified by an array of duration-frequency pairs that will be interpolated into a piecewise linear function that defines an operating region. The x value of each pair specifies a duration (time at a given frequency in seconds). The y value of each pair specifies a frequency, in hertz. This control specifies the “must trip” region.


opModHVRTMayTrip attribute (DERCurveLink) [0..1]

Specify DERCurveLink for curveType == 3. The High Voltage Ride-Through (HVRT) function is specified by one, two, or three duration-volt curves that define the operating region under high-voltage conditions. Each HVRT curve is specified by an array of duration-volt pairs that will be interpolated into a piecewise linear function that defines an operating region. The x value of each pair specifies a duration (time at a given voltage in seconds). The y value of each pair specifies an effective percentage voltage,

image

defined as (locally measured voltage  setVRefOfs) . This control specifies the “may trip” region.

setVRef


opModHVRTMomentaryCessation attribute (DERCurveLink) [0..1]

Specify DERCurveLink for curveType == 4. The High Voltage Ride-Through (HVRT) function is specified by duration-volt curves that define the operating region under high-voltage conditions. Each HVRT curve is specified by an array of duration-volt pairs that will be interpolated into a piecewise linear function that defines an operating region. The x value of each pair specifies a duration (time at a given voltage in seconds). The y value of each pair specifies an effective percent voltage, defined as

image

(locally measured voltage  setVRefOfs) . This control specifies the “momentary cessation” region.

setVRef


opModHVRTMustTrip attribute (DERCurveLink) [0..1]

Specify DERCurveLink for curveType == 5. The High Voltage Ride-Through (HVRT) function is specified by duration-volt curves that define the operating region under high-voltage conditions. Each HVRT curve is specified by an array of duration-volt pairs that will be interpolated into a piecewise linear function that defines an operating region. The x value of each pair specifies a duration (time at a given voltage in seconds). The y value of each pair specifies an effective percent voltage, defined as

image

(locally measured voltage  setVRefOfs) . This control specifies the “must trip” region.

setVRef


opModLFRTMayTrip attribute (DERCurveLink) [0..1]

Specify DERCurveLink for curveType == 6. The Low Frequency Ride-Through (LFRT) function is specified by one or two duration-frequency curves that define the operating region under low-frequency conditions. Each LFRT curve is specified by an array of duration-frequency pairs that will be interpolated into a piecewise linear function that defines an operating region. The x value of each pair specifies a duration (time at a given frequency in seconds). The y value of each pair specifies a frequency, in hertz. This control specifies the “may trip” region.


opModLFRTMustTrip attribute (DERCurveLink) [0..1]

Specify DERCurveLink for curveType == 7. The Low Frequency Ride-Through (LFRT) function is specified by a duration-frequency curve that defines the operating region under low-frequency conditions. Each LFRT curve is specified by an array of duration-frequency pairs that will be interpolated into a piecewise linear function that defines an operating region. The x value of each pair specifies a duration (time at a given frequency in seconds). The y value of each pair specifies a frequency, in hertz. This control specifies the “must trip” region.


opModLVRTMayTrip attribute (DERCurveLink) [0..1]

Specify DERCurveLink for curveType == 8. The Low Voltage Ride-Through (LVRT) function is specified by one, two, or three duration-volt curves that define the operating region under low-voltage conditions.


Each LVRT curve is specified by an array of duration-volt pairs that will be interpolated into a piecewise linear function that defines an operating region. The x value of each pair specifies a duration (time at a given voltage in seconds). The y value of each pair specifies an effective percent voltage, defined as

image

(locally measured voltage  setVRefOfs) . This control specifies the “may trip” region.

setVRef


opModLVRTMomentaryCessation attribute (DERCurveLink) [0..1]

Specify DERCurveLink for curveType == 9. The Low Voltage Ride-Through (LVRT) function is specified by duration-volt curves that define the operating region under low-voltage conditions. Each LVRT curve is specified by an array of duration-volt pairs that will be interpolated into a piecewise linear function that defines an operating region. The x value of each pair specifies a duration (time at a given voltage in seconds). The y value of each pair specifies an effective percent voltage, defined as

image

(locally measured voltage  setVRefOfs) . This control specifies the “momentary cessation” region.

setVRef


opModLVRTMustTrip attribute (DERCurveLink) [0..1]

Specify DERCurveLink for curveType == 10. The Low Voltage Ride-Through (LVRT) function is specified by duration-volt curves that define the operating region under low-voltage conditions. Each LVRT curve is specified by an array of duration-volt pairs that will be interpolated into a piecewise linear function that defines an operating region. The x value of each pair specifies a duration (time at a given voltage in seconds). The y value of each pair specifies an effective percent voltage, defined as

image

(locally measured voltage  setVRefOfs) . This control specifies the “must trip” region.

setVRef


opModMaxLimW attribute (PerCent) [0..1]

The opModMaxLimW function sets the maximum active power generation level at the electrical coupling point as a percentage of set capacity (%setMaxW, in hundredths). This limitation may be met, for example, by reducing PV output or by using excess PV output to charge associated storage.


opModTargetVar attribute (ReactivePower) [0..1]

Target reactive power, in var. This control is likely to be more useful for aggregators, as individual DERs may not be able to maintain a target setting.


opModTargetW attribute (ActivePower) [0..1]

Target output power, in watts. This control is likely to be more useful for aggregators, as individual DERs may not be able to maintain a target setting.


opModVoltVar attribute (DERCurveLink) [0..1]

Specify DERCurveLink for curveType == 11. The static volt-var function provides over- or under-excited var compensation as a function of measured voltage. The volt-var curve is specified as an array of volt-var pairs that are interpolated into a piecewise linear function with hysteresis. The x value of each pair specifies

image

an effective percent voltage, defined as (locally measured voltage  setVRefOfs)

setVRef

and SHOULD support a

domain of at least 0 to 135. If VRef is present in DERCurve, then the x value of each pair is additionally

image

multiplied by VRef

10 000

. The y value specifies a target var output interpreted as a signed percentage (−100 to

100). The meaning of the y value is determined by yRefType and must be one of %setMaxW,

%setMaxVar, or %statVarAvail.


opModVoltWatt attribute (DERCurveLink) [0..1]

Specify DERCurveLink for curveType == 12. The Volt-Watt reduces active power output as a function of measured voltage. The Volt-Watt curve is specified as an array of Volt-Watt pairs that are interpolated into a piecewise linear function with hysteresis. The x value of each pair specifies an effective percent voltage,


image

defined as (locally measured voltage  setVRefOfs)

setVRef

and SHOULD support a domain of at least 0 to 135.

The y value specifies an active power output interpreted as a percentage (0 to 100). The meaning of the y value is determined by yRefType and must be one of %setMaxW or %statWAvail.


opModWattPF attribute (DERCurveLink) [0..1]

Specify DERCurveLink for curveType == 13. The Watt-PF function varies power factor (PF) as a function of delivered active power. The Watt-PF curve is specified as an array of Watt-PF coordinates that are interpolated into a piecewise linear function with hysteresis. The x value of each pair specifies a watt setting in %setMaxW, (0 to 100). The PF output setting is a signed displacement in y value (PF sign SHALL be interpreted according to the EEI convention, where unity PF is considered unsigned). These settings are not expected to be updated very often during the life of the installation, therefore only a single curve is required. If issued simultaneously with other reactive power controls (e.g., opModFixedPFInjectW) the control resulting in least var magnitude SHOULD take precedence.


opModWattVar attribute (DERCurveLink) [0..1]

Specify DERCurveLink for curveType == 14. The Watt-Var function varies vars as a function of delivered active power. The Watt-Var curve is specified as an array of Watt-Var pairs that are interpolated into a piecewise linear function with hysteresis. The x value of each pair specifies a watt setting in %setMaxW, (0 to 100). The y value specifies a target var output interpreted as a signed percentage (−100 to 100). The meaning of the y value is determined by yRefType and must be one of %setMaxW, %setMaxVar, or

%statVarAvail.


rampTms attribute (UInt16) [0..1]

Requested ramp time, in hundredths of a second, for the device to transition from the current DERControl mode setting(s) to the new mode setting(s). If absent, use default ramp rate (setGradW). Resolution is 1/100 sec.


DERControl object (RandomizableEvent)

Distributed energy resource (DER) time/event-based control.


deviceCategory attribute (DeviceCategoryType) [0..1]

Specifies the bitmap indicating the categories of devices that SHOULD respond. Devices SHOULD ignore events that do not indicate their device category. If not present, all devices SHOULD respond.


DERControlList object (SubscribableList)

A List element to hold DERControl objects.


DERControlType object (HexBinary32)

Control modes supported by the DER. Bit positions SHALL be defined as follows:


0 = Charge mode


1 = Discharge mode


2 = opModConnect (connect/disconnect—implies galvanic isolation)


3 = opModEnergize (energize/de-energize)


4 = opModFixedPFAbsorbW (fixed power factor setpoint when absorbing active power)


5 = opModFixedPFInjectW (fixed power factor setpoint when injecting active power)


6 = opModFixedVar (reactive power setpoint)


7 = opModFixedW (charge/discharge setpoint)


8 = opModFreqDroop (Frequency-Watt Parameterized mode)


9 = opModFreqWatt (Frequency-Watt Curve mode)


10 = opModHFRTMayTrip (High Frequency Ride-Through, May Trip mode)


11 = opModHFRTMustTrip (High Frequency Ride-Through, Must Trip mode)


12 = opModHVRTMayTrip (High Voltage Ride-Through, May Trip mode)


13 = opModHVRTMomentaryCessation (High Voltage Ride-Through, Momentary Cessation mode)


14 = opModHVRTMustTrip (High Voltage Ride-Through, Must Trip mode)


15 = opModLFRTMayTrip (Low Frequency Ride-Through, May Trip mode)


16 = opModLFRTMustTrip (Low Frequency Ride-Through, Must Trip mode)


17 = opModLVRTMayTrip (Low Voltage Ride-Through, May Trip mode)


18 = opModLVRTMomentaryCessation (Low Voltage Ride-Through, Momentary Cessation mode)


19 = opModLVRTMustTrip (Low Voltage Ride-Through, Must Trip mode)


20 = opModMaxLimW (maximum active power)


21 = opModTargetVar (target reactive power)


22 = opModTargetW (target active power)


23 = opModVoltVar (Volt-Var mode)


24 = opModVoltWatt (Volt-Watt mode)


25 = opModWattPF (Watt-Powerfactor mode)


26 = opModWattVar (Watt-Var mode) All other values reserved.

DERCurve object (IdentifiedObject)

DER related curves such as Volt-Var mode curves. Relationship between an independent variable (X-axis) and a dependent variable (Y-axis).


autonomousVRefEnable attribute (boolean) [0..1]

If the curveType is opModVoltVar, then this field MAY be present. If the curveType is not opModVoltVar, then this field SHALL NOT be present. Enable/disable autonomous vRef adjustment. When enabled, the Volt-Var curve characteristic SHALL be adjusted autonomously as vRef changes and autonomousVRefTimeConstant SHALL be present. If a DER is able to support Volt-Var mode but is unable to support autonomous vRef adjustment, then the DER SHALL execute the curve without autonomous vRef adjustment. If not specified, then the value is false.


autonomousVRefTimeConstant attribute (UInt32) [0..1]

If the curveType is opModVoltVar, then this field MAY be present. If the curveType is not opModVoltVar, then this field SHALL NOT be present. Adjustment range for vRef time constant, in hundredths of a second.


creationTime attribute (TimeType)

The time at which the object was created.


curveType attribute (DERCurveType)

Specifies the associated curve-based control mode.


openLoopTms attribute (UInt16) [0..1]

Open loop response time, the time to ramp up to 90% of the new target in response to the change in voltage, in hundredths of a second. Resolution is 1/100 second. A value of 0 is used to mean no limit. When not present, the device SHOULD follow its default behavior.


rampDecTms attribute (UInt16) [0..1]

Decreasing ramp rate, interpreted as a percentage change in output capability limit per second (e.g.,

%setMaxW/sec). Resolution is in hundredths of a percent/second. A value of 0 means there is no limit. If absent, ramp rate defaults to setGradW.


rampIncTms attribute (UInt16) [0..1]

Increasing ramp rate, interpreted as a percentage change in output capability limit per second (e.g.,

%setMaxW/sec). Resolution is in hundredths of a percent/second. A value of 0 means there is no limit. If absent, ramp rate defaults to rampDecTms.


rampPT1Tms attribute (UInt16) [0..1]

The configuration parameter for a low-pass filter, PT1 is a time, in hundredths of a second, in which the filter will settle to 95% of a step change in the input value. Resolution is 1/100 second.


vRef attribute (PerCent) [0..1]

If the curveType is opModVoltVar, then this field MAY be present. If the curveType is not opModVoltVar, then this field SHALL NOT be present. The nominal ac voltage (rms) adjustment to the voltage curve points for Volt-Var curves.


xMultiplier attribute (PowerOfTenMultiplierType)

Exponent for X-axis value.


yMultiplier attribute (PowerOfTenMultiplierType)

Exponent for Y-axis value.


yRefType attribute (DERUnitRefType)

The Y-axis units context.


CurrentDERProgramLink object (Link)

SHALL contain a Link to an instance of DERProgram. If present, this is the DERProgram containing the currently active DERControl.


DERCurveList object (List)

A List element to hold DERCurve objects.


CurveData object ()

Data point values for defining a curve or schedule.


excitation attribute (boolean) [0..1]

If yvalue is power factor, then this field SHALL be present. If yvalue is not power factor, then this field SHALL NOT be present.


True when DER is absorbing reactive power (under-excited), false when DER is injecting reactive power (over-excited).


xvalue attribute (Int32)

The data value of the X-axis (independent) variable, depending on the curve type. See definitions in DERControlBase for further information.


yvalue attribute (Int32)

The data value of the Y-axis (dependent) variable, depending on the curve type. See definitions in DERControlBase for further information. If yvalue is power factor, the excitation field SHALL be present and yvalue SHALL be a positive value. If yvalue is not power factor, the excitation field SHALL NOT be present.


DERCurveType object (UInt8)

0 = opModFreqWatt (Frequency-Watt Curve mode)


1 = opModHFRTMayTrip (High Frequency Ride-Through, May Trip mode)


2 = opModHFRTMustTrip (High Frequency Ride-Through, Must Trip mode)


3 = opModHVRTMayTrip (High Voltage Ride-Through, May Trip mode)


4 = opModHVRTMomentaryCessation (High Voltage Ride-Through, Momentary Cessation mode)


5 = opModHVRTMustTrip (High Voltage Ride-Through, Must Trip mode)


6 = opModLFRTMayTrip (Low Frequency Ride-Through, May Trip mode)


7 = opModLFRTMustTrip (Low Frequency Ride-Through, Must Trip mode)


8 = opModLVRTMayTrip (Low Voltage Ride-Through, May Trip mode)


9 = opModLVRTMomentaryCessation (Low Voltage Ride-Through, Momentary Cessation mode)


10 = opModLVRTMustTrip (Low Voltage Ride-Through, Must Trip mode)


11 = opModVoltVar (Volt-Var mode)


12 = opModVoltWatt (Volt-Watt mode)


13 = opModWattPF (Watt-PowerFactor mode)


14 = opModWattVar (Watt-Var mode) All other values reserved.

DERProgram object (SubscribableIdentifiedObject)

Distributed energy resource program.


primacy attribute (PrimacyType)

Indicates the relative primacy of the provider of this program.


DERProgramList object (SubscribableList)

A List element to hold DERProgram objects.


pollRate attribute (UInt32) [0..1] «XSDattribute»

The default polling rate for this function set (this resource and all resources below), in seconds. If not specified, a default of 900 seconds (15 minutes) is used. It is RECOMMENDED that a client poll the resources of this function set every pollRate seconds.


DERStatus object (SubscribableResource)

DER status information.


alarmStatus attribute (HexBinary32) [0..1]

Bitmap indicating the status of DER alarms (see DER LogEvents for more details).


0 = DER_FAULT_OVER_CURRENT


1 = DER_FAULT_OVER_VOLTAGE


2 = DER_FAULT_UNDER_VOLTAGE


3 = DER_FAULT_OVER_FREQUENCY


4 = DER_FAULT_UNDER_FREQUENCY


5 = DER_FAULT_VOLTAGE_IMBALANCE


6 = DER_FAULT_CURRENT_IMBALANCE


7 = DER_FAULT_EMERGENCY_LOCAL


8 = DER_FAULT_EMERGENCY_REMOTE


9 = DER_FAULT_LOW_POWER_INPUT


10 = DER_FAULT_PHASE_ROTATION


11 to 31 = Reserved


genConnectStatus attribute (ConnectStatusType) [0..1]

Connect/status value for generator DER. See ConnectStatusType for values.

inverterStatus attribute (InverterStatusType) [0..1]

DER InverterStatus/value.


See InverterStatusType for values.


localControlModeStatus attribute (LocalControlModeStatusType) [0..1]

The local control mode status.


See LocalControlModeStatusType for values.


manufacturerStatus attribute (ManufacturerStatusType) [0..1]

Manufacturer status code.


operationalModeStatus attribute (OperationalModeStatusType) [0..1]

Operational mode currently in use.


See OperationalModeStatusType for values.


readingTime attribute (TimeType)

The timestamp when the current status was last updated.


stateOfChargeStatus attribute (StateOfChargeStatusType) [0..1]

State of charge status.


See StateOfChargeStatusType for values.


storageModeStatus attribute (StorageModeStatusType) [0..1]

Storage mode status.


See StorageModeStatusType for values.


storConnectStatus attribute (ConnectStatusType) [0..1]

Connect/status value for storage DER. See ConnectStatusType for values.

DERUnitRefType object (UInt8)

Specifies context for interpreting percent values:


0 = N/A


1 = %setMaxW


2 = %setMaxVar


3 = %statVarAvail


4 = %setEffectiveV


5 = %setMaxChargeRateW


6 = %setMaxDischargeRateW


7 = %statWAvail


All other values reserved.


CurrentRMS object ()

Average flow of charge through a conductor.


multiplier attribute (PowerOfTenMultiplierType)

Specifies exponent of value.


value attribute (UInt16)

Value in amperes rms (uom 5).


FixedPointType object ()

Abstract type for specifying a fixed-point value without a given unit of measure.


multiplier attribute (PowerOfTenMultiplierType)

Specifies exponent of uom.


value attribute (Int16)

Dimensionless value.


UnsignedFixedPointType object ()

Abstract type for specifying an unsigned fixed-point value without a given unit of measure.


multiplier attribute (PowerOfTenMultiplierType)

Specifies exponent of uom.


value attribute (UInt16)

Dimensionless value.


ActivePower object ()

The active (real) power P (in watts) is the product of root mean square (rms) voltage, rms current, and cos(theta) where theta is the phase angle of current relative to voltage. It is the primary measure of the rate of flow of energy.


multiplier attribute (PowerOfTenMultiplierType)

Specifies exponent for uom.


value attribute (Int16)

Value in watts (uom 38).


AmpereHour object ()

Available electric charge.


multiplier attribute (PowerOfTenMultiplierType)

Specifies exponent of uom.


value attribute (UInt16)

Value in ampere-hours (uom 106).


ApparentPower object ()

The apparent power S (in voltamperes) is the product of root mean square (rms) voltage and rms current.


multiplier attribute (PowerOfTenMultiplierType)

Specifies exponent of uom.


value attribute (UInt16)

Value in voltamperes (uom 61).


ReactivePower object ()

The reactive power Q (in var) is the product of root mean square (rms) voltage, rms current, and sin(theta) where theta is the phase angle of current relative to voltage.


multiplier attribute (PowerOfTenMultiplierType)

Specifies exponent of uom.


value attribute (Int16)

Value in voltamperes reactive (var) (uom 63).


ReactiveSusceptance object ()

Reactive susceptance.


multiplier attribute (PowerOfTenMultiplierType)

Specifies exponent of uom.


value attribute (UInt16)

Value in siemens (uom 53).


PowerFactor object ()

Specifies a setpoint for displacement power factor, the ratio between apparent and active powers at the fundamental frequency (e.g., 60 Hz).


displacement attribute (UInt16)

Significand of an unsigned value of cos(theta) between 0 and 1.0. For example, a value of 0.95 may be specified as a displacement of 950 and a multiplier of −3.


multiplier attribute (PowerOfTenMultiplierType)

Specifies exponent of “displacement.”


PowerFactorWithExcitation object ()

Specifies a setpoint for displacement power factor, the ratio between apparent and active powers at the fundamental frequency (e.g., 60 Hz) and includes an excitation flag.


displacement attribute (UInt16)

Significand of an unsigned value of cos(theta) between 0 and 1.0. For example, a value of 0.95 may be specified as a displacement of 950 and a multiplier of −3.


excitation attribute (boolean)

True when DER is absorbing reactive power (under-excited), false when DER is injecting reactive power (over-excited).


multiplier attribute (PowerOfTenMultiplierType)

Specifies exponent of “displacement.”


FixedVar object ()

Specifies a signed setpoint for reactive power.


refType attribute (DERUnitRefType)

Indicates whether to interpret “value” as %setMaxVar or %statVarAvail.


value attribute (SignedPerCent)

Specify a signed setpoint for reactive power in % (see “refType” for context).


WattHour object ()

Active (real) energy.


multiplier attribute (PowerOfTenMultiplierType)

Specifies exponent of uom.


value attribute (UInt16)

Value in watt-hours (uom 72).


VoltageRMS object ()

Average electric potential difference between two points.


multiplier attribute (PowerOfTenMultiplierType)

Specifies exponent of uom.


value attribute (UInt16)

Value in volts rms (uom 29).


ConnectStatusType object ()

DER ConnectStatus value (bitmap):


0 = Connected


1 = Available


2 = Operating


3 = Test


4 = Fault/Error


All other values reserved.


dateTime attribute (TimeType)

The date and time at which the state applied.


value attribute (HexBinary8)

The value indicating the state.


InverterStatusType object ()

DER InverterStatus value:


0 = N/A


1 = Off


2 = Sleeping (auto-shutdown) or DER is at low output power/voltage


3 = Starting up or on, but not producing power


4 = Tracking maximum power point tracking (MPPT) power point


5 = Forced power reduction/derating


6 = Shutting down


7 = One or more faults exist


8 = Standby (service on unit)—DER may be at high output voltage/power


9 = Test mode


10 = As defined in manufacturer status All other values reserved.


dateTime attribute (TimeType)

The date and time at which the state applied.


value attribute (UInt8)

The value indicating the state.


LocalControlModeStatusType object ()

DER LocalControlModeStatus/value:


0 = Local control


1 = Remote control


All other values reserved.


dateTime attribute (TimeType)

The date and time at which the state applied.


value attribute (UInt8)

The value indicating the state.


ManufacturerStatusType object ()

DER ManufacturerStatus/value: String data type.


dateTime attribute (TimeType)

The date and time at which the state applied.


value attribute (String6)

The value indicating the state.


OperationalModeStatusType object ()

DER OperationalModeStatus value:


0 = Not applicable/Unknown


1 = Off


2 = Operational mode


3 = Test mode


All other values reserved.


dateTime attribute (TimeType)

The date and time at which the state applied.


value attribute (UInt8)

The value indicating the state.


StateOfChargeStatusType object ()

DER StateOfChargeStatus value: Percent data type.


dateTime attribute (TimeType)

The date and time at which the state applied.


value attribute (PerCent)

The value indicating the state.


StorageModeStatusType object ()

DER StorageModeStatus value:


0 = Storage charging


1 = Storage discharging


2 = Storage holding


All other values reserved.


dateTime attribute (TimeType)

The date and time at which the state applied.


value attribute (UInt8)

The value indicating the state.


B.2.23 Links package


Contains definitions of Link specializations used to require certain associations.


AccountBalanceLink object (Link)

SHALL contain a Link to an instance of AccountBalance.


ActiveBillingPeriodListLink object (ListLink)

SHALL contain a Link to a List of active BillingPeriod instances.


ActiveCreditRegisterListLink object (ListLink)

SHALL contain a Link to a List of active CreditRegister instances.


ActiveDERControlListLink object (ListLink)

SHALL contain a Link to a List of active DERControl instances.


ActiveEndDeviceControlListLink object (ListLink)

SHALL contain a Link to a List of active EndDeviceControl instances.


ActiveFlowReservationListLink object (ListLink)

SHALL contain a Link to a List of active FlowReservation instances.


ActiveProjectionReadingListLink object (ListLink)

SHALL contain a Link to a List of active ProjectionReading instances.


ActiveSupplyInterruptionOverrideListLink object (ListLink)

SHALL contain a Link to a List of active SupplyInterruptionOverride instances.


ActiveTargetReadingListLink object (ListLink)

SHALL contain a Link to a List of active TargetReading instances.


ActiveTextMessageListLink object (ListLink)

SHALL contain a Link to a List of active TextMessage instances.


ActiveTimeTariffIntervalListLink object (ListLink)

SHALL contain a Link to a List of active TimeTariffInterval instances.


AssociatedDERProgramListLink object (ListLink)

SHALL contain a Link to a List of DERPrograms having the DERControl(s) for this DER.


AssociatedUsagePointLink object (Link)

SHALL contain a Link to an instance of UsagePoint. If present, this is the sub-meter that monitors the DER output.


BillingPeriodListLink object (ListLink)

SHALL contain a Link to a List of BillingPeriod instances.


BillingReadingListLink object (ListLink)

SHALL contain a Link to a List of BillingReading instances.


BillingReadingSetListLink object (ListLink)

SHALL contain a Link to a List of BillingReadingSet instances.


ConfigurationLink object (Link)

SHALL contain a Link to an instance of Configuration.


ConsumptionTariffIntervalListLink object (ListLink)

SHALL contain a Link to a List of ConsumptionTariffInterval instances.


CreditRegisterListLink object (ListLink)

SHALL contain a Link to a List of CreditRegister instances.


CustomerAccountLink object (Link)

SHALL contain a Link to an instance of CustomerAccount.


CustomerAccountListLink object (ListLink)

SHALL contain a Link to a List of CustomerAccount instances.


CustomerAgreementListLink object (ListLink)

SHALL contain a Link to a List of CustomerAgreement instances.


DemandResponseProgramLink object (Link)

SHALL contain a Link to an instance of DemandResponseProgram.


DemandResponseProgramListLink object (ListLink)

SHALL contain a Link to a List of DemandResponseProgram instances.


DERAvailabilityLink object (Link)

SHALL contain a Link to an instance of DERAvailability.


DERCapabilityLink object (Link)

SHALL contain a Link to an instance of DERCapability.


DefaultDERControlLink object (Link)

SHALL contain a Link to an instance of DefaultDERControl. This is the default mode of the DER which MAY be overridden by DERControl events.


DERControlListLink object (ListLink)

SHALL contain a Link to a List of DERControl instances.


DERCurveLink object (Link)

SHALL contain a Link to an instance of DERCurve.


DERCurveListLink object (ListLink)

SHALL contain a Link to a List of DERCurve instances.


DERLink object (Link)

SHALL contain a Link to an instance of DER.


DERListLink object (ListLink)

SHALL contain a Link to a List of DER instances.


DERProgramLink object (Link)

SHALL contain a Link to an instance of DERProgram.


DERProgramListLink object (ListLink)

SHALL contain a Link to a List of DERProgram instances.


DERSettingsLink object (Link)

SHALL contain a Link to an instance of DERSettings.


DERStatusLink object (Link)

SHALL contain a Link to an instance of DERStatus.


DeviceCapabilityLink object (Link)

SHALL contain a Link to an instance of DeviceCapability.


DeviceInformationLink object (Link)

SHALL contain a Link to an instance of DeviceInformation.


DeviceStatusLink object (Link)

SHALL contain a Link to an instance of DeviceStatus.


EndDeviceControlListLink object (ListLink)

SHALL contain a Link to a List of EndDeviceControl instances.


EndDeviceLink object (Link)

SHALL contain a Link to an instance of EndDevice.


EndDeviceListLink object (ListLink)

SHALL contain a Link to a List of EndDevice instances.


FileLink object (Link)

This element MUST be set to the URI of the most recent File being loaded/activated by the LD. In the case of file status 0, this element MUST be omitted.


FileListLink object (ListLink)

SHALL contain a Link to a List of File instances.


FileStatusLink object (Link)

SHALL contain a Link to an instance of FileStatus.


FlowReservationRequestListLink object (ListLink)

SHALL contain a Link to a List of FlowReservationRequest instances.


FlowReservationResponseListLink object (ListLink)

SHALL contain a Link to a List of FlowReservationResponse instances.


FunctionSetAssignmentsListLink object (ListLink)

SHALL contain a Link to a List of FunctionSetAssignments instances.


HistoricalReadingListLink object (ListLink)

SHALL contain a Link to a List of HistoricalReading instances.


IPAddrListLink object (ListLink)

SHALL contain a Link to a List of IPAddr instances.


IPInterfaceListLink object (ListLink)

SHALL contain a Link to a List of IPInterface instances.


LLInterfaceListLink object (ListLink)

SHALL contain a Link to a List of LLInterface instances.


LoadShedAvailabilityListLink object (ListLink)

SHALL contain a Link to a List of LoadShedAvailability instances.


LogEventListLink object (ListLink)

SHALL contain a Link to a List of LogEvent instances.


MessagingProgramListLink object (ListLink)

SHALL contain a Link to a List of MessagingProgram instances.


MeterReadingLink object (Link)

SHALL contain a Link to an instance of MeterReading.


MeterReadingListLink object (ListLink)

SHALL contain a Link to a List of MeterReading instances.


MirrorUsagePointListLink object (ListLink)

SHALL contain a Link to a List of MirrorUsagePoint instances.


NeighborListLink object (ListLink)

SHALL contain a Link to a List of Neighbor instances.


NotificationListLink object (ListLink)

SHALL contain a Link to a List of Notification instances.


PowerStatusLink object (Link)

SHALL contain a Link to an instance of PowerStatus.


PrepaymentLink object (Link)

SHALL contain a Link to an instance of Prepayment.


PrepaymentListLink object (ListLink)

SHALL contain a Link to a List of Prepayment instances.


PrepayOperationStatusLink object (Link)

SHALL contain a Link to an instance of PrepayOperationStatus.


PriceResponseCfgListLink object (ListLink)

SHALL contain a Link to a List of PriceResponseCfg instances.


ProjectionReadingListLink object (ListLink)

SHALL contain a Link to a List of ProjectionReading instances.


RateComponentLink object (Link)

SHALL contain a Link to an instance of RateComponent.


RateComponentListLink object (ListLink)

SHALL contain a Link to a List of RateComponent instances.


ReadingLink object (Link)

A Link to a Reading.


ReadingListLink object (ListLink)

SHALL contain a Link to a List of Reading instances.


ReadingSetListLink object (ListLink)

SHALL contain a Link to a List of ReadingSet instances.


ReadingTypeLink object (Link)

SHALL contain a Link to an instance of ReadingType.


RegistrationLink object (Link)

SHALL contain a Link to an instance of Registration.


ResponseListLink object (ListLink)

SHALL contain a Link to a List of Response instances.


ResponseSetListLink object (ListLink)

SHALL contain a Link to a List of ResponseSet instances.


RPLInstanceListLink object (ListLink)

SHALL contain a Link to a List of RPLInterface instances.


RPLSourceRoutesListLink object (ListLink)

SHALL contain a Link to a List of RPLSourceRoutes instances.


SelfDeviceLink object (Link)

SHALL contain a Link to an instance of SelfDevice.


ServiceSupplierLink object (Link)

SHALL contain a Link to an instance of ServiceSupplier.


SubscriptionListLink object (ListLink)

SHALL contain a Link to a List of Subscription instances.


SupplyInterruptionOverrideListLink object (ListLink)

SHALL contain a Link to a List of SupplyInterruptionOverride instances.


SupportedLocaleListLink object (ListLink)

SHALL contain a Link to a List of SupportedLocale instances.


TargetReadingListLink object (ListLink)

SHALL contain a Link to a List of TargetReading instances.


TariffProfileLink object (Link)

SHALL contain a Link to an instance of TariffProfile.


TariffProfileListLink object (ListLink)

SHALL contain a Link to a List of TariffProfile instances.


TextMessageListLink object (ListLink)

SHALL contain a Link to a List of TextMessage instances.


TimeLink object (Link)

SHALL contain a Link to an instance of Time.


TimeTariffIntervalListLink object (ListLink)

SHALL contain a Link to a List of TimeTariffInterval instances.


UsagePointLink object (Link)

SHALL contain a Link to an instance of UsagePoint.


UsagePointListLink object (ListLink)

SHALL contain a Link to a List of UsagePoint instances.


Annex C