Baxandall class D oscillator, can it produce a triangle like waveform?

Hi All,

If I had a Baxandall class D resonant oscillator, would it be possible by modulating the current input to the drive circuit to produce a rounded off triangle like waveform?

Bill Sloman's excellent work

formatting link
found that the odd harmonic distortion was caused mainly by the AC ripple current flowing through the source inductor (and hence the driving windings). This presumably causes a perturbation in the dB/dt of the flux which modifies the output waveform.

So would it be possible (in theory) by controlling this drive current more accurately to produce a rounded off triangle waveform without losing all the efficiencies and advantages of a resonant class D oscillator?

Mark.

Reply to
markp
Loading thread data ...

f
e

the

It would be messy. In theory, to create a triangular waveform, you want to add the odd harmonics of the fundamental, with each harmonic added at an amplitude that is related to the amplitude of the fundamental in proportion to the inverse of the square of the harmonic number - the third harmonic at one nineth of the fundamental, and the fifth harmonic at one 25th (4%) would seem to be as much as you'd need.

So, three centre-tapped tank circuits, tuned to be resonant at the fundamental, the third harmonic and the fifth harmonic. Then three separate feed inductors, each going from the same voltage rail to a different centre-tap, and three pairs of MOS-FET switching transistors to drive the three separate tank circuits.

Then a 4046 running at - say - thirty times the fundamental frequency, divided by six to drive the fifth harmonic tank, by ten to drive third harmonic tank and by thirty to drive the fundamental tank, with a second divide by thirty output in quadrature with the first that you can phase lock to the output from the fundamental tank.

This would give you three sychronised sine waves; put a 225 turn floating coil on the fundamental tank circuit, a 25 turn floating coil on the third harmonic tank circuit and a 9 turn floating coil on the

5th harmonic tank circuit, and connect the three coils in series ands you should be able to end up with a not-too-round triangular wave.

The feed inductors could probably have quite a lot more inductance than the inductance of the tank circuits - the original Baxandall class-D oscillator built with bipolar transistor switches "squegs" when the feed inductor is too big, but oscillators driven by MOS-FETs don't seem to have this problem.

-- Bill Sloman, Nijmegen

Reply to
Bill Sloman

Doesn't this work?

ftp://jjlarkin.lmi.net/Triangle_Cap.JPG

What's interesting is that, once it's all going, the power supply can be cranked down to zero and you can make the triangle forever, for free, since the ideal circuit is lossless. The slopes are technically segments of sine waves, not linear bits, so there will be some small curvature, less as L gets bigger. Given a real inductor, simple tweaks could make the slopes straight.

John

Reply to
John Larkin

Blimey, I didn't consider that solution! Thanks for this. The tanks I assume would be close to resonance but may be a little out due to tolerances and drift, which I guess will add a bit of cross-over distortion, but that might get filtered out eventually.

Anyway, I was thinking more on the lines of modulating the current through the single source inductor. Maybe by reducing the source inductor to a much lower value, and PWMing it such that the resulting dB/dt in the core generates a triangle wave. The reason I say that is because your work seems to suggest the ripple through this source inductor (due to the centre tap voltage rising and falling) actually adds harmonic distortion to the output waveform, and one of the solutions was to try to remove it by PWMing.

Also, this source inductor is quite a large component and suffers from I2R losses, so couldn't you make it look much bigger to the circuit by tracking a proportion of the centre tap voltage and PWMing a much smaller source inductor with it? The result from that I think would be to effectively put a much smaller ripple voltage across the inductor, and you could get away with a smaller one as a result.

BTW I have made a large-ish class D oscillator which worked fine even with a large source inductor relative to the drive inductance, and yes I did use MOSFETs :)

One thing of note, your experiments with PWMing produced some ringing which you suggest non-overlapping drive might help. I came to the conclusion that you *need* a small amount of overlapping, because when both transitors are off the current stops flowing instantly, which would mean the source inductor voltage would rise to try to keep its current flowing and there's nowhere for the current to go (both transitors are off). The one I built has a PLD that guarantees a few 100ns of overlap and had no issues with noise.

