Seite 3 von 5

Re: Inbetriebnahme JK-BMS über RS485

Verfasst: Do 15. Dez 2022, 19:50
von SolarHeli
mikep500 hat geschrieben:
Mo 12. Dez 2022, 21:12
Hallo,
kann mir von den Entwicklern des JK BMS Reglers jemand sagen was mit dem Bat Status oben links angezeigt wird?
In der Original App wird das nicht angezeigt.

Danke Mike
Hallo Mike,
er wird in der App angezeigt, aber hier sind mehrere Stati in einem Wert:
Bildschirmfoto vom 2022-12-15 19-45-18.png
(Auszug aus "Communication protocol between monitoring platform and BMS")
VG Helmut

Re: Inbetriebnahme JK-BMS über RS485

Verfasst: Do 15. Dez 2022, 20:02
von SolarHeli
@sralus: Ja, es könnte die Baudrate sein. In Deiner Config ist sie allerdings auskommentiert = unwirksam.
In dem Fall wird der Defaut verwendet und der ist 115200 beim JK BMS (genaugenommen bei $Regler = "83").
Wenn Du den Adapter gezogen und wieder angesteckt hast IMMER neu booten. Nur dabei wird der Adapter neu initialisiert.
V.G Helmut

Re: Inbetriebnahme JK-BMS über RS485

Verfasst: Fr 16. Dez 2022, 14:07
von sralus
Hallo
Habe mittlerweile diesen log:
Damit funktioniert Garafana auch sehr gut leider bzw komisch ist das ich diesen output nur bekomme wenn ich das $Tracelevel = 10; // 1 bis 10 10 = Debug auf 10 minimal auf 9 stelle

Code: Alles auswählen

16.12. 13:20:15    -Verarbeitung von: '3.user.config.php'   Regler: 83
16.12. 13:20:15 |------------   Start  JK_bms.php    ---------------------------- 
16.12. 13:20:15    -Zentraler Timestamp: 1671193201
16.12. 13:20:15 o  -Hardware Version: Raspberry Pi 4 Model B Rev 1.4
16.12. 13:20:15 o  -Hardware Version: 4B
16.12. 13:20:15    -USB Port: /dev/ttyUSB0
16.12. 13:20:15 +  -Die Daten werden ausgelesen...
16.12. 13:20:15    -out> : 4e5700130000000006030000000000006800000129
16.12. 13:20:15    -array (
  'WattstundenGesamtHeute' => 0,
  'zentralerTimestamp' => 1671193211,
  'Zellenanzahl' => 16,
  'Spannung_Zelle1' => 3.349,
  'Min_Spannung' => 3.347,
  'Max_Spannung' => 3.352,
  'Spannung_Zelle2' => 3.348,
  'Spannung_Zelle3' => 3.349,
  'Spannung_Zelle4' => 3.348,
  'Spannung_Zelle5' => 3.351,
  'Spannung_Zelle6' => 3.352,
  'Spannung_Zelle7' => 3.349,
  'Spannung_Zelle8' => 3.351,
  'Spannung_Zelle9' => 3.349,
  'Spannung_Zelle10' => 3.351,
  'Spannung_Zelle11' => 3.349,
  'Spannung_Zelle12' => 3.348,
  'Spannung_Zelle13' => 3.349,
  'Spannung_Zelle14' => 3.349,
  'Spannung_Zelle15' => 3.348,
  'Spannung_Zelle16' => 3.347,
  'SpannungDiff' => 0.005,
  'TempBMS' => 17,
  'Temp1' => 16,
  'Temp2' => 17,
  'BatSpannung' => 53.58,
  'BatStrom' => 2.89,
  'BatLeistung' => 155.0,
  'SOC' => 66,
  'NrTempsens' => 2,
  'Ladezyklen' => 3,
  'TotalBatCycleCap' => 1001,
  'NrBatStrings' => 16,
  'BatWarning' => 0,
  'BatStatus' => 3,
  'Regler' => '83',
  'Objekt' => '',
  'Firmware' => '1.0',
)
16.12. 13:20:15    -Start DB transfer
16.12. 13:20:15    -InfluxDBName: jkbms
16.12. 13:20:15    -Alle 10 Minuten werden die Statistikdaten übertragen.
16.12. 13:20:15 *  -Daten zur lokalen InfluxDB  gesendet. 0 Wh
Array
(
    [url] => http://localhost/write?db=jkbms&precision=s
    [content_type] => application/json
    [http_code] => 204
    [header_size] => 249
    [request_size] => 603
    [filetime] => -1
    [ssl_verify_result] => 0
    [redirect_count] => 0
    [total_time] => 0.007399
    [namelookup_time] => 0.001116
    [connect_time] => 0.001484
    [pretransfer_time] => 0.001695
    [size_upload] => 453
    [size_download] => 0
    [speed_download] => 0
    [speed_upload] => 64714
    [download_content_length] => 0
    [upload_content_length] => 453
    [starttransfer_time] => 0.007337
    [redirect_time] => 0
    [redirect_url] => 
    [primary_ip] => ::1
    [certinfo] => Array
        (
        )

    [primary_port] => 8086
    [local_ip] => ::1
    [local_port] => 38662
    [http_version] => 2
    [protocol] => 1
    [ssl_verifyresult] => 0
    [scheme] => HTTP
    [appconnect_time_us] => 0
    [connect_time_us] => 1484
    [namelookup_time_us] => 1116
    [pretransfer_time_us] => 1695
    [redirect_time_us] => 0
    [starttransfer_time_us] => 7337
    [total_time_us] => 7399
)

