Hauptmenü

heizungslüfter

Begonnen von andi, 07 Februar 2013, 11:12:36

Vorheriges Thema - Nächstes Thema

andi

hallo zusammen
benutze seit geraumer zeit fhem mit fritz7390
1xcul433mhz
1xcul868mhz
läuft alles super..........danke an alle die daran mitarbeiten

nun meine frage

ich möchte einen fs20 stecker anschalten
fs20st on = logfile fht80b actuator über 1% (oder mehr )geöffnet ist
um damit einen lüfter zu schalten

und
auszuschalten wenn der actuator 0% in dem logfile anzeigt plus eine
nachlaufzeit von +00:05:00 min


dies ist warscheinlich eine dumme frage für die die sich hiermit sehr gut auskennen
leider habe ich in den dokumentaionen keinen ähnlichen fall gefunden
vielleicht kann mir jemand helfen

gruß
andi

UliM

Hi,
das mit dem Nachlauf ist tricky, denn dafür muss ein separater Nachlauftimer gestartet werden:

define luefterschaltung notify fht80b:actuator.* { if ( %EVTPART1 > 0) { fhem("set luefter on") } else { if (defined($defs{nachlauf}) {fhem("delete nachlauf")}; fhem("define nachlauf at +00:05 set luefter off") } }


Kurze Erklärung:
fht80b steht hier für den Namen Deines FHT, musst Du ersetzen.
Wann immer eine actuator-Meldung vom fht kommt, wird geprüft:
- Ist der Gemeldete Wert > 0 (%EVTPART1)
- Falls ja, schalte den Lüfter an (Name musst Du ebenfalls ersetzen)
- Falls nein:
  - prüfe, ob bereits ein Nachlauftimer existiert. Falls ja: löschen.
  - definiere einen Nachlauftimer, der in 5 Minuten den luefter ausschaltet

Ungetestet und ohne Gewähr :)

Viel Erfolg,
Uli

RPi4/Raspbian, CUL V3 (ca. 30 HomeMatic-devices), LAN (HarmonyHub, alexa etc.).  Fördermitglied des FHEM e.V.

Puschel74

Hallo,

sorry für die unbedarfte Frage aber ...

Zitat- prüfe, ob bereits ein Nachlauftimer existiert. Falls ja: löschen.
- definiere einen Nachlauftimer, der in 5 Minuten den luefter ausschaltet

Wird damit nicht jedesmal, wenn der FHT 0% meldet, der Timer neu gesetzt?

Ich müsst erstmal im Log schauen ob der actuator innert 5 Minuten gemeldet wird oder nicht.
Wenn ja müsste doch der Timer jedesmal gelöscht und neu gesetzt werden.
Wenn der actuator länger als 5 Minuten braucht sollte der Schnipsel funktionieren.

Grüße
Zotac BI323 als Server mit DBLog
CUNO für FHT80B, 3 HM-Lan per vCCU, RasPi mit CUL433 für Somfy-Rollo (F2F), RasPi mit I2C(LM75) (F2F), RasPi für Panstamp+Vegetronix +SONOS(F2F)
Ich beantworte keine Supportanfragen per PM! Bitte im Forum suchen oder einen Beitrag erstellen.

UliM

Stimmt.
Der actuator kommt alle 2-3 Minuten.
Vll ist sogar die schlauere Variante, bei EVTPART > 0 einfach ein
set luefter on-for-timer 240
zu senden, dann entfällt auch gleich der off-Teil.
=8-)
RPi4/Raspbian, CUL V3 (ca. 30 HomeMatic-devices), LAN (HarmonyHub, alexa etc.).  Fördermitglied des FHEM e.V.

Puschel74

Sorry Uli,

aber ich würde bei actuator = 0% ein on-for-timer 300 nachschieben und den
Lüfter damit dann noch 5 Minuten nachlaufen lassen ;-)

Grüße
Zotac BI323 als Server mit DBLog
CUNO für FHT80B, 3 HM-Lan per vCCU, RasPi mit CUL433 für Somfy-Rollo (F2F), RasPi mit I2C(LM75) (F2F), RasPi für Panstamp+Vegetronix +SONOS(F2F)
Ich beantworte keine Supportanfragen per PM! Bitte im Forum suchen oder einen Beitrag erstellen.

Puschel74

Poah, Tante-Edith wo bleibst du ^^

Mein vorheriger Beitrag war auch Müll sorry.
Da der actuator ja alle 2-3 Minuten gesendet wird läuft der Lüfter dann vermutlich die ganze Zeit da ein
on-for-timer 300 immer wieder nachgeschoben wird.

Es wird wohl nichts um einen Dummy resp. eine Variable herum kommen um zu sehen das der actuator bereits >0% war und der Lüfter nur
einmal nachlaufen darf.

So ala:

if actuator > 0%
  lüfter darf nachlaufen = 1
if actuator = 0% und Lüfternachlauf läuft
  nix machen
if actuator = 0% und Lüfternachlauf vorbei
  lüfter darf nachlaufen = 0

Die Variable müsste gesetzt werden wenn der actuator > 0% ist und sobald die Nachlaufzeit vorbei ist müsste die Variable wieder
zurück gesetzt werden.

Wie Uli schon schrieb:
Zitatdas mit dem Nachlauf ist tricky

