I’ve been pretty busy with class work so I haven’t been building a whole lot recently. I did get a polyphonic controller working for hatcoil, though. By using both timers on the Atmel based controller, it can simultaneously play any two notes making the songs much more interesting to listen to.
Also did a bit of dry ice overclocking, although the board seems to be damaged and won’t get basically any overclock stable (used to run 3.6ghz stable on water and can’t even get it up to 3ghz anymore)
Another safe avalanche-free winter at home with about half a dozen summits, but enough mountaineering, back to power electronics!
As promised, hatcoil is being brought back to life. Instead of repairing a questionable design, I decided to start over and make the whole thing better. This time it’ll be all on one heatsink and control board with a full bridge plus an over-current/inrush protected boost converter.
Since recently I haven’t been real into using TL494’s for moderate or high power boost converters, I just put a bang bang hysteresis controller on the board with voltage feedback. I also put a hall effect current sensor on the boost inductor, since I think inrush was killing my old boost. Basically this is what goes wrong without this protection:
When the battery pack is plugged in, the coil’s bus cap is uncharged, and will quickly charge through the boost inductor. There is no problem with this and it is normal behavior, except that if the boost logic is running during this phase, the boost FET might blow up since it has to take this current too. So to solve this, I just put a current sensor on the inductor, and at the start of every boost bang it checks with the sensor and makes sure inductor current is below a set threshold level (a few tens of amps at most, or probably even lower since this is a discontinuous boost design). This also has the pleasant side effect of making sure inductor current doesn’t build up and become continuous at the early stage of charging the bus-capacitor, where -di/dt during off time might be less than charging di/dt (leading to possible fault modes at a 50% duty cycle).
Both of these issues can be seen in the following simulations, the first without protection and the second with. Green is inductor current, and blue is transistor current.
I also did a bit of math on the boost inductor this time rather than just winding onto a random ferrite and crossing my fingers (it’s so tempting in power electronics, but it’s such an incredibly bad idea!)
I first considered conservation of energy in the inductor, which says that assuming discontinuous mode. can be replaced with where is duty cycle. This says that which is the equation you can use to figure out an appropriate inductor (ignoring any losses which could be added to account for less than 100% efficiency). Substitute battery pack voltage, desired duty cycle, desired frequency, and solve for inductance. Then all that is needed is to make sure the inductor won’t saturate. I came out with ~5uH for 50khz operation.
To etch (on dextrin paper, I can’t wait to try that magic!):
Yay, I’m finally documenting my Halloween costume (which unfortunately blew up the day before halloweekend). Here is a video of hatcoil, a small DRSSTC on top of a hat. AKA, a really bad idea.
28V A123 battery pack
4xHGTG 30N60B3D IGBT full-bridge with GDT drive
~1200 turn secondary on 1″ PVC
Really, it’s just a DRSSTC. Nothing less, nothing more, nothing fancy. It was a bit tricky to make a bridge appropriately sized, and even harder to make a boost converter for it. In fact, the boost never truly worked. If I play a mid to high note for a few seconds, the boost can’t keep up and it fades away. I think this is due to saturation of my boost core, but I haven’t really taken the time to do much on this since now I’m back in the gate driver world and also have to throw together my 6.131 power electronics final project. I’ll fix hatcoil in February.
The optically linked controller is an atmega328 based board which reads MIDI files off of a microSD card for playback. Thanks to my friend Jeff Heidel for assistance in getting the midi parser working.
I now hate floating gate drives and love Gate Drive Transformers (GDT). Quite the change of love! After hatcoil worked better on GDT’s and was easily transformed (more on hatcoil later), I figured why not increase the reliability of big-coil with GDT’s. I threw together a quick P-N totem pole pair board capable of driving a GDT in bipolar with no blocking capacitor (assuming 0v DC from an even duty cycle). The results are quite beautiful. I did not realize it was this easy to make a gate drive transformer work great.
Adjusting the voltage put out by the first LM317 allows for adjustment of the gate drive voltage (since this will power the P-N half bridges), and the second LM317 powers the UCC37321 drivers, which allows for adjustment of the intermediary gate drive signal level for minimal shoot through. If this gets too high, certain pairs of FET’s will severely shoot-through and over heat. The FET’s I’m using right now don’t really have an issue but I have used other models that are useless with 15V drive in this particular capacitively coupled P-Fet drive scheme.
The board was carefully routed to have basically no ground loops between output and power supply, and to have bypass caps as local to the output stage as physically possible. The results are incredible, it’s just like having a discrete driver on the brick, but there are no reliability concerns!
I finished making big-boost which now is controlled by a micro-controller instead of a TL494. By feeding a hall-effect current sensor signal into the ATMEGA168 controller, I can sense zero-current returns in the boost inductor to assure that the system never goes into continuous mode. This is critical because at low output voltages (<600V), the TL494 was going into continuous mode and the current of many hundreds of amps was burning out transistors. I now haven’t had any issues with burn-outs. The new system also allows me to detect the absolute input current, and shut off the boost if it exceeds a safety threshold (it worked! A 1000V hard-short output didn’t damage the boost beyond the input three-phase rectifiers).
Shiny things! Controller
So, let’s hook it up to big coil and see if it really works. Does great, boosts to 850V while under coil load (previous TL494 boost sagged to 500V under coil load).
But, the coil burned out :(. The exact cause is unknown, but half of the bridge had destroyed transistors. The TVS string attached to those IGBT’s had one set that was sheared apart (or maybe exploded off, but it appeared to be a previous mechanical failure point – I had just hauled it to new york so I probably didn’t notice that it got cut off). But who needs TVS diodes, right? A perfect phase-lead compensator on the current feedback should completely take away the need for them (the idea of the phase leader being that the signal coming back from the current transformer is slightly leading the actual primary tank current, so the delay in the logic and IGBT’s can be taken into account while still switching before the freewheeling diode goes into reverse recovery which creates ringing). Right now I use an RL phase compensator on the current transformer signal, but the problem with this is that the first phase is not corrected for since the inductor takes time to get a phase lead started (if anyone can explain this to me in a mathematically rigorous manner, I would be very happy! The mathematics and simulations say it should compensate instantly).
So to fix this problem, I replicated the phase leader, except using op-amps instead of an inductor. This seems to work great on a breadboard with a test input. At the start of the sine signal, the compensator adjusts practically instantly, and is fully adjusting the signal long before the first zero crossing.
Here is a video of it operating on a test signal:
The idea is invert the input (IC1A), take the derivative times a negative constant A (IC1B + IC2A), and add that to the original inverted input times constant B (IC2B). Invert this output, and you get the input scaled with an angular offset of tan-1(wA/B).
I will etch and test this in the coil this weekend (yay 4 day weekend! Thanks Christopher Columbus for finding this wonderful huge hunk of land and society still caring 500 years later).