Enecsys Monitoring System: Unterschied zwischen den Versionen
Keine Bearbeitungszusammenfassung |
Markierungen: mobile edit mobile web edit |
||
Zeile 1: | Zeile 1: | ||
= MiniJoule / Enecsys Monitoring System = | = MiniJoule / Enecsys Monitoring System = | ||
Die Wechselrichter von Enecsys haben Zigbee Transceiver eingebaut, die die aktuellen | Die Wechselrichter von Enecsys haben Zigbee Transceiver eingebaut, die die aktuellen Energiewerte der angeschlossenen Solarpanels übertragen. | ||
Dazu gibt es von Enecsys einen Gateway (z.B. bei MiniJoule zu beziehen), der die Daten | Dazu gibt es von Enecsys einen Gateway (z.B. bei MiniJoule zu beziehen), der die Daten aufbereitet und an einen Webservice bei Enecsys überträgt. | ||
Da das Protokoll der Daten noch nicht entschlüsselt ist, gibt es derzeit nur die Möglichkeit das Flash Webinterface zu nutzen, um die Daten anzuschauen. | Da das Protokoll der Daten noch nicht entschlüsselt ist, gibt es derzeit nur die Möglichkeit das Flash Webinterface zu nutzen, um sich die Daten anzuschauen. | ||
Mit folgendem Script ist es möglich, die aktuellen Verbrauchswerte auszulesen und in FHEM einzubinden. | Mit folgendem Script ist es möglich, die aktuellen Verbrauchswerte auszulesen und in FHEM einzubinden. | ||
Dazu legt man sich in FHEM ein Dummy-Device an und | Dazu legt man sich in FHEM ein Dummy-Device an und lässt das Script per Timer alle 2 Minuten aufrufen: | ||
'''FHEM Config:''' | '''FHEM Config:''' |
Version vom 26. Januar 2018, 06:55 Uhr
MiniJoule / Enecsys Monitoring System
Die Wechselrichter von Enecsys haben Zigbee Transceiver eingebaut, die die aktuellen Energiewerte der angeschlossenen Solarpanels übertragen. Dazu gibt es von Enecsys einen Gateway (z.B. bei MiniJoule zu beziehen), der die Daten aufbereitet und an einen Webservice bei Enecsys überträgt.
Da das Protokoll der Daten noch nicht entschlüsselt ist, gibt es derzeit nur die Möglichkeit das Flash Webinterface zu nutzen, um sich die Daten anzuschauen.
Mit folgendem Script ist es möglich, die aktuellen Verbrauchswerte auszulesen und in FHEM einzubinden. Dazu legt man sich in FHEM ein Dummy-Device an und lässt das Script per Timer alle 2 Minuten aufrufen:
FHEM Config:
define Photovoltaik dummy define pv_timer at +*00:02:00 "/Users/akw/enecsys.sh"
Shell script:
#!/bin/sh USERNAME="<EMAIL>" PASSWORD="<PASSWORD>" FILEPATH=/tmp touch $FILEPATH/cookies.txt curl -s https://monitor.enecsys.net/ews/InstallationService.asmx/GetCurrentInstallationStatus -b $FILEPATH/cookies.txt > $FILEPATH/soap.xml grep -q "No valid installation id available in session" $FILEPATH/soap.xml if [ "$?" = 0 ]; then echo "Session expired!" curl -s https://monitor.enecsys.net/default.aspx?q=login -c $FILEPATH/cookies.txt > $FILEPATH/page.html VIEWSTATE=$(cat $FILEPATH/page.html | awk -F\" '/__VIEWSTATE/ { print $8 }') EVENTVALIDATION=$(cat $FILEPATH/page.html | awk -F\" '/__EVENTVALIDATION/ { print $8 }') rm -f $FILEPATH/page.html echo "Posting login..." curl -s https://monitor.enecsys.net/ -b $FILEPATH/cookies.txt -c $FILEPATH/cookies.txt \ --data-urlencode "__VIEWSTATE=$VIEWSTATE" \ --data-urlencode "__EVENTVALIDATION=$EVENTVALIDATION" \ --data-urlencode "login1%24UserName=$USERNAME" \ --data-urlencode "login1%24Password=$PASSWORD" \ --data-urlencode "login1%24btnLogin=Login" > /dev/null echo "Loading loginChoice.aspx..." curl -s https://monitor.enecsys.net/Pages/loginChoice.aspx -b $FILEPATH/cookies.txt -c $FILEPATH/cookies.txt > /dev/null echo "Loading customerInstallations.aspx..." curl -s https://monitor.enecsys.net/Pages/customerInstallations.aspx -b $FILEPATH/cookies.txt -c $FILEPATH/cookies.txt > /dev/null else POWER=$(cat $FILEPATH/soap.xml | awk -F"[<>]" '/<CurrentACPower>/ { print $3 }') rm -f $FILEPATH/soap.xml echo "W: $POWER" /Users/akw/src/fhem/fhem.pl 7073 "set Photovoltaik W: $POWER" fi