grapf 1
circuit 1
二相正弦波発振器
Frequency Shifter を構成するには、下式のcos(αt) , sin(αt) 二相の変調用の正弦状波発振器が必要です。
私がFrequency Shifterに期待する効果が、
(A) 周波数シフト(上下) & 倍音構成を崩す
(B) ディチューンによるコーラス効果
です。
変調用発振器の発振周波数としては、(A)の為には原音の音高以上の可変域が必要になり、
(B)の為には0.1 Hz以下までの超低周波まで可変域の下限が必要です。
また、応用を広げる意味では VCO にしたいところですが、今回は早く結果・効果が知りたいのでVCOは諦めることにします。
また、簡単な構成で低歪みな正弦状波を出力したいので、ファンクションジェネレータ方式にはしないで、正弦状波を直接発振する方式とします。
選んだ方式は、二重積分ループを使った状態変数型の発振回路です。
circuit1 がその回路です。
U2,U3が反転積分器でU1で反転させてメジャーループを構成しています。
out2を cos out とすると、それをU1で反転した -cos を反転積分した out1 は、sin outになり、
それをさらに反転積分した out2 は cos になり正帰還ループになります。
またout1からのマイナーループもあり振幅の安定化を計っています。
発振周波数は、二つの積分器の時定数を変えることにより行います。
C=C1=C2, R=R3=R4 とすると発振周波数は、f = 1/(2π C R )になります。
実際には、2連VRを使うことになります。例えば100KのVRを使うとき直列に例えば1Kの抵抗を接続します。このように、この構成でそこそこ実用的に可変できる範囲は二桁程度です。それ以上欲張ると、周波数の高域の可変カーブが急峻になりすぎ使えません。また、2連VRのトラッキング誤差が高域で顕著になるので発振が安定しなくなります。
したがって、目標の可変域を得るためには、Cを何段階かに切り替えることにします。
積分時定数を変える方法として、2連VRで入力電圧をアッテネートした上でその電圧を固定のRを使った積分器を使う構成もあります。 この構成はA型VRを使うと周波数の可変カーブが自然になるので私もよく使っていましたが、低周波側では積分器の入力電圧が低くなるため、オフセットバイアス電圧の影響が顕著になるためやはり可変範囲を大きく出来ないので、採用しないことにしました。
この定数でシミュレーションしたのがPhoto1です。
発振ループゲインの調整は、R7を増減します。
R7を大きくしすぎると発振が止まり、小さくしすぎるとout1の正弦状波出力のつぶれが増えてきます。out2の歪みは変化しません。
周波数切り替えで、Cを切り替えたときR7 の調整値が変わらなければ良いのですが。