Translate

26 April 2012

Nochmal neue Funktionen in der Franzbox

An Alle, die jetzt schon ungeduldig auf eine der "ganz neuen" Franzboxen warten:

Ich habe jetzt auf Bernds Vorschlag hin noch eine ganz neue Funktion in
der Box untergebracht:

Eine Anzeige der Spannung der Bordbatterie (das gabs schon mal, aber ich wollte es in
die BMS-Einheit auslagern)

Aber wirklich neu ist jetzt eine Überwachung der Batterie in Verbindung mit einem
timergesteuerten Schaltausgang bei akuter Unterspannung der 12V Bordbatterie,
um diese dann ein kleines Bisschen nachzuladen.

Wenn jetzt die Spannung der Bordbatterie unter 11V sinkt, dann schaltet die Box
für ca 10 Minuten den DC-DC-Wandler ein, und lädt die 12V-Batterie ein wenig nach.

Ich musste das alles möglichst einfach gestalten, um Speicherplatz zu sparen.
Also vorerst kein neuer Menuepunkt und keine Konfigurationsmöglichkeit.

Das Signal geht nur direkt vom PortC.2 auf den bisher freien 14-Pol Steckverbinder
den ich für solche Sachen sowie für die serielle Schnittstelle vorgesehen habe
nach "Draussen"!

Wers nicht braucht steckt nichts an!  Wers braucht steckt ein Bandkabel an,
und steuert mit dem Signal einen N-Kanal Mosfet an, der wiederum
die Spule eines Relais nach GND zieht. Ein Schalter in der Plus-Leitung der Spule
kann das System ein oder ausschalten.

zusätzlich zur Spannungsanzeige kommt noch ein kleiner Kommentar
über 14,4V "zu hoch"
12 -14,4V  "ok"
12- 11V  "zu tief"
unter11V und dann für  weitere 10min "lade nach"
Das bedeutet,dass der Schaltausgang aktiv ist
Wer das System nicht aktiviert oder gar nicht eingebaut hat kann das
auch als Aufforderung  nachzuladen interpretieren ;-)

Nachtrag 04.Mai.2012
Das hätte ich beinahe noch vergessen reinzuprogrammieren:
Wenn die  Nachlade-Bedingung eigentlich erfüllt ist,
aber die Fahr-Akkus auf "Tiefentladen" stehen,
(nicht verwechseln mit der "leer" - Meldung bis -5% oder so... )
dann darf dieses System natürlich nicht einschalten, bzw muss sofort abschalten
in  dem Fall wird dann " no Power!" angezeigt.
(mir ist nichts besseres eingefallen mit max 10 Zeichen incl. Leerzeichen )
...so weit sollte es sowieso nicht kommen,
und dann gehen eh alle Lichter aus.... inclusive der Franzbox....

Bernd hat das Problemchen, dass ihm der Controller im Standby die sehr kleine
Bordbatterie nach ein paar Tagen leer saugt, wenn der Controller
nicht vollständig abgeschaltet ist.
Man könnte jetzt sagen, dann soll er ihn doch abschalten,
aber das ist in manchen Situationen nicht gewünscht,
z.B. wenn Fehlermeldungen gespeichert werden sollen
und noch ein paar andere Situationen,
die ich jetzt gar nicht lange erklären möchte,
das kann er dann mal selber machen.

Ich habe die Spannungsanzeige ziemlich stark gedämpft, so dass nicht gleich jeder
Stromimpuls den Wert springen lässt.

Die BMS-Funktion ist auch weiterhin noch im Programm drin, und weil ich die
Meldungen der Batterieüberwachung in der zweiten Zeile anzeige ist das derzeit
auch nur bei abgeschalteter BMS-Funktion in Betrieb bzw funktionsfähig.

Das dürfte aber niemanden wirklich stören, da es bisher noch kein betriebsbereites BMS
für die Franzbox gibt, aber der Ordnung halber möchte ich darauf hinweisen.
...und wenns ein BMS gibt, dann wandert die Überwachung der Bordbatterie
wieder dort hin!Nicht zuletzt auch, weil ich keine ordentlichen Anschlüsse mehr frei habe

