SMA Sunny Home Manager abfragen.

Begonnen von Brun, 07 Oktober 2014, 10:40:34

Vorheriges Thema - Nächstes Thema

BerndArnold

Hallo Heiko,
vielen Dank für deine Mühen. Ich habe deine Fassung zum Ausprobieren gleich mal aktiviert.

Zitat von: DS_Starter am 19 März 2016, 18:34:19
- alle Readings werden upgedatet, nicht nur diejenigen bei denen sich die Werte geändert haben
   -> das führt zu einer korrekten SVG-Darstellung wenn Werte lange Zeit "0" sind und dann auf einen anderen Wert ändern

Ob das sinnvoll ist oder nicht, kann ich nicht beurteilen, weil ich SVG nicht einsetze.
Wo es mich allerdings stört, ist beim Reading Login-Status. Das hatte mir besser gefallen, als es auch nur bei einem tatsächlichen Login-Versuch aktualisiert wird. Ich konnte damit anhand des Reading-Zeitstempels sehen, wann der letzte Login stattfand.

Die Umstellung auf Blocking.pm hat bestimmt Vorteile. So genau kenne ich mich damit nicht aus. Das Blockieren hatte ich entweder nicht bemerkt oder war gar nicht relevant in meiner Konfiguration :)

Nach dem Reload hat das Modul allerdings erstmal alle 10 bis 15 Sekunden die Daten aktualisiert. Das hatte sich erst beruhigt, nachdem ich das Attribut für meine Cookies-Datei (cool, dass du das mit aufgenommen hast :)) und nochmal mittels Modify die Definition neu gesetzt hatte.

Nochmals vielen Dank für deine Version.

Viele Grüße
Bernd

FHEM auf Raspberry Pi mit Arch Linux
2x HM-LAN, 1x CUL
HomeMatic, FS20, Dreambox, Fritzbox
MQTT zur Kommunikation mit zweiter und dritter FHEM-Instanz

DS_Starter

Hallo Bernd,

danke für dein Feedback.

ZitatDas hatte mir besser gefallen, als es auch nur bei einem tatsächlichen Login-Versuch aktualisiert wird

Wenn ich dich richtig verstehe meinst du damit, dass das Reading nur dann einmalig aktualisiert werden sollte wenn der erste erfogreiche Login stattgefunden hat, richtig ?
Kann ich ja nochmal schauen und anpassen...

Naja, das Nonblocking kann vor allem in Umgebungen mit Homematic Geräten unschön sein. Vor allem dann wenn die Portalseite nicht ordentlich antwortet oder es andere Verzögerungen Richtung SMA-Portal gibt. So (mit Blocking.pm) stört es halt nicht.
Und wenn ihr (weiß garnicht so recht ob du oder Brun die "Modulfäden" in der Hand hältst) vielleicht mal ein "offizielles" FHEM-Modul daraus machen wollt (schön wäre es) , wäre es wichtig.  ;)

Die Geschichte mit der Cookiedatei hat halt noch den Haken, dass SHMForecast die an der programmierten Stelle erwartet um zu funktionieren. Das Modul müßte man auch nochmal anpassen/anfassen oder vielleicht in SHM irgendwie mit integrieren.
Mal drüber nachdenken ....

viele Grüße
Heiko







Proxmox+Debian+MariaDB, PV: SMA, Victron MPII+Pylontech+CerboGX
Maintainer: SSCam, SSChatBot, SSCal, SSFile, DbLog/DbRep, Log2Syslog, SolarForecast,Watches, Dashboard, PylonLowVoltage
Kaffeekasse: https://www.paypal.me/HMaaz
Contrib: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/DS_Starter

BerndArnold

Zitat von: DS_Starter am 19 März 2016, 20:05:47
Wenn ich dich richtig verstehe meinst du damit, dass das Reading nur dann einmalig aktualisiert werden sollte wenn der erste erfogreiche Login stattgefunden hat, richtig ?
Kann ich ja nochmal schauen und anpassen...

Ja, genau so meinte ich es :)
Und natürlich bei jedem folgenden Login, wenn die Session abgelaufen ist.

Zitat von: DS_Starter am 19 März 2016, 20:05:47
Naja, das Nonblocking kann vor allem in Umgebungen mit Homematic Geräten unschön sein. Vor allem dann wenn die Portalseite nicht ordentlich antwortet oder es andere Verzögerungen Richtung SMA-Portal gibt. So (mit Blocking.pm) stört es halt nicht.
Und wenn ihr (weiß garnicht so recht ob du oder Brun die "Modulfäden" in der Hand hältst) vielleicht mal ein "offizielles" FHEM-Modul daraus machen wollt (schön wäre es) , wäre es wichtig.  ;)

