Pages: [1] 2   Go Down
Author Topic: suche rat für herstellung einer (rest)reichweitenanzeige für elektrofahrzeug  (Read 1646 times)
0 Members and 1 Guest are viewing this topic.
Offline Offline
Newbie
*
Karma: 0
Posts: 8
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Hallo Forumsgemeinde,

ich bin seit einigen tagen damit beschäftigt eine (rest)reichweitenanzeige für ein elektrofahrzeug herzustellen - leider mit wenig erfolg!

das problem ist folgendes:
im Fahrzeug ist eine art "tankuhr" verbaut die leider sehr ungenaue werte ausgibt, d.h. sie zeigt an -akku halb voll- dann kommt man an eine leichte steigung und schwupp, zeigt die akkuanzeige -leer- an... die anzeige sind 7 balken.

jetzt möchte ich eine reichweitenanzeige in km haben und das ganze ohne den effekt der fehlinformation -halb voll- bzw akku noch ausreichend geladen und dann im nächsten moment - akku leer -

Ich habe schon ein paar grundkenntnisse über zusammenhänge in elektronik und auch schon einfachere übungen mit dem arduino uno erfolgreich durchgeführt

ich habe mir das ganze so vorgestellt (alles nur theorien eines anfängers mit arduino und elektronik)

an dem ladegerät oder batterie-manager (balancer??) messe ich während des ladevorgangs die Wh mit denen der Akku geladen wird, also eine messung der energiemenge die in die batterie kommt, dieser wert wird gespeichert, und mit einem fest hinterlegten wert (maximale akkufüllung=maximal mögliche reichweite bei idealbedingungen) verglichen.... so komme ich zur restreichweite bei fahrtantritt wenn der akku vom ladegerät entfernt wird.
jeglicher strom der aus dem akku entnommen wird, soll erfasst werden und von der restreichweite abgezogen werden. nebenbei soll immer wieder mit der maximalen akkufüllung verglichen werden und so die reichweite ständig neu berechnet werden. faktoren wie energieverbrauch von schweinwerfer, hupe, griffheizung, blinker usw. sollen somit auch abgedeckt sein.

nun soll auch noch das unvorhersehbare zusammenbrechen des akkus bzw der anzeige eliminiert werden.
es sind viele faktoren die vermutlich dazu beitragen.
die hauptfaktoren sind die stark ansteigende last des antriebsmotors wenns bergauf geht, sowie winterliche temperaturen die die akkuleistung stark beeinträchtigen
die optimale akkuleistung wird in einem temperaturbereich von ca. 22-25°C erreicht. bei -5°C ist nur noch die hälfte davon verfügbar- die erfassung könnte man mit einem temperatursensor am akku vornehmen und den messwerten einen koeffizienten zuteilen, welcher dann mit in die berechnung einfließt. wie ich den lastanstieg in die rechnung einfließen lassen kann weiß ich nicht... evtl über einen mittelwert der zuvor zurückgelegten strecken. der mittelwert müsste sich aus gespeicherten und hinterlegten werten errechnen - die anzeige würde so erst nach einiger zeit "genaue" werte ausgeben

weitere faktoren wären noch durchschnittsgeschwindigkeit, beschleunigungsphasen (stadtverkehr), luft- und rollwiederstand, bereifung, fahrergewicht bzw. gepäck, die man auch noch einfließen lassen müsste um ein genaueres ergebniss zu bekommen.

die ausgabe erfolgt über ein LC Display oder eine 2-stellige 7segmentanzeige.

wie denken die fachmänner über mein gedankenwirrwarr und wie schätzt ihr die erfolgreiche realisierung ein? ich bin für jegliche hilfe, tipps, kritik oder sonstige beteiligung dankbar

ich hoffe es war nicht allzu verwirrend  smiley-confuse

viele grüße steffen
Logged

Forum Moderator
BZ (I)
Offline Offline
Brattain Member
*****
Karma: 270
Posts: 21844
+39 349 2158303
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Von welchem Akkutyp reden wir?
Die Restenergie im Akku zu ermessen bzw zu errechnen ist nicht so schwierig. Wie Du sagst brauchst Du nur den Lade bzw entladestrom zu messen. Schwierig ist es den zukünftigen Energieverbrauch zu erraten uns so die km abzuschätzen. Du weißt ja nicht ob Du noch viel Energie verbrauchen wirst oder wenig. Du kannst höchstens eine Durchschnittsreichweite mit dem Durchschnittsenergieverbrauch der letzten 1-5 Minuten errechnen.
Viele grüße Uwe
Logged

Offline Offline
Newbie
*
Karma: 0
Posts: 8
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

