Wednesday, September 30. 2009
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. 2009
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. 2009
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. 2009
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.
Friday, September 11. 2009
Wednesday, September 9. 2009
Last week, Neil Fraser CERTZ came and had a look at my engine mounting arrangement. I want to rubber mount the motor while hard mounting some cells in front and the inverter on top. He recommended diagonal 38.1x2.5mm roll cage tube between the suspension towers and the front corners to provide a location for the motor mounts. A structure to hold the inverter and cells will be attached to these new members too. The cells will need to be mounted such that they can break away in a crash.
The tube is extremely strong, it comes in 5.5m lengths and has a bit of flex when it's that long, but boy, when you cut off an arm sized piece, there is no give to it at all. He also recommended 3mm steel plate to reinforce the subframe where the tube joins. As conic sections are somewhat new to me, I've made up a dummy tube -- the threaded rod lets me adjust the length while I get the end profiles correct. When it's time to make the real thing, getting things right first time will be more critical. The taped on cardboard shows the shape of the spreader plates.
We also discussed putting another layer of cells in the boot and this won't be a significant problem. The cell frame will be made with 50x25x3mm angle iron and hung off 3mm C sections welded to into the boot floor/wheel arch corner. I'll probably connect it to the firewall too. I was only able to get 50x50x3 angle iron, so I may well be ripping it down with the grinder.
Tuesday, September 8. 2009
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.
(Page 1 of 1, totaling 7 entries)