Mark.

Reply to
markp

On Fri, 23 Jul 2010 08:53:46 -0700, John Larkin wrote:

--- Sorry, not even close.

Not at Mark's frequency and cap spec, at any rate.

Version 4 SHEET 1 880 680 WIRE 96 -16 -48 -16 WIRE 336 -16 176 -16 WIRE 576 -16 336 -16 WIRE 336 48 336 -16 WIRE 576 48 576 -16 WIRE 288 64 272 64 WIRE 640 64 624 64 WIRE 288 112 240 112 WIRE 672 112 624 112 WIRE -48 160 -48 -16 WIRE 336 192 336 128 WIRE 416 192 336 192 WIRE 576 192 576 128 WIRE 576 192 480 192 WIRE 336 272 336 192 WIRE 576 272 576 192 WIRE 288 288 272 288 WIRE 640 288 624 288 WIRE 64 336 64 304 WIRE 176 336 176 304 WIRE -48 432 -48 240 WIRE 64 432 64 416 WIRE 64 432 -48 432 WIRE 176 432 176 416 WIRE 176 432 64 432 WIRE 240 432 240 112 WIRE 240 432 176 432 WIRE 288 432 288 336 WIRE 288 432 240 432 WIRE 336 432 336 352 WIRE 336 432 288 432 WIRE 576 432 576 352 WIRE 576 432 336 432 WIRE 624 432 624 336 WIRE 624 432 576 432 WIRE 672 432 672 112 WIRE 672 432 624 432 WIRE -48 512 -48 432 FLAG -48 512 0 FLAG 64 304 A FLAG 272 64 A FLAG 640 288 A FLAG 176 304 B FLAG 272 288 B FLAG 640 64 B SYMBOL voltage -48 144 R0 WINDOW 123 0 0 Left 0 WINDOW 39 0 0 Left 0 SYMATTR InstName V2 SYMATTR Value 12 SYMBOL sw 336 368 M180 WINDOW 0 32 15 Left 0 WINDOW 3 32 44 Left 0 SYMATTR InstName S1 SYMBOL sw 336 144 M180 WINDOW 0 32 15 Left 0 WINDOW 3 32 44 Left 0 SYMATTR InstName S2 SYMBOL voltage 64 320 R0 WINDOW 0 -53 5 Left 0 WINDOW 3 -242 110 Invisible 0 WINDOW 123 0 0 Left 0 WINDOW 39 0 0 Left 0 SYMATTR InstName V1 SYMATTR Value PULSE(1 0 0 1E-6 1E-6 .005 .01) SYMBOL sw 576 144 R180 WINDOW 0 32 15 Left 0 WINDOW 3 32 44 Left 0 SYMATTR InstName S3 SYMBOL sw 576 368 R180 WINDOW 0 32 15 Left 0 WINDOW 3 32 44 Left 0 SYMATTR InstName S4 SYMBOL cap 416 208 R270 WINDOW 0 32 32 VTop 0 WINDOW 3 0 32 VBottom 0 SYMATTR InstName C2 SYMATTR Value 3e-6 SYMBOL ind 80 0 R270 WINDOW 0 32 56 VTop 0 WINDOW 3 5 56 VBottom 0 SYMATTR InstName L2 SYMATTR Value .845 SYMBOL voltage 176 320 R0 WINDOW 0 -53 5 Left 0 WINDOW 3 -242 110 Invisible 0 WINDOW 123 0 0 Left 0 WINDOW 39 0 0 Left 0 SYMATTR InstName V3 SYMATTR Value PULSE(0 1 0 1E-6 1E-6 .005 .01) TEXT -40 480 Left 0 !.model SW SW(Ron=1 Roff=1E8 Vt=0.5 Vh=0) TEXT -32 456 Left 0 !.tran .1

---

--- Sorry, but no.

