Elektromobilität

Tesla

Nachdem meine Frau den Fiat nicht mehr aus der Hand gibt. Darf gerne ein weiteres E Auto einziehen.

Ein gebrauchter Tesla 75D mit Stahlfeder Fahrwerk, ohne Schiebedach, Stoffsitze aber mit Autopilot 2 .

Fiat 500E

Eine neues E-Auto muss her.

Der Fiat 500E ist in Mexiko geboren, in Kalifonien aufgewachsen, nach Holland entführt und hat nun ein neues Zuhause gefunden. Schönes schnelles Auto mit ca: 120 km Reichweite.

BMS läuft

Nach einigen Fahren, hab ich die Zellen durchgemessen. Die Schwankungen waren zwischen 3,114V und
1,342V. Vollständig leer.
Es muss also das BMS irgendwie laufen. Also habe ich nach Wochen einen neuen Anlauf genommen die CAN Module zu laufen zu bekommen. Mit hohen bitpro sekunde Raten sah ich zumindest zwei Module, dann wieder nicht. Den entscheidenen Tip gab mir Hanno mit seinem Z3. Das habe ich ausprobiert und es nun zum laufen bekommen.
Mehr hier auf diesem Thread: http://26373.foren.mysnip.de/read.php?567,363662,377821#msg-
377821.
Am Wochenende habe ich mich dann weiter ums Haus gegraben und ein Kabel 5×2,5mm² und zwei Steuerleitungen 1,5mm² versenkt. Idee ist alle Elekronik im Schaltkasten zu haben und aussen nur das Ladekabel. In den Sicherungsschrank kommt neben den Sicherungen ein Drehstrommesser mit Wattmeter und ein Drehstromschütz mit einer 12V Spule die dann das Ladekabel freischaltet. Zur Steuerung denke ich über einen Arduino Nano im Hutschienengehäuse nach. Könnte funktionieren.
Vor allem sehe ich dann im Haus, ob und wieviel geladen wird. Bei unseren Wintern nicht ganz unwichtig… Mehr wenns fertig ist.

und noch leiser

Trotz des wechseln der Dämpfer gab es noch ein zweites Quietschen. Das kam aus dem Traglager des Federbeines unten. Das ist nun auch weg; erst einmal durch Nachschmieren, ich werde es aber wohl noch mal auswechseln.
Dann habe ich mir noch eine Tageszulassung geholt und bin zum Porsche Zentrum gefahren um dem Problem des ABS Fehlers näher zu kommen. Nach einer Schrecksekunde warum man denn den Motor durch einen Elektromotor ersetzt, ergab das Auslesen des ABS das ihm das CAN Bus Signal des Verbrennungsmotors fehlt. Das ABS ist ein Bosch 5.7 was auch ins Motormanagement eingreift, Porsche schlägt vor auf 5.3 zurückzurüsten… Oh je
Dann bin ich auf eine Waage gefahren: Vorderachslast 600kg, Hinterachslast 750kg. Mit 1350kg ist der Wagen somit nur 15kg schwerer als Serie. Es fehlt aber noch der Ersatzreifen.

Es wird leiser

Ein paar Neuigkeiten. Die Tankuhr funktioniert nun exakt. Ein paar Einstellungen am Emus und SOC und Tankuhr passen ziemlich gut. Komisch eigentlich. Es gibt ja keine Verbindung zur Batterie. Ich denke es wird aus der Einstellung 200Ah errechnet zusammen mit dem Strommesser.
Ich kämpfe seit längerem damit Daten vom EMUS und Curtis via MAX 232 Chip an den Arduino zu bekommen. Es funzt nicht. Keine Ahnung warum. Ich habe versucht die Daten mittels 232/USB Kabels auszulesen, aber auch dort keinen Erfolg. Keins von zwei Kabeln funktioniert.
Ob dieser Niederlagen, habe ich dann erst mal die quitschenden Stossdämpfer vorne ausgewechselt. Diese reine mechanische Arbeit ist dagegen simpel.
Nun aber ist das Auto leiser.
Es gibt noch einen Fehler des nicht funktionierenden ABS. Dazu dann noch ein USB OBD2 Kabel besorgt, um den Fehler zu lokalisieren oder zu löschen, aber auch das bekomme ich nicht zum laufen. Ach waren das noch schöne Zeiten mit RS232 Schnittstellen!
Dann möchte ich noch meine Lademöglichkeit, von einem provisorisch verlegtem Kraftstromkabel etwas sicher machen. Dazu muss ein Kanal ums Haus gegraben werden in das ein Erdkabel verlegt werden muss. Anstrengend.

