13.3.4. energyΒΆ

Energy import/export capability/limit types

NodeType:string
Enum Type for different Nodes on the energy tree
enum:
- Undefined
- Evse
- Generic
LimitsReq:object
Energy flow limiting object request (Evses to EnergyManager)
properties:
total_power_W:number <required>
Total power limit in Watt. Can be used for DC or as additional limit for AC.
ac_max_current_A:number <required>
Max current limit (per phase) in Ampere. AC only.
ac_min_current_A:number <required>
Min AC current limit per phase in Ampere. Values below that value indicate the device will not work properly, i.e. it will not charge below 6 amps. AC only.
ac_max_phase_count:integer <required>
Limit to number of phases. Omit if number of phases are not limited.
ac_min_phase_count:integer <required>
Minimal number of phases. Omit if number of phases are not limited.
ac_supports_changing_phases_during_charging:boolean <required>
Indicate whether phase switching is allowed during charging or not
LimitsRes:object
Energy flow limiting object Result (Energy manager to Evses)
properties:
total_power_W:number <required>
Total power limit in Watt. Can be used for DC or as additional limit for AC. Negative numbers mean export to grid direction.
ac_max_current_A:number <required>
Max current limit (per phase) in Ampere. AC only. Negative numbers mean export to grid direction.
ac_max_phase_count:integer <required>
Limit to number of phases. Omit if number of phases are not limited.
OptimizerTarget:object
User defined optimizer targets for this evse
properties:
energy_amount_needed:number <required>
Amount of kwh the car needs to fulfill its charging target
charge_to_max_percent:number <required>
Charge car battery to max NN percent
car_battery_soc:number <required>
Car battery State Of Charge in percent
leave_time:string <required>
RFC3339 UTC format time when the car needs to drive away with charging targets fullfilled. Will charge cheapest within this timeframe.
price_limit:number <required>
Always charge if price below this limit. This includes solar charging and price for solar energy if price levels set correctly.
full_autonomy:boolean <required>
Only charge from locally generated energy. Do not draw power from grid for charging.
ScheduleReqEntry:object
One entry for the time series (request)
properties:
timestamp:string <required>
Absolute timestamp for this sample in RFC3339 UTC format
format:date-time
limits_to_root:object <required> (energy-LimitsReq)
Limit for this timestamp, for the root facing side
There is an extended definition for this object here.
limits_to_leaves:object <required> (energy-LimitsReq)
Limit for this timestamp, for the leaves facing side
There is an extended definition for this object here.
conversion_efficiency:number <optional>
Conversion efficiency from root to leaves side (e.g. AC/DC efficiency). Defaults to one if not specified.
price_per_kwh:object <optional> (energy_price_information-PricePerkWh)
Price information for this timepoint
There is an extended definition for this object here.
ScheduleResEntry:object
One entry for the time series (result)
properties:
timestamp:string <required>
Absolute timestamp for this sample in RFC3339 UTC format
format:date-time
limits_to_root:object <required> (energy-LimitsRes)
Limit for this timestamp, for the root facing side
There is an extended definition for this object here.
price_per_kwh:object <optional> (energy_price_information-PricePerkWh)
Price information for this timepoint
There is an extended definition for this object here.
EnergyFlowRequest:object
Request energy flow parameters to supply/limit energy import (direction from grid to car) and/or consume/limit energy export (car to grid) at a specific point in the tree
properties:
children:array <required>
Array of child node energy flow requests (in the direction to consumer/car
array_item:object (energy-EnergyFlowRequest)
One entry per child node
There is an extended definition for this object here.

uuid:string <required>
UUID for this node. This UUID will be used again when enforce_limits() command propagates through the tree.
node_type:string <required> (energy-NodeType)
Node Type Enum
There is an extended definition for this object here.
priority_request:boolean <optional>
If set to true, this is a high priority request that needs to be handled now. Otherwise energymanager may merge multiple requests and address them later.
optimizer_target:object <optional> (energy-OptimizerTarget)
User defined optimizer targets for this evse
There is an extended definition for this object here.
energy_usage_root:object <optional> (powermeter-Powermeter)
Energy usage measurement of this node at root side
There is an extended definition for this object here.
energy_usage_leaves:object <optional> (powermeter-Powermeter)
Energy usage measurement of this node at leaves side
There is an extended definition for this object here.
schedule_import:array <optional>
Energy import/limits time series. The first entry is special as it will be active already now even if the timestamp is in the future, so it is good practice to set the first entry to current time. The time series can have arbitrary time difference between entries and all timestamps are absolute UTC time.
array_item:object (energy-ScheduleReqEntry)
One entry for the time series. Values are always positive.
There is an extended definition for this object here.

schedule_export:array <optional>
Energy export/limits time series. The first entry is special as it will be active already now even if the timestamp is in the future, so it is good practice to set the first entry to current time. The time series can have arbitrary time difference between entries and all timestamps are absolute UTC time.
array_item:object (energy-ScheduleReqEntry)
One entry for the time series. Values are always positive.
There is an extended definition for this object here.

EnforcedLimits:object
Enforce Limits data type
properties:
uuid:string <required>
UUID of node that this limit applies to
valid_until:string <required>
Limits are valid until this timepoint in RFC3339 UTC. If no new update is received, power consumption must be stopped afer that timepoint.
format:date-time
limits_root_side:object <optional> (energy-LimitsRes)
Enforced limits that must be respected at the root side.
There is an extended definition for this object here.
schedule:array <optional>
Informative only. Do not use for actual limiting. Energy import/export limits time series. The first entry is special as it will be active already now even if the timestamp is in the future, so it is good practice to set the first entry to current time. The time series can have arbitrary time difference between entries and all timestamps are absolute UTC time.
array_item:object (energy-ScheduleResEntry)
One entry for the time series. Values are positive for import from grid and negative for export to grid.
There is an extended definition for this object here.

ExternalLimits:object
External Limits data type
properties:
schedule_import:array <required>
Energy import/limits time series. The first entry is special as it will be active already now even if the timestamp is in the future, so it is good practice to set the first entry to current time. The time series can have arbitrary time difference between entries and all timestamps are absolute UTC time. The last entry is valid for any time after the schedule ends.
array_item:object (energy-ScheduleReqEntry)
One entry for the time series
There is an extended definition for this object here.

schedule_export:array <required>
Energy export/limits time series. The first entry is special as it will be active already now even if the timestamp is in the future, so it is good practice to set the first entry to current time. The time series can have arbitrary time difference between entries and all timestamps are absolute UTC time. The last entry is valid for any time after the schedule ends.
array_item:object (energy-ScheduleReqEntry)
One entry for the time series
There is an extended definition for this object here.