Inbetriebnahme JK-BMS über RS485

Welche Geräter können mit dieser Anzeige benutzt werden?
Laderegler, Wallboxen, Batterie-Management-Systeme, WLAN Schalter mit Tasmota Firmware und Wechselrichter

Moderator: Ulrich

SolarHeli
Beiträge: 25
Registriert: Mi 5. Jan 2022, 22:31
Wohnort: Bayern
Danksagung erhalten: 7 Mal

Re: Inbetriebnahme JK-BMS über RS485

Beitrag 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

SolarHeli
Beiträge: 25
Registriert: Mi 5. Jan 2022, 22:31
Wohnort: Bayern
Danksagung erhalten: 7 Mal

Re: Inbetriebnahme JK-BMS über RS485

Beitrag 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

Benutzeravatar
sralus
Beiträge: 38
Registriert: Mi 21. Sep 2022, 00:04
Hat sich bedankt: 6 Mal

Re: Inbetriebnahme JK-BMS über RS485

Beitrag 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

Benutzeravatar
Ulrich
Administrator
Beiträge: 3986
Registriert: Sa 7. Nov 2015, 10:33
Wohnort: Essen
Hat sich bedankt: 92 Mal
Danksagung erhalten: 525 Mal
Kontaktdaten:

Re: Inbetriebnahme JK-BMS über RS485

Beitrag 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.
---------------------------------------
Ulrich . . . . . . . . [Projektinhaber]

tino48
Beiträge: 8
Registriert: So 21. Nov 2021, 10:50
Danksagung erhalten: 1 Mal

Re: Inbetriebnahme JK-BMS über RS485

Beitrag 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?

Benutzeravatar
Ulrich
Administrator
Beiträge: 3986
Registriert: Sa 7. Nov 2015, 10:33
Wohnort: Essen
Hat sich bedankt: 92 Mal
Danksagung erhalten: 525 Mal
Kontaktdaten:

Re: Inbetriebnahme JK-BMS über RS485

Beitrag 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!
---------------------------------------
Ulrich . . . . . . . . [Projektinhaber]

Benutzeravatar
sralus
Beiträge: 38
Registriert: Mi 21. Sep 2022, 00:04
Hat sich bedankt: 6 Mal

Re: Inbetriebnahme JK-BMS über RS485

Beitrag 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

tino48
Beiträge: 8
Registriert: So 21. Nov 2021, 10:50
Danksagung erhalten: 1 Mal

Re: Inbetriebnahme JK-BMS über RS485

Beitrag von tino48 »

Gerätenummer war auf 3 habe ich auf 1 geändert. Datenbank Name stimmt im Syntax uberein. Fehlermeldungist nun InfluxDB Bad Gateway.

Benutzeravatar
Ulrich
Administrator
Beiträge: 3986
Registriert: Sa 7. Nov 2015, 10:33
Wohnort: Essen
Hat sich bedankt: 92 Mal
Danksagung erhalten: 525 Mal
Kontaktdaten:

Re: Inbetriebnahme JK-BMS über RS485

Beitrag von Ulrich »

Bitte den Raspberry noch einmal neu starten.
---------------------------------------
Ulrich . . . . . . . . [Projektinhaber]

tino48
Beiträge: 8
Registriert: So 21. Nov 2021, 10:50
Danksagung erhalten: 1 Mal

Re: Inbetriebnahme JK-BMS über RS485

Beitrag von tino48 »

Habe ich schon mehrmals gemacht immer der gleiche Fehler wenn ich Test im Grafana mache nach Neustart.

Antworten