hallo uwe
vielen dank für deine tipps!
es handelt sich um einen LiPo Akku mit 74V (laut datenblatt) und 80V im Display bei vollem Akku, 40 Ah (laut datenblatt), 400 A (laut datenblatt)
habe das noch nicht genau nachgemessen..

das stimmt leider.. die funktion "hellsehen" gibts leider nicht :-) aber ich denke zu einer halbwegs genauen schätzung könnte es schon reichen?
 
kann ich diese durchschnittswerte während man fährt vom Arduino ausrechnen lassen? oder sollte man eine art kennfeld haben aus dem sich Arduino seine werte rauszieht?

viele grüße steffen
Logged

AREA COLOGNE
Offline Offline
Edison Member
*
Karma: 21
Posts: 1141
I am 1 of 10 who understands binary
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Wieso so kompliziert mit dem abschätzen der Reichweite. Du nimmst den aktuellen Verbrauch und mittelst den mit den also der neuer Wert des "Stromverbrauch" hat nur 20% Einfluß auf den Stromwert den du bisher hast somit machen kurze aussreisser nichts aus.
Alles was du an E-Technik im Auto anmachst schlägt sich im Strom nieder. Du musst natrürlich Positiven und Negativen Stromfluß auswerten können, da du ja beim Bremsen eine "Bremsenergierückgewinnung" hast, es ist also alles nur rechnerei.
Also immer nur rechnen mit Energie menge die du benutzt wieder zurückbekommt und beim Laden reinsteckst.
Gruß
Der Dani
Logged

So ist das Leben:
Manchmal bis du das Denkmal, manchmal die Taube!

Offline Offline
Jr. Member
**
Karma: 1
Posts: 60
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Hallo,

bei einem LiPo Akku lässt sich die Restkapazität Anhand der lastfrei gemessenen Akkuspannung ermitteln. So kann man sich das Strommessen sparen und Temperratureffekte müssten somit schon berücksichtigt sein.

Edit:
Zellenspannung:
Nennspannung einer Lipo-Zelle = 3,7V (bei Dir 20 Zellen = 74V)
Ladeschlussspannung einer Lipo-Zelle = 4,2V
Entladeschlussspannung einer Lipo-Zelle = 3,0V

Je nachdem wie gut deinen Fahrzeugelektronik ist, musst du die genauen Werte für die Ladeschlussspannung (ca. 84V bei Dir, Auto Vollgeladen) und Entladeschlussspannung (ca. 60V bei Dir, Fahrzeugelektronik hat abgeschalten) ermitteln, und während des fahrens möglichst bei wenig oder garkeiner Last die Akkuspannung mit dem Arduino messen, daraus lässt sich dannn auf die vorhandene Energie und somit Reichweite schliessen.
« Last Edit: February 03, 2013, 04:32:40 am by fckw » Logged

Offline Offline
Newbie
*
Karma: 0
Posts: 8
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

hallo dani!
vielen dank auch an dich für deine ideen!!
eine energierückgewinnungsvorrichtung ist im fahrzeug nicht verbaut.

sollte ich mir alle rechenvariablen als kennfelder igendwie irgendwo ablegen und arduino holt sich dann seine faktoren aus diesen?
oder gibt es zb die möglichkeit den wert der aktuell entnommenen last "einzulesen"?

wie und wo kann ich die alten verbrauchswerte speichern? und wie kann ich dann wieder auf diese zugreifen?

viele grüße steffen
Logged

AREA COLOGNE
Offline Offline
Edison Member
*
Karma: 21
Posts: 1141
I am 1 of 10 who understands binary
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Zunächst eine Frage wie gut bist du in Elektronic? Du musst für eine vernünftige Messung sowohl Strom als auch Spannung des Akkus messen können. Und da wir hier von 72Vdc reden ist dies hier auch schon gefährlich.
Ich würde alles auf Wattsekunden rechnen Allso Strom*Spannung und den Faktor Zeit. Du Speicherst dir die Wh die der Akku voll hat mit einer Kurve zu Temperatur da er bei kälte weniger hat.
Gruß
Der Dani
Logged

So ist das Leben:
Manchmal bis du das Denkmal, manchmal die Taube!

Offline Offline
Newbie
*
Karma: 0
Posts: 8
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

erstmal wieder vielen dank an alle, die gefühlten 1000000 fragezeichen in meinem kopf werden langsam weniger dank eurer hilfe!

@fckw das mit dem messen ohne last ist ein guter ansatz, das problem ist hier denke ich, das es in der praxis dann nicht ungesetzt wird... wenn ich auf ne landstraße fahr und es kommt eine steigung, müsste ich ja kurz stehenbleiben und alle verbraucher ausschalten um eine lastfreie spannungsinfo zu erhalten!?

