NEWS
Adapter "smartmeter"
-
Hast Du damit vllt nodejs geupdatet? Dann musst Du mal mindestens "npm rebuild" im ioBroker Verzeichnis aufrufen weil die ganzen Binären Palete (wie zB Serialport) neu gebaut werden müssen.
-
Ich habe den Adapter nach meinem Post vollständig gelöscht und neuinstalliert. Ergebnis: Läuft wieder :mrgreen:
Sorry fürs stören. Weitermachen…
-
Servus
Ich bin gerade dabei meinen Gaszähler in den Iobroker zu bekommen
Gibt es eine Möglichkeit Impulse zu zählen!? Auf der USB Schnittstelle sehe ich das was ankommt, aber wie kann ich die zählen oder auswerten!
Ist für den smartmeter was hinsichtlich dieser Funktionalität geplant!?
Gruß
Adrian
Gesendet von iPhone mit Tapatalk Pro
-
Nein, der Smartmeter Adapter verarbeitet Smartmeter Datenformate … Impulszählen ist nicht drin und aktuell nicht geplant
-
Hallo zusammen,
ich habe das Skript von Dieter angepasst. Evtl. hat ja jemand Zeit mal "drüber zu schauen" um mir zu sagen ob die Syntax stimmt?!
Zunächst Variablen anlegen:
// Stromzähler ------------------------------------------------------------------------------------------------------------- createState('javascript.0.Status.Stromzähler.Stunde.Bezogen_HH_in_Wh', 0, {type: 'number',name: 'Stunde',min: 0,unit: 'Wh',read: true,write: true,role: 'per Script'}); createState('javascript.0.Status.Stromzähler.Stunde.Bezogen_WP_in_Wh', 0, {type: 'number',name: 'Stunde',min: 0,unit: 'Wh',read: true,write: true,role: 'per Script'}); createState('javascript.0.Status.Stromzähler.Stunde.Bezogen_Zähler_HH_alt', 0, {type: 'number',name: 'Stunde',min: 0,unit: 'kWh',read: true,write: true,role: 'per Script'}); createState('javascript.0.Status.Stromzähler.Stunde.Bezogen_Zähler_WP_alt', 0, {type: 'number',name: 'Stunde',min: 0,unit: 'kWh',read: true,write: true,role: 'per Script'}); createState('javascript.0.Status.Stromzähler.Stunde.Eingespeist_in_Wh', 0, {type: 'number',name: 'Stunde',min: 0,unit: 'Wh',read: true,write: true,role: 'per Script'}); createState('javascript.0.Status.Stromzähler.Stunde.Eingespeist_Zähler_alt', 0, {type: 'number',name: 'Stunde',min: 0,unit: 'kWh',read: true,write: true,role: 'per Script'}); createState('javascript.0.Status.Stromzähler.Stunde.Produziert_in_Wh', 0, {type: 'number',name: 'Stunde',min: 0,unit: 'Wh',read: true,write: true,role: 'per Script'}); createState('javascript.0.Status.Stromzähler.Stunde.Produziert_Zähler_alt', 0, {type: 'number',name: 'Stunde',min: 0,unit: 'kWh',read: true,write: true,role: 'per Script'}); createState('javascript.0.Status.Stromzähler.Tag.Bezogen_HH_in_Wh', 0, {type: 'number',name: 'Tag',min: 0,unit: 'Wh',read: true,write: true,role: 'per Script'}); createState('javascript.0.Status.Stromzähler.Tag.Bezogen_Zähler_HH_alt', 0, {type: 'number',name: 'Tag',min: 0,unit: 'kWh',read: true,write: true,role: 'per Script'}); createState('javascript.0.Status.Stromzähler.Tag.Bezogen_WP_in_Wh', 0, {type: 'number',name: 'Tag',min: 0,unit: 'Wh',read: true,write: true,role: 'per Script'}); createState('javascript.0.Status.Stromzähler.Tag.Bezogen_Zähler_WP_alt', 0, {type: 'number',name: 'Tag',min: 0,unit: 'kWh',read: true,write: true,role: 'per Script'}); createState('javascript.0.Status.Stromzähler.Tag.Eingespeist_in_Wh', 0, {type: 'number',name: 'Tag',min: 0,unit: 'Wh',read: true,write: true,role: 'per Script'}); createState('javascript.0.Status.Stromzähler.Tag.Eingespeist_Zähler_alt', 0, {type: 'number',name: 'Tag',min: 0,unit: 'kWh',read: true,write: true,role: 'per Script'}); createState('javascript.0.Status.Stromzähler.Tag.Produziert_in_Wh', 0, {type: 'number',name: 'Tag',min: 0,unit: 'Wh',read: true,write: true,role: 'per Script'}); createState('javascript.0.Status.Stromzähler.Tag.Produziert_Zähler_alt', 0, {type: 'number',name: 'Tag',min: 0,unit: 'kWh',read: true,write: true,role: 'per Script'}); createState('javascript.0.Status.Stromzähler.Monat.Bezogen_HH_in_Wh', 0, {type: 'number',name: 'Monat',min: 0,unit: 'Wh',read: true,write: true,role: 'per Script'}); createState('javascript.0.Status.Stromzähler.Monat.Bezogen_Zähler_HH_alt', 0, {type: 'number',name: 'Monat',min: 0,unit: 'kWh',read: true,write: true,role: 'per Script'}); createState('javascript.0.Status.Stromzähler.Monat.Bezogen_WP_in_Wh', 0, {type: 'number',name: 'Monat',min: 0,unit: 'Wh',read: true,write: true,role: 'per Script'}); createState('javascript.0.Status.Stromzähler.Monat.Bezogen_Zähler_WP_alt', 0, {type: 'number',name: 'Monat',min: 0,unit: 'kWh',read: true,write: true,role: 'per Script'}); createState('javascript.0.Status.Stromzähler.Monat.Eingespeist_in_Wh', 0, {type: 'number',name: 'Monat',min: 0,unit: 'Wh',read: true,write: true,role: 'per Script'}); createState('javascript.0.Status.Stromzähler.Monat.Eingespeist_Zähler_alt', 0, {type: 'number',name: 'Monat',min: 0,unit: 'kWh',read: true,write: true,role: 'per Script'}); createState('javascript.0.Status.Stromzähler.Monat.Produziert_in_Wh', 0, {type: 'number',name: 'Monat',min: 0,unit: 'Wh',read: true,write: true,role: 'per Script'}); createState('javascript.0.Status.Stromzähler.Monat.Produziert_Zähler_alt', 0, {type: 'number',name: 'Monat',min: 0,unit: 'kWh',read: true,write: true,role: 'per Script'}); createState('javascript.0.Status.Stromzähler.Aktuell.Bezogen_in_W', 0, {type: 'number',name: 'Aktuell',min: 0,unit: 'W',read: true,write: true,role: 'per Script'}); createState('javascript.0.Status.Stromzähler.Aktuell.Eingespeist_in_W', 0, {type: 'number',name: 'Aktuell',min: 0,unit: 'W',read: true,write: true,role: 'per Script'}); createState('javascript.0.Status.Stromzähler.Aktuell.Produziert_in_W', 0, {type: 'number',name: 'Aktuell',min: 0,unit: 'W',read: true,write: true,role: 'per Script'}); createState('javascript.0.Status.Stromzähler.Jahr.Bezogen_in_W', 0, {type: 'number',name: 'Aktuell',min: 0,unit: 'W',read: true,write: true,role: 'per Script'}); createState('javascript.0.Status.Stromzähler.Jahr.Bezogen_Stand_Jahresanfang', 0, {type: 'number',name: 'Aktuell',min: 0,unit: 'kWh',read: true,write: true,role: 'per Script'}); createState('javascript.0.Status.Stromzähler.Jahr.Eingespeist_in_W', 0, {type: 'number',name: 'Aktuell',min: 0,unit: 'W',read: true,write: true,role: 'per Script'}); createState('javascript.0.Status.Stromzähler.Jahr.Eingespeist_Stand_Jahresanfang', 0, {type: 'number',name: 'Aktuell',min: 0,unit: 'kWh',read: true,write: true,role: 'per Script'}); createState('javascript.0.Status.Stromzähler.Jahr.Produziert_in_W', 0, {type: 'number',name: 'Aktuell',min: 0,unit: 'W',read: true,write: true,role: 'per Script'}); createState('javascript.0.Status.Stromzähler.Jahr.Produziert_Stand_Jahresanfang', 0, {type: 'number',name: 'Aktuell',min: 0,unit: 'kWh',read: true,write: true,role: 'per Script'}); createState('javascript.0.Status.Stromzähler.Jahr.Bezogen_Hochrechnung', 0, {type: 'number',name: 'Aktuell',min: 0,unit: 'kWh',read: true,write: true,role: 'per Script'}); createState('javascript.0.Status.Stromzähler.Jahr.Eingespeist_Hochrechnung', 0, {type: 'number',name: 'Aktuell',min: 0,unit: 'kWh',read: true,write: true,role: 'per Script'}); createState('javascript.0.Status.Stromzähler.Jahr.Produziert_Hochrechnung', 0, {type: 'number',name: 'Aktuell',min: 0,unit: 'kWh',read: true,write: true,role: 'per Script'});
Anschließend das Skript zur Berechnung der Werte:
(Hinweis: Der Smartmeter, der die Produktion der PV-Anlage an ioBroker übergibt, liefert die Werte in Wh)
// Werte aus smartmeter auslesen und in Variablen schreiben var java = 'javascript.0.Status.Stromzähler'; // Die Variable java ersetzt einen Teil der Objektpfadangabe, sodass diese nicht immer komplett eingegeben werden muss var Stand_Z1a_180 = "smartmeter.1.1-0:1_8_0_255.value"; // Zähler Zia 1.8.0 (Bezug HH NT+HT, = Summe Z1a 1.8.1 + Z1a 1.8.2) var Stand_Z1a_181 = "smartmeter.1.1-0:1_8_1_255.value"; // Zähler Z1a 1.8.1 (Bezug HH NT) var Stand_Z1a_182 = "smartmeter.1.1-0:1_8_2_255.value"; // Zähler Z1a 1.8.2 (Bezug HH HT) var Stand_Z1a_281 = "smartmeter.1.1-0:2_8_1_255.value"; // Zähler Z1a 2.8.1 var Stand_Z1a_282 = "smartmeter.1.1-0:2_8_2_255.value"; // Zähler Z1a 2.8.2 var Stand_Z1_180 = "smartmeter.0.1-0:1_8_0_255.value"; // Zähler Z1 1.8.0 (= Summer Z1 1.8.1 + Z1 1.8.2) var Stand_Z1_181 = "smartmeter.0.1-0:1_8_1_255.value"; // Zähler Z1 1.8.1 var Stand_Z1_182 = "smartmeter.0.1-0:1_8_2_255.value"; // Zähler Z1 1.8.2 var Stand_Z1_281 = "smartmeter.0.1-0:2_8_1_255.value"; // Zähler Z1 2.8.1 var Stand_Z1_282 = "smartmeter.0.1-0:2_8_2_255.value"; // Zähler Z1 2.8.2 var Stand_Z2_280 = "fronius.0.inverter.1.TOTAL_ENERGY.value"; // Zähler Z2 2.8.0 (Gesamterzeugung PV, Wert in Wh!) var Stand_eingespeist = "smartmeter.0.1-0:2_8_0_255.value"; // Zähler Z1 2.8.0 (Überschusseinspeisung = Summe Z1 2.8.1 + Z1 2.8.2) var Stand_produziert = "fronius.0.inverter.1.TOTAL_ENERGY.value"; // Zähler Z2 2.8.0 (Gesamterzeugung PV, Wert in Wh!) var GesamtwirkleistungHHundWP = "smartmeter.0.1-0:16_7_0_255.value"; // Zähler links Wirkleistung aktuell Haushalt + Wärmepumpe var GesamtwirkleistungHH = "smartmeter.1.1-0:16_7_0_255.value"; // Zähler links Wirkleistung aktuell Haushalt var Tag = "hm-rega.0.21649"; var Monat = "hm-rega.0.21648"; schedule("59 * * * *", function () { // jede Stunde Werte schreiben var akt_bezogen_HH = parseInt(getState(Stand_Z1a_180).val * 1000); // dann in Wh var alt_bezogen_HH = parseInt(getState(java + '.Stunde.Bezogen_Zähler_HH_alt').val * 1000); setState(java + '.Stunde.Bezogen_HH_in_Wh', akt_bezogen_HH - alt_bezogen_HH); setState(java + '.Stunde.Bezogen_Zähler_HH_alt', akt_bezogen_HH / 1000); var akt_bezogen_WP = parseInt((getState(Stand_Z1_180).val - getState(Stand_Z1a_180).val) * 1000); // dann in Wh var alt_bezogen_WP = parseInt(getState(java + '.Stunde.Bezogen_Zähler_WP_alt').val * 1000); setState(java + '.Stunde.Bezogen_WP_in_Wh', akt_bezogen_WP - alt_bezogen_WP); setState(java + '.Stunde.Bezogen_Zähler_WP_alt', akt_bezogen_WP / 1000); var akt_eingespeist = parseInt(getState(Stand_eingespeist).val * 1000); var alt_eingespeist = parseInt(getState(java + '.Stunde.Eingespeist_Zähler_alt').val * 1000); setState(java + '.Stunde.Eingespeist_in_Wh', akt_eingespeist - alt_eingespeist); setState(java + '.Stunde.Eingespeist_Zähler_alt', akt_eingespeist / 1000); var akt_prod = parseInt(getState(Stand_produziert).val); // ohne *1000, da Wert in Wh! var alt_prod = parseInt(getState(java + '.Stunde.Produziert_Zähler_alt').val * 1000); setState(java + '.Stunde.Produziert_in_Wh', akt_prod - alt_prod); setState(java + '.Stunde.Produziert_Zähler_alt', akt_prod / 1000); }); schedule("59 23 * * *", function () { // jeden Tag Werte schreiben var akt_bezogen_HH = parseInt(getState(Stand_Z1a_180).val * 1000); var alt_bezogen_HH = parseInt(getState(java + '.Tag.Bezogen_Zähler_HH_alt').val * 1000); setState(java + '.Tag.Bezogen_HH_in_Wh', akt_bezogen_HH - alt_bezogen_HH); setState(java + '.Tag.Bezogen_Zähler_HH_alt', akt_bezogen_HH / 1000); var akt_bezogen_WP = parseInt((getState(Stand_Z1_180).val - getState(Stand_Z1a_180).val) * 1000); var alt_bezogen_WP = parseInt(getState(java + '.Tag.Bezogen_Zähler_WP_alt').val * 1000); setState(java + '.Tag.Bezogen_WP_in_Wh', akt_bezogen_WP - alt_bezogen_WP); setState(java + '.Tag.Bezogen_Zähler_WP_alt', akt_bezogen_WP / 1000); var akt_eingespeist = parseInt(getState(Stand_eingespeist).val * 1000); var alt_eingespeist = parseInt(getState(java + '.Tag.Eingespeist_Zähler_alt').val * 1000); setState(java + '.Tag.Eingespeist_in_Wh', akt_eingespeist - alt_eingespeist); setState(java + '.Tag.Eingespeist_Zähler_alt', akt_eingespeist / 1000); var akt_prod = parseInt(getState(Stand_produziert).val); // ohne *1000, da Wert in Wh! var alt_prod = parseInt(getState(java + '.Tag.Produziert_Zähler_alt').val * 1000); setState(java + '.Tag.Produziert_in_Wh', akt_prod - alt_prod); setState(java + '.Tag.Produziert_Zähler_alt', akt_prod / 1000); }); schedule("0 0 1 * *", function () { // jeden Monat Werte schreiben var akt_bezogen_HH = parseInt(getState(Stand_Z1a_180).val* 1000); var alt_bezogen_HH = parseInt(getState(java + '.Monat.Bezogen_Zähler_HH_alt').val * 1000); setState(java + '.Monat.Bezogen_HH_in_Wh', akt_bezogen_HH - alt_bezogen_HH); setState(java + '.Monat.Bezogen_Zähler_HH_alt', akt_bezogen_HH / 1000); var akt_bezogen_WP = parseInt((getState(Stand_Z1_180).val - getState(Stand_Z1a_180).val) * 1000); var alt_bezogen_WP = parseInt(getState(java + '.Monat.Bezogen_Zähler_WP_alt').val * 1000); setState(java + '.Monat.Bezogen_WP_in_Wh', akt_bezogen_WP - alt_bezogen_WP); setState(java + '.Monat.Bezogen_Zähler_WP_alt', akt_bezogen_WP / 1000); var akt_eingespeist = parseInt(getState(Stand_eingespeist).val * 1000); var alt_eingespeist = parseInt(getState(java + '.Monat.Eingespeist_Zähler_alt').val * 1000); setState(java + '.Monat.Eingespeist_in_Wh', akt_eingespeist - alt_eingespeist); setState(java + '.Monat.Eingespeist_Zähler_alt', akt_eingespeist / 1000); var akt_prod = parseInt(getState(Stand_produziert).val); // ohne *1000, da Wert in Wh! var alt_prod = parseInt(getState(java + '.Monat.Produziert_Zähler_alt').val * 1000); setState(java + '.Monat.Produziert_in_Wh', akt_prod - alt_prod); setState(java + '.Monat.Produziert_Zähler_alt', akt_prod / 1000); }); // aktuelle Werte ----------------------------------------------------------------------------------------------------------------------------------------------- on({id: Stand_Z1a_180, change: "ne"}, function(obj) { // Wert hat sich geändert. setState('javascript.0.Status.Stromzähler.Aktuell.Bezogen_in_W', parseInt(obj.newState.val * 1000) - parseInt(obj.oldState.val * 1000)); setState('javascript.0.Status.Stromzähler.Jahr.Bezogen_in_W', parseInt(obj.newState.val * 1000) - parseInt(getState('javascript.0.Status.Stromzähler.Jahr.Bezogen_Stand_Jahresanfang').val * 1000)); }); on({id: Stand_eingespeist, change: "ne"}, function(obj) { // Wert hat sich geändert. setState('javascript.0.Status.Stromzähler.Aktuell.Eingespeist_in_W', parseInt(obj.newState.val * 1000) - parseInt(obj.oldState.val * 1000)); setState('javascript.0.Status.Stromzähler.Jahr.Eingespeist_in_W', parseInt(obj.newState.val * 1000) - parseInt(getState('javascript.0.Status.Stromzähler.Jahr.Eingespeist_Stand_Jahresanfang').val * 1000)); }); on({id: Stand_produziert, change: "ne"}, function(obj) { // Wert hat sich geändert. setState('javascript.0.Status.Stromzähler.Aktuell.Produziert_in_W', parseInt(obj.newState.val * 1000) - parseInt(obj.oldState.val * 1000)); setState('javascript.0.Status.Stromzähler.Jahr.Produziert_in_W', parseInt(obj.newState.val * 1000) - parseInt(getState('javascript.0.Status.Stromzähler.Jahr.Produziert_Stand_Jahresanfang').val * 1000)); }); // Hochrechnung auf Jahr ----------------------------------------------------------------------------------------------------------------------------------------- schedule("*/5 * * * *", function () { var Tage = getState(Tag).val + (getState(Monat).val-1) * 30; setState('javascript.0.Status.Stromzähler.Jahr.Bezogen_Hochrechnung', parseInt(getState('javascript.0.Status.Stromzähler.Jahr.Bezogen_in_W').val / Tage * 365 / 100) / 10); setState('javascript.0.Status.Stromzähler.Jahr.Eingespeist_Hochrechnung', parseInt(getState('javascript.0.Status.Stromzähler.Jahr.Eingespeist_in_W').val / Tage * 365 / 100) / 10); setState('javascript.0.Status.Stromzähler.Jahr.Produziert_Hochrechnung', parseInt(getState('javascript.0.Status.Stromzähler.Jahr.Produziert_in_W').val / Tage * 365 / 100) / 10); }); // am 31.12\. um 23:59 jeden Jahres Werte setzen ----------------------------------------------------------------------------------------------------------------------------------------- schedule("59 23 31 12 *", function () { // jeden Monat Werte schreiben setState('javascript.0.Status.Stromzähler.Jahr.Bezogen_Stand_Jahresanfang', parseInt(getState(Stand_Z1a_180).val)); setState('javascript.0.Status.Stromzähler.Jahr.Eingespeist_Stand_Jahresanfang', parseInt(getState(Stand_eingespeist).val)); setState('javascript.0.Status.Stromzähler.Jahr.Produziert_Stand_Jahresanfang', parseInt(getState(Stand_produziert).val)); });
Gruß
Matthias
-
Oder auch mal die neuen Adapter von Dutchman checken. Dann braucht man das Skript vllt. Nicht mehr
Gesendet vom Handy …
-
Ja, habe den neuen Adapter mal installiert.
Teste derzeit diesen mal für mich.
-
Hallo,
ist es auch möglich einen Youless LS 120 damit auszulesen?!
Habe ich bereits versucht, aber irgendwie kriege ich keine neuen Objekte in ioBroker…
Das Log sagt auch lediglich, dass der Adapter gestartet ist.
URL zum Abruf wäre:
http://xxx.xxx.xxx.xxx/a?f=j
Output der Abfragen sieht so aus:
{"cnt":" 1427,706","pwr":547,"lvl":0,"dev":"","det":"","con":"","sts":"","ps0":0,"raw":0}
Wobei cnt - Zählerstand und pwr - aktueller Wattzahl entspricht.
-
Nein aktuell arbeitet der Smartmeter Adapter mit OBIS basierten Protokollen
-
Würde das Skript gerne testen, kann ja eigentlich nichts schief gehen, oder?
Wie heißt denn der Adapter von Dutchman und wo bekomme ich den her?
Gruß
Matthias
-
Schau mal hier https://github.com/ioBroker/AdapterRequ … -453967916
-
Hallo zusammen,
ich habe seit einigen Wochen auch einen Zweirichtungszähler von EBz (genauer gesagt den eBZ DD3: https://docplayer.org/64442181-Betriebs … r-dd3.html im Einsatz und möchte diesen gern auslesen.
Jetzt habe ich mich in der letzten Woche voller Hoffnung durch den Thread hier gelesen und heute kam endlich der Lesekopf.
Leider war ich bisher noch nicht erfolgreich -Folgendes habe ich gemacht:
-
Raspberry als Slave eingerichtet und meinen iobroker auf Multihost umgestellt - Das hat geklappt
-
Lesekopf angeschlossen und an den Zähler gehangen
Wenn ich jetzt````
cat /dev/ttyUSB0![17594_ebz1.png](/assets/uploads/files/17594_ebz1.png) Da hier was von eBZ und eine lange Nummer, die sowas wie eine Device ID sein könnte, steht wäre meine Interpretation, dass der Kopf am Pi richtig erkannt wurde und vom Zähler zumindestens "etwas" kommt. Seht ihr das auch so? Wenn ich dann den Adapter starte kommt im Log folgendes: ![17594_ebz2.png](/assets/uploads/files/17594_ebz2.png) Wenn ich das ein paar Minuten laufen lasse, reagiert der iobroker nicht mehr, bis ich den Adapter beende bzw. über die Kommandozeile stoppe. Als Einstellungen bin ich anhand der Anleitung hiermit gestartet: ![17594_einstellungen.png](/assets/uploads/files/17594_einstellungen.png) Habt ihr eine Idee wo es hängt bzw. wo ich ansetzen könnte? Ich bin da gerade etwas ratlos. Vielen Dank im Voraus Markus P.S. Meine Kenntnisse auf der Kommandozeile sind eher rudimentär, daher entschuldigt bitte, wenn es hier im Thread schonmal so ein Problem gab und ich es nicht gefunden habe
-
-
Auf jeden Fall muss deine Einstellung auf "nur lesend" umgestellt werden. Lt. Handbuch sendet der Zähler jede Sekunde von selbst!
Enrico
-
Hallo Enrico,
danke für die schnelle Antwort.
Ich habe das jetzt mal umgestellt und die anderen Einstellungen gleich gelassen.
Leider ohne Erfolg allerdings haben sich die Log-Messages geändert.
Das sieht jetzt so aus:
War das ein Schritt in die richtige Richtung?
Viele Grüße
Markus
-
Ich denke da muss an den seriellen Einstellungen (Baudrate und so) was geändert werden. Obwohl spontan alles nach Anleitung eingestellt ist
Gesendet vom Handy …
-
Danke für deine Vermutung.
Mit den seriellen Einstellungen meinst du die Baudrate die ich im Adapter eintrage oder muss im Linux etwas eingestellt werden?
Ich bin jetzt erst mal unterwegs aber ich probiere später mal ein bisschen
-
Jupp die meine ich. Du hast an sich alles korrekt eingestellt. Versuch mal den Modus D rauszunehmen ob es dann ggf automatisch erkannt wird.
Kannst ggf mal suchen ob bei volkszähler in deren Wiki ggf was zu Zähler steht. Such Stichworte „vzlogger“ zusätzlich zu deinem gerät
Gesendet vom Handy …
-
Ließ mal hier https://forum.fhem.de/index.php/topic,51948.315.html bei einem ging’s mit 7e0
Gesendet vom Handy …
-
Hallo zusammen,
bei mir läuft nun seit einigen Tagen testweise das Skript (s.o.).
Die Verbräuche in einer Stunde werden auch berechnet.
Leider hakt es bei der Berechnung was stündlich bezogen wird. Ich bekomme stündlich folgenden Warnhinweis:
"08:59:00.175 [warn] javascript.0 at Object. (script.js.common.SmartmeterStrom:36:29)"
Es gibt in Zeile 36 ein Problem:
var akt_prod = parseInt(getState(Stand_produziert).val * 1); // ohne *1000, da Wert in Wh!
Ich vermute den Fehler bei der Übergabe des Wertes der Variablen "Stand_produziert":
var Stand_produziert = "fronius.0.inverter.1.TOTAL_ENERGY.value"; // Zähler Z2 2.8.0 (Gesamterzeugung PV, Wert in Wh!)
Wenn ich die var Stand_produziert = "über ID einfügen" füttere sieht das nämlich so aus:"fronius.0.inverter.1.TOTAL_ENERGY"/*total energy*/
Könnt ihr mir sagen, wo der Fehler liegt?
Gruß
Matthias
-
Falscher Thread? Hier geht es um den smartmeter Adapter
Gesendet vom Handy …