[sdiy] Idea - Triangle wave DCO core
Tom Wiltshire
tom at electricdruid.net
Wed Mar 14 12:20:55 CET 2012
On 14 Mar 2012, at 10:56, Neil Johnson wrote:
> Hi Tom,
>
>> It occurred to me today that you could fairly easily build a triangle core DCO. This wouldn't use a reset pulse, but would instead use a bipolar DAC.
>>
>> You'd simply output a charging CV from a DAC to an integrator. After half a cycle has been timed by the uP, it switches the DAC charging CV to the opposite polarity. And so on. Instant triangle wave at known frequency.
>>
>> Has anyone ever done/seen anything like this?
>>
>> Presumably once you'd got the basic version working, you could tweak the rise/fall CV calculation to get variable waveforms between ramp(ish) and triangle. Aside from that, I can't see any massive advantages beyond simplicity.
>>
>> What do you think?
>
> You'd need some sort of servo mechanism around the integrator to deal
> with any DC drift, otherwise you'll end up hitting one of the rails
> sooner or later as DC terms get integrated over time.
>
> A sawtooth is easy as you always reset to a known starting position.
> With the scheme you propose there is no known starting position -- all
> you're doing is changing direction at known points in time, but you
> have some control over how far each segment goes. The integrator will
> integrate all the current flowing into it, which as well as the output
> of the DAC will also include any op-amp offsets, noise, etc. You're
> also relying on the DAC to output EXACTLY the same magnitude of
> current for both signs. Unlikely in reality.
>
> Analogue triangle cores don't suffer this as the timing and direction
> is handled by level-sensitive comparators. The handle you turn to set
> frequency is solely the integrator current. Since the amplitude is
> set by the comparators then any DC offsets simply disappear.
>
> Cheers,
> Neil
All good points, Neil.
In short, we need some way for the uP to avoid drift building up in the long(er) term.
I like Magnus' idea of using the same scheme to produce the output of two mixed triangles. That'd be really crazy.
T.
More information about the Synth-diy
mailing list