Environment Sensor

Neues Bastelprojekt :wink:

Da ich für meine Batterie neben dem BMS auch nach weiteren Schutzmaßnahmen gesucht habe, habe ich mich letztendlich entschlossen, eine eigene “Überwachungseinheit” zu entwickeln.

Kommerzielle Systeme zur Ansteuerung von Ventilatoren und Brandschutzklappen waren mir ehrlich gesagt nicht “gut genug” und viel zu teuer.

Szenario: Meine LFP-Batterie ist in einem großen “Gehäuse” untergebracht, i.e. ein Metallrahmen rundum mit Kunststoffplatten verkleidet. Bevor es zu einem flash-over kommt, sollen Sensoren das Ausgasen, Druck- und Temperaturerhöhungen und eine Rauchentwicklung erkenne, dies an das BMS und einen potentialfreien Kontakt melden.

Ich bin gerade im Schaltungsdesign und plane:

  • Spannungsversorgung über BMS (5V) oder alternativ extern USB-C Connector
  • TGS2600 zur Messung von H, Ethanol, Isobutan, CO, Methan)
  • BME280 zur Messung von Feuchtigkeit, Druck, Temperatur
  • PMS7003 zur Messung von Rauch (mit kleinem Ventilator und Lasersensor)
  • STM8S003

Die Anbindung an das BMS soll über i2c erfolgen. Der STM8 arbeitet als i2c Slave um die Daten des PMS7003 und BMS280 bereit zu stellen. Ich werde nach Implementierung gerne weiter berichten und bin für Anregungen natürlich gerne zu haben.

1 „Gefällt mir“

Cooles Projekt!

Allerdings besteht das Gasgemisch von LFP-Zellen beim Thermal Runaway (TR) im Anfangsstadium aus einem hohen Anteil von H2 und auch CO2. Letzteres Gas ist einfach/günstig zu monitoren, Wasserstoff Sensorik ist teuer.

Aus dieser Studie

Nun ist die Frage, ob noch vor dem kompletten und schlagartigen Ausgasen die Cut-Off Membran Spuren von Gas durchlässt ?


Die vorläufer-Effekte eines TR sind hier abgebildet:

D.h. du brauchst auf jeder Zelle einen Temp-Sensor mit hoher Auflösung, die Software muss Temp-Anstiege in Relation zu den anderen Zellen setzten können.
Das können m.W bisherige BMS'e nicht, sie erfassen nur ob die Temperaturen im "grünen Bereich" sind.

Einbrüche in den Zellspannungen müssen erfasst und in Relation zu den anderen Zellen gesetzt werden.

Danke für dein Interesse und den Link !

Ja die Einzelzellen-Temperatur und Spannungsüberwachung macht mein BMS ohnehin. Ich halte es auch für unwahrscheinlich, daß in meinem Fall der sehr geringen Ent/ladeleistung überhaupt jemals ein Zwischenfall passiert aber wenn der Aufwand vertretbar ist … ein Gaswarngerät mit akustischem Alarm ist mir jedenfalls zu wenig.

Dieses Zusatzboard soll ein zusätzlicher Schutz sein, um ein Ausgasen oder ein bevorstehendes Thermal runaway zu erkennen.

Ich hatte erst den TGS2616-C00 am Schirm, der selektiv auf H reagiert aber der TGS2600 ist auch auf H sensitiv ?!

Der TGS6812-D00 hingegen erfordert eine wheatstone bridge und ist vergleichsweise ungenau.

Im Grunde genommen soll die Schaltung das BMS abschalten (was vermutlich zu diesem Zeitpunkt auch schon erfolgt ist) und über einen Alarmkontakt ein temperaturbeständiges Gebläse (USV) aktivieren. Ein zertifiziertes F300 habe ich kein vernünftiges gefunden (315mm und jenseits von 2000€ + elektronische Zuluftklappe ums gleiche Geld :frowning: ).

Editedit: Ich habe mich zuvor schon ein wenig über die Auflagen für Batteriespeicher eingelesen. Angesichts der Tatsache, daß man daneben in der Garage einen 110kWh Chinesen (Li-Ion oder LFP) parken darf weltfremd bis Affentanz !

Next Edit: Hmm, ein CO2 Sensor wäre der CDM7162-C00 (360-5000ppm) aber mit ~140€ vielleicht nur optional …

…edit: Werde doch einen STM32F103 verwenden :slight_smile:

Wenn du willst, mach das Projekt im gleichen unterVerzeichnis wie @nimbus4 sein BMS.

“BMS Eigenentwicklung”

Da kannst du von uns begrenzte Moderator rechte bekommen, um deine Posts und Fäden selbst zu organisieren. Ein bischen Ordnung und sortieren usw.

@nimbus4, stört dich das?

Sorry ich dachte das Thema passt hierher. Jedenfalls habe ich mal die Sensoren bestellt und bin gerade beim PCB-Design. Wenn das Projekt konkreter geworden ist macht es vielleicht Sinn, es breiter darzustellen oder Interessenten Platinen etc. zur Verfügung zu stellen.

Bei vielen Dingen meines Lebens ist das Thema Sinnhaftigkeit im Hintergrund und “Das mach ich mal” überwiegt. Vielleicht erweist sich dieses kleine Projekt auch als völlig sinnlos … mach ich trotzdem :wink:

Natürlich passt es hierher. Kannst du machen wie du willst. Wenns mehrere Fäden werden, ist halt eine eigene Unterkategorie schöner. Und mit moderatorrechten kannst du einfacher dokumentieren. Kannst auch ne eigene Unterkategorie kriegen..

