Autor Thema: Modul: SolarEdge API Abruf  (Gelesen 3928 mal)

Offline felixm

  • New Member
  • *
  • Beiträge: 18
Modul: SolarEdge API Abruf
« am: 03 August 2018, 18:49:41 »
dann jetzt hier noch mal eine eigenes Thema dazu.
Ich habe mir die Mühe gemacht und ein Modul gebastelt dass die aktuellen Daten sowie die kumulativen Leistungen  einer SolarEdge Anlage ber die offizielle API abruft. Dank @CoolTux konnte ich das auf Basis seines Moduls für die TeslaPowerwall auch in eine vernünftige Form gießen.

1. Was kann das Modul?
Abgerufen werden currentPowerFlow und energyDetails. Es wird also der aktuelle "Energiefluss" (PV, Batterie, Netz, Last=Verbrauch) als Reading dargestellt. Ausserdem werden kumulative Energiemengen über den gesamten Tag sowie des letzten Viertelstundenabschnitt dargestellt ( Produktion, Eigenverbrauch, Netzbezug etc.)

2. Was brauche ich dafür?
Zunächst eine PV-Anlage mit SolarEdge Wechselrichter und Anbindung an das SolarEdge MonitoringPortal. Dort kann man im Admin-Bereich einen API-Key aktivieren. Diesen API-Key und die Site-ID (steht dort direkt darunter und in der URL) braucht man für den Abruf.

3. Wie benutze ich das Modul?
Das Modul muss in den fhem Ordner kopiert werden und dann entweder per "reload 70_SolarEdgeAPI.pm" oder mittels Neustart von fhem geladen werden. Ggf. muss das Perl JSON Modul installiert werden.

Der Befehl um ein SolarEdgeAPI-Device anzulegen lautet:

define <name> SolarEdgeAPI <API-Key> <SiteId> <Interval (optional)>
Was muss ich beachten?
Ich bin kein ausgewiesener Perl-Progammierer, nur weil das Modul bei mir läuft, muss das nicht heißen, dass es nicht Fehler verursachen oder die FHEM-Instanz zum Abstürzen bringen kann.
SolarEdge gibt ein Limit von 300 Abrufen pro Tag, welches Intervall sich da am besten eignet, muss man austesten.

Und wenn mal was nicht funktioniert?
Ich versuche gerne zu helfen. Entweder Ihr meldet Fehler oder Verbesserungsvorschläge hier oder auf github https://github.com/felixmartens/fhem. Je nachdem wie es meine Zeit zulässt werde ich versuchen mich zu kümmern.



v0.0.1 (03.08.2018) : Erstes Release auf neuer CodeBasis
Download im Anhang.
« Letzte Änderung: 03 August 2018, 18:51:29 von felixm »

Offline kingmathers

  • Full Member
  • ***
  • Beiträge: 241
Antw:Modul: SolarEdge API Abruf
« Antwort #1 am: 06 August 2018, 01:37:57 »
Ich kriege meine SolarEdge Anlage in den nächsten Wochen und werde es dann gerne ausprobieren. Vielen Dank für die Mühe!

Energiefluss Netz kann dann wahrscheinlich positiv oder negativ sein oder? Also ich kann sehen ob (und wie viel) ich gerade einspiese oder ob ich zusätzlichen Strom aus dem Netz beziehe?
Raspberry Pi B+, FS20, 1-Wire, HM
FHEM Home Control (App für Windows 10): https://forum.fhem.de/index.php/topic,49891.0.html
FHEM Arduino Library: https://forum.fhem.de/index.php/topic,94093.0.html

Offline felixm

  • New Member
  • *
  • Beiträge: 18
Antw:Modul: SolarEdge API Abruf
« Antwort #2 am: 13 August 2018, 00:23:47 »
Genau, der Energiefluss Netz und Batterie können negativ und positiv sein je nachdem ob Bezug oder Einspeisung erfolgt.

Offline cocojambo

  • Full Member
  • ***
  • Beiträge: 417