Ich muss nochmals um Entschuldigung bitten, dass noch niemand eine
"neue" Franzbox bekommen hat, aber ich habe in diesen Tagen derart viele andere
Dinge zu erledigen, die einfach nicht verschiebbar sind.

Abschliessnd kann ich aber sagen, dass der derzeit seit Wochen im Testbetrieb
laufende Prototyp wunderbar funktioniert, und ich damit sehr zufrieden bin.

Michael hat das ältere Gerät jetzt schon ziemlich lange in Betrieb, und es
hat sich grundsätzlich sehr gut bewährt.

Vielleicht fällt ja noch jemandem ein weiteres Feature ein,
das ähnlich einfach zu integrieren ist.

.........ja ja, wer hätte das gedacht, was da nach und nach alles an neuen Funktionen
dazugekommen ist, seit ich die Idee hatte, den Strom am Drehzahlmesser
anzuzeigen.(und nichts sonst!)

Das hätt ich beinahe noch vergessen:
wenn der Standby erkannt wird, aber gerade noch Strom gemessen wurde,
(es wird nicht ganz so häufig die Ausgabe aktualisiert, wie gemessen wird)
dann fährt die Nadel des DZM jetzt gedämpft nach Null.
Im Zeitalter der Drehzahlmesser mit Schrittmotor ist das nicht so wichtig,
aber den alten Spuleninstrumenten tut es nicht gut, ungedämpft in den
Nullanschlag zu fallen. Diese Funktion ist eher eine Spielerei, wenn
der Strom ausgeschaltet wird, hilft keine Dämpfung. die müsste
im DZM drin sein, z.B. ein kleiner Kondensator am Messwerk

und noch ein paar kleine Bugfixes....
in der letzten Zeile blieb Ahh statt Ah stehen, wenn SOC von negativ
nach positiv wechselte, also wenn über 100% entnommen wurden
und dann wieder nachgeladen wurde, wegen der Verschiebung durch das - Zeichen
das ist jetzt auch behoben .........(war gar nich ganz einfach, weil der Rest der Zeile
an fester Position steht, und somit ein zusätzliches Leerzeichen im vorderen Teil
das Display hätte flackern lassen..........)

ebenso wie eine weitere Sache, und zwar wenn gnadenlos überladen worden wäre.
auf mehr als 128% ,also jenseits aller Sicherheitsabschaltungen, dann kam es zu
einem Überlauf einer Variablen und es wurde statt "Üeberladen"  "Tiefentladen" angezeigt.
(ohne weitere Folgen) dies ist der Ordnung halber jetzt auch behoben,
obwohl dieser Betriebszustand eigentlich niemals auftreten hätte dürfen.

wenns weiter nichts ist.......
solche Sachen findet man oft erst sehr spät!

Nochmal Nachtrag 4.Mai 2012:
Ich werde eventuell doch noch eine Funktion reinsetzen, die ich aber ganz gewiss
abschaltbar mache, weil sie mir ein bisschen suspekt ist, aber die "Konkurrenz"
hat das auch drin, und manche Leute möchten das haben, aber ganz ehrlich,
ich mags eigentlich nicht : eine automatische Nullpunkteinstellung für den
Stromsensor beim Reset. Das Hauptproblem ist halt, dass man nicht in allen
Situationen sicherstellen kann, dass gerade dann kein Strom fliesst.
und wenn doch, dann ist die Messung falsch.........

Nach dem Reset, wenn ohnehin quittiert werden muss, hätte ich noch eine Zeile
im Display frei, da könnte ich den bisherigen Wert bzw Sollwert und den
aktuellen Wert aus dem Messwandler bzw dem AD-Wandler anzeigen.

z.B.: ADC:513 S:512 auto
bzw. ADC:513 S:512 man.

So hätte man dann zumindest eine minimale Kontrolle über das was als Nullpunkt
gesetzt wird.

Um nicht allzuviel umprogrammieren zu müssen werde ich es in etwa so machen wie
auch schon an anderer Stelle, dass man im Menue den Sollwert auf Null stellen kann,
und ein Sollwert 0 bedeutet, dass der Abgleich automatisch erfolgt.
(und zwar beim Bestätigen nach dem Reset bzw beim Auslösen eines Reset
durch langen Tastendruck.) Wenn der alte Wert gespeichert werden soll,
so als Hinweis für Veränderungen und als Kontrollwert,
dann brauche ich nochmal einen Wert mehr im EEprom, der dann auch bei jedem
Reset überschrieben wird, aber daran solls jetzt nicht scheitern.

