Seite 1 von 1

Multi Regler und _math nur über MQTT?

Verfasst: Do 29. Dez 2022, 14:57
von Peltierchen
Hallihallo,

ich habe genau 3 Stück EASUN SMG Wechselrichter in betrieb.
Für das Senden der Daten aus dem WR zur Homematic habe ich eine Datei namens easung_smg_math.php angelegt.

Bis dahin funktioniert alles. Jedoch werden die Daten (z.B. PV_Leistung) nur aus der 1.user.config.php übertragen. Ist es möglich die selben Werte für "PV_Leistung" auch aus dem zweiten und dritten Wechselrichter zu übertragen? Wie müsste ich dann das Sript für _math verändern?
math.jpg

Oder habe ich richtig gelesen, dass dies nur mittels MQTT funktioniert?

Vielen Dank!

Re: Multi Regler und _math nur über MQTT?

Verfasst: Do 29. Dez 2022, 16:25
von Ulrich
Das funktioniert mit der _math Datei, ist nur um einiges komplizierter, da bei allen 3 Wechselrichtern die gleiche _math Datei durchlaufen wird. Du musst also erst feststellen, welcher Wechselrichter gerade die _math Datei aufruft und dann die Variablen dementsprechend anders benennen. Welcher Wechselrichter gerade die _math Datei aufruft, steht in der Variable $GeräteNummer. (1 bis 3)

Re: Multi Regler und _math nur über MQTT?

Verfasst: Do 29. Dez 2022, 19:16
von Peltierchen
Ja genau, für das "festellen welcher WR die _math Datei aufgruft" brauche ich demzufolge ein entsprechendes Script, welches in meine _math-Datei eingefügt werden müsste. So habe ich das jetzt verstanden. Ich habe praktisch keine php-Kenntnisse und bin damit aufgeschmissen. Es muss doch mal jemanden gegeben haben, der auch vor dem Problem stand?

Re: Multi Regler und _math nur über MQTT?

Verfasst: Fr 30. Dez 2022, 15:56
von solarfanenrico
Peltierchen hat geschrieben:
Do 29. Dez 2022, 19:16
Ja genau, für das "festellen welcher WR die _math Datei aufgruft" brauche ich demzufolge ein entsprechendes Script, welches in meine _math-Datei eingefügt werden müsste. So habe ich das jetzt verstanden. Ich habe praktisch keine php-Kenntnisse und bin damit aufgeschmissen. Es muss doch mal jemanden gegeben haben, der auch vor dem Problem stand?
Versuche bitte meine email-Adresse zu finden. Ich habe ein einfaches shellsript, welches Daten aus beliebig vielen Datenbanken summiert.

Diese Summen schreibe ich in eine neue InfluxDB, die auch wieder von der einfachen Allgemeinen Automation akzeptiert wird.

Würde ich diese Prozedere hier veröffentlichen, gäbe es ein heilloses Durcheinander, mit Ulrichs Anleitungen.

Enrico

Re: Multi Regler und _math nur über MQTT?

Verfasst: So 26. Feb 2023, 22:26
von Peltierchen
Hi, ich habe das jetzt mittels dem MQTT-Protokoll gelöst. Nachdem ich die Einrichtung begriffen habe, läuft das nun hervorragend :)

Vielen Dank an Ulrich für die Implementierung von MQTT :geek:

Nun hänge ich noch an einem anderen Problem, wofür ich jedoch einen eigenen Thread erstellen werde.

Re: Multi Regler und _math nur über MQTT?

Verfasst: Mo 4. Sep 2023, 08:41
von chriseck
Hallo zusammen,
ich habe das Problem das meine beiden baugleichen WR die gleiche _math Datei verwenden und so immer im wechsel ihre Daten zur Homematic übermitteln.
Wie kann ich das trennen? Muss ich zwei separate _math Dateien erstellen? oder das Script anpassen?

Vielleicht hat jemand einen Tipp für mich.
Danke

Re: Multi Regler und _math nur über MQTT?

Verfasst: Mo 4. Sep 2023, 10:18
von Ulrich
chriseck hat geschrieben:
Mo 4. Sep 2023, 08:41
Hallo zusammen,
ich habe das Problem das meine beiden baugleichen WR die gleiche _math Datei verwenden und so immer im wechsel ihre Daten zur Homematic übermitteln.
Wie kann ich das trennen? Muss ich zwei separate _math Dateien erstellen? oder das Script anpassen?

Vielleicht hat jemand einen Tipp für mich.
Danke
Du musst den Script anpassen. Im Script kann man ja die $GeraeteNummer benutzen. Damit weiß der Script, welches Gerät gerade den Script aufgerufen hat.

Re: Multi Regler und _math nur über MQTT?

Verfasst: Mo 4. Sep 2023, 11:19
von chriseck
Danke für den Hinweis.

So in etwa? Bin nicht der Profi in PHP

<?php