Antw:Modul: SolarEdge API Abruf
« Antwort #3 am: 16 August 2018, 19:38:26 »
Ich habe bereits meine SolarEdge Anlage mit 5Kw Inverter und der 10KW LG-Batterie auf AC Basis. Ich beschäftige mich zur Zeit damit die einzelnen Werte aus dem Inverter mit dem Modbus auszulesen. Was mich daran noch stört, ist das der Inverter keine Summen der Lade- und Entladeenergie bereitstellt, sondern die müßte man dann selbst aufadieren. Es gibt zwar einen Import und Export Batterie Counter, aber der setzt sich in dem Moment zurück wenn der Status der Batterie sich ändert.
Ist das denn mit der API anders? Gibt es da denn aufadierte Summen? Dann könnte ich die zusätzlich zu den SolarEdge Daten und den SolarLog Daten der Wechselricher zur Auswertung nutzen und zu bestimmten Zeiten abrufen.
Alles andere funktioniert schon einiger Massen.
Gruß aus Köln
Norbert
FHEM5.8|FB7490|FB3370|3xraspi|2xHM-LAN-CFG|CUL868 v3|CUNO868 V1.55|HUE-Bridge|Harmony-Hub|5xHM-LC-Sw-PI-2|3xHM-WDS30-T2-SN|1xHM-LC_Sw4-DR| 3xF20S20|2xFS20S4|8xFS20ST|7xFS20SIG2|2xFS20S4U|2xFS20SU|6xFS20KSE|2xFS20DI|2xFS20SM8|2xFS20WS|3xS300TH|1xASH2200|1xEM1000

Offline felixm

  • New Member
  • *
  • Beiträge: 18
Antw:Modul: SolarEdge API Abruf
« Antwort #4 am: 16 August 2018, 20:45:07 »
Aktuell wird der Status und die aggregierten Summen und abgerufen. Bei den Summen wird aktuell jeweils die Tagessumme und die der letzten 15 min für Netzbezug, Eigenverbrauch etc. angezeigt. Aber auch Monats und Jahresssumme ließen sich realisieren.
Dafür hätte ich im Gegenzug Interesse an der Modbus Konfiguration wegen der höheren zeitlichen Auflösung ;)

Offline kmidt

  • New Member
  • *
  • Beiträge: 42
Antw:Modul: SolarEdge API Abruf
« Antwort #5 am: 24 August 2018, 11:40:44 »
Mega, danke für Deine Mühe. Werde das mal testen, sobald ich API-Key von meinem Monteur bekommen habe.
Habe leider keinen Adminaccount

Offline kmidt

  • New Member
  • *
  • Beiträge: 42
Antw:Modul: SolarEdge API Abruf
« Antwort #6 am: 27 August 2018, 14:48:32 »
Hi !!

Es habe es ausprobiert. Lief 2 Tage super.

jetzt bekomme ich folgenden Fehler :

   429

Error malformed JSON string, neither array, object, number, string or atom, at character offset 0 (before "<!DOCTYPE html>\n<ht...") at ./FHEM/70_SolarEdgeAPI.pm line 409

Offline Bengt79

  • Newbie
  • Beiträge: 1
Antw:Modul: SolarEdge API Abruf
« Antwort #7 am: 27 August 2018, 23:10:53 »
Moin moin,

da ich neuer Besitzer einer wundervollen Photovoltaik-Anlage mit Wechselrichter der Firma SolarEdge bin, wollte ich natürlich auch die Daten
in mein FHEM ziehen.....
die API ist installiert, API und Location vom Installateur erhalten...
Fehler 403 scheint auf zuviele Anfragen oder falsche Daten hinzuweisen, korrekt ?
Leider kann ich den API-Key nicht prüfen, da ich kein Admin-User besitze....
kann ich etwas anderes als Fehler ausschliessen ?

LG
Björn

Lösung: Neuer API-Key hat geholfen..... da war wohl jemand beim Installateur ein wenig zu schnell... :D
« Letzte Änderung: 31 August 2018, 15:07:22 von Bengt79 »

Offline felixm

  • New Member
  • *
  • Beiträge: 18
Antw:Modul: SolarEdge API Abruf
« Antwort #8 am: 03 September 2018, 18:44:37 »
Erstmal sorry für die späte Antwort, ich würde irgendwie nicht informiert.
Zu den Fehler codes:
Zitat
Specific API Usage Limitations
Specific APIs may enforce different usage limitations based on parameters sent by the client. Refer to the next sections for
details on specific API usage limitations.
If there is a violation of a specific API validation, the HTTP 403 – forbidden status code is returned.
Daily Limitation
Use of the monitoring server API is subject to a query limit of total 300 requests for a specific account token and a specific site ID
from the same source IP.
APIs that do not have a specific ID (e.g. Site List, Account List) will be counted as part of the total query limit.
For example, a user can execute 10 daily site list (account level) API calls, and then 290 API calls for every site in the account (e.g.
290 calls using the account token for “siteId 12345”and 290 calls using the account token for ”siteId 12346”).
An additional request to site 12345 or 12346 will result in HTTP 429 error – too many requests. .
Concurrency Limitation
The monitoring server API allows up to 3 concurrent API calls from the same source IP. Any additional concurrent calls will return
HTTP 429 error – too many requests.
To execute APIs concurrently without exceeding the above limitation, it is the client responsibility to implement a throttling
mechanism on the client side.
       

