Temperaturüberwachung für LiFePO4 mit Arduino & DS18B20 – NTC-Simulation fürs BMS

Hallo zusammen,

ich habe 4 LiFePO4-Akkupacks (je 8 Zellen) und möchte an jedem Pack die Temperatur an mindestens 2 Stellen messen – insgesamt also 8 Sensoren. Die Sensoren sollen direkt an den Busbars befestigt werden (z. B. mit einer Schelle).

Mein Ziel:

  • Temperaturmessung mit DS18B20 oder alternativen Sensoren.
  • Arduino übernimmt die Messung und wandelt die Werte so um, dass das BMS sie über eine NTC-Simulation auswerten kann.
  • Logik:
    • Wenn die Temperatur über einem Schwellenwert liegt, soll der höchste gemessene Wert ans BMS gehen.
    • Darunter soll der niedrigste Wert gesendet werden.

Fragen & Herausforderungen:

  1. Hat jemand Erfahrung mit der Simulation eines NTC-Sensors per Arduino?
  2. Welche Schaltung wäre am besten? (z. B. Digital-Potentiometer oder PWM mit Tiefpass)
  3. Ist der DS18B20 geeignet, oder gäbe es bessere Sensoren für diesen Zweck?
  4. Hat jemand ein ähnliches Projekt umgesetzt und Tipps zur Stabilität und Genauigkeit?

Freue mich auf eure Ideen und Vorschläge! :blush:

Wozu?

Wenn Du nur zwei unterschiedliche Werte simulieren willst, brauchst Du keine Simulation eines NTC.

Ich würd die Poti-Schaltung vorziehen.

Da Du vermutlich nicht über 100°C kommst :slight_smile:
Ja,

Erster Teil: Nein.
Zweiter Teil: Es gibt Leute, bei denen laufen Heizungsanlagen mit DS18xxx und das nicht erst seit gestern :slight_smile:

Empfehlung:
Grundlegend mit den Libs zu den Sensoren und den Möglichkeiten die sich so ergeben vertraut machen.

Ich Messe mit 10 DS18B20 die Vor- und Rücklauf-Temperaturen der Fußbodenheizungen, das funktioniert supi, sofern man vorher die Abweichungen bestimmt und für jeden Sensor individuell einen Temperatur-Offset ermittelt. Zur Befestigung der TO92-Sensoren habe ich Silikon-WärmeleitKLEBER verwendet (nicht zu verwechseln mit WärmeleitPASTE!) Mit BMS meinst du wahrscheinlich Brand-Melde-System? Ist das was selbst gebautes oder ein fertiges Produkt? Hat das BMS nicht noch andere Anschlußmöglichkeiten?

Wozu NTC simulieren!
ich möchte dem BMS den einen NTC vorgaukeln sodass es z.B bei Übertemperatur abschaltet bzw. bei zu niedriger Temperatur nicht lädt!
da das BMS nur einen NTC bedient dachte ich an diese Lösung
und mich interessiert halt wenn es z.B mehr als 10 grad hat immer der höchste Wert. also wenn eine Zelle zu heiß wird dann wird abgeschaltet.
Anders be niedrig temperaturen wenn eine Zelle unter grad geht wird nicht mehr geladen!

BMS ist das Batteriemanagement-System welches die einzelnen Zellen schützt vor Über/Unterspannung Über/Untertemperatur

Wie ist das überhaupt mit dem Sensor

  • kann ich mehrere Sensoren an einem Port am Ardoino betreiben
  • wenn ja könnte ich alle benötigen Sensoren eines Batteriepacks parallel schalten, oder?
  • der fühler dieser Sensoren ist aus Metall hat dies irgend eine Verbindung zu den Anschlüssen bzw kann ich die irgendwie isoliert auf meine Busbars klemmen

Wenn es bereits vor Über-/Untertemperatur schützt, sollte es bereits über Sensoren verfügen oder es ist ein Placebo.

Gruß Tommy