Niederlage und Erfolg liegen doch so eng beieinander…

Es ist einiges passiert. Zuerst habe ich die Heizungsteuerung nochmal überarbeitet bekommen (siehe letzter Post).
Dann habe ich die kaputten CAN Module des BMS zurückbekommen. Eingebaut, und sie funktionieren immer noch nicht. Inzwischen kenne ich schon vier Umbauer mit mittelschweren Problemen mit den EMUS BMS. Also egal, und erst mal ohne BMS weiter.
Dann habe ich das Arduino mit dem Hauptdisplay eingebaut. Es hat inzwischen 2 serielle Eingänge für die ich einen MAX232 verwende, der mir die Signale in Arduino verständliche TTL Signale umwandelt. Sobald ich die Signale vom Curtis gelesen bekomme, gibts auch ein wenig Code und Bilder.
Dann habe ich angefangen an der TÜV Doku zu arbeiten. Als Basis dient das TÜV Merkblatt 764.
Zusätzlich brauche ich auch eine Rettungskarte, die ich an die Rettungskarten der aktuellen Porsche Hybrid angelehnt habe. Schon komisch ein 3 seitiges Dokument!, wer liest sich das denn im Rettungsfall durch? Und was nützt ein Dokument im Auto, in dem dann steht, dass wenn das Fahrzeug im Wasser versenkt ist, an der Karrosserie Hochstrom anliegen kann? Wenns sein soll…
Zu guter letzt dann Kurzzeitkennzeichen besorgt und gefahren! Gestern 10 km bis ich liegenblieb mit leeren Batterien. 157Ah nachgeladen und heute dann 98km weit nicht gerade langsam über Landstraßen geräubert. Alles funktioniert. Die Steuerelektronik der Servolenkung habe ich auf abschalten ab 80km eingestellt analog der ECE R79 für Lenkungen. So fährt es sich auch richtig gut.
Zwischenzeitlich zeigte auch die Tankanzeige was an. Hierzu ist bei den modernen Tankanzeigen an einem Kabel 5V (hier orange) am anderen (lila) geht das Signal dann zum Instrumentencluster. Das BMS direkt anschließen ging nicht, aber Vehikelfranz gab mir den Tip einen NPN Transistor dazwischenzuschalten also orange in den Transistor lila raus aus dem Transistor und das BMS an den Emitter. Das geht.
Am nervigsten ist ein quitschendes Federbein. Beim Verbrenner würde das wahrscheinlich kaum auffallen, so aber hört es sich wie eine schlecht geölte Kutsche an.
Dennoch es fährt, mal sehen was noch mit der Reichweite geht…
Update es geht einiges! Gestern habe ich endlich vollgeladen, dann heute insgesamt 80km
gefahren. 1/3 Autobahn mit 130km/h, 1/3 Landstraße mit 100 und 1/3 Stadt mit 60km/h. Batterie war
danach noch 40% voll, also ca. 130km Reichweite wahrscheinlich.

Heizungssteuerung

Mittig zwischen der plus und minus Taste die LED