if ($Geraetenummer==1)
{
$HM_Var = array();
$HM_Var["Batterie_SOC"] = $aktuelleDaten["Batterie"]["SOC"];
$HM_Var["Batterie_Temp"] = $aktuelleDaten["Batterie"]["Temperatur"];
$HM_Var["Batterie_V"] = $aktuelleDaten["Batterie"]["Spannung"];
$HM_Var["Microgrid"] = $aktuelleDaten["AC"]["MicroInput"];
$HM_Var["Netz_Leistung"] = $aktuelleDaten["Netz"]["Leistung"];
$HM_Var["PV_Leistung"] = $aktuelleDaten["PV"]["Leistung"];}

if ($Geraetenummer==2)
{
$HM_Var = array();
$HM_Var["Batterie_SOC2"] = $aktuelleDaten["Batterie"]["SOC"];
$HM_Var["Batterie_Temp2"] = $aktuelleDaten["Batterie"]["Temperatur"];
$HM_Var["Batterie_V2"] = $aktuelleDaten["Batterie"]["Spannung"];
$HM_Var["Microgrid2"] = $aktuelleDaten["AC"]["MicroInput"];
$HM_Var["Netz_Leistung2"] = $aktuelleDaten["Netz"]["Leistung"];
$HM_Var["PV_Leistung2"] = $aktuelleDaten["PV"]["Leistung"];}


?>

Funktioniert leider nicht.

Re: Multi Regler und _math nur über MQTT?

Verfasst: Mo 4. Sep 2023, 11:34
von chriseck
Es funktioniert, war nur noch ein kleiner Rechtschreibfehler drin.
Danke

<?php

if ($GeraeteNummer==1)
{
$HM_Var = array();
$HM_Var["Batterie_SOC"] = $aktuelleDaten["Batterie"]["SOC"];
$HM_Var["Batterie_Temp"] = $aktuelleDaten["Batterie"]["Temperatur"];
$HM_Var["Batterie_V"] = $aktuelleDaten["Batterie"]["Spannung"];
$HM_Var["Microgrid"] = $aktuelleDaten["AC"]["MicroInput"];
$HM_Var["Netz_Leistung"] = $aktuelleDaten["Netz"]["Leistung"];
$HM_Var["PV_Leistung"] = $aktuelleDaten["PV"]["Leistung"];}

if ($GeraeteNummer==2)
{
$HM_Var = array();
$HM_Var["Batterie_SOC2"] = $aktuelleDaten["Batterie"]["SOC"];
$HM_Var["Batterie_Temp2"] = $aktuelleDaten["Batterie"]["Temperatur"];
$HM_Var["Batterie_V2"] = $aktuelleDaten["Batterie"]["Spannung"];
$HM_Var["Microgrid2"] = $aktuelleDaten["AC"]["MicroInput"];
$HM_Var["Netz_Leistung2"] = $aktuelleDaten["Netz"]["Leistung"];
$HM_Var["PV_Leistung2"] = $aktuelleDaten["PV"]["Leistung"];}
?>

Re: Multi Regler und _math nur über MQTT?

Verfasst: Mo 15. Jan 2024, 09:21
von Muffin
Hallo zusammen,

ich bin die ganze zeit auf der suche nach Unterstützung für die math.php für 2 Huawei WR.

Kann ich diese math.php dafür verwenden?

In der Gerätenummer kommt dann bestimmt die 1.User Nummer rein richtig?

müssen da noch andere Werte mit eingebunden werden?
Ich finde leider keine math.php für Huawei im Forum.

laut dem Forum müssen bei Huawei alle Daten vom WR summiert werden und daraus den richtigen verbrauch zu errechnen.

Oder kann mir auch jemand eine richtige PHP erstellen?

<?php

if ($Geraetenummer==1)
{
$HM_Var = array();
$HM_Var["Batterie_SOC"] = $aktuelleDaten["Batterie"]["SOC"];
$HM_Var["Batterie_Temp"] = $aktuelleDaten["Batterie"]["Temperatur"];
$HM_Var["Batterie_V"] = $aktuelleDaten["Batterie"]["Spannung"];
$HM_Var["Microgrid"] = $aktuelleDaten["AC"]["MicroInput"];
$HM_Var["Netz_Leistung"] = $aktuelleDaten["Netz"]["Leistung"];
$HM_Var["PV_Leistung"] = $aktuelleDaten["PV"]["Leistung"];}

if ($Geraetenummer==2)
{
$HM_Var = array();
$HM_Var["Batterie_SOC2"] = $aktuelleDaten["Batterie"]["SOC"];
$HM_Var["Batterie_Temp2"] = $aktuelleDaten["Batterie"]["Temperatur"];
$HM_Var["Batterie_V2"] = $aktuelleDaten["Batterie"]["Spannung"];
$HM_Var["Microgrid2"] = $aktuelleDaten["AC"]["MicroInput"];
$HM_Var["Netz_Leistung2"] = $aktuelleDaten["Netz"]["Leistung"];
$HM_Var["PV_Leistung2"] = $aktuelleDaten["PV"]["Leistung"];}


?>