Neues Modul - THRESHOLD

Begonnen von Damian, 25 Januar 2013, 22:51:43

Vorheriges Thema - Nächstes Thema

Damian

Ab morgen gibt´s zumindest ein Update vom THRESHOLD-Modul. Dann ist das zyklische Setzen von desired Wert unkritisch.

Dein Kommunikationsproblem mit dem HM-Schalter wirst du bis dahin bestimmt in den Griff bekommen.

Gute Nacht.

Damian

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

rokno

Zitat von: Damian schrieb am Sa, 13 April 2013 00:27Ab morgen gibt´s zumindest ein Update vom THRESHOLD-Modul. Dann ist das zyklische Setzen von desired Wert unkritisch.

Dein Kommunikationsproblem mit dem HM-Schalter wirst du bis dahin bestimmt in den Griff bekommen.

Gute Nacht.

Damian


Freu mich!!

HM-Schalter läuft...

CIAO

Gruß

rokno

Hallo Damian,

das sieht sehr gut aus nach dem letzten Update...

Hier ein Auszug aus dem Log:

2013.04.14 18:48:19 3: set TH_Bad desired 18.0
2013.04.14 18:50:15 2: CUL_HM set HM_Schalter1 off rxt:1



Eine Frage noch zu der folgenden Zeile Code:
 
define desired_notify notify Heizung_Bad:.* {my $desired_tmp=ReadingsVal ("Heizung_Bad", "desired-temp", "17");;{fhem "set TH_Bad desired $desired_tmp"}}

Wird die "17" unbedingt benötigt...bzw welchen Zweck erfüllt diese Konstante.
Die Soll-Temperatur wird ausschließlich per Hand am FHT80B oder dem Wochenprogramm gesetzt.

Gruß

Damian

Zitat von: rokno schrieb am So, 14 April 2013 18:59Hallo Damian,

das sieht sehr gut aus nach dem letzten Update...

Hier ein Auszug aus dem Log:

2013.04.14 18:48:19 3: set TH_Bad desired 18.0
2013.04.14 18:50:15 2: CUL_HM set HM_Schalter1 off rxt:1



Eine Frage noch zu der folgenden Zeile Code:
 
define desired_notify notify Heizung_Bad:.* {my $desired_tmp=ReadingsVal ("Heizung_Bad", "desired-temp", "17");;{fhem "set TH_Bad desired $desired_tmp"}}

Wird die "17" unbedingt benötigt...bzw welchen Zweck erfüllt diese Konstante.
Die Soll-Temperatur wird ausschließlich per Hand am FHT80B oder dem Wochenprogramm gesetzt.

Gruß

Der dritte Übergabeparameter wird benutzt, falls das Reading nicht gefunden wird. Da das Reading desired-temp normalerweise immer gesetzt wird, kommt diese Zahl nie zum tragen.

Wie schlägt sich das neue Modul?

Gruß

Damian




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

rokno

Das "neue" Modul sieht sehr gut aus...hatte im letzten Beitrag den Auszug gepostet...

Werde nächste Woche mein IR Heizung erhalten...dann wird mal richtig getestet.... :-)

Vielen Dank nochmals für die Unterstützung.

Gruß

Damian

... da fällt mir gerade beim Stichwort IR-Heizung auf:

Falls du den HM_LC-SW1PBU-FM genommen hast - der ist nur bis 1000 Watt ausgelegt.


Gruß

Damian

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

rokno

Danke für den Hinweis....

Mein Panel hat lediglich 420Watt.....das sollte reichen... :-)

Gruß

Damian

Den Notify kannst du, wie ich heute gelernt habe, noch weiter vereinfachen, so kommt man sogar ohne zusätzliche Variable aus:

define desired_notify notify Heizung_Bad:.* {fhem "set TH_Bad desired ".ReadingsVal("Heizung_Bad", "desired-temp", "17")}

Kannst ja mal ausprobieren.

Gruß

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

Tiefflieger

Komme gerade nicht weiter..... er will einfach nicht schalten !

Habe folgendes prob.:

define Zirkulation THRESHOLD OWX_28_4A32BE040000:temperature:0.5 FS20_10c900 :on:off
set Zirkulation desired 20
attr Zirkulation room Steuerung

er will einfach nicht .... habe statt :temperature auch schon :T :temp :temperatur probiert !
Wo ist der Fehler ?

MFG

Kann es so machen , das nach 3.40 min der nächste geschaltet wird ?
FHEM aktuellste Version Raspbarry Pi 512Mb, 1-Wire mit LinkUSBi, FS20 AS4, FS20 ST4, 10x DS18B20, CUL 3.4

Damian

sollte funktionieren mit:

define Zirkulation THRESHOLD OWX_28_4A32BE040000:temperature:0.5 FS20_10c900