403 scheint eine nicht autorisierte Nutzung zu sein. Zu viele requests sollten 429 werfen.

Ich würde ja tippen dass du das poll-delay zu kurz gewählt hast und deshalb zu viele Anfragen raus gehen. Virtuos mal auf auto stellen?
Außerdem Bitte prüfen von wann die Fehlermeldung ist. Es wird im Reading immer die letzte Fehlermeldung angezeigt. Bitte schau doch mal wann das reading zuletzt aktualisiert wurde. Und mal gegeprüfen ob die anderen Readings danach wieder aktualisiert wurden.

Wenn das alles weiterhin auf ein Problem hinweist würde ich  versuchen das Modul neu einzurichten. Ggf den API Abruf per Hand im Browser zu testen und zu sehen ob da auch ein Fehler angezeigt wird.


Ggf merke doch doch mal mit den Ergebnissen der weiteren Untersuchung zurück.

Grüße Felix
« Letzte Änderung: 03 September 2018, 18:46:33 von felixm »

Offline marcus5020

  • New Member
  • *
  • Beiträge: 13
Antw:Modul: SolarEdge API Abruf
« Antwort #9 am: 04 September 2018, 16:39:21 »
Hallo !

Wie macht ihr das mit dem Fehler 429 - "too many requests" - bei mir funktioniert´s, wenn ich die Abfrage auf 120 sec. stelle - aber dann wird halt auch die Anzeige in FTUI nicht wirklich "online" dargestellt und man kann nicht wirklich gut entscheiden, ob momentan "genug Energie runterkommt" ...
Automatisch den API-Key ändern wäre fein, aber das geht wohl nicht ...

Hat sonst jemand Ideen oder Vorschläge ?
Vielen Dank
Marcus

Offline felixm

  • New Member
  • *
  • Beiträge: 18
Antw:Modul: SolarEdge API Abruf
« Antwort #10 am: 04 September 2018, 21:24:54 »
Hi ich gebe mich momentan mit dem aktualisieren alle 3min zufrieden. Ich weiß gar nicht wie oft die Daten in der API von WR aktualisiert werden. Ich glaube echtes live wird nur pet Modbus gehen. Wenn 120sec geht kann man ggf noch mehr rausholen wenn man nachts nachts seltener abruft. Das macht das Modul ja wenn delay auf auto steht allerdings war ich da noch vorsichtig mit 210sec tagsüber und 900 nachts. Ich werde das mal testen mit kleineren Zahlen.

Offline kmidt

  • New Member
  • *
  • Beiträge: 42
Antw:Modul: SolarEdge API Abruf
« Antwort #11 am: 17 September 2018, 23:58:19 »
Was ist mit virtuos auf Auto stellen gemeint ?
Wo macht man das und was bewirkt es ?

Offline felixm

  • New Member
  • *
  • Beiträge: 18
Antw:Modul: SolarEdge API Abruf
« Antwort #12 am: 18 September 2018, 00:54:57 »
Sorry ich habe mich da etwas undeutlich ausgedrückt. Es geht ums das Attribut interval. Damit kann entweder eine feste Sekundenzahl als Intervall eingestellt werden oder auto um tagsüber alle 210 und nachts alle 900sec abzurufen. Einzustellen zB mit attr SolarEdgeWR interval auto.
Die 210 und 900 ergeben sich so dass man in 24h auf 300 Abfragen kommt, das ist laut Dokumentation die Grenze.

Offline satprofi

  • Hero Member
  • *****
  • Beiträge: 1325
Antw:Modul: SolarEdge API Abruf
« Antwort #13 am: 04 Januar 2019, 10:08:50 »
Hallo.
EIngebunden, aber unter State steht "fetch data - 1 entries in the Queue"
bedeutet jetzt was?

