Zählersensor Powerfox Poweropti Leistung auslesen und in Variable schreiben

Allgemeines zur HomeMatic Haussteuerung

Moderator: Co-Administratoren

Fonzo
Beiträge: 6687
Registriert: 22.05.2012, 08:40
System: CCU
Hat sich bedankt: 25 Mal
Danksagung erhalten: 478 Mal

Re: Zählersensor Powerfox Poweropti Leistung auslesen und in Variable schreiben

Beitrag von Fonzo » 09.06.2021, 13:10

MichaelN hat geschrieben:
09.06.2021, 13:04
Ich finde die Frage ist klar formuliert:
Bist Du sicher das dem Fragesteller denn schon klar ist wie er das auslesen kann und auch schon die Dokumentation auf der Hersteller Seite vollständig gelesen hat?
Klar ist nur, das der Fragensteller als erstes in der Vergangenheit eine Frage zu NEO gestellt hat, daher auch der Hinweis darauf, dass er das ohne ein Skript auf der CCU3 lösen kann, wenn er das denn will.

Michael_D
Beiträge: 12
Registriert: 04.01.2021, 17:02
System: CCU
Hat sich bedankt: 1 Mal

Re: Zählersensor Powerfox Poweropti Leistung auslesen und in Variable schreiben

Beitrag von Michael_D » 11.06.2021, 15:42

Hallo zusammen,
Vielen Dank für die Rückmeldungen.
Ich möchte die Daten gerne aufzeichnen incl. einiger Berechnungen (wie Kosten).
In Neo kann man w.W. nicht "rechnen", daher der Ansatz z.B. über entsprechende Variablen/Scripte.
Optimal wäre natürlich wenn die Schnittstelle von Powerfox auch diese Daten (Historie, Kosten, usw.) analog der APP
beinhalten würde. Gehe aber davon aus, dass die Berechnungen in der APP selbst stattfinden.

Viele Grüsse
Michael

MichaelN
Beiträge: 9562
Registriert: 27.04.2020, 10:34
System: CCU
Hat sich bedankt: 696 Mal
Danksagung erhalten: 1608 Mal

Re: Zählersensor Powerfox Poweropti Leistung auslesen und in Variable schreiben

Beitrag von MichaelN » 11.06.2021, 15:44

Michael_D hat geschrieben:
11.06.2021, 15:42
Optimal wäre natürlich wenn die Schnittstelle von Powerfox auch diese Daten (Historie, Kosten, usw.) analog der APP
beinhalten würde.
Das sollte in der API Dokumentation stehen
LG, Michael.

Wenn du eine App zur Bedienung brauchst, dann hast du kein Smarthome.

Wettervorhersage über AccuWeather oder OpenWeatherMap+++ Rollladensteuerung 2.0 +++ JSON-API-Ausgaben auswerten +++ undokumentierte Skript-Befehle und Debugging-Tipps +++

Michael_D
Beiträge: 12
Registriert: 04.01.2021, 17:02
System: CCU
Hat sich bedankt: 1 Mal

Re: Zählersensor Powerfox Poweropti Leistung auslesen und in Variable schreiben

Beitrag von Michael_D » 11.06.2021, 16:28

Hallo Michael,
da stehen lediglich die reinen Verbräuche.

Viele Grüsse
Michael

Benutzeravatar
Black
Beiträge: 5463
Registriert: 12.09.2015, 22:31
System: Alternative CCU (auf Basis OCCU)
Wohnort: Wegberg
Hat sich bedankt: 418 Mal
Danksagung erhalten: 1069 Mal
Kontaktdaten:

Re: Zählersensor Powerfox Poweropti Leistung auslesen und in Variable schreiben

Beitrag von Black » 12.06.2021, 08:26

für gewöhnlich werden Historien archvierungen lokal durchgeführt. CCU- Historian ist hier einer der lösungsansätze. Ich selber verwende bei mir die kostenlose, in diesem Forum weit verbreitete middleware iobroker mit einer Anbindung an eine MySQL Datenbank. Powerfox liesse sich da auch natürlich kostenlos integrieren, aber deine Fragestellung war ja nach einer ccu Lösung.

Trotzdem ist der erste Schritt ja, Über die ccu mit einem Script die api daten zu bekommen. Tut's das mittlerweile bei dir ?

Das auslesen selber wird sich natürlich rein mit einen CCU Script bewerkstelligen lassen, dazu braucht es keinerlei zusatzsoftware, erst recht keine kostenpflichtige

