@fips.luthe: Aber auch in den ioBroker per ModBus? Kannst Du mir bitte in dem Falle gleich noch ein Beispiel-Register nennen? So kann ich zumindest eine Fehlerquelle ausschließen. 😉
Weiß mittlerweile jemand, was am besten beim Balancing und V Sleep Cell einzutragen ist?
@mcwumpus : Die Daten bekommst du mit folgenden python Script in den MQTT und somit natürlich auch in den ioBroker, habe ich bei mir auch so realisiert.
https: github. com. Tertiush bmspace
link bitte selber zusammenbauen, kann ich nicht posten 🙁
Das Script als Dienst laufen lassen
Ich habe zwei Versionen des PbmsTools und zwar die GOBEL-Varianten. Die "originale" Pbms 2.5N enthält die Protokolle nicht.
PbmsTools HS1.0.8 sagt: PYLON_485 (hier hatte ich schon mal auf Pace_Modbus umgeschalten, aber ohne Erfolg)
PbmsTools HS1.0.6 sagt: DEYE
Das aus deinem Link scheint mir aber für die RS-232 (RJ11) Schnittstelle zu sein.
Anbei meine Scripte zum abholen mit MQTT. Über RS485 ist das Pylon Protokol über RS232 is universel.
Vieleicht kann die einer ja gebrauchen für sich.
ich habe übrigens auch einen Waveshare adapter benutzt, RS-485 USB FTDI version. Den kleinen ohne extra Stromversorgung.
Und RS-485 ist nicht unbedingt Modbus. Modbus ist ein Protokol und RS-485 eine Schnittstellen Spezifikation.
Modbus RTU wäre Modbus über RS-485/422.
Modbus TCP/IP über ethernet..Also meist eine RJ45 Schnittstelle im kommerziellen gebrauch. Kann aber auch z.B. ein M12 Stecker sein oder ähnlich für outdoor devices, mal so neben bei, aus der Sendung "mrkask bringt mich was bei" 😉
Also bleibt die Frage was du mit Modbus willst? Das Pace485 Protokol ist ein Modbus protokol. Aber da kommen sehr wenige Daten drüber. Zumindest bei mir an meinen Batterien.
Also welches Protokol willst du auslesen/haben? Pylon,Deye,Victron etc.?
Wenn bei dir schon mit verschiedenen PBMSTolls verschiedene Protokole angezeigt werden, ist das alles schon fraglich welches den gerade da wirklich aktiv arbeitet.
Da bleibt nur Testen anhand der protokol spezifikationen der einzelnen hersteller. Oder wenn das nicht möglich ist, da die basis dazu nich vorhanden ist.
Dann bleibt nur das testen von ander Leuts Scripten aus gits oder software diverser hersteller für sowas.
Edit:
Die meisten Daten bekommst du über die RJ11 RS-232 Schnittstelle. Da ist alles drinne was die PBMSTools dir auch anzeigen.
Du kannst da aber Daten nur ändern(schreiben) wenn du direkt auf der Batterie hängst. Also wenn du mehrere gestacked hast, dann kannst du zwar alle Daten lesen von allen Batterien im Stack. Aber schreiben kann man nur die an der das RS-232 Kabel hängt.
@mrkask:
Danke für die ausführliche Beschreibung. Bei meinem DEYE SUN 12k geht die Datenübertragung per ModBus in den ioBroker problemlos. Ich meinte das so aufgeschnappt zu haben, dass das bei den TitanSolar-Akkus genauso geht.
Ich möchte im ersten Schritt die Daten aus den Pbms-Tools im ioBroker haben.
Ich werde mich mal dem Thema RS-232 nähern.
hat wer noch die Delong FW für die 200A Batterie in Version 2.04
und könnte die bereitstellen - wäre MEGA
@McWumpus Ich kann hier mal erklaeren, wie ich das Auslesen bei mir zum Laufen bekommen hab. Ich bin da auch ne Weile dran verzweifelt, ist aber am Ende relativ einfach.
- Du brauchst die PBMS Tools version von der Titansolar Seite: https://titansolar.de/pages/dokumente
- Dort stellst du im System Tab das "RS485 Protocol" auf "Pace BMS". Ist diese Option nicht vorhanden, musst du ein Firmware Update des Speichers machen
- Die einzelnen Module muessen dann ALLE am Modbus Kabel im RS485 Port angeschlossen werden. Also nicht nur das erste, sonst kriegst du auch nur von diesem Daten
- Am besten du benutzt einen ESP32 mit ESPhome und dieser Config hier: https://github.com/syssi/esphome-pace-bms. Wenn du mehrere packs hast, dann einfach die jeweiligen Stellen in der Yaml Datei duplizieren
- Ich pack mir das dann so in meinen Home Assistant und Grafana. Bei dir waers eben dann ioBroker. Sieht so aus bei mir:
Man kriegt da wirklich alle Daten raus, die auch das Windows Tool ueber den RS232 auslesen kann.
Wenn du Fragen hast meld dich einfach
PS: Man sieht in den Graphen auch ganz gut, dass mein SOC nicht perfekt kalibriert ist, denn die Packs haben bei gleicher Spannung einen unterschiedlichen SOC, aber das gibt sich hoffentlich noch.
In welchen byte/word liegen den der SOH, die Kapazitätswerte(total,design) und die environment Temperatur über RS485 bei dir?
Und wo liegen die balancing bits, das man sieht welche Zelle gerade balanced?
@mrkask Siehst du alles in der Tabelle hier: https://github.com/syssi/esphome-pace-bms#protocol
Interessant. Laut Pace Protokoll ist das im 485 ja garnicht enthalten. Das muss ich mir mal angucken.
edit:
ich habe ein älteres Protokoll Dokument. In meinen Test hat das aber nicht das ausgegeben was ich erhofft habe.
Das kam bei mir raus beim register auslesen:
##Addressbereich 02 03 00 01 00 7D D4 18 ##anfang&erste 125 register ..max mögliche Anzahl 02 03 00 38 00 7D 04 15 ##bis ende 125 + 56 = 181 register ##alles 02 03 00 01 00 7D D4 18 //Register 1-125 002 003 000 125 000 000 001 000 001 000 000 000 001 000 000 000 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 000 016 000 034 000 034 000 034 000 034 000 034 000 034 000 034 000 034 000 034 000 034 000 034 000 034 000 034 000 034 000 034 000 034 255 255 255 255 255 255 255 255 000 004 000 242 000 239 000 239 000 238 255 255 255 255 255 255 255 255 255 255 255 255 000 000 000 000 000 000 000 000 000 000 000 000 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 000 000 000 001 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 255 255 255 255 255 255 255 255 255 255 255 255 000 000 000 000 000 000 000 000 000 000 002 048 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 229 192 002 003 000 125 000 000 001 000 001 000 000 000 001 000 000 000 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 000 016 000 034 000 034 000 034 000 034 000 034 000 034 000 034 000 034 000 034 000 034 000 034 000 034 000 034 000 034 000 034 000 034 255 255 255 255 255 255 255 255 000 004 000 242 000 239 000 239 000 238 255 255 255 255 255 255 255 255 255 255 255 255 000 000 000 000 000 000 000 000 000 000 000 000 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 000 000 000 001 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 255 255 255 255 255 255 255 255 255 255 255 255 000 000 000 000 000 000 000 000 000 000 002 048 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 229 192 02 03 00 7D 00 38 D4 33 //Register 125 - 181 002 003 000 056 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 134 073
wie man sieht nur mist ;(
Bist du exakt nach meiner Anleitung oben vorgegangen? Also das Protokoll auf `Pace BMS` umgestellt, etc.?
Das ist aus meinen Versuchen von einst. Und ja es war das PACE Protokoll ausgewählt. Eventuell ist es firmware abhängig, idk.