entspricht wegen Defaults (siehe Doku):

define Zirkulation THRESHOLD OWX_28_4A32BE040000:temperature:0.5 FS20_10c900|set @ off|set @ on|2


"temperature" muss übereinstimmen mit dem Temperatur-Reading bei deinem OWX_28-Sensor.

Geschaltet wird immer nur, wenn ein Event vom OWX_28 kommt. Wie oft der ausgelesen wird, kannst du bestimmt bei deinem OWX_28 einstellen. Ich benutze OWTHERM, da wird das Intervall per set <Sensor> interval ... gesetzt (Default 300, also 5 Minuten)

Ich frage mich nur, ob deine Hysterese mit 0,5 Grad für Zirkulation sinnvoll ist - da wird deine Pumpe aber oft an- und wieder ausgehen.

Gruß

Damian




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

Tiefflieger

Danke Damian hat geklappt..... mußte nur das on und off tauschen bei mir !
Ist es möglich, wenn ich 1 aktor über einem sensor schalte
das ein 2. aktor dann 4 min schäter schalten ?

MFG

P.S: Ist für eine Heizungssteuereung, wo das ventiel 4 min zum öffnen brauch, bevor die pumpe anläuft!
FHEM aktuellste Version Raspbarry Pi 512Mb, 1-Wire mit LinkUSBi, FS20 AS4, FS20 ST4, 10x DS18B20, CUL 3.4

Damian

Zitat von: Tiefflieger schrieb am Sa, 27 April 2013 08:23Danke Damian hat geklappt..... mußte nur das on und off tauschen bei mir !
Ist es möglich, wenn ich 1 aktor über einem sensor schalte
das ein 2. aktor dann 4 min schäter schalten ?

MFG

P.S: Ist für eine Heizungssteuereung, wo das ventiel 4 min zum öffnen brauch, bevor die pumpe anläuft!


Warum nicht, im Prinzip:

define Zirkulation THRESHOLD OWX_28_4A32BE040000:temperature:0.5 FS20_10c900|set @ off;set pumpe off|set @ on;sleep 240;set pumpe on|2


oder vertauscht, je nach Schaltungslogik.

Gruß

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

Damian

Hallo Rudi,

ich habe das Problem, dass durch die Auswertung der Eingabezeile Informationen verloren gehen, konkret:

im THRESHOLD-Modul habe ich vorgesehen mehrere FHEM-Befehle hintereinander zu schalten, lt. meiner Doku soll z. B. gehen:

define thermostat THRESHOLD sensor |set Switch1 on;set Switch2 on|set Switch1 off;set Switch2 off|1

im Prinzip funktioniert es auch, wenn man die Verkettung der Befehle mit den Semikolons nachträglich im DEF-Bereich anpasst. So waren auch meine Tests.

Nun musste ich feststellen, dass eine direkte Eingabe der obigen Zeile in der Eingabezeile zu einer Fehlermeldung führt - offenbar ausgelöst durch das erste Semikolon - klar, du hast zuvor die Zeile interpretiert. Den Umweg über {fhem("... wollte ich den Usern erstmal nicht zumuten, wenn es nicht sein muss. Evtl. müsste ich in der Doku aufnehmen, dass solche Verkettungen nur über den DEF-Bereich realisierbar sind oder hast du eine Idee, wie man das Problem elegant löst?

Gruß

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

rudolfkoenig

> lt. meiner Doku soll z. B. gehen:

Wunschdenken :)

; ist FHEM Befehlstrenner, Escape ist ;;
Gilt eigentlich ueberall (telnet/FHEMWEB/fhem.cfg/fhem()/etc), Ausnahme ist (wie Du es geschrieben hast) das FHEMWEB-Detailansicht-DEF-Eingabefenster, dieses macht aus ; selbst ein ;;, bevor es die Daten als modify Argument an FHEM uebergibt.

Fuer "elegant" braucht man einen "vollwertigen" Parser, das haben wir uns bisher geschenkt. Er wuerde in den abgebildeten Fall aber auch nicht helfen, da mir kein Regel einfaellt, warum der Strichpunkt hier nicht als Trenner zu sehen ist.

Damian

Zitat von: rudolfkoenig schrieb am Di, 04 Juni 2013 14:49> lt. meiner Doku soll z. B. gehen:

Wunschdenken :)

; ist FHEM Befehlstrenner, Escape ist ;;

Du sagst es, dann reicht einfach ;; in der Eingabezeile anzugeben damit es funktioniert:)

Dann kann ich die Doku so lassen, wie sie ist, denn die beschriebene Syntax bezieht sich nicht unbedingt auf die Eingabezeile und diese Problematik ist nicht Modul- sondern FHEM-spezifisch.

Gruß

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