Innledning
Du kan opprette automasjoner gjennom Thingsplex-flows for å styre enheter basert på rapporter fra Energy Bank.
For å få tilgang til Thingsplex, vennligs følg veiledningen i denne artikkelen.
Hvis du oppretter en flow som fungerer bra for deg, og ønsker å dele den med resten av Futurehome-samfunnet, kan du gjerne gjøre det på forum.futurehome.io.
Eksempel på automasjon
Som et eksempel har vi opprettet en automasjon for å endre modus til "lading" hvis solcellepanelene produserer mer enn 3000W.
Kildekoden er tilgjengelig nederst i dette dokumentet. Følg disse trinnene for å få denne flowen til å fungere for deg:
- Kopier kildekoden nederst i dette dokumentet.
- Klikk på "importer" i flows og lim inn kildekoden.
- Klikk på noden for "if condition". Under "value" kan du endre verdien som skal brukes i flown. I kildekoden nedenfor er den satt til 3000 W.
- Du kan også endre noden for "trigger" for å utløse automatiseringen ved en annen hendelse, eller noden for "action" for å endre resultatet av flown.
- Lagre.
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
Logg på hvis du vil legge inn en kommentar.