Black
Zuletzt geändert von Black am 12.06.2021, 11:35, insgesamt 3-mal geändert.
Wenn das Fernsehprogramm immer mehr durch nervende Werbung unterbrochen wird und der Radiomoderator nur noch Müll erzählt, ist es besser, die Zeit für sinnvolle Dinge zu nutzen -
mal aufs Klo zu gehen, ein Bier zu holen oder einfach mal den roten AUS-Knopf zu drücken. Klick - und weg

Script Time Scheduler V1.3
AstroSteuerung über Zeitmodul flexibel mit Offset / spätestens, frühestens
SDV 5.03.01 Das umfassende Entwicklungs und Diagnosetool für Homematik
Selektive Backups - Nützliche Dinge, die die WebUI nicht kann

Intel NUC6 Celeron 16GB mit 512GB SSD unter Proxxmox mit insgesamt 5 VM: 2 x bloatwarebefreiter Raspberrymatik, 2 x IOBroker als Middleware und einer MariaDB zur Archivierung. Verbrauch: 6W

technical contribution against annoying advertising

Fonzo
Beiträge: 6687
Registriert: 22.05.2012, 08:40
System: CCU
Hat sich bedankt: 25 Mal
Danksagung erhalten: 478 Mal

Re: Zählersensor Powerfox Poweropti Leistung auslesen und in Variable schreiben

Beitrag von Fonzo » 12.06.2021, 11:06

Michael_D hat geschrieben:
11.06.2021, 15:42
Ich möchte die Daten gerne aufzeichnen incl. einiger Berechnungen (wie Kosten).
In Neo kann man w.W. nicht "rechnen", daher der Ansatz z.B. über entsprechende Variablen/Scripte.
Das kommt drauf an was Du genau machen willst. Das einfachste wäre den momentanen Wert in NEO anzuzeigen, die Daten zeichnet ja so oder so Powerfox für Dich auf und zeigt das auch als Graph an. Du kannst die aufgezeichneten Daten des Powerfox z.B. auch einfach anzeigen lassen, indem Du bei Bedarf die Powerfox App direkt aus NEO öffnest.

Wenn Du damit rechnen willst, kommt es darauf an wo genau. Ich zeichne Langzeitdaten, die ich in NEO anzeigen will, z.B. in IP-Symcon auf. Die Daten kannst Du dann auch einfach in Excel exportieren und da dann mit Pivot Tabellen weitere Analysen fahren.
Michael_D hat geschrieben:
11.06.2021, 15:42
Optimal wäre natürlich wenn die Schnittstelle von Powerfox auch diese Daten (Historie, Kosten, usw.) analog der APP
beinhalten würde.
Historie usw. kannst Du ja alles über die API auslesen, automatisch die Daten loggen und da einen Graph erstellen, wenn Dir die Aufzeichnung in der Powerfox App selber nicht reichen sollte, kannst Du z.B. mit IP-Symcon und dem Powerfox Modul. Die Daten kannst Du dann in einem Webseitenelement in NEO einbinden und anzeigen lassen.
Michael_D hat geschrieben:
11.06.2021, 15:42
Gehe aber davon aus, dass die Berechnungen in der APP selbst stattfinden.
So was wie den Preis must Du schon irgendwo hinterlegen, gemessen wird ja lediglich der Verbrauch.

aha
Beiträge: 140
Registriert: 24.07.2020, 18:01
System: Alternative CCU (auf Basis OCCU)
Hat sich bedankt: 4 Mal
Danksagung erhalten: 5 Mal

Re: Zählersensor Powerfox Poweropti Leistung auslesen und in Variable schreiben

Beitrag von aha » 21.11.2021, 12:25

