bei mir verrichtet ein DEYE Microwechselrichter (DEYE SUN1600G3-EU-230) am Balkonkraftwerk seinen Dienst. Mangels direkter Unterstützung durch Solaranzeige sammelte ich die Wechselrichterwerte bisher via MQTT ein und dies wurde dann via Solaranzeige dargestellt. Dies funktionierte prinzipiell. Ich bin nun sehr erfreut, daß die Solaranzeige nunmehr auch DEYE Wechselrichter unterstützt und ich meinen WR nun direkt auslesen kann.
Da ich noch einen Shelly 3EM Zähler am laufen habe, nutze ich beide nun mit Solaranzeige-Multiregler-Betrieb.
a) Die Temperaturanzeige beim DEYE zeigt aber ein merkwürdiges Verhalten. Die Werte springen scheinbar wild zwischen Minus-Werten und Plus- Werten, z.B. von -200 bis 3900. Hat noch jemand dieses Problem? Stimmt da eventuell das Register bzw. die Umrechnung nicht? Basierend auf meiner DEYE-MOD-Bus-Tabelle (V118) und meinem Verständnis sollten vom gelieferten Wert 1000 abgezogen und danach dieser Wert durch 10 dividiert werden, um auf °C zu kommen.
SOLARLOG-Auszug: -> zur Info
Code: Alles auswählen
[Info] => Array
(
[Geraetetyp.Text] => 0004
[Seriennummer] => xxxxxxxxxxxx -> von mir hier unkenntlich gemacht
[SollLeistung] => 1600
[Objekt.Text] =>
[Produkt.Text] => Deye
[Modell.Text] => Deye Microwechselrichter
)
[AC] => Array
(
[Drosselung] => 100
[Leistungsanpassung] => 1600
[Spannung] => 233
[Strom] => 0.1
[Frequenz] => 50
[Leistung] => 30
)
[Service] => Array
(
[Status] => 0002
[Temperatur] => 454.92
Code: Alles auswählen
if ($OK) {
$aktuelleDaten["Service"]["Status"] = substr($data, 0, 4);
if (hexdec(substr($data,8,4)) > 0) {
$aktuelleDaten["Summen"]["Wh_GesamtHeute"] = hexdec(substr($data,8,4))*100;
}
$aktuelleDaten["Summen"]["Wh_Gesamt"] = (hexdec(substr($data,16,4))*100 + hexdec(substr($data,20,4))*100);
$aktuelleDaten["Summen"]["PV1_Wh_Gesamt"] = hexdec(substr($data,24,4))*100;
$aktuelleDaten["Summen"]["PV2_Wh_Gesamt"] = hexdec(substr($data,28,4))*100;
$aktuelleDaten["Summen"]["PV3_Wh_Gesamt"] = hexdec(substr($data,32,4))*100;
$aktuelleDaten["Summen"]["PV4_Wh_Gesamt"] = hexdec(substr($data,36,4))*100;
$aktuelleDaten["AC"]["Spannung"] = hexdec(substr($data,56,4))/10;
$aktuelleDaten["AC"]["Strom"] = hexdec(substr($data,68,4))/10;
$aktuelleDaten["AC"]["Frequenz"] = hexdec(substr($data,80,4))/100;
$aktuelleDaten["AC"]["Leistung"] = round((hexdec(substr($data,108,4))/10 + hexdec(substr($data,112,4))/10),1);
$aktuelleDaten["Service"]["Temperatur"] = (hexdec(substr($data,124,4))/100)-10;
$funktionen->log_schreiben( "Temperatur?? Hexwert: ".substr($data,124,4) , " ", 7);
}
Kann mir bitte einer der Wissenden ein paar Tipps geben? Danke schön.
Viele Grüße
Carlo57
ps. ich habe gerade hier noch einmal editiert, um den 2. Teil meiner Fragen hier abzuteilen und als Extra-Thread zu behandeln