Version 4 SHEET 1 880 680 WIRE 96 -16 -48 -16 WIRE 336 -16 176 -16 WIRE 576 -16 336 -16 WIRE 336 48 336 -16 WIRE 576 48 576 -16 WIRE 288 64 272 64 WIRE 640 64 624 64 WIRE 288 112 240 112 WIRE 672 112 624 112 WIRE -48 160 -48 -16 WIRE 336 192 336 128 WIRE 416 192 336 192 WIRE 576 192 576 128 WIRE 576 192 480 192 WIRE 336 272 336 192 WIRE 576 272 576 192 WIRE 288 288 272 288 WIRE 640 288 624 288 WIRE 64 336 64 304 WIRE 176 336 176 304 WIRE -48 432 -48 240 WIRE 64 432 64 416 WIRE 64 432 -48 432 WIRE 176 432 176 416 WIRE 176 432 64 432 WIRE 240 432 240 112 WIRE 240 432 176 432 WIRE 288 432 288 336 WIRE 288 432 240 432 WIRE 336 432 336 352 WIRE 336 432 288 432 WIRE 576 432 576 352 WIRE 576 432 336 432 WIRE 624 432 624 336 WIRE 624 432 576 432 WIRE 672 432 672 112 WIRE 672 432 624 432 WIRE -48 512 -48 432 FLAG -48 512 0 FLAG 64 304 A FLAG 272 64 A FLAG 640 288 A FLAG 176 304 B FLAG 272 288 B FLAG 640 64 B SYMBOL voltage -48 144 R0 WINDOW 123 0 0 Left 0 WINDOW 39 0 0 Left 0 SYMATTR InstName V2 SYMATTR Value PULSE(0 12 0 1e-6 1e-6 5 0 1) SYMBOL sw 336 368 M180 WINDOW 0 32 15 Left 0 WINDOW 3 32 44 Left 0 SYMATTR InstName S1 SYMBOL sw 336 144 M180 WINDOW 0 32 15 Left 0 WINDOW 3 32 44 Left 0 SYMATTR InstName S2 SYMBOL voltage 64 320 R0 WINDOW 0 -53 5 Left 0 WINDOW 3 -242 110 Invisible 0 WINDOW 123 0 0 Left 0 WINDOW 39 0 0 Left 0 SYMATTR InstName V1 SYMATTR Value PULSE(1 0 0 1E-6 1E-6 .005 .01) SYMBOL sw 576 144 R180 WINDOW 0 32 15 Left 0 WINDOW 3 32 44 Left 0 SYMATTR InstName S3 SYMBOL sw 576 368 R180 WINDOW 0 32 15 Left 0 WINDOW 3 32 44 Left 0 SYMATTR InstName S4 SYMBOL cap 416 208 R270 WINDOW 0 32 32 VTop 0 WINDOW 3 0 32 VBottom 0 SYMATTR InstName C2 SYMATTR Value 3e-6 SYMBOL ind 80 0 R270 WINDOW 0 32 56 VTop 0 WINDOW 3 5 56 VBottom 0 SYMATTR InstName L2 SYMATTR Value .845 SYMATTR SpiceLine Rser=0 SYMBOL voltage 176 320 R0 WINDOW 0 -53 5 Left 0 WINDOW 3 -242 110 Invisible 0 WINDOW 123 0 0 Left 0 WINDOW 39 0 0 Left 0 SYMATTR InstName V3 SYMATTR Value PULSE(0 1 0 1E-6 1E-6 .005 .01) TEXT -40 480 Left 0 !.model SW SW(Ron=1 Roff=1E8 Vt=0.5 Vh=0) TEXT -32 456 Left 0 !.tran 10

---

--- Blah, blah, blah, coulda, shoulda, woulda.

"It's all just words..."

Reply to
John Fields

Nice!

Though why you would want to put a triangle across a cap in the first place is a bit of a mystery :)

--

John Devereux
Reply to
John Devereux

--
Snipped circuit list.

0ops...

With zero ohm switches you're right.
Reply to
John Fields

John Fields a écrit :

formatting link

But it does.

Even with real switches and inductor...

