Problem mit dem Abrufen des Reglers

Allgemeine Informationen zum Nachbau und zum Forum.
PV-Monitorung / PV Überwachung

Moderator: Ulrich

tmuehlhoff
Beiträge: 13
Registriert: So 29. Dez 2024, 22:53
Hat sich bedankt: 2 Mal

Problem mit dem Abrufen des Reglers

Beitrag von tmuehlhoff »

Hallo zusammen,
ich habe ein auf mehrfache Weise von der "Norm" abweichendes System:

Einen BananaPi mit Armbian/Debian 11, keinen Monitor, keine X11 Installation, die restliche Installation ging soweit ohne Probleme, ich bin auch nicht ganz unerfahren in Sachen Linux.
Einen neueres Huawei WR Modell als in der Liste aufgeführt (SUN2000-12KTL-M5, mit einem anderen Stecker als der hier im Forum dokumentierte).
Einen CH34x-basierten RS485 Adapter. (mit dem ich aber z.B. die Modbus-ähnlichen Daten meiner Heizung auslesen kann, /dev/ttyUSB0, wurde auch erkannt)

ich vermute, dass der WR ein etwas anderes als das bisherige Modbus Protokoll versteht, zuallererst würde ich gerne einmal nachweisen, dass solaranzeige überhaupt etwas zum WR raussendet. Wenn ich aber z.B. mit minicom -D /dev/ttyUSB0 den seriellen Konverter locke, bekomme ich keine Fehlermeldung im Log? Im Log steht immer nur:

Code: Alles auswählen

31.12. 17:35:02 |----- [Regler 56] -----   Start  huawei_M1.php  ---- [12.11.2024] ----
31.12. 17:35:03  -Lesefehler > [  ]
31.12. 17:35:05  -Lesefehler > [  ]
31.12. 17:35:07  -Lesefehler > [  ]
31.12. 17:35:08  -Lesefehler > [  ]
31.12. 17:35:10  -Lesefehler > [  ]
31.12. 17:35:11  -Lesefehler > [  ]
31.12. 17:35:11 >  -Fehler beim Auslesen....
31.12. 17:35:11 |----------------   Stop   huawei_M1.php    --------------------------- 
Wie kann ich das php Script debuggen?

