Energy Bank - avancerade automationer

  • Uppdaterad

Inledning

Du kan skapa automationer genom Thingsplex-flows för att styra enheter baserat på rapporter från Energy Bank.

För att få tillgång till Thingsplex, vänligen följ vägledningen i denna artikel.

Om du skapar ett flow som fungerar bra för dig och vill dela det med resten av Futurehome-communityn, får du gärna göra det på forum.futurehome.io.

Exempel på automation

Som ett exempel har vi skapat en automation för att ändra läge till "laddning" om solcellspanelerna producerar mer än 3000W.

Källkoden är tillgänglig längst ner i detta dokument. Följ dessa steg för att få detta flow att fungera för dig:

  1. Kopiera källkoden längst ner i detta dokument.
  2. Klicka på "importera" i flows och klistra in källkoden.
  3. Klicka på noden för "if condition". Under "value" kan du ändra värdet som ska användas i flowet. I källkoden nedan är det satt till 3000 W.
  4. Du kan också ändra noden för "trigger" för att utlösa automatiseringen vid en annan händelse, eller noden för "action" för att ändra resultatet av flowet.
  5. Spara.

energybank.png

Källkod

  •  {
    "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"
    }

Var denna artikel till hjälp?

0 av 0 tyckte detta var till hjälp

Har du fler frågor? Skicka en förfrågan

Kommentarer

0 kommentarer

logga in för att lämna en kommentar.