Hallo @mutmut,
Ich habe die Integration des Ökostromzählers gestartet, bin mir aber nicht sicher, ob das Ergebnis stimmt.
Hallo @mutmut,
Ich habe die Integration des Ökostromzählers gestartet, bin mir aber nicht sicher, ob das Ergebnis stimmt.
Ich habe mir erlaubt, ein neues Thema zu erstellen, damit es einfacher zu verfolgen ist ![]()
Falls du eine erste Version hast, kann ich sie auf meiner Installation testen.
Ich habe einen Ökostromzähler, Ref. 412000 mit Firmware v3.0.17
Ich veröffentliche dieses Wochenende eine erste Version.
Du kannst immer ein Entwicklungsimage erstellen, bevor du dir sicher bist, ob das Ergebnis stimmt
Wenn du dem Beispiel-Template gefolgt bist, gibt es eine GitHub-Aktion, die es ermöglicht, ein Entwicklungsimage zu veröffentlichen, das jeder installieren und testen kann
Ich werde mir anschauen, wie man das macht. Genau das ist der Teil, den ich weniger beherrsche. Man muss auf GitHub unter Build veröffentlichen, oder?
Die erste Version ist veröffentlicht
Ecocompteur installiert ![]()
Meine Rückmeldungen:
8 an → was bedeutet das?Und meine Infos vom Ecocompteur:
In Jeedom habe ich die Entwicklung von Bernard Dandrea verfolgt.
Er hat eine vollständige Liste der Elemente, die abgerufen werden können, zur Verfügung gestellt: documentation/jeedom-EcoLegrand/doc/fr_FR/JSON_codes.txt at main · bernard-dandrea/documentation · GitHub
Darin sehe ich kein NTARF.
Und ich habe deinen Code nicht angesehen, aber holst du die TIC-Infos im historischen und Standardmodus ab?
Danke für dein Feedback.
Ich weiß nicht, was du mit TIC in der Historie und dem Standard meinst. Ich habe nur eine Woche Gladys.
Tatsächlich greife ich auf die Dateien data.json und inst.json zu. Vielleicht kannst du mir deine data.json und inst.json schicken
{
« option_tarifaire » : 1,
« tarif_courant » : 2,
« isousc » : 45,
"conso_base" : 0,
"conso_hc" : 012378962,
"conso_hp" : 011243054,
"conso_hc_b" : 0,
"conso_hp_b" : 0,
"conso_hc_w" : 0,
"conso_hp_w" : 0,
"conso_hc_r" : 0,
"conso_hp_r" : 0,
"type_imp_0" : 0,
"type_imp_1" : 1,
"type_imp_2" : 1,
"type_imp_3" : 1,
"type_imp_4" : 1,
"type_imp_5" : 1,
"label_entree1" : "General ",
"label_entree2" : "PAC ",
"label_entree3" : "ECS ",
"label_entree4" : "Prises de Courant",
"label_entree5" : "Prises de Courant",
"label_entree_imp0" : "Gaz",
"label_entree_imp1" : "Eau",
"label_entree_imp2" : "Eau",
"label_entree_imp3" : "Eau",
"label_entree_imp4" : "Eau",
"label_entree_imp5" : "Eau",
"entree_imp0_disabled" : 0,
"entree_imp1_disabled" : 0,
"entree_imp2_disabled" : 1,
"entree_imp3_disabled" : 1,
"entree_imp4_disabled" : 1,
"entree_imp5_disabled" : 1
}
{
"data1":766.000000,
"data2":94.000000,
"data3":0.000000,
"data4":0.000000,
"data5":0.000000,
"data6":0.000000,
"data6m3":0.000000,
"data7":0.000000,
"data7m3":0.000000,
"heure":21,
"minute":11,
"CIR1_Nrj":0.000000,
"CIR1_Vol":0.000000,
"CIR2_Nrj":0.000000,
"CIR2_Vol":0.000000,
"CIR3_Nrj":0.000000,
"CIR3_Vol":0.000000,
"CIR4_Nrj":0.000000,
"CIR4_Vol":0.000000,
"Date_Time":1789938687
}
Der Verbrauch und die Kosten für 30 Minuten werden automatisch von Gladys erstellt
Für NTARF und Option Tarifaire entspricht eines dem Basisvertrag, HC/HP Tempo usw. und das andere HC oder HP
Den Rest werde ich mir ansehen.
Ok für den Abruf. Muss man von den beiden nicht eines konfigurieren? Ich erinnere mich nicht mehr, aber ich weiß, dass ich FTP verwendet habe, um Dinge zu ändern.
Das ist der Kommunikationsmodus des Linky : Entweder ist es „historisch“ und man erhält bestimmte Informationen, oder es ist „standard“ und man erhält andere Informationen, einschließlich der Stromerzeugung und spezifische Verträge (z. B. HC am Wochenende und abends), und die Variablennamen sind nicht dieselben in den beiden Modi.
Danach weiß ich nicht, ob der Ecocompteur das allein schafft.
Ich bin einverstanden, aber mit welchem Index sind sie verknüpft? (in kWh)
Soweit ich sehe, muss es mit conso_xxx aus der data.json verknüpft sein
Ok, dann kann man etwas Lesbares anstelle der Zahlen haben?
data.json :
{
"option_tarifaire" : 2,
"tarif_courant" : 8,
"isousc" : 60,
"conso_base" : 0,
"conso_hc" : 0,
"conso_hp" : 0,
"conso_hc_b" : 015354084,
"conso_hp_b" : 007357072,
"conso_hc_w" : 001951145,
"conso_hp_w" : 000923760,
"conso_hc_r" : 000913850,
"conso_hp_r" : 000335072,
"type_imp_0" : 0,
"type_imp_1" : 1,
"type_imp_2" : 1,
"type_imp_3" : 1,
"type_imp_4" : 1,
"type_imp_5" : 1,
"label_entree1" : "Warmwasser",
"label_entree2" : "Kühlung",
"label_entree3" : "Heizung",
"label_entree4" : "Ladestation",
"label_entree5" : "Steckdosen",
"label_entree_imp0" : "Gas",
"label_entree_imp1" : "Wasser",
"label_entree_imp2" : "Wasser",
"label_entree_imp3" : "Wasser",
"label_entree_imp4" : "Wasser",
"label_entree_imp5" : "Wasser",
"entree_imp0_disabled" : 1,
"entree_imp1_disabled" : 1,
"entree_imp2_disabled" : 1,
"entree_imp3_disabled" : 1,
"entree_imp4_disabled" : 1,
"entree_imp5_disabled" : 1
}
inst.json :
{
"data1":0.000000,
"data2":5.000000,
"data3":11.000000,
"data4":0.000000,
"data5":298.000000,
"data6":0.000000,
"data6m3":0.000000,
"data7":0.000000,
"data7m3":0.000000,
"heure":21,
"minute":38,
"CIR1_Nrj":0.000000,
"CIR1_Vol":0.000000,
"CIR2_Nrj":0.000000,
"CIR2_Vol":0.000000,
"CIR3_Nrj":0.000000,
"CIR3_Vol":0.000000,
"CIR4_Nrj":0.000000,
"CIR4_Vol":0.000000,
"Date_Time":1789940296
}
Für option_tarifaire sollte das möglich sein
option_tarifaire
0 = Basis
1 = HC/HP
2 = Tempo
Für tarif_courant ist es komplizierter
tarif_courant
0 =
1 = Niedertarifzeit
2 = Hochtarifzeit
3 =
4 =
5 =
6 =
7 =
8 = Hochtarifzeit Blau
9 = Hochtarifzeit Weiß
10 =
Aktuell ist es Niedertarif blau und ich bin in Stufe 5.
Daher würde die Logik sagen:
6: NT weiß
7: NT rot
10: HT rot
Was ist mit 0, 3 und 4 ![]()
tarif_courant
0 = Basis
1 = Niedertarifzeit
2 = Hochtarifzeit
3 = Normale Stunden (EJP)
4 = Spitzenzeiten (EJP)
5 = Niedertarifzeit Blau
6 = Niedertarifzeit Weiß
7 = Niedertarifzeit Rot
8 = Hochtarifzeit Blau
9 = Hochtarifzeit Weiß
10 = Hochtarifzeit Rot
@pierre-gilles Welche Informationen benötigt die Integration „Energieverfolgung“, um korrekt zu funktionieren?
Angenommen, dass beim Ökostromzähler LEGRAND 1. Generation die folgenden Informationen genutzt werden können:
data.json
{
"option_tarifaire" : 2,
"tarif_courant" : 8,
"isousc" : 60,
"conso_base" : 0,
"conso_hc" : 0,
"conso_hp" : 0,
"conso_hc_b" : 015354084,
"conso_hp_b" : 007357072,
"conso_hc_w" : 001951145,
"conso_hp_w" : 000923760,
"conso_hc_r" : 000913850,
"conso_hp_r" : 000335072,
"type_imp_0" : 0,
"type_imp_1" : 1,
"type_imp_2" : 1,
"type_imp_3" : 1,
"type_imp_4" : 1,
"type_imp_5" : 1,
"label_entree1" : "Eau chaude",
"label_entree2" : "Refroidissement",
"label_entree3" : "Chauffage",
"label_entree4" : "Borne recharge ",
"label_entree5" : "Prises de Courant",
"label_entree_imp0" : "Gaz",
"label_entree_imp1" : "Eau",
"label_entree_imp2" : "Eau",
"label_entree_imp3" : "Eau",
"label_entree_imp4" : "Eau",
"label_entree_imp5" : "Eau",
"entree_imp0_disabled" : 1,
"entree_imp1_disabled" : 1,
"entree_imp2_disabled" : 1,
"entree_imp3_disabled" : 1,
"entree_imp4_disabled" : 1,
"entree_imp5_disabled" : 1
}
inst.json
{
"data1":0.000000,
"data2":5.000000,
"data3":11.000000,
"data4":0.000000,
"data5":298.000000,
"data6":0.000000,
"data6m3":0.000000,
"data7":0.000000,
"data7m3":0.000000,
"heure":21,
"minute":38,
"CIR1_Nrj":0.000000,
"CIR1_Vol":0.000000,
"CIR2_Nrj":0.000000,
"CIR2_Vol":0.000000,
"CIR3_Nrj":0.000000,
"CIR3_Vol":0.000000,
"CIR4_Nrj":0.000000,
"CIR4_Vol":0.000000,
"Date_Time":1789940296
`}
Dieses berühmte EJP hatte ich vergessen ![]()
Um zu antworten (ich hoffe zumindest), basiert die Integration auf Indizes, um einen Verbrauch von 30 Minuten und Kosten von 30 Minuten zu berechnen, was bedeutet, dass wir uns auf alle conso_xxx stützen werden.
Derzeit wird es nicht möglich sein, Verbrauch und Kosten von 30 Minuten für die 5 Tore zu generieren, da es sich um Momentanleistungen (W) und nicht um verbrauchte Energien (kWh) handelt (Indizes, um es einfach auszudrücken).
In der Ecocompteur-Anzeige sind die Indizes der 5 Tore abrufbar, aber sie werden mit der Zeit ungenau. Das Hauptproblem ist, dass diese Zahlen auf 6 Ziffern basieren (hart codiert im Code) und bei der Inkrementierung an Genauigkeit verlieren.
Das Jeedom-Plugin ermöglichte ein Zurücksetzen jeden Abend um 23:59 Uhr, um immer eine gute Genauigkeit des Tagesindex zu haben.
Aber ein Zurücksetzen bedeutet, dass der vorherige Wert gespeichert und zum neuen Wert hinzugefügt werden muss, das ist die erste Herausforderung.
Die zweite Herausforderung besteht darin, diese Indizes abrufen zu können, da sie nicht über data.json und inst.json zugänglich sind. Es muss eine neue, gut formatierte JSON-Datei erstellt werden (siehe meine Links oben), die zum Zeitpunkt der Erstellung per FTP an den Ecocompteur gesendet wird, und anschließend können die Indizes abgerufen werden.
Ab diesem Zeitpunkt denke ich, dass die Ecocompteur-Integration den Rest für den Verbrauch und die Kosten von 30 Minuten erledigt.
Ich denke, dass das Plugin zunächst mit den data.json- und inst.json-Daten validiert werden sollte.
Anschließend muss man sich ansehen, wie man die Indizes der 5 Tore „erstellt“ (das ist das, was ich überwachen möchte).
Kleine Frage, könntest du mir sagen, ob dein Linky im Standard- oder Historienmodus ist? (Man muss auf die Tasten des Linky klicken, um zu scrollen und die Info zu sehen).
Denn ich weiß nicht, ob dieses alte Ding von Legrand den Standardmodus verwalten kann, und falls ja, sollte dies in der Dokumentation angegeben werden.
@mutmut Version 1.2 online
Korrektur der Tempo-Erkennung, hinzugefügte lesbare Beschriftungen und exakte Indexgenauigkeit
- option_tarifaire: 2 als Tempo erkannt (bestätigt durch echte Nutzerrückmeldung mit /data.json als Beleg), zusätzlich zu 4, das nie beobachtet wurde, aber aus Vorsicht beibehalten wurde. Korrektur der falschen Erkennung, die Tempo-Installationen auf einen einfachen Basisindex zurückfallen ließ. - Tarifoption und aktueller Tarif werden als lesbarer Text (« HC/HP », « Tempo », « Heure Pleine Bleu »…) veröffentlicht, anstatt als roher Code oder NTARF-Badge, das niemand versteht. - Umrechnung Wh → kWh ohne Verlust (Division durch 1000, 3 Dezimalstellen) statt der alten Aufrundung auf die Zehntelstelle, für eine 30 Minuten genauere Verbrauchsberechnung auf Gladys-Seite. - Dokumentation fr/en: Tabelle der 6 Tempo-Indizes und ihrer automatischen Verbrauchs-/Kostenverfolgung, Korrektur des minimalen Aktualisierungsintervalls (1 s, nicht 10 s).
Danke @Goldorakiller für dieses Release, Tempo ist gut vorhanden!
Ich habe gestern aktualisiert und die Indizes, der Verbrauch und die Kosten scheinen in Ordnung zu sein:
Ich habe gerade den Namen eines meiner Tores geändert und es scheint keine Überprüfung und Aktualisierung zu geben.
Und ich habe seltsame Dinge mit vielen Leerzeichen in den technischen Parametern für jeden Parameter:
Antwort von Claude:
Auf ganze Zahlen gerundete Indizes
Beruhige dich, es ist nur die Anzeige. Seit Version 1.2.0 veröffentlicht die Integration die Indizes mit drei Dezimalstellen, und Gladys speichert sie so. Es ist ihre Anzeigefunktion, die je nach Größe der Zahl rundet: eine ganze Zahl ab 1000 kWh (daher 15383 für 15382,79), eine Dezimalstelle zwischen 10 und 1000 (daher 923,8 für 923,76). Die Berechnung der Verbräuche und Kosten alle 30 Minuten erfolgt auf Basis der gespeicherten Werte mit den Dezimalstellen. Also ist alles in Ordnung.Umbenennung eines Zählers
Du hast recht, und unsere Dokumentation war falsch, entschuldige bitte. In Gladys gehören dir nach der Erstellung des Geräts die Namen seiner Funktionen (wie der Gerätename oder sein Raum). Eine spätere Umbenennung am Ökostromzähler wird nicht übernommen, auch nicht nach einem Neustart der Integration oder einer neuen Erkennung. Am einfachsten: „Heizung“ direkt in Gladys in „Wärmepumpe“ umbenennen. Das Gerät löschen und neu erstellen funktioniert auch, aber du verlierst die Historie. Die Dokumentation wird für die nächste Version korrigiert.Die großen Leerzeichen in „Technische Einstellungen“
Das sind keine Parameter der Integration. Die ENERGY_INDEX_LAST_PROCESSED_… sind die Markierungen, die Gladys selbst für seine Energieberechnung erstellt, eine pro Index (daher die 7 bei dir). Das Layout stammt vom Gladys-Bildschirm: Wenn es dich stört, sollte es im Gladys-Repository gemeldet werden.Was in der nächsten Version kommt
Ein Energieindex pro Zähler: Der Ökostromzähler gibt nur die Momentanleistung seiner Zähler aus, daher wird die Integration den Verbrauch in kWh jedes einzelnen rekonstruieren. Gladys wird automatisch den Verbrauch und die Kosten alle 30 Minuten hinzufügen. Du kannst also verfolgen, was deine Ladestation oder deine Wärmepumpe kostet. Es ist eine Schätzung, die zwischen zwei Ablesungen berechnet wird und bei der Installation bei 0 beginnt.
Ein Dashboard-Widget „Aktuelle Leistung“, dank der Neuerungen von Gladys 5.1: die 5 Zähler in Echtzeit, ihre Summe und der aktuelle Tarif farbig (blau, weiß oder rot in Tempo). Übrigens übernimmt das Widget den Namen, der auf dem Ökostromzähler angezeigt wird, daher folgt es deiner Umbenennung.
Für diese Version wird mindestens Gladys 5.1 benötigt. Um es zu nutzen: Registerkarte „Entdeckung“ der Integration, dann „Aktualisieren“ (kein Löschen des Geräts nötig, die Historie bleibt erhalten). Ich informiere dich, sobald es veröffentlicht ist, und deine Rückmeldungen in Tempo werden wertvoll sein, um die Indizes pro Zähler zu validieren!