Aus dem Handbuch des WR, ich habe Pins 9/10 benutzt, RS485-1 zum Anschluß des Smartloggers. (https://support.huawei.com/enterprise/d ... 1100267917)

Hab ich etwas vergessen, was ich als Information liefern könnte ?
Dateianhänge
2024-12-31_17-38.png

andreas_n
Beiträge: 1769
Registriert: Do 25. Jun 2020, 13:40
Hat sich bedankt: 17 Mal
Danksagung erhalten: 90 Mal

Re: Problem mit dem Abrufen des Reglers

Beitrag von andreas_n »

SMA Tripower 8/Growatt MIN 3000 TL-XE/1500S/SPH 4600,4 ARK LV,10kWh
ELWA DC WW Puffer m. 300L/Gesamt PV Leistung 20,5kWp gesteuert mit Pi4 und Pi5
hier stehen alle Geräte>> viewtopic.php?f=13&t=1069

tmuehlhoff
Beiträge: 13
Registriert: So 29. Dez 2024, 22:53
Hat sich bedankt: 2 Mal

Re: Problem mit dem Abrufen des Reglers

Beitrag von tmuehlhoff »

Der CH34x Chip funktioniert mit dem richtigen Treiber hevorragend. Warum auch nicht? Hat selbst Ulrich an anderer Stelle geschrieben.

Mein Problem hab ich dann auch direkt gefunden, eins der Strippen war nicht richtig in der Klemme.

tmuehlhoff
Beiträge: 13
Registriert: So 29. Dez 2024, 22:53
Hat sich bedankt: 2 Mal

Re: Problem mit dem Abrufen des Reglers

Beitrag von tmuehlhoff »

Dafür hab ich jetzt ein weiteres Problem, dass ähnlich wie im Thread:

viewtopic.php?p=38953&hilit=daten+nicht ... det#p38953

beschrieben aussieht:

Code: Alles auswählen

31.12. 18:30:01 |----- [Regler 56] -----   Start  huawei_M1.php  ---- [12.11.2024] ----
31.12. 18:30:01    -Firmware des Gerätes: SUN2000-12KTL-M501076370
31.12. 18:30:01 >  -Gerätetyp: SUN2000-12KTL-M501076370 , Modell ID: 473 , USB Port: /dev/ttyUSB0
31.12. 18:30:06    -Array
(
    [zentralerTimestamp] => 1735666211
    [Firmware] => SUN2000-12KTL-M501076370
    [Seriennummer] => HV2330911091
    [ModellID] => 473
    [Anz_PV_Strings] => 4
    [Anz_MPP_Trackers] => 2
    [Nennleistung] => 12000
    [Status1] => 0001
    [Status1Bit] => 0000000000000001
    [Status2] => 0000
    [Status2Bit] => 0000000000000000
    [Status3] => 00000000
    [Status3Bit] => 0000000000000000
    [Alarm1] => 0000
    [Alarm1Bit] => 0000000000000000
    [Alarm2] => 0000
    [Alarm2Bit] => 0000000000000000
    [Alarm3] => 0000
    [Alarm3Bit] => 0000000000000000
    [PV_Leistung] => 0
    [PV1_Spannung] => 0
    [PV1_Strom] => 0
    [PV2_Spannung] => 0
    [PV2_Strom] => 0
    [PV3_Spannung] => 0
    [PV3_Strom] => 0
    [PV4_Spannung] => 0
    [PV4_Strom] => 0
    [AC_Eingangsleistung] => 0
    [AC_Spannung_R] => 0
    [AC_Spannung_S] => 0
    [AC_Spannung_T] => 0
    [AC_Leistung] => 0
    [AC_Frequenz] => 0
    [Effizienz] => 0
    [Temperatur] => 26.9
    [Isolation] => 3000
    [DeviceStatus] => 40960
    [FehlerCode] => 0
    [WattstundenGesamt] => 21550
    [WattstundenGesamtHeute] => 3670
    [Batterie_Status] => 0
    [Batterie_Leistung] => 0
    [SOC] => 0
    [Einspeisung_Bezug] => 2147483647
    [WattstundengesamtExport] => 21474836470
    [WattstundengesamtImport] => 21474836470
    [Einspeisung] => 2147483647
    [Bezug] => 0
    [Batterie_Ladung] => 0
    [Batterie_Entladung] => 0
    [Hausverbrauch] => 0
    [Regler] => 56
    [Objekt] => HH38b
    [Produkt] => SUN2000-12KTL-M501076370
)

31.12. 18:30:06    -Alle 10 Minuten werden die Statistikdaten übertragen.
31.12. 18:30:06    -InfluxDB  => [ AC Spannung_R=0,Spannung_S=0,Spannung_T=0,Frequenz=0,Leistung=0,Einspeisung=2147483647,Bezug=0,Hausverbrauch=0  1735666211
PV Leistung=0,Spannung1=0,Strom1=0,Leistung1=0,Spannung2=0,Strom2=0,Leistung2=0,Spannung3=0,Strom3=0,Leistung3=0,Spannung4=0,Strom4=0,Leistung4=0  1735666211
Batterie LadeLeistung=0,EntladeLeistung=0,Status=0,SOC=0  1735666211
Service Temperatur=26.9,WR_Fehler=0,Status=40960,Anz_MPPT=2,Modell_ID=473,Modell="SUN2000-12KTL-M501076370",Effizienz=0,Isolation=3000,Alarm1=0000,Alarm2=0000,Alarm3=0000  1735666211
Summen Wh_GesamtHeute=3670,Wh_Gesamt=21550,Wh_Heute=3670,WattstundengesamtImport=21474836470,WattstundengesamtExport=21474836470  1735666211
 ]
31.12. 18:30:06    -Daten nicht zur lokalen InfluxDB gesendet! info: array (
  'url' => 'http://localhost/write?db=solaranzeige&precision=s',
  'content_type' => 'application/json',
  'http_code' => 400,
  'header_size' => 433,
  'request_size' => 831,
  'filetime' => -1,
  'ssl_verify_result' => 0,
  'redirect_count' => 0,
  'total_time' => 0.042965,
  'namelookup_time' => 0.000219,
  'connect_time' => 0.000919,
  'pretransfer_time' => 0.001274,
  'size_upload' => 674.0,
  'size_download' => 156.0,
  'speed_download' => 3630.0,
  'speed_upload' => 15687.0,
  'download_content_length' => 156.0,
  'upload_content_length' => 674.0,
  'starttransfer_time' => 0.038565,
  'redirect_time' => 0.0,
  'redirect_url' => '',
  'primary_ip' => '127.0.0.1',
  'certinfo' => 
  array (
  ),
  'primary_port' => 8086,
  'local_ip' => '127.0.0.1',
  'local_port' => 41668,
  'http_version' => 2,
  'protocol' => 1,
  'ssl_verifyresult' => 0,
  'scheme' => 'HTTP',
  'appconnect_time_us' => 0,
  'connect_time_us' => 919,
  'namelookup_time_us' => 219,
  'pretransfer_time_us' => 1274,
  'redirect_time_us' => 0,
  'starttransfer_time_us' => 38565,
  'total_time_us' => 42965,
)

tmuehlhoff
Beiträge: 13
Registriert: So 29. Dez 2024, 22:53
Hat sich bedankt: 2 Mal

Re: Problem mit dem Abrufen des Reglers

Beitrag von tmuehlhoff »

Ich hab mir das Stück code aus deye_micro.php geklaut, aber bisher ohne Erfolg, ich bin nicht so firm in php.

tmuehlhoff
Beiträge: 13
Registriert: So 29. Dez 2024, 22:53
Hat sich bedankt: 2 Mal

Re: Problem mit dem Abrufen des Reglers

Beitrag von tmuehlhoff »

Ich kann irgendwie nicht erkennen, was influxdb stört?! (hier das Log vom unmodifizierten huawei_M1.php)

Code: Alles auswählen

01.01. 18:04:16 |----------------   Stop   huawei_M1.php    --------------------------- 
01.01. 18:05:02 |----- [Regler 56] -----   Start  huawei_M1.php  ---- [12.11.2024] ----
01.01. 18:05:02    -Firmware des Gerätes: SUN2000-12KTL-M501076370
01.01. 18:05:02 >  -Gerätetyp: SUN2000-12KTL-M501076370 , Modell ID: 473 , USB Port: /dev/ttyUSB0
01.01. 18:05:07    -InfluxDB  => [ AC Spannung_R=0,Spannung_S=0,Spannung_T=0,Frequenz=0,Leistung=0,Einspeisung=2147483647,Bezug=0,Hausverbrauch=0  1735751111
PV Leistung=0,Spannung1=0,Strom1=0,Leistung1=0,Spannung2=0,Strom2=0,Leistung2=0,Spannung3=0,Strom3=0,Leistung3=0,Spannung4=0,Strom4=0,Leistung4=0  1735751111
Batterie LadeLeistung=0,EntladeLeistung=0,Status=0,SOC=0  1735751111
Service Temperatur=24.4,WR_Fehler=0,Status=40960,Anz_MPPT=2,Modell_ID=473,Modell="SUN2000-12KTL-M501076370",Effizienz=0,Isolation=3000,Alarm1=0000,Alarm2=0000,Alarm3=0000  1735751111
Summen Wh_GesamtHeute=3640,Wh_Gesamt=25190,Wh_Heute=3640,WattstundengesamtImport=21474836470,WattstundengesamtExport=21474836470  1735751111
 ]
01.01. 18:05:07    -Daten nicht zur lokalen InfluxDB gesendet! info: array (
  'url' => 'http://localhost/write?db=solaranzeige&precision=s',
  'content_type' => 'application/json',
  'http_code' => 400,
  'header_size' => 433,
  'request_size' => 831,
  'filetime' => -1,
  'ssl_verify_result' => 0,
  'redirect_count' => 0,
  'total_time' => 0.02106,
  'namelookup_time' => 0.000231,
  'connect_time' => 0.000878,
  'pretransfer_time' => 0.001207,
  'size_upload' => 674.0,
  'size_download' => 156.0,
  'speed_download' => 7407.0,
  'speed_upload' => 32003.0,
  'download_content_length' => 156.0,
  'upload_content_length' => 674.0,
  'starttransfer_time' => 0.020871,
  'redirect_time' => 0.0,
  'redirect_url' => '',
  'primary_ip' => '127.0.0.1',
  'certinfo' => 
  array (
  ),
  'primary_port' => 8086,
  'local_ip' => '127.0.0.1',
  'local_port' => 54846,
  'http_version' => 2,
  'protocol' => 1,
  'ssl_verifyresult' => 0,
  'scheme' => 'HTTP',
  'appconnect_time_us' => 0,
  'connect_time_us' => 878,
  'namelookup_time_us' => 231,
  'pretransfer_time_us' => 1207,
  'redirect_time_us' => 0,
  'starttransfer_time_us' => 20871,
  'total_time_us' => 21060,
)

tmuehlhoff
Beiträge: 13
Registriert: So 29. Dez 2024, 22:53
Hat sich bedankt: 2 Mal

Re: Problem mit dem Abrufen des Reglers

Beitrag von tmuehlhoff »

Im HTTP Response steht:

Code: Alles auswählen

   X-Influxdb-Error: partial write: field type conflict: input field "WR_Fehler" on measurement "Service" is type float, already exists as type string dropped=1\r\n
Aber wo kommt "WR_Fehler" her ? ich kann es im huawei_M1.php nicht finden!?

Benutzeravatar
Ulrich
Administrator
Beiträge: 6320
Registriert: Sa 7. Nov 2015, 10:33
Wohnort: Essen
Hat sich bedankt: 159 Mal
Danksagung erhalten: 933 Mal

Re: Problem mit dem Abrufen des Reglers

Beitrag von Ulrich »

Könnte es sein, dass es die Datenbank "solaranzeige" gar nicht gibt oder wurde die mal für einen anderen Regler benutzt? Dann muss sie gelöscht und wieder angelegt werden.
-----------------------------------------------------
Ulrich . . . . . . . . [ Admin ]

tmuehlhoff
Beiträge: 13
Registriert: So 29. Dez 2024, 22:53
Hat sich bedankt: 2 Mal

Re: Problem mit dem Abrufen des Reglers

Beitrag von tmuehlhoff »

Die db existiert, ich vermute, dass diese fehlerhaften Einträge durch meine Versuche gekommen sind, das php Script entsprechend anzupassen. Dann hat influxdb einen falschen Datentyp angelegt, und die darauffolgenden richtigen als fehlerhaft erkannt. Ich habe phpinc/funktionen.inc.php vorübergehend so angepasst, dass die (3) fehlerhaft angelegten Felder erstmal nicht mehr gesendet werden, nachdem ich gescheitert bin, die DB zu löschen (ich vermute ich habe sie nur geleert, aber nicht gelöscht, sodass die Datengfelder erhalten geblieben sind).

Jedenfalls bekomme ich jetzt erstmal keine Fehler mal in der solaranzeige.log, aber in Grafana wird mir auch nichts anzegeigt (nichtmal Datum & Uhrzeit ?!) - da muss ich dann wohl jetzt mal weitergraben...

Code: Alles auswählen

01.01. 23:21:02 |----- [Regler 56] -----   Start  huawei_M1.php  ---- [12.11.2024] ----
01.01. 23:21:02    -Firmware des Gerätes: SUN2000-12KTL-M501076370
01.01. 23:21:02 >  -Gerätetyp: SUN2000-12KTL-M501076370 , Modell ID: 473 , USB Port: /dev/ttyUSB0
01.01. 23:21:06 *  -Daten zur lokalen InfluxDB [ solaranzeige ] gesendet. 
01.01. 23:21:06    -Schleife: 1 Zeitspanne: 5
01.01. 23:21:11    -OK. Datenübertragung erfolgreich.
01.01. 23:21:11 |----------------   Stop   huawei_M1.php    --------------------------- 


was ich vorübergehend, anhand der HTTP-results, auskommentiert habe:

Code: Alles auswählen

       # $query .= ",WR_Fehler=".$daten["FehlerCode"];
       # $query .= ",Modell=\"".$daten["Firmware"]."\"";
       # $query .= ",Effizienz=".$daten["Effizienz"];

tmuehlhoff
Beiträge: 13
Registriert: So 29. Dez 2024, 22:53
Hat sich bedankt: 2 Mal

Re: Problem mit dem Abrufen des Reglers

Beitrag von tmuehlhoff »

ich hab die db gedropped und das php-Skript in seinen Urzustand zurueckversetzt. Keine Fehler mehr in der solaranzeige.log.

Code: Alles auswählen

02.01. 11:37:02 |----- [Regler 56] -----   Start  huawei_M1.php  ---- [12.11.2024] ----
02.01. 11:37:02    -Firmware des Gerätes: SUN2000-12KTL-M501076370
02.01. 11:37:02 >  -Gerätetyp: SUN2000-12KTL-M501076370 , Modell ID: 473 , USB Port: /dev/ttyUSB0
02.01. 11:37:06 *  -Daten zur lokalen InfluxDB [ solaranzeige ] gesendet.
02.01. 11:37:06    -Schleife: 1 Zeitspanne: 5
02.01. 11:37:11    -OK. Datenübertragung erfolgreich.
02.01. 11:37:12 |----------------   Stop   huawei_M1.php    ---------------------------
Ich hatte dann noch ein Gross-/Kleinschreibungsproblem zwischen Grafana und InfluxDB, das ich aber gefunden hab. Jetzt zeigt Grafana an was es soll, danke fuer den Beistand.

Zurück zu „Allgemeines“

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 0 Gäste