製作モジュール一覧

ラベル Filter の投稿を表示しています。 すべての投稿を表示
ラベル Filter の投稿を表示しています。 すべての投稿を表示

2020年10月5日月曜日

8次多重帰還LPFの実験 バターワース特性、ベッセル特性、チェビシェフ特性の比較 その2

カットオフ周波数1kHzでバターワース特性、ベッセル特性、チェビシェフ特性(0.5dB)の特性で実装し、Analog Discovery 2を使って周波数特性と過渡応答を計測しました。





電源はAnalog Discovery 2のSupplyより±5Vを出力して利用しました。

周波数特性


WaveFormsのNetwork機能を使用しました。

バターワース特性

ベッセル特性

チェビシェフ特性(0.5dB)

カットオフ周波数1kHzの1オクターブ上の2kHzの利得を比較すると
  • バターワース特性 約-50dB
  • ベッセル特性 約-13dB
  • チェビシェフ特性 約-50dB
となりました。

シミュレーションと比較するとバターワース特性とベッセル特性はほぼ合致しますが、チェビシェフ特性(0.5dB)は減衰量が少なくなっています。(シミュレーションでは-70dB)

実際の計測では1Vppの正弦波を入力して出力の振幅を観測します。-50dBは1/600なので1.67mVppの振幅となりこれより減衰した場合は計測出来ない結果です。

位相の回り方をカットオフ周波数1kHzで比較すると
  • バターワース特性 約360°(180°+180°)
  • ベッセル特性 約180°
  • チェビシェフ特性 約440°(180°+180°+90°)
となっていて、シミュレーションとほぼ合致しています。

ステップ応答


WaveFormsのWavegenとScope機能を使用しました。入力は50Hz/1Vppの矩形波です。

バターワース特性

ベッセル特性

チェビシェフ特性(0.5dB)

ベッセル特性はほとんど振動がなく、立ち上がり・立ち下がりも最も速くなっていてシミュレーションと合致しています。

ノコギリ波の応答


WaveFormsのWavegenとScope機能を使用しました。入力は50Hz/1Vppのノコギリ波です。

バターワース特性

ベッセル特性

チェビシェフ特性(0.5dB)

ノコギリ波の応答もベッセル特性が最もきれいでノコギリ波の原形を保っています。

過渡特性の振動は楽器としての音作りには面白いかも知れませんが、再現性が要求されるオーディオ用途ではベッセル特性を利用するのが良さそうです。過渡特性が良い代わりにキレが悪い点は留意する必要があります。

カットオフ周波数1kHzでのステップ応答


カットオフ周波数の1kHz/1Vppの矩形波を入力して応答をみてみました。

バターワース特性

ベッセル特性

チェビシェフ特性(0.5dB)

どれも高調波歪が取れて正弦波が出力されています。チェビシェフ特性はカットオフ周波数付近にピークがあるため、出力振幅が大きくなっています。

カットオフ周波数の波形なので、位相はバターワース特性は360°回り同相、ベッセル特性は180°回り逆相となっています。

まとめ


8次という比較的高次のアクティブフィルタで性能が出せるか心配でしたが、まずまず満足できる結果です。

Rは金属皮膜の誤差1%品ですが、Cはフィルムコンデンサで材質はマチマチ、ほとんどが誤差10%品です。個体の選別も行っていませんがそれらしい特性の回路を組むことが出来ました。

この程度の規模の回路になると、ユニバーサル基板を使って手組みすると丸一日仕事となり検査も大変です。ミスが有った場合は原因特定や修正などさらに手間がかかります。

プリント基板を使った結果、部品の準備(値の確認、フォーミング、仮配置)で1時間程度、はんだ付けで1時間程度で組むことが出来ました。検査も電源系の導通、絶縁、容量をかんたんに確認したあと測定に移ることができました。

