- 低い周波数の設定がやりずらい。(ポテンシオでの低電圧の微調整になる)
- 変更できる周波数域をもっと広くしたい。
Googleで見て回っていると、アンチログ回路というものを見つけました。入力に対して出力が指数関数的に変化する特性を持っています。これはシンセサイザに利用されている回路らしいです。音は1オクターブ上がるごとに周波数が倍になるので、4オクターブの楽器は$2^4=16$倍(*1)の周波数変化をしています。こういった要求を満たすための回路のようです。
残念ながら、バイブルにしている”定本シリーズ”には載っていませんでしたので、ネット情報を収集して学習します。
アンチログ回路とは
指数が"exponential" だとダイレクトで分かりやすいのに、なぜが、"antilog" と言われているようです。その流れで、"Anti-Logarithmic amplifier" とかの言い方が使われています。
引用:2SC1815 データーシート |
実際のアンチログ回路としては、ふたつのトランジスタを差動対の形で組み合わせ、OP アンプで定電流回路を構成したものが使われます。
引用元:アナログシンセの VCO ブロック (3) -- アンチログ回路(2)
図と説明がわかりやすかったので引用させていただきました。
コレクタ電流は上図の記号を使って次式で表せます。 $$ \begin{aligned} I_{out}&= \cfrac{V_{ref}}{R_{ref}}\cdot \exp \left[ V_{in}\cdot \cfrac{q}{kT}\right] \tag1 \end{aligned} $$
- q : 電子の電荷 1.6e-19 [C]
- $k$ : ボルツマン定数 1.38e-23 [J/K]
- $T$ : 絶対温度 [K]
シミュレーション
このアンチログ回路はよくある基本的な回路だそうで、NPNトランジスタQ2のベースに電圧を加えると、Q2のコレクタ電流が得られる原理です。カレントミラーになっているQ2のベースに正電圧を加えることと、Q1のベースに負電圧を加えることは同じことなので、反転増幅で作った負電圧を使える回路図の構成になっています。
左からの入力を18/1000倍に反転増幅したsignをアンチログ回路に入れると、Q2にコレクタ電流が流れます。これを測定するため電圧ゼロVの定電源を置きました。そして、オペアンプを使って電流を電圧に変換しています。
入力のQ1ベース電圧sign と出力のQ2コレクタ電流I(V6) の関係をシミュレーションで示します。I(V6)をリニア軸と対数軸でグラフにしてみました。理論どおり指数関数的にコレクタ電流が変化しています。signがマイナスなので右肩下がりの減少する特性です。
この特性を使って制御電圧(0-5V)の範囲でDC解析を行い、コレクタ電流I(V6)と出力電圧V(Antilog) が指数関数的に変化していることを確認しました。
実験と評価
ブレッドボードで組んだ回路で実験を行いシミュレーションとの比較をします。
回路の定数は表の内容です。シミュレーションのオペアンプにLM358を使うと収束しないケースがあったのでUnivarsalOpAmp2 を使っています。
DC解析
図のように両者は良く一致していると言えます。
電圧が1V増加するたびに出力が2倍になることを見るため、上記で得られた近似式を使って1V刻みのAntilog出力を計算して、その倍率を求めてみました。
1Vの出力を基準にしたとき、1Vから5Vへ4オクターブ変わると、$2^4=16$倍になっています。
過渡解析
入力の制御電圧として、2とおりの定電圧 KEY:0V/1Vとのこぎり波 TUNE:10Hz 5Vp-p を考えます。それらを反転増幅オペアンプで加算して制御電圧とします。モデルと解析結果を下図に示します。
のこぎり波のスロープに応じて、指数関数的にAntilog出力が発生しています。さらに、KEY電圧の大きさによって、Antilog出力のゲインが指数関数的に変わります。
実験でもシミュレーションと同様の波形が観察できました。シミュレーションに使った記号で表せば、KEY:紫色の 1V、TUNE:水色の 5Vp-p、AntiLog:黄色の 5Vp-pです。
のこぎり波 TUNE:水色は、既報で作ったのこぎり波発振回路からの出力です。
Antilogの出力電圧が5Vp-pとシミュレーションよりもわずか小さくなっています。$V_T=\cfrac{kT}{q}$ に含まれる温度や各種定数の違いが影響しているものと思われます。
VCOをつなげて周波数スイープの実験
既報のVCOにアンチログ回路をつなぎ、周波数が変わる状況を実験します。まず、シミュレーションにて動作確認を行います。
KEY:1V, TUNE: 5Vp-p 10Hz のこぎり波、VCC: 9V VEE: -9V の条件でシミュレーションを行いました。VCOの積分コンデンサC2: 0.1uFとしています。スピーカにつないで音確認の実験も行うつもりですので、可聴域の発振周波数を狙った設定です。
アンチログ回路の出力電圧が180mVから5.8Vで、VCOの周波数は20Hzから522Hzまでスイープする結果が得られました。
下図はシミュレーションと同じ条件での実験波形です。AntiLogの出力5Vp-pに対して、25Hzから526Hzまでスイープしています。
25Hz |
526Hz |
次に示すのは、VCOの積分コンデンサC2を10nFに変えたときの周波数スイープです。トリガをうまくかけることができずぴったりの測定できなかったのですが、AntiLogの出力5Vp-pに対して、だいたい200Hzから2.5KHzをスイープしています。
まとめ
- アンチログ回路を使うと、周波数を4オクターブ以上(20倍程度)可変できることが確認できました。
- ポテンシオの抵抗変化に対して指数関数的に変化する制御電圧なので、低周波数域の調整も比較的やりやすくなりました。
- 手元のポテンシオ操作で周波数が変わるスピーカからの音を聴いていると、簡単なシンセサイザだと思います。(引用元のブログタイトルは”DIY Synth Series ....”です。)