LG
gruss
-----------------------------------------------------------------------
Raspberry - Fhem 5.7 CUL 868, FS20, NetIO230 CUL 433, REV, Unitec, FLS u. ELRO Funksteckdosen
HMLAN, HM-CC-RT-DN,Homematic Actoren,LD382A,Telegram

Offline pejonp

  • Sr. Member
  • ****
  • Beiträge: 988
Antw:Modul: SolarEdge API Abruf
« Antwort #14 am: 04 Januar 2019, 10:31:38 »
Ich habe bereits meine SolarEdge Anlage mit 5Kw Inverter und der 10KW LG-Batterie auf AC Basis. ....
Alles andere funktioniert schon einiger Massen.
Gruß aus Köln
Norbert
Hallo,

Passt nicht ganz hier her, da SolarEgde direkt ausgelesen wird.

Ich habe hier mal für SolarEgde auf Basis von Modbus ein Modul gebaut (https://forum.fhem.de/index.php/topic,80767.msg853967.html#msg853967). Es holt die Infos direkt vom WR ohne den Umweg übers Portal. Die Batterie ist eine Sonnenbatterie und wird über httpmod ausgelesen bzw.
gesteuert  (https://forum.fhem.de/index.php/topic,32037.msg690677.html#msg690677).
Vielleicht hilft es ja weiter.

Pejonp
JeeLink (RFM69CW) LGW 868MHz:WT470+TFA+TX37-IT+EMT7110+FS20+W136+WH25A HP1003+WH2621
SignalD(CC1101):Bresser+WS-0101(868MHz WH1080) Velux KLF200
MAX!:HM-MOD-UART:Rauch HM-SEC-SD
VITOSOLIC 200 + RESOL VBUS-LAN
SolarEdge SE5K(TCP 24 RS485)+Sonnenbatterie ComfortS(Vera3)+TD3511+DRT710M(RS485

Offline satprofi

  • Hero Member
  • *****
  • Beiträge: 1325
Antw:Modul: SolarEdge API Abruf
« Antwort #15 am: 04 Januar 2019, 13:26:37 »
Klappt bei mir leider nicht

STATE      ready

READINGS:
     2019-01-04 10:07:00   actionQueue     0 entries in the Queue
     2019-01-04 13:24:10   aggregates-Consumption-cumToday 15100
     2019-01-04 13:24:10   aggregates-Consumption-recent15min 157
     2019-01-04 13:24:10   aggregates-FeedIn-cumToday 0
     2019-01-04 13:24:10   aggregates-Production-cumToday 7547.98863787
     2019-01-04 13:24:10   aggregates-Production-recent15min 90.41368
     2019-01-04 13:24:10   aggregates-timeUnit QUARTER_OF_AN_HOUR
     2019-01-04 13:24:10   aggregates-unit Wh
     2019-01-04 12:42:40   lastRequestError connect to https://monitoringapi.solaredge.com:443 timed out
     2019-01-04 13:24:09   state           ready
     2019-01-04 13:24:09   status-grid_power
     2019-01-04 13:24:09   status-grid_status Error Reading Response
     2019-01-04 13:24:09   status-load_status Error Reading Response
     2019-01-04 13:24:09   status-pv_status Error Reading Response
     2019-01-04 13:24:09   status-storage_status No storage found
     2019-01-04 13:24:09   status-unit     Error Reading Response
     2019-01-04 13:24:09   status-updateRefreshRate Error Reading Response
   actionQueue:
gruss
-----------------------------------------------------------------------
Raspberry - Fhem 5.7 CUL 868, FS20, NetIO230 CUL 433, REV, Unitec, FLS u. ELRO Funksteckdosen
HMLAN, HM-CC-RT-DN,Homematic Actoren,LD382A,Telegram

Offline leupin

  • New Member
  • *
  • Beiträge: 18
Antw:Modul: SolarEdge API Abruf
« Antwort #16 am: 27 Januar 2019, 18:34:53 »
Nachdem bei mir die SolarEdgeAPI immer nach rund 8 Stunden zu einem Error 429 geführt hat (To many requests), obwohl das Intervall so gesetzt war, dass dies eigentlich nicht der Fall sein sollte,
habe ich jetzt die Abfrage mal wie folgt testweise auf HTTPMOD umgestellt:
define SolarEdge_KG2 httpmod none 0     (Abfrage nur mit einem Get-Request, nicht über ein vordefiniertes Intervall)

mit folgenden Attributen:
enableControlSet 1
get01Name SE_energies
get01URL https://monitoringapi.solaredge.com/site/{Meine Site-ID}/overview.json?api_key={Mein API Key}
reading01Name Energie_Total
reading01Regex "lifeTimeData":{"energy":([\d\.]+)
reading02Name Energie_LastYear
reading02Regex "lastYearData":{"energy":([\d\.]+)
reading03Name Energie_LastMonth
reading03Regex "lastMonthData":{"energy":([\d\.]+)
reading04Name Energie_LastDay
reading04Regex "lastDayData":{"energy":([\d\.]+)
reading05Name Current_Power
reading05Regex "currentPower":{"power":([\d\.]+)
stateFormat active
userattr get01Name get01URL reading01Name reading01Regex reading02Name reading02Regex reading03Name reading03Regex reading04Name reading04Regex reading05Name reading05Regex

Die Daten frage ich alle 7,5 Minuten über eine AT-Definition mit "get SolarEdge_KG2 SE_energies " ab.
Bis jetzt scheint es zu funktionieren, mal sehen, ob nach 8 Stunden wieder der Error 429 auftritt - dann müsste wohl etwas auf der SolarEdge-Monitoring Plattform faul sein, da ja mit 8 Abfragen pro Stunde entsprechend 192 Abfragen pro Tag die 300er-Limite absolut eingehalten wäre...
« Letzte Änderung: 27 Januar 2019, 20:06:46 von leupin »

Online CoolTux

  • Developer
  • Hero Member
  • ****
  • Beiträge: 20888
Antw:Modul: SolarEdge API Abruf
« Antwort #17 am: 27 Januar 2019, 18:41:04 »
Hättest Du wie es üblich ist hier im Forum für den Code die Codetage verwendet, müsstest Du keine Lücken lassen wegen Smiley Gefahr  ;)
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.me/MOldenburg
FHEM GitHub: https://github.com/fhem/
kein Support für cfg Editierer

Offline leupin

  • New Member
  • *
  • Beiträge: 18
Antw:Modul: SolarEdge API Abruf
« Antwort #18 am: 27 Januar 2019, 18:52:17 »
Werde es mir für das nächste Mal merken und habe es oben angepasst ;) 8)
« Letzte Änderung: 27 Januar 2019, 20:07:47 von leupin »

Offline leupin

  • New Member
  • *
  • Beiträge: 18
Antw:Modul: SolarEdge API Abruf
« Antwort #19 am: 28 Januar 2019, 18:35:59 »
Bis jetzt funktioniert die Abfrage über httpmod bei mir problemlos (allerdings jetzt erst seit einem Tag) - stellt sich für mich die Frage, ob eine Abfrage mit der SolarEdgeAPI allenfalls vom Monitoring-Portal als mehrere Abfragen gezählt wird (Energie-Werte&Statuswerte - dafür gibt es nach meinem Dafürhalten in der API-Referenz keinen einzelnen Abfragebefehl oder dann habe ich ihn nicht gefunden...)
Mal schauen, ob es über httpmod weiter klappt...

Offline felixm

  • New Member
  • *
  • Beiträge: 18
Antw:Modul: SolarEdge API Abruf
« Antwort #20 am: 14 April 2019, 12:36:05 »
Hallo,

sorry das sich mich so lange nicht gemeldet habe, aber leider hat mein Broterwerb in den letzten Wochen sehr viel meiner Kapazität gefordert. Soviel dass bei mir hier auch nicht mehr alles so läuft wie geplant.
Das mit dem Fehler alle 8 Stunden kann sein, da in der Tat bei jeder Abfrage 2 einzelne Abfragen gestartet werden müssen. In der Testphase, als ich das Modul geschrieben habe , hat das allerdings noch zu keinen Fehlern geführt. Ich finde die Restriktionen der API da auch etwas eng, auf die Art und Wiese lässt sich ja nichts sauber loggen oder "Smart" steuern.
Wäre es eine Idee die Abfragen zu entkoppeln und die Summen seltener abzurufen als den Status?
Sonst bleibt uns wohl wirklich nur ModBus, der aber leider fürchte ich etwas komplizierter zu konfigureiren ist.

Gruß
Felix

//Nachtrag: bei mir läuft das Modul weiterhin auf Intevral auto und damit tagsüber alle 300sec, nachts alle 1200sec. Ich hatte damit in den letzten Monaten keinen Error 429 in den Logs finden können.
« Letzte Änderung: 14 April 2019, 12:44:20 von felixm »

Offline pizmus

  • Developer
  • New Member
  • ****
  • Beiträge: 33
Antw:Modul: SolarEdge API Abruf
« Antwort #21 am: 26 April 2019, 11:59:29 »
Hallo Felix,

ich habe Dein Modul 70_SolarEdgeAPI aus github geladen. Es hat für mich im Prinzip auf Anhieb funktioniert. Danke für Deine Arbeit!
Ich habe ein paar Änderungen in meiner Kopie des Moduls gemacht:

1) Mein Inverter unterstützt das "status" API nicht. Der Inverter liefert in diesem Fall wie im API Handbuch beschrieben eine leere Datenstruktur zurück. Ich habe das Modul so geändert, dass es diesen Fall erkennt, eine Nachricht ins Logfile schreibt, keine Readings erzeugt, und zukünftige Abfragen des APIs unterdrückt.

2) Die "aggregates" Anfrage liefert die Energiemenge für jeden 15-Minuten-Zeitraum des Tages. Du verwendest das für das "cumToday" Reading. Den letzten Eintrag (für den gerade laufenden 15-Minuten-Zeitraum) verwendest Du für das "recent15min" Reading. Zusätzlich verwende ich den vorletzten Eintrag (für den letzten bereits beendeten 15-Minuten-Zeitraum) für das neue Reading "last15min". Dieses Reading wird für jeden 15-Minuten-Zeitraum einmal erzeugt.

3) Ich verwende die "auto"-Einstellung für das Intervall, um die Abfragen in der Nacht zu reduzieren. Allerdings hat meine SolarEdge Anlage Ost-Ausrichtung, so dass es morgens früher los geht. Ich habe den Startzeitpunkt für das engere Intervall nach vorne verlegt.

Pflegst Du das Modul noch weiter? Bist Du an den Änderungen interessiert?

Viele Grüße,
pizmus

Offline kingmathers

  • Full Member
  • ***
  • Beiträge: 241
Antw:Modul: SolarEdge API Abruf
« Antwort #22 am: 10 Mai 2019, 17:12:18 »
Ich verwende das Modul nun auch seit einiger Zeit ohne Probleme, vielen Dank an dieser Stelle!

Ich hätte jedoch auch ein paar Vorschläge für Veränderungen, z.B. würde ich statt der cumToday Readings lieber einen fortlaufenden Zähler (lifetime) für Purchased etc. haben.

Arbeitest du an dem Modul noch weiter?
Raspberry Pi B+, FS20, 1-Wire, HM
FHEM Home Control (App für Windows 10): https://forum.fhem.de/index.php/topic,49891.0.html
FHEM Arduino Library: https://forum.fhem.de/index.php/topic,94093.0.html

Offline weijers

  • New Member
  • *
  • Beiträge: 3
Antw:Modul: SolarEdge API Abruf
« Antwort #23 am: 15 Mai 2019, 22:10:25 »

Hallo,

Ich bin ein Mitglied von Solar Edge toegevoegd und werkt gedeeltelijk. Es ist al Helemaal Top. Het geen wat niet werkt is het volgende:

-status-grid_power
-status-grid_status
-status-load_status
-status-pv_status
-status-storage_status
-Status-Einheit
-status-updateRefreshRate

de melding die fhem terug geeft op bovenstaande is:
Fehler beim Lesen der Antwort

de dag opbrengst werkt wel.

Können Sie mir helfen?  ::)

Super bedankt alvast

Offline felixm

  • New Member
  • *
  • Beiträge: 18
Antw:Modul: SolarEdge API Abruf
« Antwort #24 am: 16 Mai 2019, 10:49:22 »
Ja ich bin an den Änderungen interessiert und werde mich bemühen das Modul weiter zu pflegen. Ich hatte diese Nachrichten irgendwie übersehen.
Kannst du mir deinen Patch zur Verfügung stellen?

Lifetime Zähler sollte ja kein Problem sein,da müsste ich mal in die API schauen was die hergibt, dann wießrd das gelegntlih synchronisiert und ansonsten mit cumToday summiert.


Liebe Grüße

Offline pizmus

  • Developer
  • New Member
  • ****
  • Beiträge: 33
Antw:Modul: SolarEdge API Abruf
« Antwort #25 am: 16 Mai 2019, 12:10:18 »
Hallo Felix,
hier ist der Source Code.
Es könnte sein, dass damit das Problem von weijers gelöst ist, falls er nämlich einen Inverter hat, der das Status API nicht unterstützt.
Aus der Fehlerbeschreibung kann ich das aber nicht sicher herauslesen.
Gruß,
pizmus

Offline felixm

  • New Member
  • *
  • Beiträge: 18
Antw:Modul: SolarEdge API Abruf
« Antwort #26 am: 22 Mai 2019, 00:10:40 »
Moin,
ich hab deine Änderungen erstmal gesichtet. Ist ja nichts großes. Ich werde das bei mir nochmal in Ruhe testen und in der Zeit die LifeTime Readings integrieren. Was meint ihr wie oft mssen die LifeTime Readings mit dem Server abgeglichen werden, In der Zwischenzeit kann man ja ohne Probleme intern hochzählen?

Gruß

Offline pizmus

  • Developer
  • New Member
  • ****
  • Beiträge: 33
Antw:Modul: SolarEdge API Abruf
« Antwort #27 am: 22 Mai 2019, 12:27:20 »
Danke für Deine Arbeit. Zu den Lifetime Readings habe ich keine Meinung. Gruß, pizmus

Offline pizmus

  • Developer
  • New Member
  • ****
  • Beiträge: 33
Antw:Modul: SolarEdge API Abruf
« Antwort #28 am: 02 Juni 2019, 13:11:07 »
Hallo felixm,

mir ist aufgefallen, dass das vorgeschlagene neue Reading aggregates-Production-last15min immer mal wieder Ausreißer hat. Heute war es wieder so weit, und ich habe mal die Rohdaten, die SolarEdge liefert, aufgezeichnet. Das Ergebnis: Die Antwort auf die "energyDetails" Query sieht nicht immer so aus, wie ich das erwartet hatte. Es gibt am Ende der Liste immer mal wieder einen Eintrag, der zwar einen Zeitstempel aber keinen Messwert hat. In einem Fall hatten sogar die letzten zwei Elemente keinen Messwert. Ich habe auch eine Situation am frühen Morgen gefunden, in der der Wert für einen 15-Minuten-Zeitraum nachträglich geändert bzw. nachgeliefert wurde!
Hier ein paar Beispiele:

05:57:10
{"date":"2019-06-02 04:45:00"},
{"date":"2019-06-02 05:00:00"},
{"date":"2019-06-02 05:15:00"},
{"date":"2019-06-02 05:30:00"},
{"date":"2019-06-02 05:45:00"}]}]}}
 