@dani wie gut ich in elektronik bin? hmm ich würde mich als laie mit etwas erfahrung bezeichenen?! habe schon etwas erfahrung in KFZ-elektronik.. uri und pui kenne ich noch von der berufsschule.. bin aber defi kein profi!!

das >70Vdc ein gewisses gefahrenpotential haben ist mir klar, keine sorge!

wie ich den strom bzw spannung messe bin ich mir noch nicht ganz sicher.. evtl ist es möglich über die vorhandene bordelektrik diese werte abzugreifen?! ansonsten mit einem gewöhnlichen Voltmeter die batt-spannung messen wie ich diesen wert dann in den arduino bekomme ist mir allerdings ein rätsel,

den strom hmm.. für erste versuche wollte ich eine strommesszange benutzen und später dann einen verbauten sensor der die gleiche funktion wie eine strommesszange hat, aber wie ich diesen wert ins arduino bekomme kann ich ebendfalls nicht sagen..
 smiley-confuse

wo speichere ich diese Wh zu Temperatur- kurve? wie kann ich dann auf sie zugreifen?
Logged

Offline Offline
Jr. Member
**
Karma: 1
Posts: 60
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset


@fckw das mit dem messen ohne last ist ein guter ansatz, das problem ist hier denke ich, das es in der praxis dann nicht ungesetzt wird... wenn ich auf ne landstraße fahr und es kommt eine steigung, müsste ich ja kurz stehenbleiben und alle verbraucher ausschalten um eine lastfreie spannungsinfo zu erhalten!?

Nein du musst nur die Spannung messen wenn du kein Gas gibst, also der Motor nicht antreibt. Da du die verbleibende Reichweite ermitteln willst, werden so zusätzliche Verbraucher (Licht,Heizung, Radio etc.) und Temperatureinfluss, mitberücksichtig. Die gemessene Akkuspannung ist linear zum Energiegehalt der Zellen.

Logged

Germany S-H
Offline Offline
Faraday Member
**
Karma: 160
Posts: 3166
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

das problem ist folgendes:
im Fahrzeug ist eine art "tankuhr" verbaut die leider sehr ungenaue werte ausgibt, d.h. sie zeigt an -akku halb voll- dann kommt man an eine leichte steigung und schwupp, zeigt die akkuanzeige -leer- an... die anzeige sind 7 balken.

jetzt möchte ich eine reichweitenanzeige in km haben und das ganze ohne den effekt der fehlinformation -halb voll- bzw akku noch ausreichend geladen und dann im nächsten moment - akku leer -

Deine Akkuanzeige ist (wahrscheinlich) völlig korrekt und liefert Dir die eindeutige und sicherlich korrekte Information:

Der Fahrzeugakku ist defekt und muss erneuert werden!

Zu Risiken und Nebenwirkungen von Akkus in Fahrzeugen und vorzeitig ausfallenden Akkus befrage einen langjährigen Elektrofahrzeugbesitzer oder die Firma Boeing!

Akkus halten unter Einsatzbedingungen im Fahrzeug niemals auch nur ansatzweise so lange wie vom Hersteller angegeben und unter optimalen Laborbedingungen ausgemessen.
Logged

Offline Offline
Newbie
*
Karma: 0
Posts: 8
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

der akku ist nicht defekt, das fahrzeug ist quasi neu.... aber da beim hersteller dieses problem bekannt ist wurde mir das mitgeteilt. ich möchte das geplante system vorbeugend im fahrzeug installiert haben.
Logged

Offline Offline
Jr. Member
**
Karma: 1
Posts: 83
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

hallo

hast du die möglichkeit über das bms den momentanen Strom und die einzelnen zellenspannungen auszulesen?

wenn deine Tankuhr nur die Spannung erfasst ist der Effekt normal, da die zellenspannung unter last einbricht, insofern ist der Ansatz den wh Durchschnittsverbrauch zu erfassen und mit den eingespeisten wh zu vergleichen pfiffiger.

wenn du keine einzelnen zellenspannungen über das bms angezeigt bekommst, solltest du das evtl. in deinem projekt mit berücksichtigen
Logged

Germany S-H
Offline Offline
Faraday Member
**
Karma: 160
Posts: 3166
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

der akku ist nicht defekt, das fahrzeug ist quasi neu....

Das sind die Boeing Dreamliner auch allesamt, trotzdem wurden an den 49 ausgelieferten Maschinen schon zig defekte Akkus ausgewechselt und eine handvoll ist sogar geschmolzen oder haben zu brennen angefangen, so dass die Maschinen momentan von der Flugsicherheit gegroundet wurden.

