tri 2 saw modualtion

Martin Czech martin.czech at itt-sc.de
Wed Oct 22 15:13:02 CEST 1997


A while ago I asked, how voltage controlled symmetry  could be achieved
with a triangle type vco (lfo) when the frequency should stay
constant.  Or in plain language : I want to sweep between saw and
triangle and again saw with a controll voltage and I don't want to
change the period of the oscillator while doing this.
The parameters frequency and symmetry should be independend.

No response. 
(Yes , I know there is a circuit to do this with a pot, but I don't
want a motor pot for this purpose)

So I tryed to find out myself.  Here's the idea:


(Non math-lovers goto : label)

Normal exponential frequency control:

f(x)=k*exp{a*x} ; a=log(2) , f is frequency, x is control voltage input , 1 per Oct.

T(x)=1/k*exp{-a*x}  ; other way arround for time or period

Triangle osc has two slopes, with two times t1 and t2, T=t1+t2

assuming symmetry:

t1             +t2              T
1/2/k*exp{-a*x}+1/2/k*exp{-a*x)=1/k*exp{-a*x}

Now introduce some additional symmetry control voltage s for one slope, and
some unknown control voltage g(s) for the other slope. It is required that the
period T stays constant T=1/k*exp{-a*x}.

t1                 + t2                   !

1/2/k*exp{-a*(x+s)}+1/2/k*exp{-a*(x+g(s))}= 1/k*exp{-a*x}

Solve this for g(s) :  g(s)=-1/a*log(2-exp{-a*s})


Some observations about g(s) :  If s approaches -1 , g(s) goes to
+infinity.  Translation : if the time for one slope is doubled, there
is no time left for the other slope (as T has to remain constant).  Or
the other way : if s reaches +infinity, g(s) goes to -1.  g(0)=0 : of
course this is the point of symmetry.  The slope of g(0) d/ds g(s) is
-1 and goes to 0 if s->+infinity.



label:

What does this say :

If I add some voltage s say for the rising slope into the expo
converter summer of the triangle osc, and add g(s) for the falling slope, I
get adjustable symmetry and then the period will remain constant.  


For those who have gnuplot :

a=log(2)
g(x)=-1/a*log(2-exp(-a*x))
plot[-1:10] g(x)

Analog circuit implementation: 
A switch is needed to apply two voltages to the expo converter input
summer, the switch is controlled by the osc. own square output.  The
switch toggles between said voltage s (panel control or input) and some
derived voltage g(s). Now, g(s) could be derived as picewise linear
function with a diode feedback network out of s. It is a good idea to
use only the nice "right branch" 0< s < +maxvoltage, since we avoid the
infinity problem stated before (g(-1) -> +infinity is impossible to
realise). This implementation means that one slope could be flatter,
the other one sharper, but not the other way arround. If we want sharp
and flat for both slopes, this is no problem: simply exchange s and
g(s).  This means for the circuit : apply two voltages s1 and s2 with
the switch as before, but
s1=s, s2=g(s) if s >0
s1=g(s), s2=s if s <0
This could be done by building the diode network two times, one for each
voltage, in such a way that negative input voltages are not changed,
but only positive voltages are approximated to g(s).
Simply combine precision rectifier with diode feedback network.

Th beauty of this solution is, that g(s) is very "flat", "monotoneous"
and d/ds(g(s)) starts with -1 and goes to 0. A nice function to 
implement with a picewise linear network. This is because we use the 
expo converter. In a linear controlled circuit (no expo converter)
the whole maths from above could be done in a similar way and yield
some nasty g(s) function, with very high values, not easy to implement.

On the other hand, g(s) cannnot be implemented without error,
approximation error,
junction temperature of diodes (could try to 1st order compensate).
These errors will be feed into the expo converter and get much worse.

So I don't expect resonable behaviour in audio applications, where
frequency stability is a must. Symmetry modulation in this case is not
very interesting, it sounds like a more or less lowpass filtered saw.
Not worth the effort.  I want this symmetry modulation for sub-audio
modulation purposes, where frequency errors are not that critical.
There it makes quite a good effect.

Any comments ?

m.c.




More information about the Synth-diy mailing list