FHEM Forum

FHEM => Anfängerfragen => Thema gestartet von: jayjones am 13 Oktober 2014, 09:26:51

Titel: [gelöst] Verständnisproblem Variable für temp. bei Threshold
Beitrag von: jayjones am 13 Oktober 2014, 09:26:51
Moin,

habe eine Anfängerfrage. Ich bin mit Visual Basic und C bekannt... nicht vertraut. FHEM bzw. Pearl verwirrt mich derzeit noch sehr.

Ich möchte bei Aussentemperaturen größer 16° meine Heizung ausschalten. Das funktioniert auch wunderbar mit diesem bisschen Code:


define HeizungEco THRESHOLD Wetter:temperature:1:16 Heizung_Anforderung
attr HeizungEco room Heizung


Nun möchte ich im Floorplan die Hysterese (1) und den Schwellwert (16) ändern können.

Hierfür würde ich eine Dummy Variable Anlagen, aber wie muss der Ausdruck im Code aussehen?


define HeizungEco THRESHOLD Wetter:temperature:Hz_Eco_Hyst:Hz_Eco_Temp Heizung_Anforderung
attr HeizungEco room Heizung


Ist das korrekt? Ich habe soweit schon gelesen, dass in Pearl die variablen nicht als Char, String Bool etc deklariert werdern... Aber irgendwie kommt mir das komisch vor.
Titel: Antw:Verständnisproblem Variable für temp. bei Threshold
Beitrag von: Damian am 13 Oktober 2014, 13:13:55
Zitat von: jayjones am 13 Oktober 2014, 09:26:51

define HeizungEco THRESHOLD Wetter:temperature:Hz_Eco_Hyst:Hz_Eco_Temp Heizung_Anforderung
attr HeizungEco room Heizung


Ist das korrekt? Ich habe soweit schon gelesen, dass in Pearl die variablen nicht als Char, String Bool etc deklariert werdern... Aber irgendwie kommt mir das komisch vor.

Wird so nicht funktionieren. Das THRESHOLD-Modul ist nicht Perl. An den Stellen für Hysterese bzw. Vorgabetemperatur ist keine Variable vorgesehen.

Du kannst aber, was eher zu empfehlen ist, weil es nach dem Restart des System bestehen bleibt, mit "set HeizungEco hysterisis <Zahl>" bzw. "set HeizungEco desired <Zahl>" die entsprechenden Vorgaben jederzeit ändern.

Gruß

Damian
Titel: Antw:Verständnisproblem Variable für temp. bei Threshold
Beitrag von: jayjones am 13 Oktober 2014, 13:57:34
Hi Damian,

danke für deine Antwort.

Welchen Weg würdest Du gehen? Ich habe einen Arduino mit Firmata am laufen, und würde bei >16°C einfach die Freigabe für den Brenner per Relais wegnehmen.

Ich möchte aber, dass ich den Schwellwert ab wann der Brenner abgeschaltet werden soll, über das Webinterface ändern können. Andernfalls könnte der WAF ins unermessliche steigen :(

ZitatDu kannst aber, was eher zu empfehlen ist, weil es nach dem Restart des System bestehen bleibt, mit "set HeizungEco hysterisis <Zahl>" bzw. "set HeizungEco desired <Zahl>" die entsprechenden Vorgaben jederzeit ändern.


Wenn ich folgendes mache:

set HeizungEco hysterisis <Zahl
set HeizungEco desired <Zahl>


muss ich ja diese Werte noch irgendwie verarbeiten. Wenn Temperatur > HeizungEco desired dann BrennerFreigabe = AUS. In VB würde ich das nun mit IF lösen, ist das hier auch der richtige Ansatz?
Sorry, muss echt blöd klingen, aber ich steige derzeit noch nicht durch.
Titel: Antw:Verständnisproblem Variable für temp. bei Threshold
Beitrag von: Damian am 13 Oktober 2014, 14:08:39
Zitat von: jayjones am 13 Oktober 2014, 13:57:34
Hi Damian,

danke für deine Antwort.

Welchen Weg würdest Du gehen? Ich habe einen Arduino mit Firmata am laufen, und würde bei >16°C einfach die Freigabe für den Brenner per Relais wegnehmen.

Ich möchte aber, dass ich den Schwellwert ab wann der Brenner abgeschaltet werden soll, über das Webinterface ändern können. Andernfalls könnte der WAF ins unermessliche steigen :(

Wenn ich folgendes mache:

set HeizungEco hysterisis <Zahl
set HeizungEco desired <Zahl>


muss ich ja diese Werte noch irgendwie verarbeiten. Wenn Temperatur > HeizungEco desired dann BrennerFreigabe = AUS. In VB würde ich das nun mit IF lösen, ist das hier auch der richtige Ansatz?
Sorry, muss echt blöd klingen, aber ich steige derzeit noch nicht durch.

Das THRESHOLD-Modul hat ja ein IF drin - es arbeitet eigenständig ;)

Mit

define HeizungEco THRESHOLD Wetter Heizung_Anforderung

und

set HeizungEco desired 16

schaltet es automatisch beim Überschreiten von 16 Grad Heizung_Anforderung auf off und beim Unterschreiten von 15 Grad (16-1) Heizung_Anforderung auf on.

Wenn deine Frau set HeizungEco desired 20 setzt, dann wird das Modul schon automatisch Heizung_Anforderung auf on bzw. off setzen, je nach aktueller Wetter-Vorgabe.

Wenn du komplexere Sachen abfragen bzw. kombinieren willst, schau dir http://fhem.de/commandref_DE.html#DOIF an, das arbeitet ebenfalls eigenständig und kann auch u. A. mit Zeiten umgehen.

Gruß

Damian
Titel: Antw:Verständnisproblem Variable für temp. bei Threshold
Beitrag von: jayjones am 13 Oktober 2014, 17:42:54
Besten Dank! Der Groschen ist gefallen!

Saved the file fhem.cfg to file

Titel: Antw:Verständnisproblem Variable für temp. bei Threshold
Beitrag von: Puschel74 am 13 Oktober 2014, 19:38:33
Nicht schliessen.
Ein gelöst vor dem Betreff genügt - danke.