06:02:11
{"date":"2019-06-02 04:45:00"},
{"date":"2019-06-02 05:00:00","value":0.0},
{"date":"2019-06-02 05:15:00","value":0.0},
{"date":"2019-06-02 05:30:00","value":4.0},   <- geänderter Wert
{"date":"2019-06-02 05:45:00"},
{"date":"2019-06-02 06:00:00"}]}]}}              <- zwei aufeinander folgende Einträge ohne Wert

06:47:10
{"date":"2019-06-02 04:45:00"},
{"date":"2019-06-02 05:00:00","value":0.0},
{"date":"2019-06-02 05:15:00","value":0.0},
{"date":"2019-06-02 05:30:00","value":14.0},
{"date":"2019-06-02 05:45:00","value":42.0},
{"date":"2019-06-02 06:00:00","value":47.0},
{"date":"2019-06-02 06:15:00","value":110.0},
{"date":"2019-06-02 06:30:00","value":96.0},
{"date":"2019-06-02 06:45:00"}]}]}}

Dieses API ist nicht zuverlaessig, bzw. es ist nicht für die Anwendung geeignet, die ich im Kopf hatte. So wie Du es für das cumToday Reading verwendet hast wird das schon funktionieren, aber eine Aussage über die gerade vergangene Viertelstunde ist nicht sinnvoll. Ich rate Dir, das last15min Reading zu verwerfen. Ich glaube der Aufwand für Workarounds und die zusätzliche Komplexität sind nicht angemessen im Vergleich zum Nutzen.

Ich probiere jetzt den "currentPower" Wert aus dem "overview" API aus, denn das "currentPowerFlow" API wird ja von meinem Inverter nicht unterstuetzt. Das sieht bislang ganz brauchbar aus.

Viele Grüße,
pizmus



 

decade-submarginal