16.12. 13:20:15    -Aktuelle Daten: 
Array
(
    [WattstundenGesamtHeute] => 0
    [zentralerTimestamp] => 1671193211
    [Zellenanzahl] => 16
    [Spannung_Zelle1] => 3.349
    [Min_Spannung] => 3.347
    [Max_Spannung] => 3.352
    [Spannung_Zelle2] => 3.348
    [Spannung_Zelle3] => 3.349
    [Spannung_Zelle4] => 3.348
    [Spannung_Zelle5] => 3.351
    [Spannung_Zelle6] => 3.352
    [Spannung_Zelle7] => 3.349
    [Spannung_Zelle8] => 3.351
    [Spannung_Zelle9] => 3.349
    [Spannung_Zelle10] => 3.351
    [Spannung_Zelle11] => 3.349
    [Spannung_Zelle12] => 3.348
    [Spannung_Zelle13] => 3.349
    [Spannung_Zelle14] => 3.349
    [Spannung_Zelle15] => 3.348
    [Spannung_Zelle16] => 3.347
    [SpannungDiff] => 0.005
    [TempBMS] => 17
    [Temp1] => 16
    [Temp2] => 17
    [BatSpannung] => 53.58
    [BatStrom] => 2.89
    [BatLeistung] => 155
    [SOC] => 66
    [NrTempsens] => 2
    [Ladezyklen] => 3
    [TotalBatCycleCap] => 1001
    [NrBatStrings] => 16
    [BatWarning] => 0
    [BatStatus] => 3
    [Regler] => 83
    [Objekt] => 
    [Firmware] => 1.0
    [Timestamp] => 1671193215
    [Monat] => 12
    [Woche] => 50
    [Wochentag] => Freitag
    [Datum] => 16.12.2022
    [Uhrzeit] => 13:20:15
    [InfluxAdresse] => 
    [InfluxPort] => 8086
    [InfluxUser] => admin
    [InfluxPassword] => jkbmspass
    [InfluxDBName] => jkbms
    [InfluxDaylight] => 
    [InfluxDBLokal] => jkbms
    [InfluxSSL] => 
    [Demodaten] => 
)

16.12. 13:20:15    -Query: 
Service SOC=66,Ladezyklen=3,TotalBatCycleCap=1001,Max_Spannung=3.352,Min_Spannung=3.347,SpannungDiff=0.005,Zellenanzahl=16,NrTempsens=2,TempBMS=17,Temp1=16,Temp2=17,BatWarning=0,BatStatus=3,NrBatStrings=16  1671193211
Batterie BatStrom=2.89,BatSpannung=53.58,BatLeistung=155,Spannung_Zelle1=3.349,Spannung_Zelle2=3.348,Spannung_Zelle3=3.349,Spannung_Zelle4=3.348,Spannung_Zelle5=3.351,Spannung_Zelle6=3.352,Spannung_Zelle7=3.349,Spannung_Zelle8=3.351,Spannung_Zelle9=3.349,Spannung_Zelle10=3.351,Spannung_Zelle11=3.349,Spannung_Zelle12=3.348,Spannung_Zelle13=3.349,Spannung_Zelle14=3.349,Spannung_Zelle15=3.348,Spannung_Zelle16=3.347  1671193211

16.12. 13:20:15 *  -Daten zur lokalen InfluxDB [ jkbms ] gesendet. 
16.12. 13:20:15    -Multi-Regler-Ausgang. 7
16.12. 13:20:22    -OK. Datenübertragung erfolgreich.
16.12. 13:20:22 |------------   Stop   JK_bms.php (7s)   ---------------------------- 
16.12. 13:20:22    -Multi Regler Auslesen [Stop].
bei $Tracelevel = 6; // 1 bis 10 10 = Debug
bekomm ich diesen output:

