Debugging the hardware I have IDed several areas I am not happy with. In fact, overall I am not happy with almost the whole design and am l looking to improve each subsection. Here is a rundown of the changes I am looking at:
Changed out Zener diodes in overvoltage protection: The zeners just did not work for any input which has a noticeable impedance, as the Zeners themselves are incredibly leaky and caused massive signal changes – even well before their knee. This was most noticeable on the NTC problems. With its 5-10K impedance the Zeners rendered this circuit unusable. So, I have gone back to the tried-but-true two Diode approach.
Changed from Switching to Liner voltage regulator: A key challenge in being able to support the wide range of battery voltage – from 12v to 48v systems – is handling this wide dynamic range without hardware changes. The expected actually battery voltage can range from 8v to over 68v and with this massive voltage range traditional Liner power supplies can have a large amount of heat disputation (upwards of 3Watts). So I tried a Switcher – but it just is not working. It is missing its design specs, frequency of operation, ripple, etc. The datasheet cautions that ‘fine tuning’ of components is often needed to dial things in.. Well, I just do not have the experience to do that. And despite the promise of 48v being ‘normal’ in automobiles (and hence there being a wide range of ICs available to support these higher voltages), we are just not there yet. Hence the picking is slim when it comes to 48v tolerant ICs (All ICs - not just voltage regulators!). In the end I am going back to the brute-force linear regulator. I will use a simple zener/emitter-follower transistor for the pre-regulator to handle the bulk of power dissipation in 48v deployments finishing up with a proven reliable LM7805 to polish things off.
Changed FET driver chip: This support for 12v to 48v systems also has been a challenge in the FET circuit. Specifically the driver. I found the LT1910 chip which solved a TON of issues (chiefly being able to self-generator boost voltage during 100% duty cycle) and it has worked very very well. However, it will not withstand voltages that might occur on 48v systems. Specifically while equalizing, and more so, specifically while equalizing in a cold temperatures where the battery voltage needs to be higher… I wrestled with this one for a long time, as the LT1910 is such a nice solution, and it worked for all but a small corner case… And in fact, it might have been just fine, only overrating above its max rated voltage by say 5-7v or so… But. . . . . it bothered me . . . . so I have changed this design. I could not find another fully integrated FET driver like the LT1910, and instead selected a common high voltage driver chip (IRS2127 in this case, good for up to 500v - should be sufficient!). That left me with the challenge of how to support boost voltage generation with high duty cycle, specially: How to keep the FETs on while at 100% / full field… I thought about just limit field drive to say a 98% max, and that might have worked. But in the end I added an external voltage doubler to provide boost voltage. There are app notes about doing this using 555’s for this, with extra costs. In the end I thing I will be able to use a 2nd PWM pin from the Amtel CPU to drive the voltage doubler. Will see how this all works out….
Bluetooth module supplier changed: The low cost HC-05 Bluetooth module I have been using to provide simple wireless connection has been working well, and at $5 how can one beat it! Well, in fact I am a bit concerned that it does not carry an FCC certification. And in looking at Bluetooth devices that do I can clearly see extra shielding. Perhaps it is not an issue, perhaps one does not worry about FCC cert. But, I am changing the module to one that provides the same Serial emulation functionality (SPP), has the extra shielding, and carries an FCC cert (along with other countries as well) the Roving Networks RN-41. It is available at Mouser, but sadly costs $25. . . . This one I am a bit troubled by, because I think there is no really engineering risk here – it is a ‘government’ thing. IF by chance I make up a few of these to offer to others, in kit, or even some level of assembled, I worry about the FCC thing.. So – Costs Up $20 for that one. There is one advantage though, the RN-41 is higher power and likely will keep a stable connection for over 50’ or so, while the HC-05 was a lower-power Bluetooth device designed for a few feet. AND if one wants to lower costs, the same low-power level device is available from Roving networks as the RN-42, it is pin and software compatible, and its costs is around $15. So only $10 up..
Upgrading the Voltage sensor chip: Again, driven by the wide range needed to cover and the desire to not have any assembly (ala, part value selection) options to cover that. I tried a switchable pre-scaling voltage divider in front of the INA220, but that proved to be problematic – again, and impedance thing. In order to keep the power dissipation reasonable in the resister divider in a 48v system I needed to use somewhat high resister values, but that combined with the input impedance of the INA220 did not produce a stable design. TI offers an upgraded part, the INA226 which not only has improved input impedance, but also a wider voltage tolerance (it can handle 24v systems directly), AND greater resolution! So, I am going to upgrade to that part, and place a fixed voltage diver on the input to cover the range needed for 48v systems. No more switching in/out, it will just always be there. I will lose some precision with the pre-scaling, but will pick it back up with the improved resolution of the INA-226. And it looks like the expected impedance input range of the INA-226 will keep total calibration errors under 0.5%. I feel this whole thing is a bit of a compromise between precision and flexibility to cover the wide deployment range w/o hardware changes. I looked into other approaches, ala a simple Op-amp to buffer the input impedance, but again picking are slim to cover the wide range needed (actually, I did find a jus the part I needed – the LM143. But that simple, low cost device was taken off the market in the late 90’s. Sigh..). Did find native 48v sample chips, but they had too low of resolution, and insufficient speed to meet the 100mS cycle time goals.
Current Measurement: Another benefit of upgrading the sensor chip to the INA-226 is its ability to handle voltages sufficient to allow the Current Shunt to be placed either High or Low on 12v AND 24v systems. Giving greater deployment flexibility to those systems. 36v and 48v systems will still need to place the shunt low (in the ground) to prevent exceeding (and damaging) the INA-226. In order to place shunts High on 36/48v systems, a simple external pre-scalar will be needed (ala, and AD8217). I had thought to imbed the pre-scalar directly into the design, but that has the side effect of locking ALL deployments into high-shunt deployments. So, for now, am going to simplify things with this slight restriction: 36v/48v systems must use a shunt placed low or use an external pre-scalar on a high-shunt. As the world progresses, perhaps a new INA-22x will come out that can directly handle 48v voltages.
Removed the Dual-sync port: With the insight of where the shunt SHOULD be placed (or, perhaps more polite to say COULD be placed) it became clear that a dial-sync capability was not really needed. By placing the shunt at the battery that situation is handled, and even more: Things like a 3rd charging source (ala Solar panels) and house loads are all covered. None of that would have been addressed with the simple dual-sync port, but placing the shunt at the battery does. So: With a better engineered solution available, still retaining the flexibility to place the shunt on the alternator if one wishes (and perhaps making some educated guesses at other charging sources / house loads) I have removed the dual sync logic and code. It seemed like a needed feature, but in the end it was an incomplete solution. There is a better one, and the better one is FREE!
Removed CAT-5 connector block: And with these simplifications, I can remove the stacked CAT-5 block; going back to header pins for the Service port and using simple screw connectors for the NTC temperature probes. It not only lowers costs some, but also greatly increases the flexibility of sourcing temperature probes – several are readily available from EBay, and one could also use ones from Morning Star or even Balmar. All made up for you! (Will need to confirm the nominal resistance of these as being 10K, and if not you will need to change the source code #define calibration values).
OK, that is it. I will be looking to fab up new PCBs this October, and perhaps do some assemble in November when we return to port for the winter. Until then, I will continue to refine the firmware – currently addressing details around load-dumping, and think I about have it nailed.