2018年2月4日日曜日

Arduino LFO Ouput Boardの検討

MCP4922の出力の後段に入れるOutput Boardを検討しました。

回路図

LPFはとりあえず4次CR LPFにしました。C3とR5はACカップリングでず。カットオフ周波数fcは fc = 1 / (2 * π * C3 * R5) ≒ 0.048Hzです。C3の両端の電位関係が不定なので両極性の電解コンデンサを使いました。

LPFのインピーダンスが低く、後段のインピーダンスが高いので間にバッファは入れていません。節約出来ました(^q^/

R6とR7で3.3VのVREFを分圧してU3のボルテージ・フォロワでバッファリングしてバイアスとしています。

D1は3.3VのVREF、D2はGNDに対するLimiterです。C3でACカップリングしていて直流電流は流れないので電流制限抵抗は入れていません。

U2のボルテージ・フォロワは出力バッファで、R8は出力保護・発振予防として入れました。

OPAMPは単電源OPAMPを使用します。

過渡解析(1Vp-p)

50Hz 1Vp-pのノコギリ波を入力としました。BIAS電圧を決めるR6とR7の値を変えてパラメータ解析しました。分圧値によって波形の基準電位がシフトされています。

過渡解析(3.3Vp-p)

50Hz 3.3Vp-pのノコギリ波を入力としました。最大電圧は3.9V程度、最小電圧はGNDで出力が制限されています。

リミッターなしの回路図

上側のリミッターのD1のみ外してみると、

過渡解析(3.3Vp-p)

出力は電源電圧の5V~GNDの出力になります。(実際はOPAMPの特性によって最大電圧は制限される)

AC解析

周波数が高い方の減衰は4次CR LPFによるもので、低い方の減衰はC3とR5のACカップリングによるものです。

ブレッドボードで実験


ブレッドボード配線図


負荷抵抗は10kΩとしました。

信号波形の反転


単電源OPAMPのLM358N、NJM13404D、NJU7032D(CMOSタイプ)、フルスイングのNJM2732Dを使ってみると、LM358NとNJM13404DではGND付近で信号波形が反転してしまいました。

Level:最大、BIAS:最小で測定。

LM358N

ch1:MCP4922の出力 ch2:OUT

NJM13404D

ch1:MCP4922の出力 ch2:OUT

NJU7032D

ch1:MCP4922の出力 ch2:OUT

NJM2732D

ch1:MCP4922の出力 ch2:OUT

とりあえず、電源電圧に余裕のあるNJU7032D(VDD=3V~16V)を使ってみることにします。

出力波形


入力を3.3Vp-p、50Hzのノコギリ波にして波形を測定しました。

Level:最大、BIAS:最小

ch1:MCP4922の出力 ch2:OUT

Level:最大、BIAS:最大

ch1:MCP4922の出力 ch2:OUT

出力OUTは、最大3.84V、最小GNDで電圧が制限されています。

Limiter用のD1をショットキーバリアにしてみる。


普通のシリコンダイオードよりショットキーダイオードの方がVfが小さく、より3.3Vに近い値で制限できそうなので、D1を1N4148→1S4に差し替えてみました。

Level:最大、BIAS:最大

ch1:MCP4922の出力 ch2:OUT

Level:最大、BIAS:最小

ch1:MCP4922の出力 ch2:OUT

最大電圧が3.52Vで、ショットキーバリアの方がよさそうです(^q^/

IO入力のDC特性はATMega328PでVCC+0.5V(3.3V駆動で3.9V)、STM32F303で4.0Vとなっているのでシリコンダイオードでも大丈夫そうですが(@@?

BIASを調整


BIASを変えて波形がGND~3.3Vの真ん中にくるようにしてみました。

最大振幅

ch1:MCP4922の出力 ch2:OUT

1Vp-p

ch1:MCP4922の出力 ch2:OUT

リミッターを外す


D1を外してみました。

Level:最大、BIAS:最大

ch1:MCP4922の出力 ch2:OUT

Level:最大、BIAS:最小

ch1:MCP4922の出力 ch2:OUT

リミッターをはずと最大電圧は4.6Vになりました。電源電圧(VCC)は4.87VでNJU7032によって振幅が制限されているようです。

消費電流: 20mA(自作電流計で測定)

0 件のコメント:

コメントを投稿