Code: Alles auswählen

16.12. 13:35:16    -Verarbeitung von: '3.user.config.php'   Regler: 83
16.12. 13:35:16 |------------   Start  JK_bms.php    ---------------------------- 
16.12. 13:35:16    -Zentraler Timestamp: 1671194101
16.12. 13:35:16 o  -Hardware Version: Raspberry Pi 4 Model B Rev 1.4
16.12. 13:35:16    -USB Port: /dev/ttyUSB0
16.12. 13:35:16    -out> : 4e5700130000000006030000000000006800000129
16.12. 13:35:16 !! -invalid frame!  instead of 0x83
16.12. 13:35:16    -4e570121000000000600017930010d18020d17030d17040d18050d18060d19070d18080d15090d170a0d190b0d180c0d170d0d180e0d
16.12. 13:35:16 |------------   Stop   JK_bms.php (0s)   ---------------------------- 
16.12. 13:35:16    -Multi Regler Auslesen [Stop].
Dabei ist es egal ob ich $SerielleGeschwindigkeit = "115200"; einschalte oder ausklammer //.

Habe das Trace level jetzt auf 7 stehen und SerielleGeschwindigkeit auf 115200 eingeschaltet:
Log scheint gut zu sein:

Code: Alles auswählen

16.12. 13:46:15    -Verarbeitung von: '3.user.config.php'   Regler: 83
16.12. 13:46:15 |------------   Start  JK_bms.php    ---------------------------- 
16.12. 13:46:15    -Start DB transfer
16.12. 13:46:15 *  -Daten zur lokalen InfluxDB [ jkbms ] gesendet. 
16.12. 13:46:15    -Multi-Regler-Ausgang. 7
16.12. 13:46:22    -OK. Datenübertragung erfolgreich.
16.12. 13:46:22 |------------   Stop   JK_bms.php (7s)   ---------------------------- 
16.12. 13:46:22    -Multi Regler Auslesen [Stop].
jkbmsgrafana.jpg
Spannung am RX/TX vom JK-RS485 Dongle ist bei mir: 2,23V / 2,56V

OK: nach längeren Warten kommt im Log doch kein -invalid frame! instead of 0x83 mehr.
Dürfte doch eigentlich auch keinen unterschied machen welchen Trace Wert man einstellt oder ?

Besten Dank vorab
Sralus

Re: Inbetriebnahme JK-BMS über RS485

Verfasst: Fr 16. Dez 2022, 16:05
von Ulrich
Der Tracelevel hat ausschließlich mit der Menge der LOG Einträge zu tun. Der kann auch auf 0 gestellt werden, dann wird damit die LOG Datei "ausgeschaltet". Das hat aber keinen Einfluss auf die Verarbeitung der Daten.

Re: Inbetriebnahme JK-BMS über RS485

Verfasst: Mo 19. Dez 2022, 11:46
von tino48
Ich probiere auch den JKBMS ins Influx DB einzulesen ohne erfolg:

19.12. 11:44:11 -OK. Datenübertragung erfolgreich.
19.12. 11:44:11 |------------ Stop JK_bms.php (10s) ----------------------------
19.12. 11:45:02 |------------ Start JK_bms.php ----------------------------
19.12. 11:45:02 -Start DB transfer
19.12. 11:45:02 -InfluxDB => [ Service SOC=15,Ladezyklen=0,TotalBatCycleCap=170,Max_Spannung=3.279,Min_Spannung=3.277,SpannungDiff=0.002,Zellenanzahl=4,NrTempsens=2,TempBMS=26,Temp1=21,Temp2=21,BatWarning=0,BatStatus=3,NrBatStrings=4 1671446712
Batterie BatStrom=0,BatSpannung=13.11,BatLeistung=0,Spannung_Zelle1=3.279,Spannung_Zelle2=3.279,Spannung_Zelle3=3.277,Spannung_Zelle4=3.278 1671446712
]
19.12. 11:45:02 -Daten nicht zur lokalen InfluxDB gesendet! info: array (
'url' => 'http://localhost/write?db=jkbms&precision=s',
'content_type' => 'application/json',
'http_code' => 404,
'header_size' => 314,
'request_size' => 517,
'filetime' => -1,
'ssl_verify_result' => 0,
'redirect_count' => 0,
'total_time' => 0.004353,
'namelookup_time' => 0.002219,
'connect_time' => 0.003161,
'pretransfer_time' => 0.004162,
'size_upload' => 367.0,
'size_download' => 42.0,
'speed_download' => 10500.0,
'speed_upload' => 91750.0,
'download_content_length' => 42.0,
'upload_content_length' => 367.0,
'starttransfer_time' => 0.004192,
'redirect_time' => 0.0,
'redirect_url' => '',
'primary_ip' => '::1',
'certinfo' =>
array (
),
'primary_port' => 8086,
'local_ip' => '::1',
'local_port' => 55230,
'http_version' => 2,
'protocol' => 1,
'ssl_verifyresult' => 0,
'scheme' => 'HTTP',
'appconnect_time_us' => 0,
'connect_time_us' => 3161,
'namelookup_time_us' => 2219,
'pretransfer_time_us' => 4162,
'redirect_time_us' => 0,
'starttransfer_time_us' => 4192,
'total_time_us' => 4353,
)
19.12. 11:45:07 -InfluxDB => [ Service SOC=15,Ladezyklen=0,TotalBatCycleCap=170,Max_Spannung=3.279,Min_Spannung=3.277,SpannungDiff=0.002,Zellenanzahl=4,NrTempsens=2,TempBMS=26,Temp1=21,Temp2=21,BatWarning=0,BatStatus=3,NrBatStrings=4 1671446712
Batterie BatStrom=0,BatSpannung=13.11,BatLeistung=0,Spannung_Zelle1=3.279,Spannung_Zelle2=3.279,Spannung_Zelle3=3.277,Spannung_Zelle4=3.278 1671446712
]
19.12. 11:45:07 -Daten nicht zur lokalen InfluxDB gesendet! info: array (
'url' => 'http://localhost/write?db=jkbms&precision=s',
'content_type' => 'application/json',
'http_code' => 404,
'header_size' => 314,
'request_size' => 517,
'filetime' => -1,
'ssl_verify_result' => 0,
'redirect_count' => 0,
'total_time' => 0.001527,
'namelookup_time' => 0.000135,
'connect_time' => 0.000136,
'pretransfer_time' => 0.000376,
'size_upload' => 367.0,
'size_download' => 42.0,
'speed_download' => 42000.0,
'speed_upload' => 367000.0,
'download_content_length' => 42.0,
'upload_content_length' => 367.0,
'starttransfer_time' => 0.00145,
'redirect_time' => 0.0,
'redirect_url' => '',
'primary_ip' => '::1',
'certinfo' =>
array (
),
'primary_port' => 8086,
'local_ip' => '::1',
'local_port' => 55230,
'http_version' => 2,
'protocol' => 1,
'ssl_verifyresult' => 0,
'scheme' => 'HTTP',
'appconnect_time_us' => 137,
'connect_time_us' => 136,
'namelookup_time_us' => 135,
'pretransfer_time_us' => 376,
'redirect_time_us' => 0,
'starttransfer_time_us' => 1450,
'total_time_us' => 1527,

Kann mir da je,mand helfen?

Re: Inbetriebnahme JK-BMS über RS485

Verfasst: Mo 19. Dez 2022, 12:37
von Ulrich
Das sieht ganz danach aus, als ob du vergessen hast, die Datenbank "jkbms" zu erstellen, oder sie etwas anders genannt hast. Auf Gross- und Kleinschreibung achten!

Re: Inbetriebnahme JK-BMS über RS485

Verfasst: Mo 19. Dez 2022, 18:15
von sralus
im Terminal: influx
Dann show databases

da müsste dann ja " jkbms " stehen

Code: Alles auswählen

pi@solaranzeige:~ $ influx
Connected to http://localhost:8086 version 1.8.10
InfluxDB shell version: 1.8.10
> show databases
name: databases
name
----
_internal
solaranzeige
steuerung
jkbms
Gruß
Stalus

Re: Inbetriebnahme JK-BMS über RS485

Verfasst: Di 20. Dez 2022, 08:25
von tino48
Gerätenummer war auf 3 habe ich auf 1 geändert. Datenbank Name stimmt im Syntax uberein. Fehlermeldungist nun InfluxDB Bad Gateway.

Re: Inbetriebnahme JK-BMS über RS485

Verfasst: Di 20. Dez 2022, 09:04
von Ulrich
Bitte den Raspberry noch einmal neu starten.

Re: Inbetriebnahme JK-BMS über RS485

Verfasst: Di 20. Dez 2022, 09:12
von tino48
Habe ich schon mehrmals gemacht immer der gleiche Fehler wenn ich Test im Grafana mache nach Neustart.