設計時には注意しているつもりでも製作の一巡目ではどうしてもミスを出してしまいがちです。前記事でも色々挙げましたが問題は比較的軽微なものでした。しかしついに基板のパタンを変えないと直らない問題が見つかってしまいました。

上の図は全体の回路図から1ボイス分の CV 出力部とベンド出力部および自動調整部を切り出したものです。外側とのつながりが見えていませんが、上段のラインが CV で、MIDI Note ON メッセージを翻訳した PWM 出力が入ってきています。パルスの振幅はもちろん 5V。下段のラインはベンドで、MIDI Control Change / Bend メッセージを翻訳した PWM 出力が入ってきています。最終的には U8A の加算器で混ぜ合わされてその出力がノートCVとして使われます。この分割したCV経路のせいで大変煩雑な周辺回路が必要になっています。製品だとこんなこと許されないと思うのですが、このモジュール、実験プラットフォームのつもりで作っています。ポルタメントをアナログでやってみたかった (U14 周り)、ベンドのビット数を変えると聴感上どうなるか実験したい、マイクロプロセッサを使った自動調整機構を一度作ってみたかった、など色々試したいことがあったのです。
ここからが設計ミスの話ですが、マイクロプロセッサを使った自動調整機構を実現する回路に問題がありました。
この回路での調整は、ノート CV を正確に 1V/Oct で出力させるために必要です。精度の良い部品を使えば無調整でも行けるような気がしますが、面白そうだったらやるの精神で、あえてやってみるのです。 ピッチ CV の出力自体は U8A の出力から取りますが、そこからさらに U6A の切り替えスイッチを介して U3A の比較器に入力されます。比較器の出力は Q7 のレベル調整回路を介してプロセッサに戻されます。比較器の反対側には U5 の 3V 参照電圧が繋がっています。この比較器を使って U12 のデジタルポットを調整して CV 出力を正確に 1V/Oct にしようという目論見です。でもどうやって?「えーと、ノート C-1 を 0V と設定して、3オクターブ上の C2 出力は 3V、ここを 3V になるようにベンドを調整してからさらに一オクターブ上げて…うーんよくわからないけどなんかいけそうじゃね?」とふわっと考えて基板を起こしてから具体的にどうするか考えてみると…

あれ?どうにもならん。考えてみれば単純な話で、やりたいことは加算増幅器のゲイン調整、ゲインということは直線の傾きなわけで、直線の傾きを求めるには直線上の二点の位置を知る必要があるわけです。回路上では具体的には C2 を指定した時にベンドを調整して 3V が出るようにして、C-1 に指定を変えて 0V になればよし。でもどうやってそれを知る?基準点は一個しかないのでどう頑張っても C-1 がずれているかどうか知る方法がないのです。ノートを上にずらして、ベンドで戻して、一オクターブ下げてみたら?など考えるのに使った計算用紙が上の写真。連立一次方程式を作ろうとしてどうしてもできないのを確認した紙です。数学の頭が鈍っていて証明の方法が思いつかないけれども、パラメータを固定して(ここではノートCVを増幅するゲインとオフセット調整のためのベンド量)直線上の2点(直線の X 軸はノート番号、Y 軸はノート出力電圧)を計測できないとどうやっても 1V の幅を知ることができません。自動調整をやるには比較器につないだ参照電圧を3V ともう一つ、例えば 0V に切り替えられるようにする必要があったわけです。
これは基板のパタンを修正するか空中配線するかが必要で、さらに基準電圧切り替えのためにプロセッサのピンをもう一本割り当てないといけない。検討したけれども全部基板を組んでしまった後に修正をやると基板を壊してしまうリスクが高いです。自動調整には興味があるけれども他にもやるべきことはたくさんあるのでここはごまかして先に進むことにします。予備基板があるのでそちらで修正を試みるか基板ごと作り直すか後で考えることにします。
どうやってお茶を濁すか?半自動調整でやってみようと思います。問題なのは、パラメータであるベンド量を測定中固定する必要があること。そのためには、C-1 を指定して出力が 0V になるようにベンド量を決めて固定すれば良いですが、これを手動でやることにします。一度目視で 0V が出るベンド量の調整を手動でやって、そのベンド値をファームウェア内に覚えておいて動かさないでおけば3オクターブ上の 3V 調整はなんとか自動でやれる、という考えです。電源電圧が変わってしまうとこのオフセットが狂いますがそこにはもう目をつぶるということで。
実はベンド回路周りにもう一つ設計ミスがあって、ベンド量を最大にすると出力電圧が下方向に飽和してしまいます。まあこれもベンドできる範囲が狭まってしまうだけということで目をつぶります。12V 電源で 10V を超える範囲を設計に使ってはいけませんね。
まだ CV の発生部分でうろちょろしていて音も出せていない状況なので、時間のかかることは後回しにしてとにかく先に進もうと思います。