@boomx wir sprechen über diese Zeile?
if ( tonumber(fibaro:getValue(power_socket, „power“)) > 35 ) and run == 0 then
local start = (os.time())
Welchen Wert meinst du hier genau?
@boomx wir sprechen über diese Zeile?
if ( tonumber(fibaro:getValue(power_socket, „power“)) > 35 ) and run == 0 then
local start = (os.time())
Welchen Wert meinst du hier genau?
Ja, richtig. Die 35 auf einen Wert, welcher über dem Nachlauf liegt, erhöhen.
Gruß
@boomx danke für die schnelle Antwort. Da bin ich jetzt mal gespannt ob es funktioniert.
Bei meinem Trockner liegt der Nachlaufstrom bei ca. 165W, ( Ist eh nur noch der Trommelmotor der den Knitterschutz aktiviert) also habe den von dir genannten Wert von 35 mal auf 170 gesetzt ( ist ja drüber)
Berichte wieder was passiert.
@ boomx klappt leider doch nicht so ganz. Der Counter zählt nach der Trocknerzeit wie gewohnt hoch und schickt eine Push. Dann wiederholt sich das Spielchen ca. 30 Min lang, da ja jedesmal die Trommel für ca. 60 sec stoppt und dann wieder die Trommel dreht mit ca. 165 Watt. dann hat man zig Push Nachrichten.
Kann nicht sein. Wenn die Push kommt, ist die Szene beendet. Dann hast du etwas an der ursprünglichen Szene verändert…
Also ich habe den Wert gestern mal 170 eingestellt. Auf dem Tab kamen wieder rund 20 Push Nachrichten an. Auf meinem iPhone kam keine einzige an. Liegt das daran, dass wirnicht zu Hause waren. Kommen die Push nur im eigenen Netz an? Dann stelle ich lieber auf E-Mail um.
@boomx, damit wir nicht ständig aneinander vorbei reden, habe ich das Spript ( von Seite 2), was ich verwande nochmal eingefügt.
Wie gesagt, das Problem ist beim Trockner der Nachlauf ( Knitterschutz) der sehr lange sinnlos nachläuft. Ich aber NUR eine Meldung erhalten möchte und zwar gleich am Anfang BEVOR der Nachlauf beginnt und danach keine einzige Meldung mehr.
Eckdaten: Trockner Standby: ca. 2,3 W
Nachlauf: Ca. 165 W
Siehst Du hier noch irgendwelche Ungereimtheiten?
--[[
%% properties
34 power
%% globals
--]]
local wallplug = 34 -- wallplug
local standby = 3 -- Verbrauch, unter dem der Standby-Modus erkannt werden soll
local phone1 = 5 -- ID Tablet
if (fibaro:countScenes()>1)
then
fibaro:abort();
fibaro:debug('abort');
end
local run = 0
local counter = 0
local currentDate = os.date('*t');
local power = fibaro:getValue(wallplug, "power")
if ((tonumber(fibaro:getValue(wallplug, "power")) > 170) and run == 0) then --hier habe ich den Wert auf 170 geändert, da ja der Knitterschutz ca. 165 Wat verbraucht.
local start = (os.time())
fibaro:debug('Trockner ist an...')
fibaro:debug('Verbrauch = '..power..' Watt')
fibaro:sleep(120*1000);
run = 1
end
while run == 1 do
if (tonumber(fibaro:getValue(wallplug, "value")) == 1) then
if ((tonumber(fibaro:getValue(wallplug, "power")) < standby))
then
fibaro:debug('Trockner im Standby; zähle counter hoch');
if (counter == 6) then -- hier habe ich den Wert auf 6 gesetzt, da der Counter beim Knitterschutz immer bis 6 zählt
fibaro:debug('Trockner noch im Standby; ca. 1 min sind vergangen; Versende PushNachricht');
fibaro:call(phone1, "sendPush", "Wäsche im Trockner ist fertig und kann entnommen werden");
end
counter = counter + 1
fibaro:debug(counter)
elseif (tonumber(fibaro:getValue(wallplug, "power")) > standby)
then
fibaro:debug('Trockner wieder an; counter resettet');
counter = 0
end
elseif (tonumber(fibaro:getValue(wallplug, "value")) == 0) then
fibaro:debug("Trockner aus... Abort scene")
run = 0
counter = 0
end
fibaro:sleep(10*1000)
end
Das ist das falsche Skript. Bitte dieses nehmen, das was du nutzt funktioniert nicht richtig.
--[[
%% properties
81 power
%% globals
--]]
local power_socket = 81 -- wallplug
local powerlive = fibaro:getValue(power_socket, "power")
fibaro:debug("Verbrauch = "..powerlive.." Watt")
if (fibaro:countScenes()>1)
then
fibaro:abort();
end
local run = 0
local currentDate = os.date("*t");
local power = fibaro:getValue(power_socket, "power")
local counter = 0
if ( tonumber(fibaro:getValue(power_socket, "power")) > 35 ) and run == 0 then
local start = (os.time())
fibaro:debug("Geschirrspüler läuft...")
fibaro:debug("Verbrauch = "..power.." Watt")
run = 1
end
while run == 1 do
if (tonumber(fibaro:getValue(power_socket, "power")) < 2) then
counter = counter + 1
local power2 = fibaro:getValue(power_socket, "power")
fibaro:debug('counter = ' ..counter.. " : "..power2.."Watt")
end
if (tonumber(fibaro:getValue(power_socket, "power")) > 3 ) then
counter = 0
end
if (tonumber(fibaro:getValue(power_socket, "power")) < 1.0) and counter > 60 then
fibaro:debug("Geschirrspüler ist fertig.")
local power3 = fibaro:getValue(power_socket, "power")
fibaro:debug("Verbrauch (3) = "..power3.." Watt")
fibaro:debug("Send Push")
fibaro:call(68, "sendPush", "Geschirrspüler ist durchgelaufen", "Dischwasher");
fibaro:call(113, "sendPush", "Geschirrspüler ist durchgelaufen", "Dischwasher");
run = 0
end
fibaro:sleep(1*1000)
end
@ boomx: hast Du das auch mit einem Trockner laufen, der nach dem eigentlichen Ende noch nachläuft?
Und wie ist das mit den Push Nachrichten? Bekommt man die nur “zu Hause” im Netz mit der HC2 oder woran könnte es liegen, dass ich zwar am Tab im Haus den Sack voll Benachrichtigungen bekommen habe, am iPhone ausser Haus aber im Gegensatz zum letzten Mal keine einzige Nachricht…
Danke & Gruß.
Schau doch mal ein paar Beiträge weiter vorne da habe ich genau dieses script gepostet. Bei läuftbes mit meinem Trockner. Bei läuft der Trockner wenn er fertig ist alle 35 Skunden nach. Deshalb hab ich den counter auf 30 sekunden geändert wenn der stromverbrauch unter 3 Watt fällt. Ich bekomme nur eine Push wenn er mit dem Programm durch ist.
@maccwinn, dein Trockner läuft alle 35 sec nach und du stellst den Counter auf 30 sec, dann müsste er doch alle 30 sec eine Nachricht versenden, da dein Nachlauf ja 35sec dauert und der counter ja eher eine nachricht versendet. Bei mir ist es genau anders herum, ich muss den counter höher setzen als die jeweillige Nachlaufzeit, sonst werde ich von Nachrichten überschüttet.
Aber das Hautpproblem wurde leider immer noch nicht gelöst. Ich will NUR eine Nachricht erhalten und mir den Rest dieser Nachlaufzeit ersparen. ( Kostet nur Strom)
Ich hatte auch schon den Wert von 35 auf 170 in der Zeile if ( tonumber(fibaro:getValue(power_socket, “power”)) > 170) and run == 0 then
local start = (os.time()) geändert. ( Um über den Nachlaufstrom von 165 W zu gehen). Funktioniert einfach nicht. Irgendwann zählt er plötzlich wieder den Counter hoch und schwups sind die Nachrichten wieder zigmal da. Ihr habt das Problem logischerweise nicht, da ihr immer so lange wartet bis der Trockner sich komplett abschaltet, dann ist er aber schon sinnlos über 30 Min im Nachlauf gewesen.
@knallfrosch, die E-Mail sollte aber schon gehen, wenn die richtige ID und die Zeile fürs Versenden passt. fibaro:call(113, “sendPush”, “Trockner ist durchgelaufen”, “Dischwasher”);
Also von mir aus kann der Trockner ruhig weiterlaufen (im Knittermodus), aber die Benachrichtigung haette ich auch gerne schon, wenn der eigentliche Lauf zu Ende ist. Wenn ich das in der Verbrauchskurve richtig gesehen habe, verbraucht mein Ttrockner im Nachlauf auch mal 220 Watt. Das werde ich im Skript anpassen.
Bzgl. der Push: Ich habe nix an den ID’s geaendert. Daher war ich ja verwundert, warum die Benachrichtigung, die noch einen Tag vorher funktioniert (und mein iPhone mit Nachrichten geflutet) hat, auf einmal keinen Nachrichten mehr schickt. Der einzige Unterschied war, dass ich nicht zu Hause war.
@Trixxon:
Nochmal, du nutzt das falsche Skript. In dem geposteten von mir wird die Szene beendet, wenn eine Push versendet wurde. Bei deinem läuft das Skript solange durch bis der Stecker ausgeschaltet wird.
Wird bei dir das gleiche Problem sein. Falsches Skript.
@boomx, kann ich so nicht nachvollziehen. Ich verwende ja jetzt das Skipt von dir auf Seite 8. Aber ich denke es liegt an den Einstellungen die evtl. von mir nicht korrekt angepasst wurden und hier noch Erklärungsbedarf da ist, was das Programm hier eigentlich will und auch ausführt.
Dies sind doch die Zeilen welche angepasst werden müssen/können?
Das die Szene beendet wird, ist bei mir nicht so, bei jedem Anlauf/Beendigung des Nachlaufs sieht man den Counter erneut starten.
Sorry, oben hattest du ein anderes Skript gepostet. Die Werte stimmen einfach nicht. Deshalb startet das Skript immer wieder neu, wenn der Verbrauch durch den Nachlauf mehr als 35 Watt erreicht. Hier muss ein Wert ÜBER dem Verbrauch des Nachlaufs gesetzt sein. (1)
3) Verbrauch > Standby; Counter wird wieder zurückgesetzt
Noch genauer kann ich es nicht mehr beschreiben.
@boomx, danke für die Antwort. Endlich funktioniert es.
Wird eigentlich der Gesamtverbrauch für diese Trocknung in Zeile 41 fibaro:debug(“Verbrauch (3) = “…power3…” Watt”) wiedergegeben, oder ist dies gar nicht vorgesehen in diesem Skript?
Den Gesamtverbrauch kann man nicht auslesen. Die Zeile stammt glaub ich noch aus Testzeiten, um den letzten gemessenen Wert im Debug zu haben.
Hallo,
hier nochmal das Skript, das aktuell bei mir läuft, und mir Tablet und iPhone mit Push nachrichten flutet, wenn der Trockner im Nachlauf ist.
Von mienem Verständnis müßte ich vermutlich den Wert in Zeile 21 von 35 auf irgendwas über 200 setzen. Muss mal schauen, wieviel der Trockner da noch zieht. Richtig? Hätte ich sonst noch was anzupassen?
Danke!
--[[
%% properties
34 power
%% globals
--]]
local power_socket = 34 -- wallplug
local powerlive = fibaro:getValue(power_socket, "power")
fibaro:debug("Verbrauch = "..powerlive.." Watt")
if (fibaro:countScenes()>1)
then
fibaro:abort();
end
local run = 0
local currentDate = os.date("*t");
local power = fibaro:getValue(power_socket, "power")
local counter = 0
if ( tonumber(fibaro:getValue(power_socket, "power")) > 35 ) and run == 0 then
local start = (os.time())
fibaro:debug("Trockner läuft...")
fibaro:debug("Verbrauch = "..power.." Watt")
run = 1
end
while run == 1 do
if (tonumber(fibaro:getValue(power_socket, "power")) < 2) then
counter = counter + 1
local power2 = fibaro:getValue(power_socket, "power")
fibaro:debug('counter = ' ..counter.. " : "..power2.."Watt")
end
if (tonumber(fibaro:getValue(power_socket, "power")) > 3 ) then
counter = 0
end
if (tonumber(fibaro:getValue(power_socket, "power")) < 1.0) and counter > 60 then
fibaro:debug("Trockner ist fertig.")
local power3 = fibaro:getValue(power_socket, "power")
fibaro:debug("Verbrauch (3) = "..power3.." Watt")
fibaro:debug("Send Push")
fibaro:call(46, "sendPush", "Trockner ist durchgelaufen", "Trockner");
fibaro:call(81, "sendPush", "Trockner ist durchgelaufen", "Trockner");
run = 0
end
fibaro:sleep(1*1000)
end
Hi,
genau. Die Zeile musst du anpassen. Hier muss dann ein Wert stehen, welcher höher ist als der Verbrauch im Nachlauf. Was anderes solltest du nicht anpassen müssen.
Gruß
Hat leider nicht wie gewünscht funktioniert. Es kamen wieder viele Push´s. Hier mal der Stromverbrauch in der Zeit. Wenn ich in die Kruve klicke waren die Höchststände in der Nachlaufphase max. 125 Watt … :-/