Indledning
Du kan oprette automatiseringer gennem Thingsplex-flows for at styre enheder baseret på rapporter fra Energy Bank.
For at få adgang til Thingsplex, følg venligst vejledningen i denne artikel.
Hvis du opretter et flow, der fungerer godt for dig, og ønsker at dele det med resten af Futurehome-fællesskabet, kan du gerne gøre det på forum.futurehome.io.
Eksempel på automatisering
Som et eksempel har vi oprettet en automatisering for at ændre tilstand til "opladning", hvis solcellepanelerne producerer mere end 3000W.
Kildekoden er tilgængelig nederst i dette dokument. Følg disse trin for at få dette flow til at fungere for dig:
- Kopier kildekoden nederst i dette dokument.
- Klik på "importer" i flows og indsæt kildekoden.
- Klik på noden for "if condition". Under "value" kan du ændre værdien, der skal bruges i flowet. I kildekoden nedenfor er den sat til 3000 W.
- Du kan også ændre noden for "trigger" for at udløse automatiseringen ved en anden hændelse, eller noden for "action" for at ændre resultatet af flowet.
- Gem.
Kildekode
-
{
"Id": "jDtHzGOzAcwrXsx",
"ClassId": "jDtHzGOzAcwrXsx",
"Author": "",
"Version": 0,
"CreatedAt": "2020-11-19T12:16:41.016268639+01:00",
"UpdatedAt": "2021-01-20T11:20:29.590106341+01:00",
"Name": "Energybank example",
"Group": "energybank",
"Description": "if solar>3000",
"Nodes": [
{
"Id": "1",
"Type": "trigger",
"Label": "trigger",
"SuccessTransition": "2",
"TimeoutTransition": "",
"ErrorTransition": "",
"Address": "pt:j1/mt:evt/rt:dev/rn:energybank/ad:1/sv:inverter_solar_conn/ad:1",
"Service": "inverter_solar_conn",
"ServiceInterface": "evt.meter_ext.report",
"Config": {
"InputVariableType": "",
"IsValueFilterEnabled": false,
"LookupServiceNameAndLocation": false,
"PropFilterName": "",
"PropFilterValue": "",
"RegisterAsVirtualService": false,
"Timeout": 0,
"ValueFilter": {
"Value": null,
"ValueType": "float_map"
},
"ValueJPath": "",
"ValueJPathResultType": "",
"VirtualServiceGroup": "",
"VirtualServiceProps": null
},
"Ui": {
"nodeType": "",
"x": 119,
"y": 230
},
"TypeAlias": "Trigger"
},
{
"Id": "2",
"Type": "transform",
"Label": "get_p_export",
"SuccessTransition": "4",
"TimeoutTransition": "",
"ErrorTransition": "",
"Address": "",
"Service": "",
"ServiceInterface": "",
"Config": {
"Expression": "",
"IsRVariableGlobal": false,
"IsTargetVariableGlobal": false,
"IsTargetVariableInMemory": true,
"LVariableName": "",
"RValue": {
"Value": 0,
"ValueType": "int"
},
"RVariableName": "",
"Rtype": "var",
"TargetVariableName": "",
"TargetVariableType": "",
"Template": "",
"TransformType": "jpath",
"ValueMapping": [],
"XPathMapping": [
{
"IsTargetVariableGlobal": true,
"Path": "$.val.p_export",
"TargetVariableName": "p_export",
"TargetVariableType": "float",
"UpdateInputVariable": false
}
]
},
"Ui": {
"nodeType": "",
"x": 119,
"y": 372
},
"TypeAlias": "Transform"
},
{
"Id": "4",
"Type": "if",
"Label": "if_>_3000",
"SuccessTransition": "",
"TimeoutTransition": "",
"ErrorTransition": "",
"Address": "",
"Service": "",
"ServiceInterface": "",
"Config": {
"Expression": [
{
"BooleanOperator": "",
"LeftVariableIsGlobal": true,
"LeftVariableName": "p_export",
"Operand": "gt",
"RightVariable": {
"Value": 3000,
"ValueType": "float"
}
}
],
"FalseTransition": "6",
"TrueTransition": "5"
},
"Ui": {
"nodeType": "",
"x": 119,
"y": 518
},
"TypeAlias": "If condition"
},
{
"Id": "5",
"Type": "action",
"Label": "Set energybank = charging",
"SuccessTransition": "",
"TimeoutTransition": "",
"ErrorTransition": "",
"Address": "pt:j1/mt:cmd/rt:dev/rn:energybank/ad:1/sv:battery_charge_ctrl/ad:1",
"Service": "battery_charge_ctrl",
"ServiceInterface": "cmd.mode.set",
"Config": {
"DefaultValue": {
"Value": "charging",
"ValueType": "string"
},
"IsVariableGlobal": false,
"Props": "charging",
"RegisterAsVirtualService": false,
"ResponseToTopic": "",
"VariableName": "",
"VirtualServiceGroup": "",
"VirtualServiceProps": {}
},
"Ui": {
"nodeType": "",
"x": 53,
"y": 697
},
"TypeAlias": "Action"
},
{
"Id": "6",
"Type": "action",
"Label": "Set energybank = idle",
"SuccessTransition": "",
"TimeoutTransition": "",
"ErrorTransition": "",
"Address": "pt:j1/mt:cmd/rt:dev/rn:energybank/ad:1/sv:battery_charge_ctrl/ad:1",
"Service": "battery_charge_ctrl",
"ServiceInterface": "cmd.mode.set",
"Config": {
"DefaultValue": {
"Value": "idle",
"ValueType": "string"
},
"IsVariableGlobal": false,
"Props": "charging",
"RegisterAsVirtualService": false,
"ResponseToTopic": "",
"VariableName": "",
"VirtualServiceGroup": "",
"VirtualServiceProps": {}
},
"Ui": {
"nodeType": "",
"x": 301,
"y": 697
},
"TypeAlias": "Action"
}
],
"Settings": null,
"IsDisabled": false,
"IsDefault": false,
"ParallelExecution": "parallel"
}
Kommentarer
0 kommentarer
Log ind for at kommentere.