Monday, November 8, 2010

Battery Management System

Since I started driving the car, I have had two cells die.  I'm not sure what the cause of the failure is, but the cell goes to 0V but still conducts current.  Obviously, the cathode and the anode are being shorted together internally but I'm not sure if it is something I am doing by stressing the cells or if it is a manufacturing defect.  The cell doesn't explode or do anything nasty, it just doesn't work anymore.

--Side Note--

As far as terminology goes, I have found myself standardizing on what I call the battery parts when I'm explaining my project to people. In the interests of staying consistent:

Cell - 1 3.2V LiFePO4 60AH cell
Battery - 24 cells connected in series = 72V (really 80V) nominal 60AH battery
Pack - 4 Batteries connected in parallel = 72V nominal 240AH pack

--/Side Note--

So, with the idea that I need more information, I started working on my BMS.  There are some good ones out there right now, but for something as simple as measuring the voltage of each cell, keeping track of cell performance, and alerting when there is a problem, most of the stuff is in the $15/cell range.  So for my pack, that is nearly $1500 bucks.  In the interests of saving money (yea, right!) I decided to build my own.

I found a cool IC from Linear Technology:  the LTC6802.  This chip is a stackable, 12 cell battery monitor.  It was designed to work with series cells up to 1000V so my 72V pack is nothing.  But the nice thing from my perspective is that two of these guys on one circuit board will monitor one of my four batteries.

In my previous post about my year end progress, I posted a picture of the circuit board I designed for this BMS.  And here it is in real life:

It doesn't look like much in the photo, but SMD soldering is something new to me and it is harder than I thought.  Thanks to YouTube, I found some great videos of how to do it, but those guys make it seem easy.  One lesson I learned: if you are going to hand solder SMD parts, don't use the 0402 stuff.  They are TINY!! 

The next step is going to be interfacing one of my Netburner MOD5213 microcontrollers to the 6802s via the SPI bus (more stuff to learn).  Hopefully it won't take me too long but it probably will.

Thursday, September 16, 2010

Throttle Detail

I had to take the throttle out of the car because the rear motors were trying to go even at zero throttle. This is a function of the kind of potentiometers I am using. They are supposed to be 0 - 5k ohm, but actually they are ~750 ohm - 5.2k ohms. The Alltrax controllers I am using for the rear motors don't have the ability to set the dead zone on either the top or bottom of the sensor range, probably because they expect the controller to be switched off at zero throttle. However, I am using the built in monitoring functions of the controller (a big plus for the Alltrax controllers) to get the motor current, battery current, battery voltage, and controller temperature. If the controller is off at zero throttle, that information isn't available.

Anyway, I solved this issue by putting in microswitches connected to 22 ohm resistors. When the accelerator pedal is not depressed, the microswitches are activated and the 22 ohm resistor is put in parallel with the output of the potentiometer. This lowers the resistance seen by the controller to ~23 ohms, which the controller reads as zero throttle. Problem solved! Anyway, here is some video...

Tuesday, September 14, 2010

...And the test drive

I didn't get up to 65 MPH like I wanted but I did get to 62.  I'm happy with how much quieter it is compared to last September and this should make my commute all electric.


Ok, here are some videos of the stuff I have spent the last 18 months working on.

Video 1:

This is how I have laid out the old engine compartment.  Since I took out everything including the transmission, it made sense to me to put all the batteries up there; it replaces the weight of the engine keeping the car's balance and handling and it is a big hole with nothing in it.  I was trying to keep all the usable space usable and have the car look the same as when I started.  I wasn't able to get all four batteries installed there but I'm sure it would be possible if I were clever enough.

Video #2:

This is one of the front wheel hub motor installations.  In order to install the 6KW BLDC hub motors, I had to have the front struts modified.  Obviously, the car started out as rear wheel drive only so the front struts only had a shaft onto which bearings, brakes, and wheel rim were mounted.  I had to turn this around and provide a tube into which I could slide the shaft of the hub motor.  These turned out really well and I'd like to thank the guys at Hardcore Customs for a job well done.

Video #3:

I'm avoiding talking about the snowmobile clutch failure because I'm so bummed it didn't work.  But this video shows what I did to drive the rear wheels.  Basically, each wheel is driven by a D&D ES-33 motor controlled by an Alltrax AXE 7234 series motor controller via a 4:1 chain drive.  This is the same setup that I had last September that didn't have enough torque to climb up my driveway.  The 4:1 reduction is basically the equivalent of 4th gear in the old transmission and even the old ICE wouldn't have gotten up the driveway in 4th gear.  But, by adding the two 6KW motors to the front wheels, the car now goes right up the driveway!  Referring back to my post from last September, I laid out my options for how to address the driveway shortcoming and I'm proud to say that I accomplished my first option.

Video #4:

Obviously, there are still lots of things in a rough prototype state.  One of the things that is first on my list is to permanently mount the rear controllers.  This mount actually goes right above the motors, freeing up most of the trunk space.  Now, all I have to do is figure out what to do with that BIG hole where the gas tank used to be....  :-)

I think that is a good first cut overview of my progress.  Now, I'm going to go out for a test drive wearing my big EV grin and bring back some video.

Sunday, September 12, 2010

It Lives!!! For Real This Time

After nearly 18 months of working on my dream beemer, tonight was the first test drive that I really felt was successful.  I drove the car nearly 10 miles at speeds of up to 65 mph and at the end, I climbed my driveway, which was my down fall last September, without a hitch!  I am so excited.

I know I haven't been very good about updating my blog here but I've been spending every spare minute since I got the car back from Hardcore Customs out in the garage working on it.  I ran into plenty of snags, one of which ended up throwing out my snowmobile CVT idea (more on that later).  I'll spend the next couple of weeks doing cleanup and documenting everything I did including more pictures and video.  But for now, I just wanted to shout:  I DID IT!!!!

Friday, June 4, 2010

Disaster in the Gulf

UPDATE: I have learned that the Top Kill is not really an option.  Apparently, the angle that the Blowout Preventer (BOP) is sitting suggests that the casing the BOP is connected to might be damaged.  If the flow of oil was stopped at the riser and the casing failed, the oil would start flowing outside the casing, causing the sea floor to erode and leaving no method of slowing down the oil until the relief wells stopped the flow (think 50 foot hole in the ocean floor spewing oil).  Obviously this is an unacceptable risk. 

However, the top of my device could be connected to a riser like the current device and doesn't necessarily have to cap the well.  I have submitted this idea to BP and my congressman but I haven't heard anything back.

As I said in my first post, politics might come later.  Well, as I'm sure everyone is aware, a consequence of our oil addiction is playing out off the coast of Louisiana.  I have been glued to the pictures from the ROVs as they try to stop or at least slow down the oil spewing out of the broken well.  And as a tinkerer, I am astounded that the best that BP can come up with is an upside down bucket with a pipe sticking out of the top.  It obviously isn't doing much to stop the oil so in order to feel like I can do something about it, I started drawing in CAD and here is what I came up with:

My idea is to use the flange from the cut off riser pipe as the bearing surface for a series of hydraulically operated clamps around the base of bucket.  Inside the bucket is a tapered pipe that would go inside the cut off riser and as the clamps pressed down, this taper would jam into the riser pipe.  On top of this device would be a valve that could be slowly closed, at least enough to allow the "Top Kill" a chance at shutting down the flow. 

On a similar note, yesterday I watched them trying to get the LMRP ready for this current attempt.  For two hours, the ROVs f#!ked around with the hoses for what I assumed was the dispersant.  Don't they have any kind of automatic hose reels, jeez....

Friday, April 9, 2010

Year One in Review

When I set out on this project, I knew it probably wouldn't ever really be finished.  Well, here I am at the end of the first year so I wanted to review the progress and plans to date.

Energy Storage:  The LiFePO4 batteries have lived up to their billing.  They are easy to take care of and hold a lot of energy per unit weight.  My original plan called for four independent batteries supplying four independent drive systems.  So far, I have only had two drive systems so I have been tying all the packs together in parallel but that is soon to change.

What I have been working on:  I purchased Volt Blochers for all my cells and they have worked exactly like they are supposed to.  I attached the circuits to the tops of the batteries but am now questioning that decision.  There have been a couple of instances of Lion batteries catching fire during charging and the culprit may have been a disappative balancing circuit overheating, causing the battery to catch fire.  The way the Volt Blochers work is to start shunting current to a large 10 W resistor when the battery gets up to charge.  This allows the rest of the cells in the pack to continue charging without overcharging the cell that is already full.  However, those resistors can get pretty hot (I have recorded up to 130 F) so I decided to move all the Volt Blochers off the top of the cells.  I'm going to mount them all on plexiglass and then use a fan to cool them while charging.
Along with this, I have been working on my BMS.  I'm not doing anything too fancy but I found the LTC6802-1 which is designed to monitor battery stacks of up to 1000V.  The IC is designed so that you can hook them up in series, with each one monitoring 12 batteries, and communicating to the next one up the stack using SPI.  This gets aroung the issue of how to measure the voltage of an individual cell without having to worry about high common mode voltages.  I am using a Netburner MOD5270 to communicate via SPI with the LTC6802-1. Then I'll upload the data to my TS-TPC-7390 to display it.  Again, not very fancy but fun to work on.  Here is the circuit board I've designed to mount my BMS on:

Drive system:  As I posted in my last update, I have built up a modified rear transmission that is going to give me some variability in drive ratios.  I found my direct drive set up, while efficient, was too limiting when it came to real world driving.  I have yet to install it in the car because it is still at Hardcore Customs having the front end modified to accept the hub motors I found.  Here are some pictures of what they have so far:

Control system:  It seems that the first thing anyone says about my project after describing it is "If you don't have a differential, how are you going to control the the speed of the wheels when you turn?"  My standard answer is, "You don't have to worry about it.  Each wheel is not tied to any other and therefore they will spin at whatever rate they need to."  This is correct as far as it goes; the car drives fine without any direct control of the speed of the motors.  However, when going around a turn, the wheel on the inside is supplying most if not all of the power.  This limits me to half power while turning so my control strategy:

Each of the motor controllers is controlled by the throttle pedal connected to a potentiometer.  Depending on how far the pedal is depressed, a resistance is sent to the controller and that determine how much PWM will be supplied to the motor.  I thought about using a digital potentiometer controlled by a micro computer, kind of a fly by wire system but I rejected it because I don't like having to rely on a computer to make the car go (Ironic, I know).  Also, there are all sorts of failure modes that I can think of with that set up and the subsequent control system would be more trouble than its worth.  So instead, I'm going to try something inspired by the helicopter (HH-65) I used to fly.  In the mechanical control runs for the cyclic (and collective) were servo motors that could vary the length of the push-pull tubes to the rotor head.  You could fly the helicopter without these servos turned on but with them, it was easier to fly.
So, I'm going to put servos in between the throttle pedal and the potentiometers.  Then by measuring the current (power) going to each motor, I will be able to change the throttle to an individual motor to get a little better performance.  I will still be able to drive the car without this system turned on but with it, the car will be easier to drive.

Instrument Cluster:  When I removed the transmission and engine, I removed the inputs to the speedo and tach.  I'm going to replace those inputs with another micro controller (number 6...  I told you there was going to be a lot of computers in this car).  I'm going to use a Netburner MOD5213 for this one.  It is going to get RPM inputs from the motors and wheels then use a PWM signal to drive the 2 pulse/rev input to the tach.  Now this is where it gets silly....  To drive the speedo, I'm going to use a 12V servo motor with encoder to spin the same input shaft that used to be driven by the transmission.  I'll control the RPM of the servo motor using the same MOD5213 to match the speed of the rear wheels, thus giving me back my speedo.

It has been an interesting year and I look forward to making more progress in the near future.

Friday, January 29, 2010

Rear Transmission Pt 2

I got some parts back from Commercial Machine Service and put them together to see if my design would work.  Well, the addage "Measure twice, cut once" came up to bite me.  Since one of the goals of this design was to make the chain sprocket center distance adjustable, the plates that mount the motor and clutches slides along the joint between the upper and lower parts of the transmission.  Well, upon trying to put it together, I found that I made an error somewhere and the chain was too tight; couldn't even put it together.    Luckily, the joint has plenty of material and I only need about 1/8th inch.  So, after MUCH grinding to lower the shelf that the Motor/Clutch plate slides on, here is the result:

Saturday, January 2, 2010

December Update - Rear Transmission

I've been working on my transmission issues for the past month and here is what I'm going to try first....

Snowmobile CVT - Basically, since I geared the car for 60+ MPH, I set the motor/wheel ratio to 4:1 (basically 4th gear), not good for driving up steep hills. However, since my initial concept was for one motor for each wheel, I went for direct drive meaning no way to change gears, hence my problem. Here is my current solution:


I'm in the process of modifying my direct drive set up with a snowmobile CVT between the small sprocket and the motors. The CVT will will vary from 2.4:1 to 1:1 depending on torque/motor RPM giving me an effective ratio of 9.6:1 (second gear). The installation requires that the center distance of the drive (motor) clutch and the driven (sprocket) clutch be very exact. In order to fix this distance, I designed a designed a plate that will mount the motor and two clutches at a fixed distance. I looked around for available software and found a program offered by Solidworks. It is very powerful and I ended up modeling my whole transmission.

And, since I'm modifying my transmission, I'm using the opportunity to fix the center distance issue. With all chain drives, a method to tension the chain is required. Most of the time, that involves a method to change the center distance between the sprockets but I didn't initially design in a way to do that. Instead, I tried to use skateboard wheels attached to swing arms and springs to keep a constant tension on the chains but I greatly underestimated the forces, which explains my noisy drive. As the chains rotate over the small sprocket, it flops around, making a lot of noise. By putting the new motor/CVT combination on a sliding plate, I'm able to adjust the center distance up to 0.5"; it isn't much but hopefully it will be enough. Commercial Machine Service is in the process of making up my pieces so I can give it a test.

On another front, I ordered a set of front struts from a BMW 328xi. It is the four wheel drive version on BMW's 3-series sedan, the descendant of the 2002. Next step there is to try to get the struts installed in my '02 and then move towards motors on the front wheels. More on that later.