Okay, sehe ich ein, ist sinnvoll. Danke für die Erklärung. Finde ich prima, dass du dich darum gekümmert hast. Homematic habe ich auch. Vielleicht hat es mich ja schon betroffen :)

Die Ehre gebührt Brun, er hat das Modul programmiert.
Das "offiziell" würde ich auch begrüßen.

Zitat von: DS_Starter am 19 März 2016, 20:05:47
Die Geschichte mit der Cookiedatei hat halt noch den Haken, dass SHMForecast die an der programmierten Stelle erwartet um zu funktionieren. Das Modul müßte man auch nochmal anpassen/anfassen oder vielleicht in SHM irgendwie mit integrieren.
Mal drüber nachdenken ....

Das mit der Cookie-Datei habe ich so gelöst, dass ich den Pfad in dem Forecast-Modul hart kodiert habe. So wie ich es bisher im 98_SHM.pm auch getan hatte.
Vielleicht kann man ja in dem Forecast-Modul ein attr zum Hauptmodul setzen und es wird dann automatisch das Hauptmodul befragt, welche Cookies-Datei zu verwenden ist. Dann müsste man die Einstellung nur einmal pflegen. Nur so 'ne Idee...
FHEM auf Raspberry Pi mit Arch Linux
2x HM-LAN, 1x CUL
HomeMatic, FS20, Dreambox, Fritzbox
MQTT zur Kommunikation mit zweiter und dritter FHEM-Instanz

DS_Starter

Hallo Bernd,

ich glaube jetzt haben wir es .
Habe die Änderung angehängt.
Der Login-Status wird einmal auf "successful" gesetzt wenn die Session das erste mal gültig wird und der Login erfolgreich war . Ein "failed" wird immer geloggt.
Kannste mal testen wenn du das Cookiefile löscht und dann falsche Login-Daten eingibst usw. ....

Das Forecast-Modul mit einem Attribut "cookielocation" wie beim SHM-Modul zu versorgen kann ich kurzfristig tun.
Ansonsten würde ich mir mal ein paar Gedanken machen .....

Weißt du ob Brun noch an einer Weiterentwicklung des Moduls und an einer offiziellen Version interessiert ist ? Ist ja schließlich sein Modul ....

Schau mal ob es jetzt passt ..

Grüße
Heiko
Proxmox+Debian+MariaDB, PV: SMA, Victron MPII+Pylontech+CerboGX
Maintainer: SSCam, SSChatBot, SSCal, SSFile, DbLog/DbRep, Log2Syslog, SolarForecast,Watches, Dashboard, PylonLowVoltage
Kaffeekasse: https://www.paypal.me/HMaaz
Contrib: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/DS_Starter

BerndArnold

Zitat von: DS_Starter am 19 März 2016, 22:22:23
Habe die Änderung angehängt.
Der Login-Status wird einmal auf "successful" gesetzt wenn die Session das erste mal gültig wird und der Login erfolgreich war . Ein "failed" wird immer geloggt.

Danke für die schnelle Änderung. Werde ich ausprobieren.

Zitat von: DS_Starter am 19 März 2016, 22:22:23
Das Forecast-Modul mit einem Attribut "cookielocation" wie beim SHM-Modul zu versorgen kann ich kurzfristig tun.
Ansonsten würde ich mir mal ein paar Gedanken machen .....

Ok. Da habe ich auch noch etwas beizusteuern. Ich habe mir ein 3. Modul gemacht. Ist ein Abkömmling vom 98_SHMForecast. Ich habe es 98_SHMForecastRelative genannt. Der Unterschied ist, dass nicht die absoluten Stundenzeiten erfasst werden, sondern die relativen.

Beispiel: Ertrag in den nächsten 4 Stunden, Anzahl der Stunden mit "Empfehlung, Geräte einzuschalten" in den nächsten 4 Stunden. Ich habe mir ein DOIF zusammengebastelt, das die Spülmaschine am nächsten Tag zu einer günstigen Zeit einschaltet. Oder eben nicht einschaltet, wenn zu wenig Ertrag prognostiziert wird.

Zitat von: DS_Starter am 19 März 2016, 22:22:23
Weißt du ob Brun noch an einer Weiterentwicklung des Moduls und an einer offiziellen Version interessiert ist ? Ist ja schließlich sein Modul ....