アナログ回路にデジタル回路を接続する場合、LPFはほぼ必須だと思います。基板を用意しておけば、所望の特性のフィルターがすぐに作れるので便利だと思います。

機会があれば、正帰還(VCVS)版のプリント基板も製造してもらって実験してみたいと思います。

2020年10月4日日曜日

8次多重帰還LPFの実験 バターワース特性、ベッセル特性、チェビシェフ特性の比較 その1

アクティブフィルタはデジタル世界とアナログ世界を行き来するとき、アナログ側のフロントエンドだと思います。

8次ともなると素子数が多く配線も複雑になるので、アクティブフィルタの実験用にプリント基板を焼いてもらいました。

RCの定数を変更すれば特性の異なるLPFを実装できます。無茶をしてRとCを入れ替えれば8次多重帰還HPFにもなります。

回路図

基板図

設計したフィルタの定数を入れるため、R/Cの値は未定としています。オペアンプU3A周りは単電源しか使えない場合に仮想GNDを作るためのものです。単電源をJ5(S_PWR_IN)に入力し仮想GNDを使った両電源をJ6(D_PWR_OUT)に出力します。

仮想GNDを使う場合はJ6(D_PWR_OUT)からJ1(D_PWR_IN)に3線で配線します。

仮想GNDを使う場合は電源を電池電源にするなど入出力信号とGNDを分離しておく必要があります。信号系のGNDレベルをV-に入力すると事故の原因になります。

※U3Bは未使用なのでボルテージフォロアにしています。U3Bの非反転入力(U3Bの5Pin)をV-につないでしまっていますが、V+/V-の中点(U3Aの3Pin)につないだほうが良いと思います。

プリント基板

フィルタの特性


バターワース特性、ベッセル特性、チェビシェフ特性(リプル0.5dB)をそれぞれカットオフ周波数1kHzで設計し比較します。

バターワース特性は通過域が平坦になります。ベッセル特性はフィルタのキレは劣りますが、過渡特性に優れます。チェビシェフ特性は通過域にリプルが出ますが、フィルタのキレが良好です。

まずはLTSpiceでシミュレーションします。定数はRはE12系列、CはE6系列で求めています。

シミュレーション回路図


シミュレーション回路図 バターワース特性

シミュレーション回路図 ベッセル特性

シミュレーション回路図 チェビシェフ特性 0.5dB

AC特性


AC特性 バターワース特性

AC特性 ベッセル特性

AC特性 チェビシェフ特性 0.5dB

カットオフ周波数1kHzの1オクターブ上の2kHzの利得を比較すると
  • バターワース特性 約-50dB
  • ベッセル特性 約-10dB
  • チェビシェフ特性 約-70dB
位相の回り方をカットオフ周波数1kHzで比較すると
  • バターワース特性 約360°
  • ベッセル特性 約180°
  • チェビシェフ特性 約440°
となっています。

ステップ応答


ステップ応答 バターワース特性

ステップ応答 ベッセル特性

ステップ応答 チェビシェフ特性 0.5dB

ベッセル特性のステップ応答では振動がほとんど見られず、立ち上がり・立ち下がりも最も速くなっています。

ノコギリ波の応答


シンセではノコギリ波を使うことも多いので、ノコギリ波の応答もシミュレーションしました。

ノコギリ波の応答 バターワース特性

ノコギリ波の応答 ベッセル特性

ノコギリ波の応答 チェビシェフ特性 0.5dB

 ノコギリ波の応答でもベッセル特性の波形が最もきれいです。

2020年1月30日木曜日

汎用8次多重帰還ローパスフィルタ基板を妄想

メモです。

DACの出力に入れるためのLPFの製作を省力化するためにプリント基板を焼くかどうか。

要件


電源: 単電源9V程度、または±12V程度
フィルタ特性: 8次多重帰還LPF 定数は実装時に決める。
その他: 単電源で使う場合は両電化した仮想GNDを出力できること。

8次ベッセル特性でカットオフ周波数 fc=96[kHz]で設計した場合のシミュレーション。 


一回はブレボで実験してみるつもりです。

次数が低いところ(2次とか4次とか6次)でも測定できるようにする?

2019年6月4日火曜日

アクティブLPFと積分器の違い

ローパスフィルタと積分器は兄弟みたいなものですが、決定的な違いがあります。

時定数がかかっているかいないかです。

シミュレーション


1kHz/2Vp-pの矩形波を入力して応答をシミューレーションしました。

RCフィルタ 一次LPF


抵抗とコンデンサを使ったパッシブLPFです。

回路図

時定数: τ = R * C = 0.1 [ms]
カットオフ周波数: fc = 1 / (2 * π * R1 * C1) ≒ 1.6 [kHz]

過渡解析

アクティブ一次LPF


RCフィルタのような特性で増幅率も設定可です。

回路図

カットオフ周波数: fc = 1 / (2 * π * R2 * C1) ≒ 1.6 [kHz]
増幅率: Av = -(R2 / R1) = -1

過渡解析

反転回路なので、出力は反転していますが、過渡応答はRC LPFと同様です。

積分器


リニアに積分される回路です。積分を数値として扱うなら、時定数がかかっていない「積分器」が一番正確です。でも、「音」という自然現象はそれほどきっちりしていなく、場合によっては、時定数のかかったぬるい波形の方が味があったりすると思います。

回路図

アクティブ一次LPFの帰還抵抗を外した形です。R2 = ∞ とすると、カットオフ周波数 fc = 0 [Hz]、増幅率 Av = -∞です。

.tranコマンドにstartupオプションを付けてシミューレーションしています。

過渡解析

.tranコマンドにstartupオプションをつけないと

過渡解析

出力が正電源側に張り付きます。これは実験でも同じような結果になりました。

ブレッドボードで実験


ブレッドボード配線図

入力: SQR_FG
電源: 電流/電圧計付可変両電源
電源電圧: +11.55V / -11.32V
OPAMP: NJM4580DD

RCフィルタ 一次LPF




ch1:IN ch2:OUT

入力の矩形波がビビっているのはSQR_FGの出力の駆動力不足です。←AVRのGPIO出力を300ΩのPOTで分圧している。

アクティブ一次LPF



ch1:IN ch2:OUT

積分器



ch1:IN ch2:OUT

シミューレーションと同じように出力が正電源側に張り付いています。

1MΩの帰還抵抗を入れると



ch1:IN ch2:OUT

矩形波が積分されてリニアな三角波が出力されます。

この場合、以下のようなアクティブ一次LPFになります。

カットオフ周波数: fc = 1 / (2 * π * R2 * C1) ≒ 16 [Hz]
増幅率: Av = -(R2 / R1) = -100

2018年10月27日土曜日

Nucleo DCO 出力部 はんだ付け完了

出力部(主にデジタル歪を除去するLPF)をはんだ付けしました。

出力部ブロック図

回路図

IC1(TLE2426)で9Vの単電源から±4.5Vの仮想GNDを作っています。IC2A(NJM4580)は3倍の非反転増幅回路で、C4、R1のACカップリングのバッファとしての役割も兼ねています。

IC2B、IC3A、IC3B(NJM4580)は6次VCVS LPF(ベッセル特性、カットオフ周波数20kHz)です。

JP3(BYPASS)はACカップリングと増幅のみでLPFを通さない出力です。

PSU(電源部)はNucleoと共有していて電源電圧が変動するのを避けるために、デカップリングコンデンサのC1は470uFのOSコンを使用しました。(大容量、低ESR)

基板図

基板は秋月のB基板(ユニバーサル基板)を使いました。

部品面

ハンダ面

周波数特性


壊してしまったAD9833モジュールの代替品が届いたので、AD9833_FGが復活しました。

Aliexpressでの購入で到着まで18日でした。10月初旬は中国の祝日や台風があったりして配送に時間がかかっていましたが、だいぶ速く到着するようになってきました。


出力負荷: 10kΩ
電源電圧: 8.94V
OPAMP: NJM4580DD x 2


3倍増幅なのでAv≒9.5dBで、-3dBの6.6dBあたりと、Nucleo DCOのサンプリング周波数の50kHz(現状は62.5kHzで動作)に黄色い破線を引きました。

カットオフ周波数は低域は1.5Hz、高域は20kHz付近でほぼ設計通りです。(参考「Nucleo DCO 出力部(LPF)の検討(2)」)

50kHzでの減衰率は-24.5dB(-15dB - 9.5dB)で当初の仕様(-20dB)を満足できました。

測定データ


※グラフはVampで作成しました。

Vp-p

F(Hz) In(mV) Out(mV) Av Av(db)
1 1000 1520 1.52 3.636871759
2 1008 2300 2.281746032 7.165346078
3 1000 2580 2.58 8.232394119
4 1008 2700 2.678571429 8.558064641
5 1008 2780 2.757936508 8.811685276
6 1008 2820 2.797619048 8.935771524
7 1024 2840 2.7734375 8.860367668
8 1016 2860 2.81496063 8.989446504
9 1016 2880 2.834645669 9.049975596
10 1032 2880 2.790697674 8.914255809
20 1016 2920 2.874015748 9.16978287
30 1024 2940 2.87109375 9.160947475
40 1016 2920 2.874015748 9.16978287
50 1016 2920 2.874015748 9.16978287
1000 1000 2900 2.9 9.247959958
5000 992 2800 2.822580645 9.012927184
6000 1000 2760 2.76 8.818181641
7000 1000 2760 2.76 8.818181641
8000 1000 2720 2.72 8.691378081
9000 992 2680 2.701612903 8.632462437
10000 1008 2640 2.619047619 8.362867895
20000 1000 1960 1.96 5.845121427
30000 1008 1160 1.150793651 1.219949142
40000 984 516 0.524390244 -5.606907936
50000 976 200 0.204918033 -13.76839644
60000 968 96 0.099173554 -20.07208249
70000 944 50.4 0.053389831 -25.45082916
80000 944 39.2 0.041525424 -27.63371855
90000 928 28.8 0.031034483 -30.16310977
100000 904 32.8 0.036283186 -28.80589174

Vamp

F(Hz) In(mV) Out(mV) Av Av(db)
1 952 1440 1.512605042 3.594510874
2 960 2220 2.3125 7.281634828
3 960 2500 2.604166667 8.313375513
4 944 2620 2.775423729 8.86658594
5 968 2700 2.789256198 8.909768137
6 960 2760 2.875 9.172756981
7 968 2780 2.871900826 9.163388772
8 968 2800 2.892561983 9.225653481
9 968 2780 2.871900826 9.163388772
10 968 2820 2.91322314 9.28747502
20 968 2840 2.933884298 9.348859655
30 968 2860 2.954545455 9.409813516
40 968 2860 2.954545455 9.409813516
50 968 2860 2.954545455 9.409813516
1000 960 2900 3.020833333 9.602535297
5000 952 2760 2.899159664 9.245442674
6000 960 2720 2.833333333 9.04595342
7000 968 2700 2.789256198 8.909768137
8000 952 2660 2.794117647 8.924893765
9000 952 2620 2.75210084 8.793286859
10000 968 2560 2.644628099 8.44729216
20000 960 1900 1.979166667 5.929647358
30000 952 1100 1.155462185 1.255114735
40000 952 460 0.483193277 -6.317582334
50000 944 168 0.177966102 -14.99325425
60000 928 66 0.07112069 -22.96008081
70000 920 26.4 0.028695652 -30.84367801
80000 912 8 0.00877193 -41.13809703
90000 880 5.6 0.006363636 -43.9258929
100000 872 0 0 #NUM!