Die Heizungssteuerung sieht bei den meisten Umbauten so aus, dass ein Schalter das Heizelement über ein Relais einschaltet. Heizung ist nötig, auch bei diesen Temperatutren um die 30°C, sonst gibt’s keinen TÜV. Da der Boxster ja eine Klimaautomatik
hat (aber keinen Kompressor mehr) wollte ich die nutzen. Hierzu gibt es zwei sinnvolle Signale: Zu Ersten das Feedback Signal des
Heizungsklappenmotors mit 0,5-4,1V und Zweitens das des Lüfters. Beide sind bei Zündung aus 0V.
Die Kiste mit der Heizungssteuerung ist relativ leer- Da geht doch was!
Also hab ich ein Arduino Nano besorgt, der über 12V mit Strom versorgt wird.
Die Signale gehen an zwei Analogeingänge. Pin 13 geht an eine Flachled, für die ich in der Blende einen kleinen Schlitz gefräst habe. Der Digitalausgang geht an ein 5V Relais mit 180Ohm und schalte dann 12V an das Kilovac Relais. Das wars.
Dann ein Programm geschrieben, das prinzipiell folgendes macht: Wenn die Heizungsklappe etwas auf ist und der Lüfter mindestens auf Stufe 3 läuft, schaltet sich die Heizung ein. Ansonsten ist sie Aus was sie mindestens 10sec ist. So wird vermieden das Sie ständig hin- und herschaltet. Aus den Analogsignalen mittele ich um auch hier ein Glättung zu erzielen.
Hier das Programm:
Update: Hier ein neues Programm, mein Bruder war der Meinung, dass Befehle wie delay() nur was für kleine Kinder sind, daher hier in seiner überarbeiteten Version incl Tiefpassfilter der Signale. Funktioniert auch…

/*
Heater control for Boxster
on Arduino Nano/ fits inside HVAC Control
D Plug is Black
D15: Ground
D 9: Switched 12V ignition
B Plug is Red
B12: Actuation Fan
B13: Checkback Signal Temperature Flap (Cool 4,1V / hot 0,5V)
Output Pin3 on relay actuating a Kilovac 200
Output Pin13 an LED
By Christian Schulz 31.7.2013
eboxster.blogspot.com
*/
int CheckbackFlap = 0; // Input checkback Flap
int ActuationFan = 1; // Input B12 Actuation Fan
int heater = 3; // pin for the heater Relay max 40mA!
int led = 13; // Pin for control LED
float Flap; // define FlapValue
float Ventilation; // define Ventilation Value
int FlapLimit = 650; // Limit when heater may turn on (flap is open)
670 zu niedrig
int VentilationLimit = 855; // Limit when Ventilation is high enough for
heating 870zu hoch 880 zu n
float DtLPFVentilation = 0.5; // Filterconstant for ventilation (0 = No
Filter; 0.99 = very Smooth)
float DtLPFFlap = 0.5; // Filterconstant for Flaps
unsigned long dtDeactiveAfterHeat = 0; // Marks Timestep after witch Changes in
Heater are possible
int dtNoActionAfterHeating = 10000; // Milliseconds
void setup() {
/* declare pinmodes/ pinMode(heater, OUTPUT); // declare the heater as an Output pinMode(led, OUTPUT); // declare the LED as an Output Serial.begin(9600); // for adjustment readout / initialize all variables/ Flap = analogRead(CheckbackFlap); // initialize Flap for smooth StartUp of LPF Ventilation = analogRead(ActuationFan); // initialize Ventilation for smooth StartUp of LPF dtDeactiveAfterHeat = 0; // initialize timer ( 0 = changes are possible directly after startUp) DtLPFFlap = 0.5; // initialize Filterconstant for Flaps (0 = No Filter; 0.99 = very Smooth) DtLPFVentilation = 0.5; // initialize Filterconstant for ventilation (0 = No Filter; 0.99 = very Smooth) } void loop() { /*read sensorsvalues and filter */
Flap = lpf(analogRead(CheckbackFlap), DtLPFFlap, Flap); // readout Flap and
average over LPF
Ventilation = lpf(analogRead(ActuationFan),DtLPFVentilation,Ventilation); //
readout Ventilation average over LPF
Serial.print(„Flap = “ ); // for adjustment readout
Serial.print(Flap);
Serial.print(„/ Ventilation:“);
Serial.println(Ventilation);
if (millis() >= dtDeactiveAfterHeat) // Prevent any Changes for 10000ms
after heater was turned off
{
if (Flap < FlapLimit && Ventilation > VentilationLimit) //
{
digitalWrite(heater, HIGH); // turn heater on
digitalWrite(led,HIGH); // turn LED on
}
else
{
digitalWrite(heater, LOW); // turn heater off
digitalWrite(led,LOW); // turn LED off
dtDeactiveAfterHeat = millis() + dtNoActionAfterHeating; // reset timer
}
}
}
float lpf(int data, float filterConst, float filteredValue){
/*
Simple LowPassFilter
data = Data input
filterConst = TimeConstant for LowPassFilter (Value Should be between 0 and 1)
0 = No Fiter
1 = Very Smoth Filtering
FilteredValue = Filtered Value from last Timestep (not nesseary to be flaot
but more accurate)
*/
if (filterConst > 1){ // check to make sure filterConst is in range
filterConst = .99; // Lowest filtering
}
else if (filterConst <= 0){
filterConst = 0; // No Filter
}
filteredValue = (data * (1 – filterConst)) + (filteredValue * filterConst);
return filteredValue;
}