Version 4 SHEET 1 1072 680 WIRE 96 -16 -48 -16 WIRE 336 -16 176 -16 WIRE 448 -16 336 -16 WIRE 576 -16 448 -16 WIRE 336 48 336 -16 WIRE 576 48 576 -16 WIRE 992 48 912 48 WIRE 288 64 272 64 WIRE 640 64 624 64 WIRE 288 112 240 112 WIRE 672 112 624 112 WIRE -48 160 -48 -16 WIRE 912 176 912 48 WIRE 336 192 336 128 WIRE 416 192 336 192 WIRE 576 192 576 128 WIRE 576 192 480 192 WIRE 864 192 576 192 WIRE 336 240 336 192 WIRE 864 240 336 240 WIRE 336 272 336 240 WIRE 576 272 576 192 WIRE 288 288 272 288 WIRE 640 288 624 288 WIRE 64 336 64 304 WIRE 176 336 176 304 WIRE -48 432 -48 240 WIRE 64 432 64 416 WIRE 64 432 -48 432 WIRE 176 432 176 416 WIRE 176 432 64 432 WIRE 240 432 240 112 WIRE 240 432 176 432 WIRE 288 432 288 336 WIRE 288 432 240 432 WIRE 336 432 336 352 WIRE 336 432 288 432 WIRE 576 432 576 352 WIRE 576 432 336 432 WIRE 624 432 624 336 WIRE 624 432 576 432 WIRE 672 432 672 112 WIRE 672 432 624 432 WIRE 912 432 912 256 WIRE 912 432 672 432 WIRE -48 512 -48 432 FLAG -48 512 0 FLAG 64 304 A FLAG 272 64 A FLAG 640 288 A FLAG 176 304 B FLAG 272 288 B FLAG 640 64 B FLAG 992 48 Vcap FLAG 448 -16 Sup SYMBOL voltage -48 144 R0 WINDOW 123 0 0 Left 0 WINDOW 39 0 0 Left 0 SYMATTR InstName V2 SYMATTR Value 0.022 SYMBOL sw 336 368 M180 WINDOW 0 32 15 Left 0 WINDOW 3 32 44 Left 0 SYMATTR InstName S1 SYMBOL sw 336 144 M180 WINDOW 0 32 15 Left 0 WINDOW 3 32 44 Left 0 SYMATTR InstName S2 SYMBOL voltage 64 320 R0 WINDOW 0 -53 5 Left 0 WINDOW 3 -242 110 Invisible 0 WINDOW 123 0 0 Left 0 WINDOW 39 0 0 Left 0 SYMATTR InstName V1 SYMATTR Value PULSE(1 0 0 1E-6 1E-6 .004999 .01) SYMBOL sw 576 144 R180 WINDOW 0 32 15 Left 0 WINDOW 3 32 44 Left 0 SYMATTR InstName S3 SYMBOL sw 576 368 R180 WINDOW 0 32 15 Left 0 WINDOW 3 32 44 Left 0 SYMATTR InstName S4 SYMBOL cap 416 208 R270 WINDOW 0 32 32 VTop 0 WINDOW 3 0 32 VBottom 0 SYMATTR InstName C2 SYMATTR Value 3e-6 SYMBOL ind 80 0 R270 WINDOW 0 32 56 VTop 0 WINDOW 3 5 56 VBottom 0 SYMATTR InstName L2 SYMATTR Value 10 SYMATTR SpiceLine Ipk=12m Rser=1 SYMBOL voltage 176 320 R0 WINDOW 0 -53 5 Left 0 WINDOW 3 -242 110 Invisible 0 WINDOW 123 0 0 Left 0 WINDOW 39 0 0 Left 0 SYMATTR InstName V3 SYMATTR Value PULSE(0 1 0 1E-6 1E-6 .004999 .01) SYMBOL e 912 160 R0 SYMATTR InstName E1 SYMATTR Value 1 TEXT -40 480 Left 0 !.model SW SW(Ron=0.1 Roff=1E6 Vt=0.5 Vh=0) TEXT -32 456 Left 0 !.tran 0 25 24.9 1m

--
Thanks,
Fred.
Reply to
Fred Bartoli

formatting link

the

--
Can't argue with that! :-)

