Seite 2 von 4

Re: SDM230 with Solaranzeige 4.6.3

Verfasst: Di 18. Aug 2020, 19:21
von Ulrich
OK. Dann setze bitte die serielle Schnittstelle auf 9600 im Gerät und im Adapter und suche folgende Stelle in dem Script "usb_init.php"

Code: Alles auswählen

  case 34:
    if (isset($USB_Regler)) {
      $USBDevice = $USB_Regler;
      $funktionen->log_schreiben("Regler erkannt: ".$USB_Regler,"   ",6);
    }
    elseif (!isset($USBDevice) or empty($USBDevice) ) {
      $USBDevice = "/dev/ttyUSB0";
    }
    // SDM630  Smart Meter
    $rc = exec("stty -F  ".$USBDevice."  raw speed 19200 cs8 -iexten -echo -echoe -echok -onlcr -hupcl ignbrk time 5");
  break;
und ändere dort die 19200 in 9600 ab. Davor und dahinter muss eine Leerstelle bleiben.
Danach den Raspberry mit dem angeschlossenen Adapter neu booten.

Der SDM230 ist ja nicht implementiert. Es könnte aber so funktionieren.

Re: SDM230 with Solaranzeige 4.6.3

Verfasst: Di 18. Aug 2020, 20:30
von udo27503
Nun werden zwar Daten erkannt, jedoch nicht in die Datenbank geschrieben. Hast du noch eine Idee dazu?

18.08. 20:27:50 -InfluxDB => [
AC Spannung_R=2.1184571182822E+36,Strom_R=,Frequenz=50,Leistung_R=-31.8,Leistungsfaktor_R=-0.9
Summen Wh_GesamtBezug=400,Wh_GesamtEinspeisung=100,GesamtLeistungsbedarf=35.3 ]
18.08. 20:27:50 -Daten => [ Array
(
[AC_Spannung] => 2.1184571182822E+36
[AC_Strom] => 0.2
[AC_Leistung_R] => -31.8
[PF_R] => -0.9
[Frequenz] => 50
[Wh_Bezug] => 400
[Wh_Einspeisung] => 100
[GesamterLeistungsbedarf] => 35.3
[Regler] => 34
[Objekt] =>
[Firmware] => 0
[Produkt] => SDM630
[WattstundenGesamtHeute] => 0
[Timestamp] => 1597775270
[Monat] => 8
[Woche] => 34
[Wochentag] => Dienstag
[Datum] => 18.08.2020
[Uhrzeit] => 20:27:50
[InfluxAdresse] =>
[InfluxPort] => 8086
[InfluxUser] =>
[InfluxPassword] =>
[InfluxDBName] => solaranzeige
[InfluxDaylight] =>
[InfluxDBLokal] => solaranzeige
[InfluxSSL] =>
[Demodaten] =>
)
]
18.08. 20:27:50 -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' => 448,
'request_size' => 330,
'filetime' => -1,
'ssl_verify_result' => 0,
'redirect_count' => 0,
'total_time' => 0.009295,
'namelookup_time' => 0.000658,
'connect_time' => 0.000908,
'pretransfer_time' => 0.001034,
'size_upload' => 173.0,
'size_download' => 171.0,
'speed_download' => 19000.0,
'speed_upload' => 19222.0,
'download_content_length' => 171.0,
'upload_content_length' => 173.0,
'starttransfer_time' => 0.009215,
'redirect_time' => 0.0,
'redirect_url' => '',
'primary_ip' => '::1',
'certinfo' =>
array (
),
'primary_port' => 8086,
'local_ip' => '::1',
'local_port' => 55848,
'http_version' => 2,
'protocol' => 1,
'ssl_verifyresult' => 0,
'scheme' => 'HTTP',
'appconnect_time_us' => 0,
'connect_time_us' => 908,
'namelookup_time_us' => 658,
'pretransfer_time_us' => 1034,
'redirect_time_us' => 0,
'starttransfer_time_us' => 9215,
'total_time_us' => 9295,
)

Re: SDM230 with Solaranzeige 4.6.3

Verfasst: Di 18. Aug 2020, 20:52
von udo27503
Habe MEINEN Fehler Gefunden!
Ganz Viel Danke für deine Hilfe. Werde nun in Ruhe alles durch schauen und mich dann ggf nochmal melden.

Re: SDM230 with Solaranzeige 4.6.3

Verfasst: So 23. Aug 2020, 07:41
von udo27503
Nachdem nun ein paar Tage lang alles wunderbar Funktioniert hatte, gibt es seit heute Nacht keine Daten mehr, es gibt keinen Fehler in der php.log, noch in der solaranzeige.log. Nach mehreren Neustarts habe ich jedoch bemerkt das es nach :