Derzeit wird der Nullpunkt im Menue eingestellt, dazu wird der Istwert
dort angezeigt, und der Sollwert ist auf diesen Wert zu stellen....und so ist das dann
bis auf weiteres eingestellt, und als Kontrolle hätte man die Anzeige auf 0A
wenn nichts entnommen wird. Den Istwert beim Restart automatisch als Sollwert
zu übernehmen ist kein großer Aufwand, und die Anzeige beim Restart
ist auch nicht viel Auifwand

.........was haltet Ihr davon?????  Bitte teilt mir Eure Meinung mit!
wenns keiner haben will, dann spare ich mir das, und erkläre das derzeitige
Programm für "fertig" und merke mir das einfach mal für spätere Updates vor.

Der Atmega 168 ist mittlerweile zu 95% "voll", ein paar Dinge sind sicher
noch zu optimieren, insbesondere das Menue belegt sehr viel Platz, und das ginge
noch zu reduzieren, indem ich  die Texte und Meldungen
als Variablen bzw Strings ablege und so nur noch ein Unterprogramm für die
Anzeige hätte statt bisher eigene "locate" und LCD-Befehle je Menuepunkt.

Das hatte ich schon mal so, aber es ist dann etwas unübersichtlicher und schwerer
umzuprogrammieren, aber ab etwa sechs oder acht Menuepunkten  spart man dann Platz.

.........aber mittlerweile gibts auch den Atmega 328, und wenns so weitergeht
ist der bald auch nicht mehr teurer als der Atmega 88, so wie derzeit
der 88er und der 168 mit 3,55€ gleich viel kosten..........

Ausblicke in die Zukunft:  An den Grundfunktionen der derzeitigen Franzbox,
soweit es die AH-Zähler Funktionen betrifft (nicht das BMS )
werde ich nicht mehr viel verändern, da ist dieses einfache System jetzt an einem Punkt
wo Grenzen auftauchen, und alles was man noch draufpacken würde, hätte
zur Folge, dass es kompliziert wird. Und gerade das galt es zu vermeiden.

Da entwickeln gerade einige andere Leute sehr interessante Dinge........
Der Trend der Zukunft geht da viel mehr in Richtung Touchscreen
und Bordcomputer mit GPS und Reichweitenberechnung und solchen Sachen,
Datenübertragung per Bluetooth und Integration der Bedienung von
Charger, BMS und Motor-Controller in ein einziges Gerät.
Da sollten sich die Hersteller (und auch die Bastler...) mal lieber auf
vernünftige und genormte Datenübertragungsprotokolle einigen,
und wenns denn sein muss per CAN-Bus..... wobei ich erst kürzlich mal mit
MODBUS zu tun hatte, und das auch schon hochinteressante Möglichkeiten
erschliesst. (und viel einfacher zu entwickeln ist, weils ja nur eine Norm für die
Datenprotokolle einer RS 485-Schnittstelle darstellt, also ein billiger (26Cent!)
Baustein an den seriellen Port des Atmega sowie noch ein Steuerpin definiert
für Sende/Empfangsumschaltung, der Rest ist Programmsache.......)

Wie gehts weiter mit meinem BMS ?????????