Das funktioniert soweit ganz gut. Man muss halt aufpassen wenn man die Daten ausliest, ich habe das fast nur mit ausgeschalteter Zündung gemacht. Wer weis was da passiert…
Die Parameter der Schaltpunkte müssen noch mal überprüft werden, da es die letzten Tage nie unter 27°C war. Sieht soweit gut aus, und regelt auch. Bezüglich der Heizleistung kann ich das noch nicht einschätzen, da die PTC’s bei den Temperaturen jetzt maximal 5A „ziehen“, was etwas über 600W entspricht.

Abdeckung Kofferraum hinten

In den Kofferraum hinten habe ich nun ein Finder 12V Schütz eingebaut welches die 130V des DCDC Wandlers schaltet.
Es hat einen kleinen Schalter ein/aus /Auto. Bei Ein läds, bei Aus nicht, bei Auto läd es über die bisherige
Steuerung.
Das habe ich so einbaut, das der Schalter rausguckt. Die Abdeckung selber ist eine Sperrholzplatte auf die ich eine kleine Vertiefung für die Beleuchtung eingebaut. Alles dann mit Lautsprecherbespannstoff bezogen. Die Platte ist verschraubt, damit sie nicht werkzeuglos entfernt werden kann, wie in der ECE Norm R100 vorschrieben.

Er fährt!

Viele viele Kleinigkeiten galt es zu lösen. Die Fehler in der Controllerverschaltung waren einfach. Der Kontakt zum Controller gelang dann nur mit dem Curtis Programmer.
Das Kilovac Relais läuft nicht zusammen mit dem Curtis. Keine Ahnung wie andere das lösen, Jack Rickard benutzt den ja. Also hat Heiko Fleck mir ein Albright Schütz geschickt.
Letztendlich lief dann gestern Abend der Motor. Noch ein Relais ablötet, damit er auch Rückwärts fährt, runter von den Böcken und um 10h abends über die Feldwege! Sehr sehr gut! Ich habe immer noch Gänsehaut, wenn ich daran denke.
Jetzt gilt es noch das Laden sauber zu lösen. Auch die Kabel zu fixieren. Es fehlen noch die Schläuche zur Pumpe der Wasserkühlung für den Controller. Aber hey- Ich habe Feuer gemacht!

BMS läuft, Controller läuft, kleinere Problemchen, wird aber…

Nachdem ich nun Ersatz für die beiden defekten CAN Module bekommen habe, läuft auch das BMS Modul. Mit der Schnittstelle zum Tacho bin ich auch weiter. Dank Vehikelfranz‘ Hilfe habe ich eine mögliche Lösung gefunden. Das muss nun aber noch verlötet werden,
wozu aktuell die Zeit fehlt. Kommt also noch. Sobald sich eine funktionierende Lösung auftut, werde ich die auch posten. Nicht funktioniernende habe ich nun genug, würden hier aber nur zur Nebelbildung dienen.
Die Stromversorgung zum BMS muss ja ständig laufen, tat sie auch. Das Auto schaltet aber nach 2 bzw. 5Tagen viele Verbraucher aus, darunter auch den Kreis fürs BMS. Darauf musste ich erst kommen. Jetzt hängt es über eine 2A Sicherung direkt an der Batterie.