Nein, weiß ich nicht. Aber Brun liest bestimmt mit und ich kann mir schon vorstellen, dass er das weitermachen möchte.
FHEM auf Raspberry Pi mit Arch Linux
2x HM-LAN, 1x CUL
HomeMatic, FS20, Dreambox, Fritzbox
MQTT zur Kommunikation mit zweiter und dritter FHEM-Instanz

DS_Starter

ZitatDa habe ich auch noch etwas beizusteuern. Ich habe mir ein 3. Modul gemacht. Ist ein Abkömmling vom 98_SHMForecast.

Das klingt richtig gut, genau da will ich auch hin. Zur Zeit benutze ich zwei Bluetooth-Schalterdosen die der Sunny Home Manager direkt steuert.
Aber die weiteren Geräte habe ich vor entsprechend mit FHEM zu steuern.
Wäre super wenn du dein Modul mit zur Verfügung stellen würdest ...

viele Grüße und schönen Sonntag,
Heiko


Proxmox+Debian+MariaDB, PV: SMA, Victron MPII+Pylontech+CerboGX
Maintainer: SSCam, SSChatBot, SSCal, SSFile, DbLog/DbRep, Log2Syslog, SolarForecast,Watches, Dashboard, PylonLowVoltage
Kaffeekasse: https://www.paypal.me/HMaaz
Contrib: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/DS_Starter

BerndArnold

Zitat von: DS_Starter am 19 März 2016, 23:02:51
Das klingt richtig gut, genau da will ich auch hin. Zur Zeit benutze ich zwei Bluetooth-Schalterdosen die der Sunny Home Manager direkt steuert.
Aber die weiteren Geräte habe ich vor entsprechend mit FHEM zu steuern.
Wäre super wenn du dein Modul mit zur Verfügung stellen würdest ...

viele Grüße und schönen Sonntag,
Heiko

Im Anhang habe ich das angepasste Modul 98_SHMForecastRelative.pm hinterlegt. Der Pfad zur Cookie-Datei ist nicht der Standard und das mit dem Blocking habe ich nicht angepasst. Soviel zu den wichtigsten Warnhinweisen :)

Die Definitionen (Dummy/DOIF/Notify) und ein paar Erklärungen zur Automatik habe ich mal ins Wiki gestellt:
http://www.fhemwiki.de/wiki/Diskussion:SunnyHomeManager#Steuerung_der_Sp.C3.BClmaschine

Feedback ist gerne erwünscht.
FHEM auf Raspberry Pi mit Arch Linux
2x HM-LAN, 1x CUL
HomeMatic, FS20, Dreambox, Fritzbox
MQTT zur Kommunikation mit zweiter und dritter FHEM-Instanz

DS_Starter

#187
Guten Morgen Bernd,

danke für dein Modul und die Erläuterungen. Das schaue ich mir in Ruhe an ....

Bezüglich unserer gestrigen Unterhaltung habe ich das "normale"  98_SHMForecast so angepasst dass es jetzt automatisch einem gesetzten Attribut "cookieLocation" des SHM-Gerätes folgt.

Dazu mußte ich das DEF von Forecast etwas erweitern, es sieht jetzt so aus:

define <name> SHMForecast <SHM_Name> [Intervall]

SHM_Name steht für den Namen des SHM-Devices was man vorher  mit dem SHM-Modul angelegt hat. Bei heißt mir es Sonnenstrom, demzufolge als Beispiel:

define <name> SHMForecast Sonnenstrom [Intervall]

Wenn jetzt im SHM-Device das Cookiefile per Attribut geändert wird, bekommt SHMForecast das mit und verwendet auch das geänderte File entsprechend.
Klappt bei mir super .... probiers mal aus ...

EDIT: Dein Modul habe ich jetzt auch so angepasst und angehängt ...  Standard f. cookiefile ist ./log/mycookies.txt, müßtest du in deinem SHM-Device per Attr anpassen !
           Dein Modul  find ich super, bringt m.M. nach durch deine Änderung dienliche  Infos für die nachgelagerte Gerätesteuerung.
           Der Def für dein Modul sähe dann so aus:
           define <name> SHMForecastRelative <SHM_Name> [Intervall]

          Alles andrere schaue ich mir später an, BlockingCall usw. ...