Hmmmmmm.........tja, wenn ich nur mehr Zeit abzweigen könnte.........
jetzt bin ich wieder mal derart eingespannt in verschiedene Sachen, die ich mir
so nicht ausgesucht habe, dass bis Ende Mai gar nichts passieren wird......
Das BMS ist eigentlich schon prima im Versuch gelaufen, Datenübertragung per
RS232, Trennung per Optokoppler etc verschiedene Versionen mit
einem Attiny25 pro Zelle oder ein Atmega pro vier Zellen, das alles lief schon!
Aber: Ich bin der Meinung, dass möglichst zeitgleich gemessen werden muss,
auch wenn man es dann erst ganz gemütlich einliest und auswertet, und deshalb
habe ich alles über den Haufen geworfen und einen ganz neuen Ansatz
gestartet, den man dann trotzdem mit der bisherigen Auswertung kombinieren kann.
Hinzu kommt noch eine andere Idee, die Messmodule miteinander zu
verbinden, aber das wurde schon erklärt.
Hauptpunkt ist ein Mess-Befehl, der ( fast ??) zeitgleich an alle Meßstellen geht,
und eine normale Messung auslöst, ohne dass der Wert sofort abgeholt wird.
Wie zeitgleich, das ist abhängig von der Anbindung der Messmodule........
Mir gefällt die "Daisychain-Methode" sehr gut, weil dann nur ein Signaldraht
von Messmodul zu Messmodul ginge, falls man mit Einzelmodulen je Zelle
arbeiten würde. bis da ein Lesebefehl durch ca fünfzig Module flitzt
vergeht etwa eine halbe Sekunde, damit kann man auskommen,
das Rauslesen der Daten sollte in drei bis vier Sekunden gehen, also auch noch
im zeitlichen Rahmen. Wenn man aber ein zentrales Gerät plant,
dann kann man auch einen Optokoppler je Zelle und Signalrichtung
einsetzen, und wirklich zeitgleich messen oder man nimmt die entsprechenden
Spezialbausteine die für solche Anwendungen auf dem Markt sind.
....ich fange schon wieder an,mich zu wiederholen....
kurz und bündig: mein derzeitiger "Favorit" ist ein ATtiny24 je Zelle
per "Daisychain" verbunden, so kann ich ohne Optokoppler
die Daten von Zelle zu Zelle durchreichen und am Ende kommt ein
String aus so viel Zeichen wie Zellen raus in dem die Spannung
jeder Einzelzelle codiert ist. ( warum ein ATtiny 24 und nicht ein 25er,
das ist eine Frage der internen 1,1V Referenz und der zusätzlichen
Aus und Eingänge für Quarz, LEDs PWM für die Shunts etc......)

bis demnächst mal wieder!

Franz






Kommentare:

  1. Danke fürs einbauen ;) Die Bordbatterieüberwachung ist ne sehr nette Erweiterung. Somit sollten die Probleme mit der alten 12V-Bleibatterie Geschichte sein! VG, Bernd

    AntwortenLöschen
  2. Hallo Franz
    Sorry, ich hatte auf Deinen Eintrag bei mir noch gar nicht geantwortet. Ich musste erst mal noch so viel Autoarbeiten an Elektra machen, dass ich gar nicht mehr weiter gekommen bin. Leider haben die Bremsscheiben keinen Schlag, sondern die ganze Welle...Da muss ich noch mal ran.
    Jetzt bin ich gerade damit beschäftigt das (leider erweiterte) Kühlerloch in meiner Motorhaube zu schließen. Karosseriebau Lehrgang im DIY Crashkurs. Mal sehen was dabei raus kommt.)
    Wenn Dein Angebot noch steht, würde ich sehr gerne Deine Box testen.
    Beste Grüße
    Mathieu

    AntwortenLöschen
  3. Na klar!
    Aber bei mir war in den letzten Wochen derart viel
    los, vom Todesfall in der Familie bis Familienfeiern und
    Umzug der Firma in einen anderen Gebäudeteil das komplette
    Programm, so dass ich beim besten Willen keinerlei Zeit
    dafür abzweigen konnte. Sorry, aber ging einfach nicht.

    Es gibt jetzt fünf fast fertige Franzboxen der
    neuesten Generation, und ich würde mich sehr freuen,
    wenn die mal so richtig in der Praxis arbeiten dürften.

    ......und dann sehen wir mal weiter.......
    Ich schaffs wohl nicht, die Dinger auch noch in "Serie"
    zu bauen, aber notfalls mach ichs als "open Source"
    öffentlich..... Du wirst das Ding lieben!
    Nicht als hochgenaues Messgerät,(das ist es nicht) sondern als
    einfach konfigurier- und integrierbare Verbrauchsanzeige.
    .......und auch bei Sonnenlicht ablesbar ;-)
    ich bin vor allem gespannt wie meine Box sich im direkten
    Vergleich mit Deinem AH-Zähler bewährt!

    nächste Woche solltest Du eine bekommen wenn nicht wieder
    was unerwartetes dazwischenkommt.
    Franz

    AntwortenLöschen