schalten wenn differenztemperatur zu hoch

Begonnen von wilfo, 19 Oktober 2013, 14:06:36

Vorheriges Thema - Nächstes Thema

wilfo

Hallo

Ich hab for kurzem meine Temperaturfühler DS18s20 und meine Funkstekdose FS20 bekommen und möchte wenn die werte der beiden zu weit abweichen die steckdose einschalten.
Hab aber keinen Plan wie das in Perl aussehen soll

in VBA würd ich wohl sagen if (Temp1 -Temp2)=>5 then FS20:on else FS20:of
da klingts ja einfach aber in Perl is das für mich ein Hexenwerk

lg Wolfi

justme1968

schau dir mal das modul THRESHOLD an. das ist genau für solche aufgaben.

du musst nichts in perl selber programmieren.

gruss
  andre
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968

wilfo


jeanette0404

Hallo.

ich suche noch den richtigen Syntax für diese Funktion.

Derzeit habe ich folgendes eingegeben.

define Solar1_WTauscher1 THRESHOLD WDS30_T1_T2:temperature:2 |set 3Wege_WS_Solar|set @ on|set @ off
Es soll bei 2 Grad ein Actor "3Wege_WS_Solar" geschalten werden.

Aber es funzt noch nicht.

cwagner

Moin,

da ist noch ein Schreibfehler drin.

Mit dieser THRESHOLD-Definition arbeite ich schon lange erfolgreich:


define TH_Ruecklaufanhebung THRESHOLD T_Ruecklauf_T2_T1:temperature:4:5 SW_01_Ruecklaufanhebung|set @ on|set @ off|2


Wenn also die vom Doppelsensor gemeldete Rücklaufdifferenz 5 Grad und mehr ist, soll der Schalter SW_01_Ruecklaufanhebung geschaltet werden.
Dabei soll der Schalter anbleiben für eine Hysterese von 4 Grad. Das heißt, wenn der Unterschied nur noch 1 Grad ist, soll er ausgeschaltet werden.
Beim Start soll grundsätzlich "aus" die Vorgabe sein, dass sagt die allerletzte 2

Bei Dir ist mindestens das |set vor dem Namen Deines Schalters zuviel.

Herzliche Grüße

Christian
PI 2B+/5 Raspbian 12, Perl 5.36.0, FHEM 6.3: 295 Module in ConfigDB: Steuerung Heizkessel, FBH, Solarthermie, kontr. Lüftung mit WRG. Smarthome u.a. HMCUL, 1-Wire (FT232RL ; DS2480B), EnOcean (TCM EPS3), MQTT2. DOIF, PID20, Threshold, OWX; Micropelt IRTV, Volkszähler, SolarForecast; MariaDB

jeanette0404

Hallo Cristian,

also die Differenzschaltung funktioniert einwandfrei.

Jetzt wollte ich noch eine Unterstützung eines 2. Boilers einbauen.
Das heißt wenn der aktuelle Boiler über 61 Grad kommt schaltet das 3-Wegeventil um, so dass der 2 Boiler mit unterstützt wird. Bei einer Temp. z.B. 59 Grad schaltet er wieder zurück.

Ich dachte da kann ich folgenden Code verwenden:

define Solar1_WTauscher1 THRESHOLD WDS30_T2:temperature:59:61 3Wege_WS_Solar|set @ on|set @ off|1

Viele Grüße

jeanette

Damian

Zitat von: jeanette0404 am 11 März 2014, 08:45:10
Hallo Cristian,

also die Differenzschaltung funktioniert einwandfrei.

Jetzt wollte ich noch eine Unterstützung eines 2. Boilers einbauen.
Das heißt wenn der aktuelle Boiler über 61 Grad kommt schaltet das 3-Wegeventil um, so dass der 2 Boiler mit unterstützt wird. Bei einer Temp. z.B. 59 Grad schaltet er wieder zurück.

Ich dachte da kann ich folgenden Code verwenden:

define Solar1_WTauscher1 THRESHOLD WDS30_T2:temperature:59:61 3Wege_WS_Solar|set @ on|set @ off|1

Dann musst du eher die Hysterese: 61-59=2 wählen, also:

define Solar1_WTauscher1 THRESHOLD WDS30_T2:temperature:2:61 3Wege_WS_Solar|set @ on|set @ off|1

Gruß

Damian
Programmierte FHEM-Module: DOIF-FHEM, DOIF-Perl, DOIF-uiTable, THRESHOLD, FHEM-Befehl: IF