NEWS
[Vorlage] Stromverbrauch protokollieren - (etwas optimiert)
-
… Ich habe in meinem javascript\global Ordner eine Hilfsfunktion dafür geschrieben die überall verfügbar ist.
Anstatt
> sendTelegram(text);
könntest du auch folgendes schreiben:
` > sendTo("telegram.0", {
text: text,
chatId: <deine id="">});</deine>
Hallo dering.
Ich habe dein Script seit gestern am laufen und habe zu den Telegram-Meldungen eine Frage:
Was kann mir da als Nachricht geschickt werden?
Kannst du dein globales Javascript bitte mal zeigen?
Danke
Gruß
Volker
-
… Ich habe in meinem javascript\global Ordner eine Hilfsfunktion dafür geschrieben die überall verfügbar ist.
Anstatt
> sendTelegram(text);
könntest du auch folgendes schreiben:
` > sendTo("telegram.0", {
text: text,
chatId: <deine id="">});</deine>
Hallo dering.
Ich habe dein Script seit gestern am laufen und habe zu den Telegram-Meldungen eine Frage:
Was kann mir da als Nachricht geschickt werden?
Kannst du dein globales Javascript bitte mal zeigen?
Danke
Gruß
Volker `
Hi Volker,
um Nachrichten via Telegram schicken zu lassen benötigst du eine Telegram Instanz und einem Token. Wie man das alles macht, ist hier sehr gut erklärt:
https://github.com/ioBroker/ioBroker.te … am-adapter
Wenn du dann eine "grüne Ampel" in der Instanz hast, kannst du dir über ein Script Nachrichten schicken lassen.
Ein einfacher Befehl wäre:
sendTo("telegram.0", {
text: "Deine Nachricht",
chatId: <dein chatid="">});
Wie du deine ChatID erhältst, wird auch in dem Link erklärt.</dein>
-
Hallo Gemeinde,
ich verwende das Script seit längerer Zeit völlig problemlos. Tolle Arbeit, danke dafür.
Jetzt benutze ich es zur Bilanzierung der Poolheizung. Erfassung der Sonneneinstrahlung, rechnerische Abschätzung der durch die Poolheizung eingebrachte Energie und natürlich die Lesitungsaufnahme der Pumpe.
Mein Problem:
Ich habe einige Namen von eigenen Datenpunkten unglücklich gewählt, und würde die jetzt gerne umbenennen. Geht das ohne Datenverlust? `
Meines Wissens ist es leider nicht so einfach möglich Ordner umzubenennen, daher wird es schwierig.
-
@Ham:Hi,
erstmal vielen Dank für das Skript! Bin neu hier und hab ein Problem mit dem Skript. Vielleicht kann mir jemand helfen
Hab das Skript laufen mit einem HM Zählersensor, zwei HM Schaltsteckdosen und im Moment noch mit drei Sonoff Pow.
Mein Problem ist, das sich die Tageswerte von den Sonoff Geräten nicht zurücksetzen und in den Verbrauch Gestern schreiben. Bei den HM Geräten funktioniert das super.
Meine Feststellung bisher ist, das wenn ich im Skript den Wert KumulierterWertIstBereitsInKilo in true (was ich brauch für die Sonoff Geräte) ändere, dass das zurücksetzen des Tageswertes nicht funktioniert. Wenn der Wert auf false steht funktioniert es, dann habe ich natürlich falsche Werte.
Habe im Moment mehrere Skripte in verschiedenen Javaskript instanzen laufen. Die HM Sensoren und die Sonoff Geräte extra.
Das benutzte Skript für die Sonoff Geräte ist dieses:
Gruß `
Vielen Dank für den Hinweis. ICh werde es mir ansehen und fixen.
-
Ein tolles Script, Danke dafür.
Scheint auch auf den ersten Blick zu funktionieren.
Aber der Tageswechsel hat scheinbar nicht funktioniert, es wird weiter in den kumulierten Zählerstand geschrieben. Die Zählerstande "Tagesbeginn, Wochenbeginn,…" sind leer.
Im "Verbrauch seit Tagesbeginn" steht noch der Wert von gestern, bzw. dieser wird jetzt weiter aufaddiert.
Was ich gemacht habe, gestern:
Script eingefügt, eigene Datenpunkte angelegt, Blacklist die Zahlen entfernt und kumulierter Wert bereits in kilo auf true gesetzt.
Es scheint wohl zu zählen aber kein Tageswechsel vollzogen zu werden.
Jemand eine Idee warum ?
Ah sehe das das ähnlich wie der Beitrag über mir ist, also wohl bei mehreren das Problem besteht ?
-
Das Problem hatte ich auch lange Zeit. Nach etwas probieren trat das "Phänomen" (ich nenne es mal so) auf, wenn````
var KumulierterWertIstBereitsInKilo = true;Im Log kamen auch Fehler in dem Zweig "if(KumulierterWertIstBereitsInKilo)" Ich hatte dann folgendes probiert (warum, weil in der Zeile darunter wo / 1000 geteilt wird keine Fehler gab):
if(KumulierterWertIstBereitsInKilo)
_zaehler = (getState(idKumuliert).val * 1).toFixed(AnzahlKommastellenZaehlerstand);den Zweig gibt es in:```` function schreibeZaehlerstand(geraet, zeitraum) und pruefePreisaenderung();
Gleich vorn weg, ich habe nicht wirklich Ahnung von Javascript. Ich mache eigene Sachen nur durch adaptieren von Beispielen und trail & error.
Seit her funktioniert jedenfalls der Tageswechsel bei mir.
Jetzt das Wichtigste:
Kann mir jemand von den "Wissenden" sagen ob das Hand und Fuß hat?
-
Hallo dering.
Ich habe dein Script seit gestern am laufen und habe zu den Telegram-Meldungen eine Frage:
Was kann mir da als Nachricht geschickt werden?
Kannst du dein globales Javascript bitte mal zeigen?
Danke
Gruß
Volker `
Hi Volker,
um Nachrichten via Telegram schicken zu lassen benötigst du eine Telegram Instanz und einem Token. Wie man das alles macht, ist hier sehr gut erklärt:
https://github.com/ioBroker/ioBroker.te … am-adapter
Wenn du dann eine "grüne Ampel" in der Instanz hast, kannst du dir über ein Script Nachrichten schicken lassen.
Ein einfacher Befehl wäre:
sendTo("telegram.0", {
text: "Deine Nachricht",
chatId: <dein chatid="">});
Wie du deine ChatID erhältst, wird auch in dem Link erklärt.</dein> `
Hallo dering.
Telegram habe ich schon lange eingerichtet und lasse mir diverse Meldungen aufs Handy schicken, bzw. kann auch über Telegram Lichter ein- und ausschalten.
Das ist nicht das Problem.
Sondern, dass ich in deinem Script Telegram aktiviert habe, aber noch nie eine Meldung vom Verbrauchsskript bekommen habe.
Ich habe es so:
sendTo("telegram.0", { text: text, chatId: <meine chatid=""> });</meine>
Da ich in der Doku nichts darüber gefunden habe, daher meine Frage: bei welchem Event werden Meldungen verschickt?
Gruß
Volker
PS: <meine chatid="">ist natürlich meine eigene 9 stellige ChatId :-)</meine>
-
if(KumulierterWertIstBereitsInKilo) _zaehler = (getState(idKumuliert).val * 1).toFixed(AnzahlKommastellenZaehlerstand); ````Also den Wert ****idKumuliert.val * 1[/b**** ****Danke, deine Lösung hat auch bei mir geholfen. Kenne mich ebenso wenig damit aus aber so funktioniert es. @Röstkartoffel So wie ich das sehe muss ja auch festgelegt werden was versendet werden soll. Die Datenpunkte werden nicht einfach automatisch versendet. Ich mache das z: B. mit Blockly in einem extra Script da ich noch eigene Werte aus den Verbräuchen berechne (Eigenverbrauch).** ![1110_telegrammverbrauch.jpg](/assets/uploads/files/1110_telegrammverbrauch.jpg) ** `
-
Hallo!
Erstmal vielen Dank für das tolle Script und die Arbeit damit!
Habe es seid ein paar Tagen laufen, aber entweder irgendwas ist falsch oder ich habe ein Verständnisproblem
Habe die Datenpunkte mit Leistungswerten (aktueller Verbrauch in Watt) gefüttert, wenn ich dann aber den Verbrauch nach einem Tag anschaue, liegt der bei einem Durchschnittlichen Strombedarf von 300Watt, bei z.B. 400kWh.
Rechnerisch sind es ja aber nur 7,2kWh :roll:
Was mache ich falsch?? Hier mal paar Log Zeilen:
` > javascript.0 2018-08-21 12:20:18.597 info script.js.common.Technik.Stromverbrauch: alter Wert: 264.59javascript.0 2018-08-21 12:20:18.597 info script.js.common.Technik.Stromverbrauch: neuer Wert: 263.84 `
und in den Objekten dann:
` > Verbrauch vor 1 Tag(en) (Energieverbrauch Eigen) 525.8 kWhVerbrauch vor 2 Tag(en) (Energieverbrauch Eigen) 441.15 kWh
Verbrauch vor 3 Tag(en) (Energieverbrauch Eigen) 418.165 kWh `
Schöne Grüße
Eloee
-
Vielen Dank für dieses tolle Script!
Ich habe meine Strommessgeräte unter eigene Datenpunkte eingerichtet - funktioniert super! Was ich allerdings noch gerne hätte wäre eine Gesamtsumme über all meine Geräte - mit den Summenwerten aktuell, täglich , wöchentlich…. Also so wie es auch pro konfiguriertem Datenpunkt eingerichtet wird. Hat dies von euch schon jemand soweit angepasst? Falls nicht - wie könnte ich so etwas am einfachsten realisieren? :roll:
-
ich mach das mit einem blockly script
-
Hallo alle zusammen.
Ich würde gerne das Skript auch nutzen, aber irgendwie stehe ich auf dem Schlauch. :oops: Wie bekomme ich das Skript denn runter von der GitHub Seite :?:
und jetzt Steinigt mich!
Danke Marcus :roll:
-
Hallo alle zusammen.
Ich würde gerne das Skript auch nutzen, aber irgendwie stehe ich auf dem Schlauch. :oops: Wie bekomme ich das Skript denn runter von der GitHub Seite :?:
und jetzt Steinigt mich!
Danke Marcus :roll: `
Hallo Marcus,
du kannst dir das Skript einfach https://github.com/hdering/homematic_verbrauchszaehler/blob/master/Zaehlerstande_protokollieren.js rauskopieren.
Gruß Christian
-
Hallo alle zusammen.
Ich würde gerne das Skript auch nutzen, aber irgendwie stehe ich auf dem Schlauch. :oops: Wie bekomme ich das Skript denn runter von der GitHub Seite :?:
und jetzt Steinigt mich!
Danke Marcus :roll: `
Hallo Marcus,
du kannst dir das Skript einfach https://github.com/hdering/homematic_verbrauchszaehler/blob/master/Zaehlerstande_protokollieren.js rauskopieren.
Gruß Christian `
Super Danke
-
Hallo zusammen,
ich muß mal etwas unwissend fragen.
Ich bekomme die "Zählimpulse per mqtt.o Adapter. Wie binde ich das ein?
Grüße
Manfred
-
Hallo zusammen,
ich muß mal etwas unwissend fragen.
Ich bekomme die "Tählimpulse per mqtt.o Adapter. Wie binde ich das ein?
Grüße
Manfred `
Impulse oder total verbraucht?
Sent from my iPhone using Tapatalk
-
Je ein Impuls für eine Umdrehung der Scheibe
Grüße
Es geht um den alten Ferraris Zähler
-
Je ein Impuls für eine Umdrehung der Scheibe
Grüße `
Dan musst du diese erst umsetzen in Wh bzw kWh.
Das Script kan nicht mit Impulsen arbeiten sondern Braucht wh oder kWh als wert
Sent from my iPhone using Tapatalk
-
Ok, danke.
-
Hallo
vielen dank für das super script.
Ich habe noch eine Frage, können diese Werte passen? Mein Zähler senden kwh, dieses habe ich auch im Script angepasst. Der Betrag scheint mir etwas zu wenig zu sein. Habt ihr eine Idee?
8702_strom.png