Varmeflytter, temperatur og fuktighet

Ønsker å lage en flow til en varmeflytter fra et vaskerom. Den skal starte når temperatur er over xx grader, og stoppe under xx grader. Men ønsker i tillegg at den ikke skal kunne starte om relativ fuktighet er over xx%.

Mvh Kristian Sørum

Hei,

jeg har laget ett forslag til Automatikk. Starter ved 23 grader, stopper ved 20 grader. Starter ikke ved fuktighet høyere enn 50% RH, men stopper selv om fuktigheten vil stige hvis den allerede går.

Har ikke prøvd flowen, men tror den skal virke fint. Du må lage to variabler likt som avbildet. Fuktighetsvariablen lager du i Set-variable blokken til høyre. Lager den som en Float med utgangsverdi 0 og In Memory huket av. At varmeflytteren går benyttes i Set-variable blokkene i bunn. Lag en variabel som Bool og utgangsverdi False. Begge disse variablene benyttes som kriterie i første If_node (lik teksten jeg har angitt)

Her er koden (Benytt Import under flow i Thingsplex);

{
  "Id": "G3Km3HBAU8JLSfO",
  "ClassId": "G3Km3HBAU8JLSfO",
  "Author": "Apekatt",
  "Version": 0,
  "CreatedAt": "2022-02-06T19:45:59.36035028+01:00",
  "UpdatedAt": "2022-02-06T20:25:45.367748915+01:00",
  "Name": "Automatikk Varmeflytter Vaskerom",
  "Group": "Varmeflytter",
  "Description": "Automatisk Start av Varmeflytter ved 23C, og Stopp ved 20C. Starter ikke ved RH høyere enn 50%",
  "Nodes": [
    {
      "Id": "1",
      "Type": "trigger",
      "Label": "Temperaturmaaling",
      "SuccessTransition": "3",
      "TimeoutTransition": "",
      "ErrorTransition": "",
      "Address": "pt:j1/mt:evt/rt:dev/rn:zigbee/ad:1/sv:sensor_temp/ad:3_1",
      "Service": "sensor_temp",
      "ServiceInterface": "evt.sensor.report",
      "Config": {
        "InputVariableType": null,
        "IsValueFilterEnabled": false,
        "LookupServiceNameAndLocation": false,
        "PropFilterName": "unit",
        "PropFilterValue": "C",
        "RegisterAsVirtualService": false,
        "Timeout": 0,
        "ValueFilter": {
          "Value": "",
          "ValueType": "float"
        },
        "ValueJPath": null,
        "ValueJPathResultType": null,
        "VirtualServiceGroup": "ch_0",
        "VirtualServiceProps": {}
      },
      "Ui": {
        "nodeType": "",
        "x": 367,
        "y": 180
      },
      "TypeAlias": "Trigger"
    },
    {
      "Id": "2",
      "Type": "trigger",
      "Label": "Fuktighetsmåling",
      "SuccessTransition": "11",
      "TimeoutTransition": "",
      "ErrorTransition": "",
      "Address": "pt:j1/mt:evt/rt:dev/rn:zigbee/ad:1/sv:sensor_humid/ad:3_1",
      "Service": "sensor_humid",
      "ServiceInterface": "evt.sensor.report",
      "Config": {
        "InputVariableType": null,
        "IsValueFilterEnabled": false,
        "LookupServiceNameAndLocation": false,
        "PropFilterName": "unit",
        "PropFilterValue": "%",
        "RegisterAsVirtualService": false,
        "Timeout": 0,
        "ValueFilter": {
          "Value": "",
          "ValueType": "float"
        },
        "ValueJPath": null,
        "ValueJPathResultType": null,
        "VirtualServiceGroup": "ch_0",
        "VirtualServiceProps": {}
      },
      "Ui": {
        "nodeType": "",
        "x": 790,
        "y": 180
      },
      "TypeAlias": "Trigger"
    },
    {
      "Id": "3",
      "Type": "if",
      "Label": "Temperatur over 23c=true AND Fuktighetsmaaling_variabel=<50 AND Varmeflytter_paa_variabel=false",
      "SuccessTransition": "",
      "TimeoutTransition": "",
      "ErrorTransition": "",
      "Address": "",
      "Service": "",
      "ServiceInterface": "",
      "Config": {
        "Expression": [
          {
            "BooleanOperator": "and",
            "LeftVariableIsGlobal": false,
            "LeftVariableName": "",
            "Operand": "gt",
            "RightVariable": {
              "Value": 23,
              "ValueType": "float"
            }
          },
          {
            "BooleanOperator": "and",
            "LeftVariableIsGlobal": false,
            "LeftVariableName": "Fuktighetsmaaling_variabel",
            "Operand": "lt",
            "RightVariable": {
              "Value": 50,
              "ValueType": "float"
            }
          },
          {
            "BooleanOperator": "",
            "LeftVariableIsGlobal": false,
            "LeftVariableName": "Varmeflytter_paa_variabel",
            "Operand": "eq",
            "RightVariable": {
              "Value": false,
              "ValueType": "bool"
            }
          }
        ],
        "FalseTransition": "4",
        "TrueTransition": "5"
      },
      "Ui": {
        "nodeType": "",
        "x": 361,
        "y": 357
      },
      "TypeAlias": "If condition"
    },
    {
      "Id": "4",
      "Type": "if",
      "Label": "Temperatur under 20c=true AND Varmeflytter_paa_variabel=true",
      "SuccessTransition": "",
      "TimeoutTransition": "",
      "ErrorTransition": "",
      "Address": "",
      "Service": "",
      "ServiceInterface": "",
      "Config": {
        "Expression": [
          {
            "BooleanOperator": "and",
            "LeftVariableName": "",
            "Operand": "lt",
            "RightVariable": {
              "Value": 20,
              "ValueType": "float"
            }
          },
          {
            "BooleanOperator": "",
            "LeftVariableIsGlobal": false,
            "LeftVariableName": "Varmeflytter_paa_variabel",
            "Operand": "eq",
            "RightVariable": {
              "Value": true,
              "ValueType": "bool"
            }
          }
        ],
        "FalseTransition": "",
        "TrueTransition": "8"
      },
      "Ui": {
        "nodeType": "",
        "x": 496,
        "y": 512
      },
      "TypeAlias": "If condition"
    },
    {
      "Id": "5",
      "Type": "action",
      "Label": "Varmeflytter Paa Kommando",
      "SuccessTransition": "6",
      "TimeoutTransition": "",
      "ErrorTransition": "",
      "Address": "pt:j1/mt:cmd/rt:dev/rn:zigbee/ad:1/sv:out_bin_switch/ad:2_1",
      "Service": "out_bin_switch",
      "ServiceInterface": "cmd.binary.set",
      "Config": {
        "DefaultValue": {
          "Value": true,
          "ValueType": "bool"
        },
        "IsVariableGlobal": false,
        "Props": {},
        "RegisterAsVirtualService": false,
        "ResponseToTopic": "",
        "VariableName": "",
        "VirtualServiceGroup": "",
        "VirtualServiceProps": {}
      },
      "Ui": {
        "nodeType": "",
        "x": 215,
        "y": 527
      },
      "TypeAlias": "Action"
    },
    {
      "Id": "6",
      "Type": "set_variable",
      "Label": "Varmeflytter_paa_variabel =set true",
      "SuccessTransition": "7",
      "TimeoutTransition": "",
      "ErrorTransition": "",
      "Address": "",
      "Service": "",
      "ServiceInterface": "",
      "Config": {
        "DefaultValue": {
          "Value": true,
          "ValueType": "bool"
        },
        "IsVariableInMemory": false,
        "Name": "Varmeflytter_paa_variabel",
        "UpdateGlobal": false,
        "UpdateInputMsg": false
      },
      "Ui": {
        "nodeType": "",
        "x": 208,
        "y": 689
      },
      "TypeAlias": "Set variable"
    },
    {
      "Id": "7",
      "Type": "action",
      "Label": "Varmeflytter er paa",
      "SuccessTransition": "",
      "TimeoutTransition": "",
      "ErrorTransition": "",
      "Address": "pt:j1/mt:cmd/rt:app/rn:time_owl/ad:1",
      "Service": "time_owl",
      "ServiceInterface": "cmd.timeline.set",
      "Config": {
        "DefaultValue": {
          "Value": {
            "message_en": "Turned ON automatically",
            "message_no": "Styrt PÅ automatisk",
            "sender": "Varmeflytter Vaskerom"
          },
          "ValueType": "str_map"
        },
        "IsVariableGlobal": false,
        "Props": {},
        "RegisterAsVirtualService": false,
        "VariableName": "",
        "VirtualServiceGroup": "",
        "VirtualServiceProps": {}
      },
      "Ui": {
        "nodeType": "timeline_action",
        "x": 194,
        "y": 841
      },
      "TypeAlias": "Timeline"
    },
    {
      "Id": "8",
      "Type": "action",
      "Label": "Varmeflytter Av Kommando",
      "SuccessTransition": "9",
      "TimeoutTransition": "",
      "ErrorTransition": "",
      "Address": "pt:j1/mt:cmd/rt:dev/rn:zigbee/ad:1/sv:out_bin_switch/ad:2_1",
      "Service": "out_bin_switch",
      "ServiceInterface": "cmd.binary.set",
      "Config": {
        "DefaultValue": {
          "Value": false,
          "ValueType": "bool"
        },
        "IsVariableGlobal": false,
        "Props": {},
        "RegisterAsVirtualService": false,
        "ResponseToTopic": "",
        "VariableName": "",
        "VirtualServiceGroup": "",
        "VirtualServiceProps": {}
      },
      "Ui": {
        "nodeType": "",
        "x": 501,
        "y": 692
      },
      "TypeAlias": "Action"
    },
    {
      "Id": "9",
      "Type": "set_variable",
      "Label": "Varmeflytter_paa_variabel =set false",
      "SuccessTransition": "10",
      "TimeoutTransition": "",
      "ErrorTransition": "",
      "Address": "",
      "Service": "",
      "ServiceInterface": "",
      "Config": {
        "DefaultValue": {
          "Value": false,
          "ValueType": "bool"
        },
        "IsVariableInMemory": false,
        "Name": "Varmeflytter_paa_variabel",
        "UpdateGlobal": false,
        "UpdateInputMsg": false
      },
      "Ui": {
        "nodeType": "",
        "x": 505,
        "y": 850
      },
      "TypeAlias": "Set variable"
    },
    {
      "Id": "10",
      "Type": "action",
      "Label": "Varmeflytter er av",
      "SuccessTransition": "",
      "TimeoutTransition": "",
      "ErrorTransition": "",
      "Address": "pt:j1/mt:cmd/rt:app/rn:time_owl/ad:1",
      "Service": "time_owl",
      "ServiceInterface": "cmd.timeline.set",
      "Config": {
        "DefaultValue": {
          "Value": {
            "message_en": "Turned OFF automatically",
            "message_no": "Styrt AV automatisk",
            "sender": "Varmeflytter Vaskerom"
          },
          "ValueType": "str_map"
        },
        "IsVariableGlobal": false,
        "Props": {},
        "RegisterAsVirtualService": false,
        "VariableName": "",
        "VirtualServiceGroup": "",
        "VirtualServiceProps": {}
      },
      "Ui": {
        "nodeType": "timeline_action",
        "x": 501,
        "y": 1010
      },
      "TypeAlias": "Timeline"
    },
    {
      "Id": "11",
      "Type": "set_variable",
      "Label": "Fuktighetsmaaling_variabel",
      "SuccessTransition": "",
      "TimeoutTransition": "",
      "ErrorTransition": "",
      "Address": "",
      "Service": "",
      "ServiceInterface": "",
      "Config": {
        "DefaultValue": {
          "Value": 0,
          "ValueType": ""
        },
        "IsVariableInMemory": true,
        "Name": "Fuktighetsmaaling_variabel",
        "UpdateGlobal": false,
        "UpdateInputMsg": false
      },
      "Ui": {
        "nodeType": "",
        "x": 780,
        "y": 375
      },
      "TypeAlias": "Set variable"
    }
  ],
  "Settings": null,
  "IsDisabled": false,
  "IsDefault": false,
  "ParallelExecution": "parallel"
}

Edit: Har snudd om på start/stopp funksjon slik at den fungerer som beskrevet (kjølemaskin)

1 Like