Grüße
Heiko
Proxmox+Debian+MariaDB, PV: SMA, Victron MPII+Pylontech+CerboGX
Maintainer: SSCam, SSChatBot, SSCal, SSFile, DbLog/DbRep, Log2Syslog, SolarForecast,Watches, Dashboard, PylonLowVoltage
Kaffeekasse: https://www.paypal.me/HMaaz
Contrib: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/DS_Starter

BerndArnold

Hallo Heiko,
danke für deine Updates. Die Dateien habe ich übernommen. Dazu habe ich Fhem gestoppt, die Definitionen in der fhem.cfg angepasst und danach Fhem wieder gestartet. Schön ist, dass bei den Forecast-Objekten das Haupt-Objekt jetzt in der Liste "Probably associated with" auftaucht - und umgekehrt.

Den Wiki-Eintrag habe ich vorhin noch aktualisiert.

Viele Grüße
Bernd
FHEM auf Raspberry Pi mit Arch Linux
2x HM-LAN, 1x CUL
HomeMatic, FS20, Dreambox, Fritzbox
MQTT zur Kommunikation mit zweiter und dritter FHEM-Instanz

Brun

Morgen,

Klar lese ich mit.
An den Module entwickle ich auch immer etwas weiter. Momentan bin ich auch schon dran das Module auf non blocking um zu bauen.  Wäre das nächste Release.

Gruß Brun

DS_Starter

Morgen Brun,

super ... vielleicht kannst du ja ein paar Dinge die ich gemacht habe in dein Modul übernehmen.
Danke für deine Idee und die Lösung mit dem Sunny Home Manger !

Schönen Tag und viele
Grüße
Heiko
Proxmox+Debian+MariaDB, PV: SMA, Victron MPII+Pylontech+CerboGX
Maintainer: SSCam, SSChatBot, SSCal, SSFile, DbLog/DbRep, Log2Syslog, SolarForecast,Watches, Dashboard, PylonLowVoltage
Kaffeekasse: https://www.paypal.me/HMaaz
Contrib: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/DS_Starter

Brun

Morgen Heiko,

dein non-blocking habe ich mal so übernommen. Gute arbeit!
Allerdings hatte ich damals nur geänderte Werte übernommen. Da sonst mir das Log mit Müll zugemüllt wurde. Da ist der Graph zwar nicht so schön. Aber das hatte mich weniger gestört.

Ich schaue mir auch noch grad die anderen Änderungen an.


Hallo Bernd,

relativer Forecast? Wie bist du denn da drauf gekommen? Was hast du damit denn genau vor?


Gruß Brun

DS_Starter

Hallo Brun,

ja, alles hat so seine Vor- und Nachteile.

Ich habe das Filelog über RegEx nur auf die Werte beschränkt die ich im SVG auch verwende. Dann hält sich die Datenflut in Grenzen.

Grüße
Heiko
Proxmox+Debian+MariaDB, PV: SMA, Victron MPII+Pylontech+CerboGX
Maintainer: SSCam, SSChatBot, SSCal, SSFile, DbLog/DbRep, Log2Syslog, SolarForecast,Watches, Dashboard, PylonLowVoltage
Kaffeekasse: https://www.paypal.me/HMaaz
Contrib: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/DS_Starter

Volker Kettenbach

Ich habe heute ein E-Mail der Firma SMA erhalten:

Sehr geehrter Sunny Portal-Benutzer,

wir haben bei der Analyse unseres Datenverkehrs festgestellt, dass Sie Daten des Sunny Portals automatisiert abgreifen.
In unseren Nutzungsbedingungen unter III. Nr. 2, wird das automatische Auslesen durch Computerprogramme explizit untersagt. Wir möchten Sie hiermit auf den Verstoß hinweisen.
Die Integration und Visualisierung der Informationen Ihrer PV-Anlage in weiterführenden Systemen wie z.B. FHEM ist für uns definitiv nachvollziehbar. Jedoch können wir Ihnen derzeit  keine Schnittstelle anbieten, die dem gerecht wird. Um Ihnen den Zugriff weiter gewähren zu können, sollten Sie die Aktualisierungsrate auf minimal 60 Sekunden erhöhen.

Mit freundlichen Grüßen


Ich habe mal darüber nachgedacht und dann eine Antwort verfasst, die - zugegebenermaßen - dann doch recht harsch ausgefallen ist.
Ich habe ja durchaus Verständnis, dass das Abfragen der Daten Last auf dem Maschinen von SMA erzeugt, aber irgendwie ist mir dann doch irgendwie der Geduldsfaden geplatzt. Hier meine Antwort:

Hallo Herr....,

danke für Ihre E-Mail. Ich verstehe Ihre Situation ebenfalls. Meine Abfrageintervall ist bereits 120 Sekunden und ich kann gerne auch noch höher gehen, damit die Last auf Ihren Maschinen geringer wird.

Viel klüger wäre es, wenn Sie den Nutzern die Möglichkeit gäben, die Daten von der Sunny Home Manager Box direkt per http im lokalen Netz abzufragen. Dann wäre die Last auf Ihrem Portal durch automatischen Abgriff gleich null und die Kunden hätten, was sie wollten, nämlich die Daten der Anlage.

Leider bieten Sie das nicht an und schaffen zusätzlich zu den Lastproblemen noch eine paradoxe Situation:
Sie verkaufen mir für 300 Euro eine Box, die am Ende eigentlich nur Ihnen nutzt, denn Sie sind es, die mit den gewonnen Daten Geld verdienen können: Lieferung der Daten Dienste wie z.B. Wetterdienste, Gewinnung von Erkenntnissen zur Optimierung des eigenen Angebots etc. Sie haben massive strategische Vorteile durch die Vernetzung Ihrer Wechselrichter und ich bekomme nur ein paar läppische bunte Bildchen auf dem Portal und hin und wieder eine E-Mail. Das ganze für für 300 Euro!!. Respekt. Die automatische Nutzung meiner (!) Daten wird mir untersagt. Auf die bunten Bildchen und die E-Mail kann ich sehr gerne verzichten, aber die Auswertung meiner eigenen (!) Daten ist mir sehr wichtig, dann auch ich habe weiterführende Interessen neben dem Konsum bunter Grafiken.

Sollten Sie also auf die Idee kommen, meinen Account zu sperren oder die API ein zu stellen, dann können Sie die Sunny Home Manager Box morgen auf eBay finden und ich greife mir die Daten von Wechselrichter einfach per bluetooth in Eigenregie ab. Nur haben Sie dann gar keinen Zugriff mehr auf meine Anlage oder können diese bei mir kaufen, wenn sie wollen.

Wie Sie mit einer solchen Geschäfts-Politik am Ende dem Kunden ein Angebot machen wollen, dass dem digitalen Zeitalter gerecht wird, ist mir ein Rätsel. Die in Deutschland ach so verteufelten US-Konzerne (Google etc.) machen vor wie es geht: für Anwender und Entwickler offenen Schnittstellen, so dass sich Systeme auf allen Ebenen vernetzen lassen. Nur so wird am Ende ein System entstehen, dass wirklich "Smart" ist. Und Geld verdient Google damit auch, wie sie vielleicht wissen.

Aber trösten Sie sich: Sie befinden sich in bester Gesellschaft. Die Box der Firma Viessmann - ein Gerät ähnlich dem Sunny Home Manager - zur Steuerung einer Wärmepumpe, habe ich nach 2 Wochen zurück gegeben, weil der Deal noch unverschämter ist als Ihrer: das Ding kostet 450,- Euro und außer einer läppischen Grafik auf dem Smartphone darf ich als Kunde keinerlei Nutzen daraus ziehen. Dieser liegt alleine bei Viessmann. Das geht selbst mir als Early-Adopter zu weit.

Sie, Viessmann und der Rest des Deutschen Mittelstands haben halt nicht nicht verstanden, dass die deutsche Übersetzung des Begriffs "Cloud" nunmal nicht "Kundenverblödung" bedeutet. Sie schlafen lieber weiter, während US-Konzerne Märkte aufbauen, von denen Sie nur träumen können. Und nachher ist das Gejammere groß, weil die "bösen" Konzerne Ihnen alles kaputt machen.

Herzliche Grüße
....


Wenn diese Firmen wie SMA, Viessmann und andere nicht einfach nur vollkommen verbohrt, spießig und letztlich digital-ungebildet wären, würden Sie die Chancen, die eine aktive Community und eine Vernetzung der Anlagen generieren nutzen, und ein Geschäftsmodell entwickeln, von dem alle etwas haben. Leider scheint das absolut nicht der Fall zu sein und ich kann es nicht ertragen, dass ich für so eine Dämlichkeit auch noch Geld ausgegeben habe.

In dem Moment, wo SMA sperrt, ist die Box bei eBay.
Ich freue mich drauf, wenn sich Google diesem Markt annimmt.

Gruß
VK

Kalli01

Die Mail von SMA kenne ich auch und bin auf die Antwort gespannt.