aber da beim hersteller dieses problem bekannt ist wurde mir das mitgeteilt.

Defekte an einem Neufahrzeug sind ein Gewährleistungsfall.
Auch ein defekt gelieferter neuer Akku.
Da muss der Verkäufer für Abhilfe sorgen und nicht der Käufer!

ich möchte das geplante system vorbeugend im fahrzeug installiert haben.

Also Du möchtest zusätzlich zum vom Hersteller eingebauten System zur Ladezustandsüberwachung einwandfreier Akkus noch ein weiteres System, das auch den Ladezustand defekter Akkus überwachen kann, weil Du gerne mit defektem Akku fährst und nicht überraschend liegenbleiben möchtest.

Zunächst mal zum Hintergrund, wie die Hersteller-Ladeanzeige an einem einwandfreien Akku-Pack funktioniert:
Der Akku-Pack besteht aus einer Reihenschaltung verschiedener Akku-Zellen, die Gesamtspannung ergibt sich aus der Summe der Einzelspannungen. Bei LiPo-Zellen beträgt die Spannung einer vollen Zelle 4,2 Volt, die einer entladenen Zelle 3,0 Volt. Dein Akku-Pack könnte 18 solche Zellen besitzen, die Gesamtspannung beträgt zwischen 18*4,2= 75,6 Volt (voll) bis 54 Volt (leer). Und danach ist die Ladezustandsanzeige gemacht, die zeigt bei 75,6 Volt voll und bei 54 Volt leer an.

Voraussetzung dafür, dass es so funktioniert, ist, dass alle 18 Zellen dieselbe Kapazität und denselben Lade- und Alterungszustand besitzen.

Jetzt zum defekten Akku-Pack: Im defekten Akku-Pack hat mindestens eine der 18 Zellen eine viel geringere Kapazität als die übrigen 17. Sei es durch einen Fertigungsfehler, vorzeitige Alterung oder einfach nur schnelleren Verschleiß als bei den übrigen Zellen. Die Spannungen können dabei weitgehend identisch zu einem einwandfreien Akku sein (4,2 V voll, 3,0 V entladen), so dass anfänglich das Pack "voll" anzeigt. Ich gehe im Folgenden mal davon aus, die defekte Zelle im Pack habe nur halbe Kapazität.

Beim Entladen passiert nun erstmal eine ganze Weile nichts spektakuläres, sondern mit zunehmender Entladung sinkt die Spannung fast genau so wie bei einem einwandfreien Akku-Pack. Nachdem die halbe Kapazität des Akkus leergefahren wurde (also die halbe Kapazität der einwandfreien Zellen, aber die volle Restkapazität der defekten Zelle), beträgt die Spannung an 17 Zellen noch 3,6 Volt ("halb voll"), und eine Zelle ist leer bei 3,0 Volt. Gesamt 17*3,6+3= 64,2 Volt. Das liegt nur ganz geringfügig unterhalb der Spannung eines einwandfreien halbvollen Akkus (18*3,6= 64,8 V).

Aber jetzt kommt es: Obwohl nur eine Zelle quasi "leer" ist, liefern die anderen 17 natürlich noch reichlich Strom, und den jagen sie rücksichtslos durch die defekte Zelle, die nichts mehr hergeben kann. Die defekte Zelle wird dabei "umgepolt" und die 17 anderen Zellen versuchen, die defekte Zelle "mit umgekehrter Polung aufzuladen". Und das ist dann der Zeitpunkt, an dem die Spannung zusammenbricht und wegen des stark ansteigenden inneren Widerstands praktisch keine Leistung mehr aus dem Akku entnommen werden kann.

Das heißt: Wenn auch nur eine einzelne Zelle im Akku nur noch halbe Kapazität hat, dann hat auch das gesamte Akku-Pack kaum mehr als die halbe Kapazität, die man noch entnehmen kann.

Und daraus ergibt sich auch die Lösung Deines Problems: "HALBVOLL IST DAS NEUE LEER!"

Zur Erläuterung: Wenn quasi bei Anzeige "halbvoll" die Akkuanzeige auf "leer" springt, dann ist "halbvoll und leer" quasi identisch. D.h. sobald die Spannung nur noch 64,2 V beträgt, ist der defekte bzw. in seiner Kapazität reduzierte Akku insgesamt als leer zu betrachten.

Statt der serienmäßigen Anzeige, die 75,6 Volt als voll und 54 Volt als leer anzeigt, brauchst Du Dir für den defekten Akku nur eine Anzeige zu bauen, die 75,6 Volt als voll und 64,2 Volt als leer anzeigt.

