Wednesday, September 30. 2009Noise Silenced
My previous attempt at averaging out the charging noise involved taking 10 ADC readings, but at the weekend I learnt that this is unlikely to work -- 10 ADC readings is very quick and my noise is at 50Hz. I'm now averaging for 160ms or thereabouts. Averaging 8 cycles of the noise is probably much more than I need, but it solves my problem nicely. It is causing problems with the scan time. The firmware is continuously monitoring the cell voltage, and when a request comes in it will have to wait for any ADC averaging that is already going on before waiting another 160ms for a new reading to respond to the request. Since we take two ADC readings to measure the voltage, and we also ask for the shunt current, it takes about 10 seconds to scan 10 cells (I now have two BMS boards up on the bus). I will improve this in two ways, the first is to cache the most recnet values so that they do not need to be regenerated when a request to send them is received. The second will be to interrupt the currently executing ADC reading to return a cached value. It may be possible to do this latter change purely in the receive interrupt handler, if it isn't it will likely involve a significant design change to the firmware's main loop. The above graph shows quantisation of about 9mV. This is unexpected with so many values averaged. I will confirm the average calculations by streaming the raw data back across the bus. I'm currently running at 9600bps, I may increase to see more of the data. Charging current was between 5 and 10A. Sunday, September 27. 2009Charging Noise
I hooked up my oscilloscope and had a look at the charging noise. My scope is rather geriatric, and the calibration is poor, but for what it's worth, it was set at 200mV/division and 10ms/devision. If we trust this, we see about 250mV of noise at 50Hz (the AC mains frequency here in New Zealand). My previous attempt at filtering the noise out involved taking 10 samples and averaging them and it seems very likely that it failed because it was averaging a different part of a 20ms pulse each time. I don't actually know how long each ADC reading takes (I recall I chose the slowest ADC speed available but what that might be, I don't know). I think the easiest solution is to continuously measure the voltage in the main loop and store a moving average of many many ADC readings. When a request for the voltage arrives or the internal cell management program needs the voltage, the current value of the average calculation is returned. This reduces latency on the RS485 bus as we don't have to wait a few hundred milliseconds to average out the noise. I will have to be careful that the main loop doesn't run at some factor of 20ms as this would cause aliasing. You can also see a faint shadow below the main line, this isn't a camera artefact, but whether it's real, I do not know. It's not really obvious in the picture, but it almost looks like a mirror image of the main line. I haven't tried to filter out the 50Hz noise to see if this is some other higher frequency component.
Wednesday, September 23. 2009EVD5 BMS Charging Thunder Sky
I hooked up the EVD5 BMS to a set of 5 Thunder Sky LFP40AHA cells and did a first charge on them. These cells have been sitting for a little more than a year now, with no charging or other maintenance. I learnt several things.
Edward lent me an isolation transformer to make the PFC-30 charger safe. Without the transformer, the battery is connected to the mains and you'll get a shock if you touch it. Wednesday, September 16. 2009Strapping Cells
I picked up my packing strapper today. I chucked together 10 cells to do some BMS testing. I used black plastic end caps so it would be less obvious what's going on in the photos, I'll have some aluminium end plates made up before they go in the car. The strapper came with a big roll of this very strong green strap, hopefully it's durable enough, it certainly seems like 2 or 3 straps will restrain the cells.
The crimper (not shown it the picture above) makes a ridge that stands up on the back side of the crimp. This can be hammered over (with a suitable spreader against the cells!) in order to pack the cells closer together. Tuesday, September 8. 2009Strapping Prismatic Cells
Eva Håkansson of Electrocat and KillaCycle fame describes strapping Thunder Sky cells with straps normally found on shipping crates. I need to solve this problem too -- the cells I have already installed in the car are restrained by the sides of the battery box, but the cells at the front of the car and the cells above the first layer in the boot won't have a strong box around them. Saturday, August 22. 2009Roadster Foundry Mobile Charger
Martin Eberhard has made the Roadster Foundry Mobile Charger. This is a box of tricks which lets you connect your Tesla to a bunch of different wall sockets and the charge current is automatically limited, depending on the socket used. I need to do a similar thing for my car, but my implementation will be somewhat different because my charger is different. Also, in New Zealand I believe I will need an in-line circuit breaker. I'm told electricians are supposed to destroy any 16A caravan plug to regular 10A plug adapter cables they find without a circuit breaker. I guess this will apply to an adapter from a 32A PDL 56 plug to a regular 10A plug too. Wednesday, July 29. 2009Nice Battery Layout at the NYT
The New York Times has a story on International Battery, including a photo of a very clean prismatic cell layout (the little picture on the left, click to enlarge).
Monday, July 13. 2009Noisy PFC-30 Charger
The Manzanita Micro PFC series chargers are renown for being noisy. The graph above shows just how noisy. Charging at about 10A starts at 50 seconds and continues for about 180 seconds. Charging resumes briefly at 40A. We can see about 50mV of noise while charging at 10A, and 200mV at 40A. Currently the EVD5 firmware does not average voltage readings, I had similar noise problems using a LabJack with the PFC-30 charger and averaging was very helpful. The good news is that the BMS didn't crash. The LabJack crashed if I charged at more than 7A, while the EVD5 BMS, even with floating current sensors (I've only hooked up the voltage sense wires, the bypass circuit will come later) was happy at 40A, at least for a short time. I'll test high current more thoroughly when I've packaged enough BMS boards for the whole battery. See evd5-pfc30.tar.bz2 for the raw data. Monday, July 6. 2009Basic BMS Functionality Complete
Today I finished the software addressing functions in my BMS firmware. I had previously been working with just one cell, getting the basic commands to work. Now I send a cell address and only that cell responds. Without this, all the cells respond at the same time and make a terrible din such that you can't understand any of them. My protocol isn't exactly fancy, but is a pain to type manually, so I wrote a very primitive monitor in C. With a computer sending commands, I found that the slave processors are too slow to keep up while they are actively monitoring the cell voltage, so I had to implement interrupt driven receive and a buffer to store the incoming command until the the slave has finished looking after it's cell. The above graph shows 4 cells (my power supply only does 15V, which isn't enough for the 5th cell). All 4 cells are being charged at 350mA, and after 1000 seconds, cell 2's voltage hits 3550mV and the BMS starts to discharge that cell (i2 on the graph). The current lines appear to bifurcate because the current control is oscillating. The hardware isn't really designed to control current, I'm running a software control loop to make it do that, and it's a bit finicky. The software tries to keep the current within 50mV of it's target current, but the current control knob doesn't easily give it fine enough control to do that. Basically the program turns up the current, overshoots, turns it down, undershoots and repeats. I'll try a 100mV target next time. The graph stops because my primitive monitor program detected a protocol error and stopped. The next change with be error recovery. I expect to be hooking this up to the car and seeing what happens with the PFC30 charger in the next couple of days. Last year I made a simple BMS with a Labjack & a laptop which worked really well with my power supply but freaked out when I connected the big charger. The Manzanita PFC series is renown for injecting a lot of electrical noise into the battery. See evd5-first-charge.tar.bz2 for the raw data. Friday, June 19. 2009Tumanako BMS Development
My friend Philip had something of a setback in his electric race car project and has launched Tumanako, an open source electric car effort, in the hope of completing what couldn't be bought. I've been working on the BMS as I wasn't happy with any of the commercial offerings -- basically they were either too expensive or too opaque. When we're finished, the Tumanako BMS will provide valuable insight into the health of your battery. You won't one day get a red light and have no idea or information or history about what your battery was doing before something went wrong. I'm converting Bob's assembly firmware to C. The BMS uses PIC processors and it's been about 10 years since I last played with them. A lot has changed. I've made quite a lot of progress in the last week or so, I
The photo above shows one BMS slave board, capable of monitoring 5 cells, mounted on top of 5 A123 M1 cells in a test rig. The empty looking circuit board is a shunt board which holds the transistors to control the balancing current. The small circuit board with plugs at either end is the RS485 - RS232 converter. I don't have a photo of flashing lights and programming cables for you today, I'm sure if you try, you can imagine something approximating a christmas tree.
« previous page
(Page 2 of 3, totaling 22 entries)
» next page
|
Syndicate This Blog |