Sag nur wenn du was haben möchtest.

1 „Gefällt mir“

Nein.

Es gibt auch günstigere CO2 Sensoren, ich verwende für Raumluft den MH-Z19 (PWM oder seriell), im airq (Luftqualitätsmessgerät) ist auch der TES0903(?) verbaut.
Ich habe allerdings nicht verglichen, welche speziellen Anforderungen Du hast.

Ich hätte nicht gedacht, dass da überhaupt CO oder CO2 nennenswert entsteht, das verbinde ich mit Verbrennung von organischem Material; hatte mich aber noch nie mit den Elektrolyten auseinandergesetzt. Für die reine Erkennung von irgendwas Austretendem würde ich sagen, dass es fast jeder MOX (VOC) Sensor tut, im geschlossenen Gehäuse gibt es sonst kaum Quellen dafür(?). Die Sensoren haben alle eine Querempfindlichkeit für H2, teuer wird es, wenn man spezifisch nach einem Gas sucht. Ich hatte mich aber nur für Raumluft damit beschäftigt und bin bei CO2 als viel besserem Indikator gelandet.
Relativ günstige VOC Sensoren wären noch BME680 und CCS811, bei irgendeinem hatte ich Kennlinien für die einzelnen Gase gefunden.

Als weitere Idee hätte ich noch IR-Temperaturmessung beizutragen. Je nachdem wo die bereits vorhandenen Sensoren sitzen, könnte diese auf heiße Kabel/Leiter schneller reagieren. Bei kleinen Hitzeinseln dürfte es doch etwas dauern, bis sich die Lufttemperatur entsprechend erhöht. Allerdings bildet z.B. der MLX90614 ja doch auch wieder eine Art Mittelwert über die erfasste Fläche und die unterschiedlichen Emissionsgrade machen es auch nicht gerade leichter. Noch mehr Bastelei wäre eine IR Matrix, damit könnte man eher irgendwelche Hotspots erkennen. Ich habe nur keine Ahnung, wie man da irgendwelche sinnvollen Schwellwerte finden und die Funktion testen möchte.

Danke für deine Überlegungen.

Ich versuche bei der Platine recht offen zu bleiben um später auch andere Sensoren zu unterstützen. Was ich so gelesen habe sind H und CO2 die ersten Spuren nachdem sich das SIcherheitsventil geöffnet hat. Dabei wird aber im Fall der Fälle wohl jegliche plötzliche Veränderung in der Luftzusammensetzung signifikant sein und Sensoren mit Querempfindlichkeit ausreichend sein. Testen werde ich das dann mit Wasserstoff, CO2, Rauch und punktuellen Temperaturerhöhungen an einzelnen Zellen. Das PMS7003 Modul mit seinem kleinen Ventilator wäre alleine vielleicht schon ausreichend aber ich mache auf mein Board mehrere I2C, ADC und UART Ports um dann bei Bedarf auch andere Sensoren zusätzlich zu unterstützen.

IR Matrix und Wärmebildmodule wären sicher spannend aber für mich dann doch ein overkill. Ich starte mal mit dem PMS7003, BME280 und TGS2600. Angesteuert soll neben dem BMS dadurch nur ein akustischer Alarm + ein Hochleistungsgebläse (allerdings ohne F300 Zertifizierung).

Cortex ist eine gute Wahl, welches Layout benutzt du ? Vielleicht können wir etwas bei den Ruuvi Sensoren abgucken? Die haben einen relativ ausgefallenen Nordic uC mit BT aber es gibt die gesamte Infrastruktur drumrum schon bis zur Handy App für den Alarm. Bei Victron erscheinen sie seit Neuestem automatisch in der Device List.

So wie ich mit bekommen habe, ist der Austritt von CO2 etwas problematischer zu bestimmen weil hiervon sowieso schon relativ viel (400ppm) in der Luft vorhanden ist. Natürliches Methan ist mindestens 2 Zehnerpotenzen weniger vorhanden, weshalb ein VOC Sensor vermutlich schon das Beste ist.

Die Geräte der Feuerwehr sind vor allem wegen der Kalibrierung auf einzelne Gase so teuer. Bei der Akkuüberwachung kommt es auch gar nicht auf die Feststellung einer absoluten Gasmenge an, so daß eine aufwendige Temperaturkompensation weitgehend ignoriert werden kann. Es geht nur darum, einen in kurzer Zeit auffälligen Anstieg der Konzentration festzustellen, welche eben stattfindet wenn ein Ventil öffnet.

Naja die STM32 liegen in meiner Bastelkiste und mit dem bin ich auch so einigermassen auf Du und Du. Layout ? Eine eigene PCB die ich für Löterixe gerne teile. Alarmierung über Wifi oder BT habe ich nicht vorgesehen aber es gibt zwei potentialfreie Kontakte, die im Alarmfall geschlossen werden. Der Anschluß an mein BMS erfolgt über i2c als slave device, das den Fehlerzustand dann weiter kommuniziert (MQTT/Home Assistant) nachdem es abgeschalten hat. Einen kleinen ESP zu verwenden wäre natürlich auch möglich. In meinem Setup aktiviert der Alarmausgang einen (über USV gespeisten) Hochtemperatur-Ventilator made in PRC. F300 ist unleistbar !

Das mit der spezifischen Erkennung sehe ich genauso wie du aber ich versuche möglichst beliebige Sensoren anschliessen zu können (ADC, Uart, i2c, PWM). Wie oft ich den STM32 schlafen schicke um Strom zu sparen und SensorLifetime zu verlängern weiß ich noch nicht.