アナログシンセの VCO ブロック (55) -- マルチ出力アンチログ回路の測定 (5)

残りの 1 系統にリセット型 VCO を実装して、測定を行いました。
アンチログ出力トランジスタから VCO までの部分の回路図を下に示します。 左側が今回追加したリセット型 VCO です。

リセット・パルス幅は当初約 4 μs の設定でしたが、ATtiny13 の出力ポートを利用したリセット回路では十分にリセットしきれなかったので、パルス幅を約 8 μs まで増やしました。
外部にバイポーラ・トランジスタや FET を使用した強力なリセット回路を設ければパルス幅は狭くてすみますが、今回は簡単のため外部回路は設けずにパルス幅の方を拡げました。
前回書き忘れましたが、リワインド VCO の積分器の OP アンプは手持ちの物をいくつか差し替えて試した結果、最も出力波形がきれいだった AD8616 (Analog Devices 製) を使用しています。 (10/05 修正: OP アンプ名称を AD8516 と誤記していたのを AD8616 に修正しました。)

リセット型 VCO では、のこぎり波の電圧が Vcc レイルまで到達しますが、AD8616 は入出力レイル・ツー・レイルなので問題なく、そのままバッファ・アンプとして使えています。
まず、Franco の補償のための抵抗を 0 Ω つまり、抵抗なしで直結した、VCO の「裸」の特性を下に示します。

赤色のトレースが測定結果で、MIDI ノート番号の最大値付近で誤差が -200 セント程度、つまり約 2 半音低くなっています。
リセット時間誤差モデルによるピッチ誤差曲線を測定結果にフィットした結果 (青色のトレース) は、約 10.5 μs のリセット時間に相当し、実際のリセット・パルス幅 8 μs とエミッタ直列抵抗による誤差のリセット時間換算 2.6 μs との合計である 10.6 μs とほぼ等しい値になっています。
リセット時間換算値から Franco の補償の抵抗値を求めると、
10.5 [μs] ÷ 33 [nF] = 318 [Ω]
となりますが、計算値より大きめに RFranco = 330 Ω として測定した結果を下に示します。

MIDI ノート番号の最大値付近の誤差が約 -5 セントとなっていますが、まだ補償が少し足りない感じなので RFranco = 335 Ω として測定した結果を下に示します。

誤差は全域に渡って ±1 セント以内で、ほぼ「最良近似」の状態になっています。
ただし、全体の測定を繰り返さず数ヶ所の測定だけによる「調整」で、この状態に持っていくのは困難です。
上のグラフは、測定結果から事後のデータ処理として MIDI ノート番号からピッチへの「理想変換特性」を最小 2 乗近似で求めているから実現できているものです。
オクターブ・スパンは、きっちり 1200 セントではなく、1199.9 セントになっています。
実際に調整する場合には、下のグラフの RFranco = 360 Ω の場合のように、ピッチの低い側でなるべく誤差の少ない範囲が広くなり、最大 MIDI ノート番号付近で誤差が急速に大きくなるような特性にする必要があります。

調整手順としては、

  1. VCO 部の「FREQ」トリマで最低音付近 (約 8 Hz) の周波数を合わせる
  2. Vbe(MAX) 発生部の「SPAN」トリマで MIDI ノート番号 50 程度の音程に対して周波数を合わせる
  3. MIDI ノート番号 100 程度の音程に対して RFranco を調節して周波数を合わせる

となります。
MIDI ノート番号 100 程度以上の音程に対しては誤差が大きくなるのを容認します。 (といっても 10 セント程度)