Optimizer: add static grid export limit (#32541)
This commit is contained in:
parent
f2c45b0d84
commit
3093539af5
25 changed files with 373 additions and 44 deletions
|
|
@ -151,6 +151,7 @@ func (s *HTTPd) RegisterSiteHandlers(site site.API) {
|
|||
"batterymodedelete": {"DELETE", "/batterymode", updateBatteryMode(site)},
|
||||
"prioritysoc": {"POST", "/prioritysoc/{value:[0-9.]+}", floatHandler(site.SetPrioritySoc, site.GetPrioritySoc)},
|
||||
"residualpower": {"POST", "/residualpower/{value:-?[0-9.]+}", floatHandler(site.SetResidualPower, site.GetResidualPower)},
|
||||
"gridexportlimit": {"POST", "/gridexportlimit/{value:[0-9.]+}", floatHandler(site.SetGridExportLimit, site.GetGridExportLimit)},
|
||||
"solaradjusted": {"POST", "/solaradjusted/{value:[01truefalse]+}", boolHandler(pass(site.SetSolarAdjusted), site.GetSolarAdjusted)},
|
||||
"smartcost": {"POST", "/smartcostlimit/{value:-?[0-9.]+}", updateSmartCostLimit(site, smartCostLimit)},
|
||||
"smartcostdelete": {"DELETE", "/smartcostlimit", updateSmartCostLimit(site, smartCostLimit)},
|
||||
|
|
|
|||
24
server/mcp/openapi.json
generated
24
server/mcp/openapi.json
generated
|
|
@ -1258,6 +1258,26 @@
|
|||
}
|
||||
}
|
||||
},
|
||||
"/gridexportlimit/{power}": {
|
||||
"post": {
|
||||
"operationId": "setGridExportLimit",
|
||||
"summary": "Set grid export limit",
|
||||
"description": "Set the static grid export power limit in W used as optimizer constraint. 0 disables the limit. An active HEMS curtailment takes precedence.",
|
||||
"tags": [
|
||||
"general"
|
||||
],
|
||||
"parameters": [
|
||||
{
|
||||
"$ref": "#/components/parameters/power"
|
||||
}
|
||||
],
|
||||
"responses": {
|
||||
"200": {
|
||||
"$ref": "#/components/responses/NumberResult"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"/solaradjusted/{enable}": {
|
||||
"post": {
|
||||
"operationId": "setSolarAdjusted",
|
||||
|
|
@ -4842,6 +4862,10 @@
|
|||
"description": "Configured grid operating point in W. Positive values maintain grid import.",
|
||||
"type": "number"
|
||||
},
|
||||
"gridExportLimit": {
|
||||
"description": "Static grid export power limit in W used as optimizer constraint, 0 = disabled. An active HEMS curtailment takes precedence.",
|
||||
"type": "number"
|
||||
},
|
||||
"greenShareHome": {
|
||||
"description": "Share of green energy in home consumption, between 0 and 1.",
|
||||
"type": "number"
|
||||
|
|
|
|||
20
server/mcp/openapi.md
generated
20
server/mcp/openapi.md
generated
|
|
@ -436,6 +436,26 @@ call setGlobalSmartFeedInPriorityLimit {
|
|||
}
|
||||
```
|
||||
|
||||
## setGridExportLimit
|
||||
|
||||
Set the static grid export power limit in W used as optimizer constraint. 0 disables the limit. An active HEMS curtailment takes precedence.
|
||||
|
||||
**Tags:** general
|
||||
|
||||
**Arguments:**
|
||||
|
||||
| Name | Type | Description |
|
||||
|------|------|-------------|
|
||||
| power | number | Power in W |
|
||||
|
||||
**Example call:**
|
||||
|
||||
```json
|
||||
call setGridExportLimit {
|
||||
"power": 2500
|
||||
}
|
||||
```
|
||||
|
||||
## assignLoadpointVehicle
|
||||
|
||||
Assigns vehicle to loadpoint.
|
||||
|
|
|
|||
|
|
@ -218,6 +218,7 @@ func (m *MQTT) listenSiteSetters(topic string, site site.API) error {
|
|||
{"batteryGridDischarge", boolSetter(site.SetBatteryGridDischarge)},
|
||||
{"prioritySoc", floatSetter(site.SetPrioritySoc)},
|
||||
{"residualPower", floatSetter(site.SetResidualPower)},
|
||||
{"gridExportLimit", floatSetter(site.SetGridExportLimit)},
|
||||
{"solarAdjusted", boolSetter(pass(site.SetSolarAdjusted))},
|
||||
{"smartCostLimit", floatPtrSetter(pass(func(limit *float64) {
|
||||
for _, lp := range site.Loadpoints() {
|
||||
|
|
|
|||
3
server/openapi.state.yaml
generated
3
server/openapi.state.yaml
generated
|
|
@ -100,6 +100,9 @@ components:
|
|||
residualPower:
|
||||
description: Configured grid operating point in W. Positive values maintain grid import.
|
||||
type: number
|
||||
gridExportLimit:
|
||||
description: Static grid export power limit in W used as optimizer constraint, 0 = disabled. An active HEMS curtailment takes precedence.
|
||||
type: number
|
||||
greenShareHome:
|
||||
description: Share of green energy in home consumption, between 0 and 1.
|
||||
type: number
|
||||
|
|
|
|||
|
|
@ -752,6 +752,18 @@ paths:
|
|||
responses:
|
||||
"200":
|
||||
$ref: "#/components/responses/NumberResult"
|
||||
/gridexportlimit/{power}:
|
||||
post:
|
||||
operationId: setGridExportLimit
|
||||
summary: Set grid export limit
|
||||
description: "Set the static grid export power limit in W used as optimizer constraint. 0 disables the limit. An active HEMS curtailment takes precedence."
|
||||
tags:
|
||||
- general
|
||||
parameters:
|
||||
- $ref: "#/components/parameters/power"
|
||||
responses:
|
||||
"200":
|
||||
$ref: "#/components/responses/NumberResult"
|
||||
/solaradjusted/{enable}:
|
||||
post:
|
||||
operationId: setSolarAdjusted
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue