可変バンドパスフィルタ

中心周波数と帯域を可変にしたバンドパスフィルタを作りました。

画像


ロータリーエンコーダで中心周波数と帯域を設定します。中身は中心周波数を159.9kHzまでディジタル信号(3桁のBCD)で設定できるNF回路設計ブロックのフィルタモジュールDT-212DCを2個利用しています。考えてみればNFから完成品が買えそうな気もしますが、独自に作った装置は、まあ言ってみれば過不足無い性能が提供できるというメリットはあるでしょう。

DT-212は状態変数型フィルタの積分回路の抵抗をディジタル(ただしBCD)信号で切り替えられるようにしたものです。これを2個カスケード接続して2次対バンドパスフィルタを構成しました。状態変数型フィルタ回路は中心周波数とQを独立に設定することができて便利です。中心周波数はDT-212が設定してくれるので、回路設計者たる鳩歩堂としてはQだけ設定すればいいわけですが、フィルタの教科書に書いてある方法ではバンドパス出力から入力へフィードバックする抵抗値を調節してQを決定します。

Qを決める抵抗値を切り替え可能にしようと思うと、精密な抵抗器とアナログスイッチが必要になり、けっこうめんどうだな、と思ったのですが、理屈にもどって考えたら要するにバンドパス出力に任意のゲインを掛けた信号が作れれば、その信号を固定の抵抗値で入力にフィードバックしてもいいことに気が付きました。つまり、乗算型のDAコンバータが利用できるわけです。そして、そのゲインとQの関係はじつに簡単で、ゲインをQの逆数にすればいいことが伝達特性を計算してわかりました。

画像


ただし、上の回路図でRと書いてある抵抗は全部同じ値にします。回路図でVoltage gain Gと書いてありますが、正しくはマイナスGです。この回路は中心周波数での入出力のゲインは1になります。

さて、具体的な設計ですが、ADCには高速な14ビット乗算型ADCのAD5453を使いました。このようにして中心周波数と帯域(Q値)がディジタル設定可能になった1次対バンドパスフィルタを2個カスケードして2次対にします。このとき、それぞれの中心周波数とQを、仕上がりの中心周波数と帯域からマイコンで計算して設定してやります。せっかくだから1次対のままでも使えるように、片方のモジュールをお休みさせておくモードも用意しました。

おそらく使用者はQが一定であるより帯域が一定な方がわかりやすいだろうという配慮をしたわけですが、中心周波数とQ値の計算は電卓でやっていたら1分では間に合わない面倒な計算です。それがマイコン(ATmega64)によって瞬間的にできてしまい、設定までされてしまいます。いつもの事ながらマイコンというのは健気なものです。

押しボタンスイッチとロータリーエンコーダの読み取りには今回初めてパラシリ変換ICのNJU3754を使いました。ウォーカードライバーではボタン担当のPICを置いてI2Cに変換してメインのマイコンと通信するというような設計もしたことがありましたが、けっきょく3線式の方が楽ちんですね。

そしてDT-212のBCD信号はシリパラ変換ICであるNJU3754を使いました。これはちょうど12ビットなので今回の用途にピッタリです。そしてこのICのシリアル出力をAD5453のシリアル入力に接続し、全部シリアル信号で設定できるようにしました。

その結果、マイコンはフロントパネルの内側に設置し、チップセレクトなど諸々の信号を合わせて10ピンの角形コネクタで本体基板に接続することができました。下の写真はフロントパネルの中身です。

画像


画像


鳩歩堂のパネル製作術は以前、このブログを始めた当初に紹介しましたが、改めて申せば、プリント基板の材料をそのまま使い、LPKF社の基板加工機で切り抜いて作ります。その上にスプレー糊でアートワークを貼り付けます。今回はハーフラックサイズなのでA4のケント紙にカラーレーザープリンタで印刷したものを使いました。下の写真のようなものです。

画像


その上に最近使い道がないので死蔵されているOHPシート(ポリエステルフィルム)を貼り付けます。コネクタや押しボタンなどの部分はデザインカッターで切り抜きます。これは最初の頃は失敗しないかと緊張したし、実際失敗もときどきありましたが、慣れてしまえば意外と簡単です。プリント基板の材料(銅張り積層板)に開いた孔に沿ってカッターを動かせばいいので、カッターの刃がよく切れればほとんど失敗する要素がありません。

LCDの部分はケント紙だけ切り抜いてOHPシートは残しておきます。またLED表示はケント紙を透過させるようにすると、いちいちその部分に孔を開けないですむので加工が楽です。押しボタンは本体よりボタンの方が大きい製品を選び、ボタンをパネルの外側からはめます。

これが後ろから見た中身。

画像


そして前から見た中身。

画像


今回もタカチのMS型ケースを使いました。今回はアルミシャーシを使わずL型部品だけ購入し、プリント基板をMSシリーズのカタログに出ているアルミシャーシのサイズに予め設計しておいて直接取り付けました。これは経費節減にもありますが、基板の裏面の表面実装部品をいじるときにケースに基板を取り付けたままできるので便利です。今後なるべくこういう構造にしていきたいものです。

ただし、アルミシャーシがないから基板裏面のシールドをするにはケースの下側カバーを接地する必要があります。バナナプラグ付きの電線をはんだづけし(鉄板でもアルミ板でもじつははんだづけできます)、これをメイン基板のアースにはんだづけしたM4用の黄銅スペーサー(バナナプラグがちょうど挿さる)に挿します。上側カバーも同様にします。

画像


さて最後に性能をネットワークアナライザで測定してみましょう。まず帯域40 kHzに固定し、中心周波数を110 kHz, 80 kHz, 40 kHzと変化させてみます。

画像


画像


画像


良い感じですねぇ。では帯域を10 kHzに狭くして、中心周波数を110 kHz, 80 kHz, 40 kHzと変化させてみます。

画像


画像


画像


中心周波数が高いときに若干双峰特性になってますね。これの原因はまだわかっていません。帯域が狭いときは各の1次対バンドパスフィルタのQが20とかそれ以上になりますが、ADCのゲインはその逆数で設定しないといけないので、このへんになってくると誤差が大きくなってきます。

マイコンでADCの設定値を計算する過程ではdouble型で計算し、最後にint型に変換してADCをセットしています。その際、単にint型にキャストしているので、小数点以下が切り捨てられています。これを四捨五入にするとわずかながら改善するかとは思いますが、ADCの設定値が1ビット違うとどれほど周波数特性に影響するか、シミュレータで見当してみる必要があるでしょう。なんか原因は違う気がします。

ところで、AD5453のVref入力やR,FB端子の絶対最大定格は12 Vということになっています。なので、アナログ部の電源電圧を当初±12 Vで設計したところ、DT-212が100 kHzあたりで発振しやすく手を焼きました。ちなみにDT-212の電源電圧は±15 V±10%となっています。中身はどうせオペアンプだから±12 Vで使えないことはないだろうと思いましたが、±15 Vにしたら発振が止まりました。なんでだろう?

しかしこんどはAD5453が危なくなってくる可能性があります。電源電圧を±15 Vにした場合、DT-212の出力電圧は±14 V付近までスイングします。ただし、AD5453を接続しているのはバンドパス出力なので、どんな設定にしてもDC電圧は出力されません。それと、AD5453がなぜ±12 Vを最大定格としているかを想像するに、これはブレークダウン電圧といった現象から決まっているのではおそらくないだろうと思います。というのは±10 Vまでは普通の使用を認めているので、±12 Vがブレークダウン電圧というのはちょっと近すぎます。おそらく発熱により損傷しないのが±12 Vということだと思います。

そうすると±14 Vが短時間だけ印加されても故障しないでしょう(と考えないとこの装置は成立しません)。

ブログ気持玉

クリックして気持ちを伝えよう!

ログインしてクリックすれば、自分のブログへのリンクが付きます。

→ログインへ

なるほど(納得、参考になった、ヘー)
驚いた
面白い
ナイス
ガッツ(がんばれ!)
かわいい

気持玉数 : 0

この記事へのコメント

この記事へのトラックバック