Sonntag, 4. August 2013

A lot going on in parallel

Finishing the shop/garage
The old floor of the wood shed was in a very bad shape and you certainly could not place a car nor a car lift on it without arriving one floor deeper with the whole equipment. So a new floor had to be laid by the carpenter. In the area of the lift we took a 5cm thick triple layered wood panel - it's sturdy enough. The two columns of the lift were placed directly onto the 20cm thick wall of the cellar.
Car lift problems
After the car lift was mounted, it worked - but only for 1sec, then
the fault current protection (FI) cut the power - once even a bright and loud spark shot out of the control box (relais). After measuring the resistance of the control box towards ground and then the motor phases it became evident that there's a ground leakage in the direction of the motor. Opening the wire-box at the 30 year old motor quickly revealed to problem: rotten wires and isolations touching the box frame. I replaced the worst connections and fixed the isolation problem with heat shrink tube. And voila, the lift works and raises the car in half a minute :)

A first glance under the car
Once the car was safely up in the air, I was able to take a first look at what's expecting me. Not all too bad - only some rust on the frame which needs to be taken care of one day.
Interesting is though that all parts of the frame are labeled FoMoCo. After having read about Volvo using the frame of a Ford Mondeo, it quickly became evident what the meaning of that is: Ford Motor Company.
Removing the engine
Now that the shop is ready, it's about time to take out the internal combustion engine. First the air filter, the ECU, some tubes and then the wheels, the cat, some covers and the lower control arms to be able to remove the axles. Well, these control arms.. you should be able to simply pop the rubber out of their joints (near the wheel). But no greasing, no force, nothing I could figure out made this %*"*-things pop out. Not even the original Volvo removal tools (lent from a friendly garage nearby) were of any help. I even attached a 7cm thick pipe to the arm and with two persons (2x80kg) hanging at the end of the pipe we were only able to bend the pipe! So I gave up and removed the control arms on the other end - where they're attached to the frame with three rusty and very hard to remove screws. But it worked and I was able to remove the axles from the wheel disc.
Unfortunately I pulled a bit too hard on the short axle to get it out of the gear-box and broke something in it (150.- repair costs). But I'm happy to report that almost everything is disconnected from the engine now and it is supported by two screws and the coolant tubes. Almost ready to be taken out ! :)

Lightning strike
While I was working in the shop one night, a thunderstorm approached. As one strike was quite close (about 1km away), I quickly unplugged the laptop and stereo. A few seconds later: white flash and kaboom at the same moment. "That was close!" I thought. Well, it was: it hit our house 5m next to the shop where my wife and kids were sleeping. Result: cover cap of the heating temperature sensors flew 10m away from the house, all fault current protectors triggered, 24-port switch: gone, stereo: gone, sat system: gone, phone distribution box: fried (copper was vaporized from circuit board !). Hopefully not a bad sign but rather the provisioning of enough electricity. But: My little boy (5y) slept like a baby and did not wake up at all - astounding ! :)

Coding for GEVCU
Also a lot of coding was done for the GEVCU project (General Electric Vehicle Control Unit). Collin Kidder laid a great base in the first version of the ArduinoDue program. But the motor controller and throttle was hard coded and referred to everywhere in the code. I introduced handler classes for the CAN bus and the Due's three timers to add some abstraction and de-couple the components. Now all components/devices which are added to the GEVCU can register themselves as observers to the CAN bus or a timer and receive triggers from their respective handlers.
Also a first implementation for a CAN based throttle was added based on my previous prototyping (see previous post).
All this coding was necessary to lay a solid base where I can start implementing the motor controller for the Brusa DMC5 inverter. The GEVCU will in the end query the original ECU of the car for the requested throttle and then convert it into a torque request for the inverter. Of course it will also perform all the necessary steps to get the the devices into an operable state and also handle stuff like regen.
Jack Rickard and his evtv team are currently rigging up a VW Kübelwagen (the "Thing") which is already equipped with a DMOC inverter and a Siemens motor (from Azure Dynamics). During the EVCCON 2013 which is about to start next week, they're trying to get it running with the GEVCU (which is still in alpha phase - so not everything might work out as expected).


  1. Looks like you have been keeping busy getting the floor and lift working, good luck on the build.


  2. Yes :) And sometimes I felt torn between coding for GEVCU so it gets ready until EVCCON or working on my car. But now I think I've found a reasonable approach: on weekdays work on the car, on Sundays work on the code (it's less noisy :) Thanks for the support and compliments on your blog!