23.08. 06:30:33 -Regler: 34
23.08. 06:30:33 -Regler erkannt: /dev/ttyUSB0
23.08. 06:30:33 -Device: /dev/ttyUSB0 wird in die user.config.php geschrieben.
23.08. 06:30:33 -Zeile gefunden. Device kann ausgetauscht werden. Index: 509 $USBRegler = "/dev/ttyUSB0";

23.08. 06:30:33 -Zeile gefunden. Device kann ausgetauscht werden. Index: 510 $USBWechselrichter = "/dev/ttyUSB1";

23.08. 06:30:33 -Zeile gefunden. Platine kann ausgetauscht werden. Index: 526 $Platine = "Raspberry Pi 3 Model B Rev 1.2";

nicht mehr weiter geht. Was kann ich da Versuchen??

Re: SDM230 with Solaranzeige 4.6.3

Verfasst: So 23. Aug 2020, 09:55
von Ulrich
Das deutet darauf hin, dass es ein Problem mit der USB Vebindung gibt. Geschwindigkeit der seriellen Schnittstelle? Was steht den in der LOG Datei an dem Punkt, als keine Daten mehr gekommen sind?

Re: SDM230 with Solaranzeige 4.6.3

Verfasst: So 23. Aug 2020, 10:07
von udo27503
In der Log steht absolut nichts. Abgesehen von den aktuellen Wetterdaten.

Mit einer Backup-SD werden die Daten empfangen, somit kann ich einen Fehler in der Verbindung ausschliessen.
Nur dort habe ich natürlich keinerlei Einträge der vergangenen Zeit.

Re: SDM230 with Solaranzeige 4.6.3

Verfasst: So 23. Aug 2020, 11:32
von udo27503
Habe es nochmals mit der alten Karte versucht und bekam die Fehlermeldung:
23.08. 11:20:50 |------------------- Stop wetterdaten.php ---------------------
23.08. 11:21:01 |------------ Start SDM630_meter.php -------------------------
23.08. 11:21:01 XX -USB Port kann nicht geöffnet werden. [1]
23.08. 11:21:01 XX -Exit....

Re: SDM230 with Solaranzeige 4.6.3

Verfasst: So 22. Nov 2020, 14:32
von pemimu
Hallo Ulrich,

vielen Dank erst mal für deine großartige Arbeit.
Mit Hilfe deiner Software habe ich die Überwachung eines SDM630 realisiert. Nun wollte ich zusätzlich einen SDM230 hinzufügen, scheitere aber mit folgender Fehlermeldung in der php.log.

###################################################################################################
PHP Notice: Undefined variable: address in /var/www/html/phpinc/funktionen.inc.php on line 5463
###################################################################################################

Um alles mögliche Auszuschließen, habe ich erst mal nur die "single" Regler-Version mit dem SDM230 und den Einstellungen eines SDM630 vorgenommen.
Folgende Ausgabe habe ich in der "solaranzeige.log"