Du mußt nur beachten, dass die Spannung korrekt immer nur "bei unbelastetem Akku" korrekt gemessen werden kann. Also z.B. die korrekte Messung immer beim Ampelstopp machen, wenn der Motor abgeschaltet ist. Im laufenden Betrieb müßte die Anzeige "grob geschätzt" aus der letzten Messung weiter interpoliert werden, z.B. per "Laufzeit des Motors mal mittlere Leistungsaufnahme", so dass es auch beim Fahren eine Anzeige für den Fahrer gibt, wenn er längere Strecken ohne Stopp zurücklegt.

Wenn Du stattdessen annimmst, dass der Akku vollkommen in Ordnung sei, dann wäre es so, dass das Befahren der Steigung in jedem Ladezustand gleich viele Striche in der Ladeanzeige kostet, d.h. wenn eine bestimmte lange Steigung auf der Strecke 10% der Akku-Gesamtkapazität kostet, dann müßten diese 10% Ladezustand bei fast vollem Akku von 80% auf 70% erfolgen und genauso von 40% auf 30%, aber nicht von 40% auf 0%. Das würde nur dann nicht hinhauen, wenn der letzte Ampelstopp schon sehr lange zurückliegt (wie dargestellt, kann der genaue Ladezustand nur bei unbelastetem Akku exakt ermittelt werden), die Ladeanzeige während der Fahrt also relativ lange mit ihren Fortschreibungs-Schätzungen des Ladezustands arbeiten mußte und demzufolge schon bei Erreichen der Steigung einen völlig falschen (optimistisch überhöhten) Wert angezeigt hat.

Wenn Du keine Möglichkeit hast, die tatsächliche Akku-Kapazität Deines Fahr-Akkus von neutraler Stelle prüfen zu lassen, dann würde ich als erstes Arduino-Projekt einen Akku-Kapazitätstester empfehlen. Also ein Gerät, das einen vollgeladenen Akku mal unter Messbedingungen bis zur Entladeschlußspannung entlädt und dabei Strom und Spannung in kurzen Zeitabständen mitloggt und die gesamte Leistungsabgabe des Akkus in Wattsekunden aufaddiert, so dass am Ende verglichen werden kann, wieviel Kapazität tatsächlich aus dem geladenen Akku gezogen werden konnte - in wieviel es hätte sein sollen. Wenn ein Akku weniger als 70% seiner Nennkapazität aufweist, dann ist er Schrott.
« Last Edit: February 03, 2013, 11:04:13 am by jurs » Logged

Offline Offline
Newbie
*
Karma: 0
Posts: 8
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

hallo,
kann mir jemand sagen wie ich daten aus einem txt oder excel dokument in den arduino einlesen kann?
ich habe aus einem datenlogger mehrere parameter in einer zeile stehen (aus dem datenlogger txt).
die messungen erfolgen ca. alle 1/10 sek, pro messung habe ich eine neue zeile.
es wird ca 60 min lang gemessen deshalb möchte ich durchschnittswerte ermitteln, damit die datensätze etwas weniger werden.

würde mich sehr über eure unterstützung freuen
viele grüße
steffen
Logged

Germany S-H
Offline Offline
Faraday Member
**
Karma: 160
Posts: 3166
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

kann mir jemand sagen wie ich daten aus einem txt oder excel dokument in den arduino einlesen kann?
ich habe aus einem datenlogger mehrere parameter in einer zeile stehen (aus dem datenlogger txt).

Arduino mit einem SD-Kartenschacht ausstatten, Daten auf eine mit FAT-Dateisystem formatierte SD-Karte kopieren.

SD-Kartenschächte gibt es einzeln zum Selbstverlöten, oder sind steckfertig auf diversen Shields als Micro-SD Kartenschacht bereits enthalten (z.B. auf einem Ethernet-Shield).

Der Arduino kann die Daten dann von FAT-formatierter SD-Karte einlesen und verarbeiten, aber nur, wenn man selbst ein entsprechendes Auswerteprogramm für Arduino schreiben kann.

Summen und Durchschnittswerte zu bilden zwecks Datenreduktion dürfte mit Arduino kein Problem sein. Wenn Du wildere Werke vorhast, bietet es sich eher an, die Daten in eine Tabellenkalkulation zu importieren (MS-Excel, Open Office Calc) und damit zu verarbeiten. Das ist insbesondere für Leute ohne gute Programmierkenntnisse auf Arduino die streßfreiere Variante.
Logged

Pages: [1] 2   Go Up
Jump to: