DeviceEnergyManagementCommands

interface DeviceEnergyManagementCommands

Known direct subclasses
DeviceEnergyManagement

API for the DeviceEnergyManagement trait.


Summary

Public functions

suspend Unit

Allows a client, such as an EMS, to cancel an ongoing power adjustment request.

suspend Unit

Allows an EMS to request cancellation of a previous adjustment request made in a StartTimeAdjustRequest, ModifyForecastRequest, or RequestConstraintBasedForecast command.

suspend Unit

Allows an EMS to modify a forecast within the limits allowed by the ESA.

suspend Unit

Allows a client to temporarily pause an operation and reduce the energy demand on the ESA.

suspend Unit
powerAdjustRequest(
    power: Long,
    duration: UInt,
    cause: DeviceEnergyManagementTrait.AdjustmentCauseEnum
)

Allows a client, such as an EMS, to request an adjustment in the power consumption of an ESA for a specified duration.

suspend Unit

Allows an EMS to request the ESA to recompute its forecast based on power and time constraints.

suspend Unit

Allows a client to cancel the PauseRequest command and enable the resumption of the previous operation.

suspend Unit

Allows a client to adjust the start time of a forecast sequence that has not yet started operation.

Public functions

cancelPowerAdjustRequest

suspend fun cancelPowerAdjustRequest(): Unit

Allows a client, such as an EMS, to cancel an ongoing power adjustment request. The ESA should return to its normal power consumption state after the request is canceled.

cancelRequest

suspend fun cancelRequest(): Unit

Allows an EMS to request cancellation of a previous adjustment request made in a StartTimeAdjustRequest, ModifyForecastRequest, or RequestConstraintBasedForecast command.

modifyForecastRequest

suspend fun modifyForecastRequest(
    forecastId: UInt,
    slotAdjustments: List<DeviceEnergyManagementTrait.SlotAdjustmentStruct>,
    cause: DeviceEnergyManagementTrait.AdjustmentCauseEnum
): Unit

Allows an EMS to modify a forecast within the limits allowed by the ESA.

Parameters
forecastId: UInt

The ID of the forecast to modify.

slotAdjustments: List<DeviceEnergyManagementTrait.SlotAdjustmentStruct>

A list of slotAdjustment parameters that should be modified in the corresponding forecast.

cause: DeviceEnergyManagementTrait.AdjustmentCauseEnum

The cause of the request from the EMS.

pauseRequest

suspend fun pauseRequest(
    duration: UInt,
    cause: DeviceEnergyManagementTrait.AdjustmentCauseEnum
): Unit

Allows a client to temporarily pause an operation and reduce the energy demand on the ESA.

Parameters
duration: UInt

The duration, in seconds, for which the ESA should pause its operation.

cause: DeviceEnergyManagementTrait.AdjustmentCauseEnum

The cause of the request from the EMS.

powerAdjustRequest

suspend fun powerAdjustRequest(
    power: Long,
    duration: UInt,
    cause: DeviceEnergyManagementTrait.AdjustmentCauseEnum
): Unit

Allows a client, such as an EMS, to request an adjustment in the power consumption of an ESA for a specified duration.

Parameters
power: Long

The power, in milliwatts, that the ESA can use during the adjustment period. This value must be within the range of MinPower and MaxPower in the PowerAdjustStruct.

duration: UInt

The duration, in seconds, for which the CSA can adjust its power consumption. This value must be within the range of MinDuration and MaxDuration in the PowerAdjustStruct.

cause: DeviceEnergyManagementTrait.AdjustmentCauseEnum

The cause of the request from the EMS.

requestConstraintBasedForecast

suspend fun requestConstraintBasedForecast(
    constraints: List<DeviceEnergyManagementTrait.ConstraintsStruct>,
    cause: DeviceEnergyManagementTrait.AdjustmentCauseEnum
): Unit

Allows an EMS to request the ESA to recompute its forecast based on power and time constraints.

Parameters
constraints: List<DeviceEnergyManagementTrait.ConstraintsStruct>

A series of turn-up or turn-down power constraints that the EMS is asking the ESA to adhere to in its forecast. For example, if a grid event requires devices to reduce power (turn down) between 4 p.m. and 6 p.m., and there is excess power on the grid overnight, this may cause an EMS to request that an ESA increase its power demand (turn up) between midnight and 6 a.m.

cause: DeviceEnergyManagementTrait.AdjustmentCauseEnum

The cause of the request from the EMS.

resumeRequest

suspend fun resumeRequest(): Unit

Allows a client to cancel the PauseRequest command and enable the resumption of the previous operation.

startTimeAdjustRequest

suspend fun startTimeAdjustRequest(
    requestedStartTime: UInt,
    cause: DeviceEnergyManagementTrait.AdjustmentCauseEnum
): Unit

Allows a client to adjust the start time of a forecast sequence that has not yet started operation.

Parameters
requestedStartTime: UInt

The start time, in UTC, that the EMS requests the ESA to change its forecast sequence to. This value must be in the future.

cause: DeviceEnergyManagementTrait.AdjustmentCauseEnum

The cause of the request from the EMS.