Thanks,

JF
Reply to
John Fields

Thanks for the correction. That saved me some time.

I like to leave some of the details to peoples' imaginations. A few people actually do have imaginations; I most always get along with them.

Maybe a controlled current source to add a compensating curvature, for a small added power dissipation. Or kick in some smaller inductors here and there on the curve, to pick up the droop. We don't really know the requirements, which is nice, because it allows for more ideas.

Switching inductor taps is always interesting. If you switch to an intermediate tap, current jumps up... just what you need to keep the triangle slope up, in a bang-bang sort of way.

I once did a buck switcher that converted +24 to +5, for a control system on some Navy ships. Schottky rectifier dides were fairly new, and none I could get were good for 24 volts reverse. I connected the catch diode to the center-tap of the buck inductor, which reduced the peak reverse voltage to about 15, good enough. But the consequence of, essentially, tap switching was that the ripple current into the +5 filter cap went way, way up. Had to use a big wet-slug tantalum.

So, puzzle of the day:

Take a 2 henry inductor that has a center-tap. Run 1 amp through the whole thing, steady-state. Then short one end of the inductor to the CT, and remove the current source. What happens when you do that?

Is anything conserved? Energy? N*I?

John

Reply to
John Larkin

Umm, good point.

John

Reply to
John Larkin

--
There _are_ a few notable exceptions.
Reply to
John Fields

Right.

John

Reply to
John Larkin

formatting link

the

Cool. It looks just like my sketch! The triangle is visually almost perfect, and the waveforms on the ends of the cap are especially nice.

John

Reply to
John Larkin

y

ff

e
x

re

the

Nice - and a much neater solution than mine. I am fixated on the Baxandall circuit, which lead me to a much more complicated (and less good) solution.

I'm wondering if you could get away with putting a second winding on your inductor, return one end to Vcc/2, and drive the second winding with the buffered (and offset by Vcc/2) voltage appearing at the switch end of the inductor, thus making up the voltage drive lost as the capacitor charges up

That wouldn't work with a single supply rail, but tapping the inductor say one third of the way down from Vcc and buffering that voltage into three times as many turns of over-winding might be persuaded to work.

It's feedback, and could well oscillate, but you are driving a capacitor, which would kill the high frequency gain - which is where oscillations like to happen - so it might be worth a try.

-- Bill Sloman, Nijmegen

Reply to
Bill Sloman

It's the schematic symbol for a new chip they're developing for Robocop, called the COPAmp

|\ | \ | \ ---| \ | \ | | \ | --- \____ | --- / | | / | / ---| / | / | / |/

Reply to
ehsjr

Beer factory control systems use hopamps.

SGS, the Italian semiconductor company, makes wopamps.

John

Reply to
John Larkin

Something like that should work. Or just add a modulated linear current source at the top of the h-bridge, to add a little correction current, so you don't have to buy such a big inductor.

There may be a passive network that improves triangle linearity, too, at least at one frequency. Possibly a parallel LC tank in series with the main L, to raise the effective current-source impedance at 2F, the major ripple current frequency. Yeah, that might work.

It's interesting that the triangle sides are in fact s-curves, steepest in the middle. That's because they are actually little slices of a sine wave, straddling the zero crossing. I actually drew the sawtooth waveform in my sketch with such a little s-curve, but I didn't do that consciously. This circuit has some beautiful voltage and current waveforms.

Run Fred's sim and change L to about 0.85 H. It becomes a sinewave generator, sort of Baxandall-like.

John

Reply to
John Larkin

--
He says it's pretty hush-hush, but since he's specified it as
capacitive and fairly high-voltage, I'd guess a piezo ceramic, poled
PVDF film, or some sort of varactor-like device.
Reply to
John Fields

Yeah, but you know how sometimes people ask for the wrong thing, it often helps to have a bigger slice of the picture.

Like square voltage makes triangle current in inductor, square current a triangle voltage on capacitor.

So one might generate a lovely triangle with the current resonating circuit with selected harmonics, only to have it all fall over when loaded.

Grant.

Reply to
Grant

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.