###################################################################################################
22.11. 14:07:30 -Multi-Regler-Ausgang. -199
22.11. 14:07:30 -OK. Datenübertragung erfolgreich.
22.11. 14:07:30 |------------ Stop SDM630_meter.php -----------------------
22.11. 14:08:01 MQT-Pipe exestiert nicht. Nur Info, kein Fehler...Exit.
22.11. 14:08:01 + -WR_ID: 01
22.11. 14:08:01 |------------ Start SDM630_meter.php -------------------------
22.11. 14:09:01 MQT-Pipe exestiert nicht. Nur Info, kein Fehler...Exit.
22.11. 14:10:01 MQT-Pipe exestiert nicht. Nur Info, kein Fehler...Exit.
22.11. 14:10:30 -AC Leistung: Watt
22.11. 14:11:01 MQT-Pipe exestiert nicht. Nur Info, kein Fehler...Exit.
22.11. 14:11:19 -InfluxDB => [
AC Spannung_R=,Spannung_S=,Spannung_T=,Strom_R=,Strom_S=,Strom_T=,Frequenz=,Leistung=,Leistungsfaktor=,Leistung_R=,Leistung_S=,Leistung_T=,Leistungsfaktor_R=,Leistungsfaktor_S=,Leistungsfaktor_T=,Spannung=,Strom=
Summen Wh_GesamtBezug=0,Wh_GesamtEinspeisung=0,GesamtLeistungsbedarf= ]
22.11. 14:11:19 -Daten nicht zur lokalen InfluxDB gesendet! info: array (
'url' => 'http://localhost/write?db=stromanzeige&precision=s',
'content_type' => 'application/json',
'http_code' => 400,
'header_size' => 650,
'request_size' => 440,
'filetime' => -1,
'ssl_verify_result' => 0,
'redirect_count' => 0,
'total_time' => 0.008565,
'namelookup_time' => 0.00437,
'connect_time' => 0.004865,
'pretransfer_time' => 0.005209,
'size_upload' => 283.0,
'size_download' => 374.0,
'speed_download' => 46750.0,
'speed_upload' => 35375.0,
'download_content_length' => 374.0,
'upload_content_length' => 283.0,
'starttransfer_time' => 0.008428,
'redirect_time' => 0.0,
'redirect_url' => '',
'primary_ip' => '::1',
'certinfo' =>
array (
),
'primary_port' => 8086,
'local_ip' => '::1',
'local_port' => 59240,
'http_version' => 2,
'protocol' => 1,
'ssl_verifyresult' => 0,
'scheme' => 'HTTP',
'appconnect_time_us' => 0,
'connect_time_us' => 4865,
'namelookup_time_us' => 4370,
'pretransfer_time_us' => 5209,
'redirect_time_us' => 0,
'starttransfer_time_us' => 8428,
'total_time_us' => 8565,
)
22.11. 14:11:25 -InfluxDB => [
AC Spannung_R=,Spannung_S=,Spannung_T=,Strom_R=,Strom_S=,Strom_T=,Frequenz=,Leistung=,Leistungsfaktor=,Leistung_R=,Leistung_S=,Leistung_T=,Leistungsfaktor_R=,Leistungsfaktor_S=,Leistungsfaktor_T=,Spannung=,Strom=
Summen Wh_GesamtBezug=0,Wh_GesamtEinspeisung=0,GesamtLeistungsbedarf= ]
22.11. 14:11:25 -Daten nicht zur lokalen InfluxDB gesendet! info: array (
'url' => 'http://localhost/write?db=stromanzeige&precision=s',
'content_type' => 'application/json',
'http_code' => 400,
'header_size' => 650,
'request_size' => 440,
'filetime' => -1,
'ssl_verify_result' => 0,
'redirect_count' => 0,
'total_time' => 0.002891,
'namelookup_time' => 0.000179,
'connect_time' => 0.000181,
'pretransfer_time' => 0.000492,
'size_upload' => 283.0,
'size_download' => 374.0,
'speed_download' => 187000.0,
'speed_upload' => 141500.0,
'download_content_length' => 374.0,
'upload_content_length' => 283.0,
'starttransfer_time' => 0.002752,
'redirect_time' => 0.0,
'redirect_url' => '',
'primary_ip' => '::1',
'certinfo' =>
array (
),
'primary_port' => 8086,
'local_ip' => '::1',
'local_port' => 59240,
'http_version' => 2,
'protocol' => 1,
'ssl_verifyresult' => 0,
'scheme' => 'HTTP',
'appconnect_time_us' => 181,
'connect_time_us' => 181,
'namelookup_time_us' => 179,
'pretransfer_time_us' => 492,
'redirect_time_us' => 0,
'starttransfer_time_us' => 2752,
'total_time_us' => 2891,
)
22.11. 14:11:30 -Multi-Regler-Ausgang. -200
22.11. 14:11:30 -OK. Datenübertragung erfolgreich.
22.11. 14:11:30 |------------ Stop SDM630_meter.php -----------------------
22.11. 14:12:01 MQT-Pipe exestiert nicht. Nur Info, kein Fehler...Exit.
####################################################################################################

In der "usb_init.php" habe ich als Geschwindigkeit folgendes eingetragen:

####################################################################################################
break;
case 34:
if (isset($USB_Regler)) {
$USBDevice = $USB_Regler;
$funktionen->log_schreiben("Regler erkannt: ".$USB_Regler," ",6);
}
elseif (!isset($USBDevice) or empty($USBDevice) ) {
$USBDevice = "/dev/ttyUSB0";
}
// SDM630 Smart Meter
$rc = exec("stty -F ".$USBDevice." raw speed 9600 cs8 -iexten -echo -echoe -echok -onlcr -hupcl ignbrk time 5");
break;
####################################################################################################

Hast Du eine Idee, was ich noch machen kann?

Vielen Dank für Deine Hilfe

Re: SDM230 with Solaranzeige 4.6.3

Verfasst: So 22. Nov 2020, 15:28
von Ulrich
Der Fehler besagt, dass die Verbindung zum Gerät nicht funktioniert. Ist die A + B Ader nicht vertauscht? Die Pin Belegung stimmt? Bitte noch einmal prüfen.

Re: SDM230 with Solaranzeige 4.6.3

Verfasst: So 22. Nov 2020, 18:52
von pemimu
Danke Ulrich für deine schnelle Antwort.

Da muss ich mir das Gerät SDM230 noch mal näher anschauen.

schönen Gruß

pemimu