Grüße
Zotac BI323 als Server mit DBLog
CUNO für FHT80B, 3 HM-Lan per vCCU, RasPi mit CUL433 für Somfy-Rollo (F2F), RasPi mit I2C(LM75) (F2F), RasPi für Panstamp+Vegetronix +SONOS(F2F)
Ich beantworte keine Supportanfragen per PM! Bitte im Forum suchen oder einen Beitrag erstellen.

andi

hey nette menschen
erstmal danke für die rege beteiligung
ich versuche auf dem ersten beitrag aufzubauen
und hoffe ich komme zu meinem ziel

lg
andi

Puschel74

Hallo,

auf Ulis Beitrag kannst du ruhig aufbauen.
Der Ansatz ist soweit einwandfrei.
Allerdings hat er ja auch erwähnt das der Nachlauf etwas tricky sein wird.

Daher wirst du wohl um einen Mehrzeiler nicht drum rum kommen.


define luefterschaltung notify fht80b:actuator.* {
  if ( %EVTPART1 > 0) {
    fhem("set luefter on") if (Value("luefter") ne "on");
  }
  if ( %EVTPART1 = 0) {
    if (Value("luefter") ne "on-for-timer 300") {
      fhem("set luefter on-for-timer 300");
    }
  }
}


Ebenfalls ungetestet.
Erläuterungen siehe Ulis Beitrag.
Achtung! Wenn du die Nachlaufzeit ändern willst musst du bei "on-for-timer 300" auf den neuen Wert stellen.

Grüße
Zotac BI323 als Server mit DBLog
CUNO für FHT80B, 3 HM-Lan per vCCU, RasPi mit CUL433 für Somfy-Rollo (F2F), RasPi mit I2C(LM75) (F2F), RasPi für Panstamp+Vegetronix +SONOS(F2F)
Ich beantworte keine Supportanfragen per PM! Bitte im Forum suchen oder einen Beitrag erstellen.

Puschel74

#8

define luefterschaltung notify fht80b:actuator.* {
  if ( %EVTPART1 > 0) {
    fhem("set luefter on") if (Value("luefter") ne "on");
  }
  if ( %EVTPART1 == 0) {
    if (Value("luefter") eq "on") {
      fhem("set luefter on-for-timer 300");
    }
  }
}


Und schon nen Fehler entdeckt.
Zotac BI323 als Server mit DBLog
CUNO für FHT80B, 3 HM-Lan per vCCU, RasPi mit CUL433 für Somfy-Rollo (F2F), RasPi mit I2C(LM75) (F2F), RasPi für Panstamp+Vegetronix +SONOS(F2F)
Ich beantworte keine Supportanfragen per PM! Bitte im Forum suchen oder einen Beitrag erstellen.

ebby

Hi,

danke für Ideen von UliM und Puschel74!

Ich brauche das um eine Elektroheizung im Kinderzimmer zu steuern. Leider erhalte ich im Log immer folgendes:
2014.01.07 11:28:23 3: Heizstrahlerschaltung return value: syntax error at (eval 1268) line 1, near "% >"

Mein Notify sieht so aus:
define Heizstrahlerschaltung notify Temperaturfuehler_Vanessa:actuator.* { if ( %EVTPART1 > 0) { fhem("set Heizstrahler_Vanessa on") if(Value("Heizstrahler_Vanessa ") ne "on") } else { fhem("set Heizstrahler_Vanessa off") if(Value("Heizstrahler_Vanessa ") ne "off") } }


Laufen habe ich fhem auf der FB7390:
Fhem info:
  Release  : 5.4
  Branch   : DEVELOPMENT
  OS       : linux
  Arch     : mips-linux
  Perl     : v5.12.2


Kann mir jemand nen Tip geben was ich falsch mache?

Danke!
ebby

OiledAmoeba

Sitze gerade beim Bäcker und sehe den Hundeparkplatz... Da kommt mir die Idee, wie es wäre, actuator 0% über einen Wachhund abzufangen, der erst zurückgesetzt wird, wenn der actuator >0% ist. Mit regexp1wontreactivate würden weitere 0%-Meldungen den internen Watchdog - Timer nicht stören.

Wär das ne Idee oder zu umständlich?

Gesendet von meinem GT-I9100 mit Tapatalk

Gruß
Florian

Jail auf XigmaNAS (freeBSD); CCU2 mit CULv3, nanoCUL868 und JeeLink-Clone; div. FS20-Komponenten; andFHEM; div. hm- und hmip-Komponenten; div. IT+

ebby

Zitat von: OiledAmoeba am 07 Januar 2014, 12:28:54
Sitze gerade beim Bäcker und sehe den Hundeparkplatz... Da kommt mir die Idee, wie es wäre, actuator 0% über einen Wachhund abzufangen, der erst zurückgesetzt wird, wenn der actuator >0% ist. Mit regexp1wontreactivate würden weitere 0%-Meldungen den internen Watchdog - Timer nicht stören.

Wär das ne Idee oder zu umständlich?

Gesendet von meinem GT-I9100 mit Tapatalk

Ist dieser Thread und meine Anfrage im Anfängerbereich oder auf einmal im Klugscheißerbereich gelandet?

OiledAmoeba

Ups, sorry.
Dachte, das wäre ne brauchbare Idee, die ich aber mangels PC zu dem Zeitpunkt nicht weiter ausführen konnte.
Dann eben nicht.

Gesendet von meinem GT-I9100 mit Tapatalk

Gruß
Florian

Jail auf XigmaNAS (freeBSD); CCU2 mit CULv3, nanoCUL868 und JeeLink-Clone; div. FS20-Komponenten; andFHEM; div. hm- und hmip-Komponenten; div. IT+