Adventures in smps carnage I.

A while ago while cleaning the trash pile I thought that it’d be nice to mod one of the many computer supplies to have a variable output. So I picked up the less crappy, replaced the transformer with a one with better turns ratio to achieve a higher voltage output and put a pot on the feedback loop.

At first it kind of worked but with a lot of unstable points and weird modes. Then I realized that I fed the feedback from about 50K when the nominal was near 10K (and also there is considerable input current there). A simple emitter follower took care of that, now there only remains plain oscillations.

The operating point moves a lot considering that I want the output to be adjustable between 5V and 50V and without a fixed load. The original compensation scheme was a plain integrator plus a zero, I can make things a little better slowing it down a lot but what’s the fun on that.

So instead of blindingly doing things I set out to measure the loop response using Middlebrook’s method. I cobbled up a quick python program with Gtk and GStreamer to generate the test signals with a computer soundcard. Initially I expected to just sweep the frequency and measure some points manually on the scope but there is a lot of 50Hz induced interference that together with switching residuals make that task impossible, I really need to perform a synchronous detection in order to get a meaningful result. That means I’ll have to make room for some more quality time coding to get the scope samples in an automated fashion. The usb protocol is documented here ( http://elinux.org/Das_Oszi_Protocol#0x02_Read_sample_data ).

The setup is a far cry from the ones depicted in the famous AN70 by Jim Williams. I used an H-Field probe to rule out magnetics as an interference source. I expected the output filters and the transformer to be troublesome but their effects on the point of injection are negligible. On the other hand, long wires on the feedback path (even twisted) and the snap recovery diodes aren’t a good match.

 

Banco de pruebas para fuentes conmutadas

Uno de los proyectos en los que estoy participando ahora involucra fuentes conmutadas. Para mi parte necesito [aba] evaluar varios controladores integrados y bobinas así que me construí una pequeña herramienta para ayudarme en la tarea.

Esta me permite sensar la corriente consumida por la carga, la corriente en el inductor y la tensión de salida así como también regular el factor de escala. El driver del fet (un irf540 que tenía dando vueltas por ahí) no es nada revolucionario, en el encendido la compuerta está manejada en forma directa por el circuito externo y se descarga a través de un pnp cuando el terminal de control se deja al aire o a una tensión moderadamente baja. No es súper rápido pero alcanza y sobra a las velocidades que lo uso.

Estoy muy contento tanto con la terminación de la placa y porque funciona de diez. Abajo está probando un circuito basado en el tl494 con límite de corriente y tensión.