das BMS hat halt nur einen Temperatursensor ich möchte aber mindestens 8 oder mehr
lg Helmut

ok

Gruß Tommy

Die DS18B20 können in einem I2C Bus alle gekoppelt werden, d.h. du brauchst nur eine Leitung vom Arduino zum ersten DS und von dem zum nächsten us.w. Wenn du die Temperaturen einzelnen Zellen zuordnen möchtest, wird das ganze etwas kniffliger, dann musst du vorher die Adress-Nummern der Sensoren auslesen und dir merken, welcher Sensor an welcher Position befestigt ist. Ich verwende zwar auch noch weitere DS18B20 im Metall-Gehäuse, aber da kann ich nichts zu der elektrischen Festigkeit sagen, wenn das Metall-Gehäuse direkten Kontakt zu stromführenden Teilen hat. Aber warum willst du sie eigentlich unbedingt auf die Kontakte setzen und nicht auf die Zellen selber?
Aber: Vom Arduino aus dem BMS einen NTC vorzugaukeln, ist wohl der schwierigste Part, denn ein NTC ist auch nur ein Widerstand, dh., er wird vom BMS mit Spannung versorgt und je nach Temperatur ändert sich sein Widerstand und damit der fließende Strom. Daher müsstest du einen entsprechend regelbaren Widerstand haben. Da fällt mir aber spontan keine Lösung zu ein. Aber auf jeden Fall brauchst du dafür erstmal die Daten des vom Hersteller vorgesehenen NTC, weil genau dieser simuliert werden müsste, ansonsten könnte deine BMS beschädigt werden!

Warum möchte ich die Sensoren direkt auf die Kontakte/Busbars setzen?
Weil Erwärmungen der Zellen and den Polen sehr gut zu messen sind und weil ich damit auch eventuelle Temperaturerhöhungen der Busbars erkennen könnte es können das Ströme bis 300A drüber gehen und wenn z.B der Übergangswiederstand Pol/Busbar steigt dann wäre das mit abgedeckt!

Ja.
Und viel Besser: Die Sensoren sind One Wire Sensoren.
Die brauchen nur einen Pin.
Für alles!

Ja.

Hast Du Dir das Datenblatt angesehen?
Dann ist die Frage geklärt.

Suche Dir Infos an Quellen, die nachweislich stimmen.
Der/Die Hersteller bieten Datenblätter.

Hör auf Unsinn zu erzählen!
Du hast NULL Ahnung!
NULL!

Ok scheint der hat eine Verbindung zu GND.
dann müsste ich den Isoliert auf die Busbars klemmen was gäbe es hierfür für Möglichkeiten?
Welches Board würde für diese Anwendung reichen?
Kannich die kabel des sensors mit den anderen vom BMS(Gleichspannung bis 48V Ströme bis 2A) führen oder könnte dies zu störugnen führen?

Nochmal:
Hast Du das Datenblatt Deines gewünschten Sensors gelesen?
Oder anders: Was liest Du da geheimnisvolles.

Über die Verdrahtung mach Dir keine Sorgen, bevor Du nicht sicher bist, dass Du auch das verwendest, was Du möchtest.

Für so was nimt man sogenante Zungen NTC diesind extra dünn mit fas sofortiger Reaktion.
Suche nach 10K Zungen NTC

Also ich hab im Datenblatt gesucht aber diese Information nicht gefunden daher hab ich mal ChatGpt gefragt der dann meinte das der Metallische eine Verbindug zu GND hat.
EIgentlich habe ich noch keine Sensor Präferenz aber ich dachte an den weil ich hier mit wenig Kabel pro Pack durchkomme!

Wenn ich mit NTC arbeite habe ich halt mehr Kabelaufwand weil wenn ein Pack z.B 4 Snsoren bekommt mässte ich hier jeden einzeln verkabeln

Welche Information?

Das ist richtig.

Erklähr mir bitte wie das zusammenpaßt.

Grüße Uwe