automation-fan hat geschrieben:
23.11.2020, 22:52
irgendwas passt noch mit der Syntax nicht .. knoble weiter mit try and error hab 0 Ahnunung von Scripten bzw HTTP request :-(
Das ist dann die richtige URL:

Code: Alles auswählen

string username = "[email adresse]";
string password = "[passwort]";
string poweropti_serial = "[seriennummer]";

string usernameEnc = username.UriEncode();
string passwordEnc = password.UriEncode();
string url = "https://" + usernameEnc + ":" + passwordEnc + "@backend.powerfox.energy/api/2.0/my/" + poweropti_serial + "/current";

Hattermann
Beiträge: 126
Registriert: 14.12.2015, 19:58
Danksagung erhalten: 4 Mal

Re: Zählersensor Powerfox Poweropti Leistung auslesen und in Variable schreiben

Beitrag von Hattermann » 21.12.2021, 18:49

Besten Dank für die Vorarbeit,
das ganze Script lautet dann:

Code: Alles auswählen

!-------- Hier die eigenen Daten Eintragen------------------ 
string username = "Hans.Wurst@Mueller.de";
string password  = "4711";
string poweropti_serial = "1234567890ab";
!-----------------------------------------------------------

string usernameEnc = username.UriEncode();
string passwordEnc = password.UriEncode();
string JSON_All;
string stemp;
integer StrLen;
integer pos;
real AktuelleLeistung;
real VerbrauchSumme;
var v_Leistung;
var v_Summe;
! diese Systemvariablen als Fließkomma anlegen!
string strLeistung = "StromAktLeistung";
string strSumme = "StromSummeVerbrauch";


! Username, Password ausgeben um Strings selbst zu basteln
! WriteLine(usernameEnc);
! WriteLine(passwordEnc);
! Abfrage der Serial im Browser:
! https://%usernameEnc%:%passwordEnc%@backend.powerfox.energy/api/2.0/my/all/devices

string cmd = "curl -X GET \"https://" + usernameEnc + ":" + passwordEnc + "@backend.powerfox.energy/api/2.0/my/" + poweropti_serial + "/current\"";

!Daten der Geräte abrufen
  dom.GetObject("CUxD.CUX2801002:1.CMD_SETS").State(cmd);
  dom.GetObject("CUxD.CUX2801002:1.CMD_QUERY_RET").State(1);
  JSON_All = dom.GetObject("CUxD.CUX2801002:1.CMD_RETS").State().ToLatin();
  StrLen = JSON_All.Length();
!  WriteLine( JSON_All );

! Leistung Lesen
  pos = JSON_All.Find( "\"Watt\":" ) + 7;
  JSON_All = JSON_All.Substr( pos, JSON_All.Length() - pos );
  pos = JSON_All.Find( "," );
  stemp = JSON_All.Substr( 0, pos );
!  WriteLine( stemp );
  AktuelleLeistung = stemp.ToFloat();
!  WriteLine( AktuelleLeistung );

! Verbrauch lesen
  pos = JSON_All.Find( "\"A_Plus\":" ) + 9;
  JSON_All = JSON_All.Substr( pos, JSON_All.Length() - pos );
  pos = JSON_All.Find( "," );
  stemp = JSON_All.Substr( 0, pos );
!  WriteLine( stemp );
  VerbrauchSumme = stemp.ToFloat();
!  WriteLine( VerbrauchSumme );

! Variablen setzen
  v_Leistung = dom.GetObject( strLeistung );
  v_Leistung.State( AktuelleLeistung );
  v_Summe = dom.GetObject( strSumme );
  v_Summe.State( VerbrauchSumme );
Frohe Weihnachten
Thomas

Hattermann
Beiträge: 126
Registriert: 14.12.2015, 19:58
Danksagung erhalten: 4 Mal

Re: Zählersensor Powerfox Poweropti Leistung auslesen und in Variable schreiben

Beitrag von Hattermann » 31.12.2021, 15:30

Hallo,
beim Poweropti+ ist der Port 80 offen. Aber wie direkt anfragen??
Ich habe mal versucht mit Hilfe der Fritzbox die Kommuniaktion nach draussen mitzuschneiden.
Aber merkwürdiger Weise konnte ich lediglich eine Anfrage beim Zeitserver auf der IP-Adresse des Gerätes finden??
Und die Verbrauchsinformationen kommen am Smartphone an!
IPV6 habe ich versuchsweise abgeschaltet.
Jemand eine Idee?

Gruß Thomas

Benutzeravatar
kopy
Beiträge: 121
Registriert: 28.12.2015, 14:35
Hat sich bedankt: 2 Mal
Danksagung erhalten: 8 Mal

Re: Zählersensor Powerfox Poweropti Leistung auslesen und in Variable schreiben

Beitrag von kopy » 26.01.2022, 13:37

Hallo, habe gestern das Script ausprobiert. Funktioniert bei mir einwandfrei, bin begeistert.

Vielen Dank dafür

Kommt man auch irgendwie an den Wert der eingespeisten Leistung ran???

Antworten

Zurück zu „HomeMatic allgemein“