製作モジュール一覧

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

2020年2月10日月曜日

ACS712_AmMeter完成(したものの・・・)

ACS712_AmMeterを透明プラケースに収めました。


上蓋を外した状態。基板と電池ケースの固定はまだです。

電流が流れていない状態で、正負ともに-003mAという表示になっていますが、ACS712モジュールのトリムでオフセットを調節しても、時間とともに値が徐々に変化し、±5mA程度の誤差が出るのは仕方がないようです。

電流を流して測定

電流を流して表示値を測定するために、セッティングしている間に電流を流していない状態で、正負とも-005mAになってしまいました。

この状態で0mA表示になるようにオフセットを調節しました。


100Ω/3Wの酸金を並列にして50Ωの負荷として、可変電圧源から電圧を加えて電流を流して表示値を測定しました。

正側

負側

正側

正電圧[V] 正電流[mA] 表示値[mA] 差[mA] 誤差[%]
5 100 98 -2 -2.00%
6 120 118 -2 -1.67%
7 140 138 -2 -1.43%
8 160 154 -6 -3.75%
9 180 177 -3 -1.67%
10 200 194 -6 -3.00%

負側

負電圧[V] 負電流[mA] 表示値[mA] 差[mA] 誤差[%]
-5 -100 -100 0 0.00%
-6 -120 -120 0 0.00%
-7 -140 -136 4 -2.86%
-8 -160 -161 -1 0.63%
-9 -180 -179 1 -0.56%
-10 -200 -198 2 -1.00%

サイズがでかくなった割に精度はいまいちですが、今回はこれぐらいで。

ただし、磁気には非常に弱いです。

スピーカーの近くに置いてみた

電流を流していない状態で、正側が-014mA、負側が-015mAという表示になっています。スピーカーはYAMAHAのMSP3で一応防磁タイプですが、影響が出てしまいました。

メタルケースに入れたりして磁界を遮断すればもう少し精度は良くなるかもしれません。

2020年2月4日火曜日

ACS712_AmMeter はんだ付け完了

回路図

基板図

部品面(バーツ挿入なし)

部品面(バーツ挿入あり)

ハンダ面

OLED表示

ケース内レイアウト(案)

作った基板は、単体では2次VCVS LPF(時定数:0.1[s])付きの、2系統電圧計です。

入力に電圧を加えて、テスタ(OWON B35)の測定値と基板の表示値を比較しました。

使用したOPAMP: NJU7032

正電源側

V(mV) Display Err(mV) Err(%)
503.3 490 -13.3 -2.6%
1005 995 -10 -1.0%
1509 1501 -8 -0.5%
2020 2011 -9 -0.4%
2505 2497 -8 -0.3%
3003 2997 -6 -0.2%
3504 3498 -6 -0.2%
4033 4028 -5 -0.1%
4503 4499 -4 -0.1%
5016 5119 103 2.1%

負電源側

V(mV) Display Err(mV) Err(%)
502 490 -12 -2.4%
1025 1015 -10 -1.0%
1501 1491 -10 -0.7%
2036 2031 -5 -0.2%
2510 2502 -8 -0.3%
3004 2997 -7 -0.2%
3510 3503 -7 -0.2%
4008 4003 -5 -0.1%
4504 4499 -5 -0.1%
5007 5119 112 2.2%



測定範囲の両端付近で若干誤差が大きいですが、まずまずの精度でしょう。OPAMPの品種を変えれば直線性が改善するかもしれません。

メモ:


自分で作ったKiCADのArduino Pro Miniのコンポーネントのピンアサイン(A0~A3あたり)が間違ってるかも?

【2020.02.07】KiCADのコンポーネントを修正。

2020年1月28日火曜日

ACS712利用両電源電流計 基板設計

使いながらファームウェアをいじることを考えて、一応キャリブレーションするためのスイッチを付けておくことにしました。

ブロック図

回路図

基板図

KiCADによる3D表示

部品並べ

KiCADの3D表示はかなり現物に近い表示ができてますね。プリント基板を焼くときには強い味方になってくれると思います。

aitendoで購入した1uFのフィルム・コンデンサーはまとめて買ったのに外形のサイズが微妙に違ってました。電気的な性能は選別すればまあまあなので良しとしましょう。

ジャンパーが結構多くなってしまったので、基本的に裸のスズメッキ線を使うことにしました。長いジャンパーだけ被覆あり。加工がめんどくさいんです。

memo:


キャリブレーション・スイッチはINTが使えるPINにする?

2020年1月22日水曜日

ACS712利用両電源電流計の設計

ACS712は被測定物と測定結果電圧を絶縁して使えるのがメリットですが、色々と癖が強いようです。

まずノイズが多くて単純にADCで出力電圧を拾うとその時々によって測定誤差が大きく出ます。これはLPFを通すことでクリアできそうです。

また、ホール素子を使用しているため環境の磁力によって大きな測定誤差が発生します。

ブレッドボードで回路を仮組みして、電流を流さない状態でACS712付近に磁化したドライバを近づけてみた反応です。

通常時(0mA測定)

測定結果は0mA程度になっています。

磁化したドライバを近づけた場合(0mA測定)

磁化したドライバをもっと近づけた場合(0mA測定)

測定限界(表示値としては±500mA程度になる)を超えた結果になります。

また、条件は定かではないのですが、無電流時に±10mA以上流れている表示になったりすることもあります。これは無電流時に0mA表示になるように、ハードウェア的もしくはソフトウェア的にキャリブレーションすることで解決できるかもしれません。

とりあえずお蔵入りさせるのは忍びないので運用テストできるレベルで組んでみたいと思います。

ケース内仮配置


大きなケースを使えば配線も楽になるし、メタルケースを使えば磁力への耐性も向上すると思いますが、使い慣れた秋月の透明プラケースに収めることを要件としました。

汎用性/可用性を考えると、バナナ端子/ジョンソン端子を使いたいのですが、いかんせんサイズがでかいので、GND線は電流をハイサイドで測定する上で必要がないので、筐体内を通さないことにしました。

ブロック図

あとからのいじりやすいようにアナログ回路とデジタル回路を別基板で実装することも検討したのですが、同一基板で実装したほうがスペース的に有利です。

回路図

基板図

※配線まだ

KiCadによる3D表示


2020年1月6日月曜日

ACS712利用両電源電流計の構想 その2

以下のような構成で製作することを考えました。

ブロック図

ブレッドボードでテスト

※現段階ではOLEDの表示はダミーです。

ファームウェアをプログラミングして様子を見てみたいと思います。

メモ:

電源電圧を分圧してADCで監視。

アナログ系とデジタル系は基板を分ける?

Arduino pro mini / nanoはAREFが使えないので基準電圧はVCC?

LDOのNJM2396は出力電圧が比較的高精度のよう。

2020年1月3日金曜日

ACS712の出力にアクティブLPFをかけてみる

ACS712の出力はノイズが大きいのでアクティブLPFをかけてノイズをカットすることを考えてみました。

ACS712出力は単電源波形なので、アクティブフィルタに使うOPAMPの電源は、+5Vの単電源をRail Splitterで分圧して仮想GNDとしました。GNDレベルを決めるだけなので抵抗による分圧でもいいかもしれませんが、念の為TLE2426を使いました。

フィルタは位相を反転させたくないので多重帰還ではなくVCVSを使いました。必要なのはDC値なのでカットオフ周波数は低いほうがいいのですが、時定数が大きくなるとレスポンスが鈍くなるので、Cをフィルムコンデンサーを使う方向で適当に定数を決めました。抵抗値も大きすぎると熱雑音が心配になってきます。

シミュレーション回路図

時定数 τ = R * C = 6.8[kΩ] * 0.47[uF] ≒ 3.2[ms]
カットオフ周波数 fc = 1 / (2 * Π * C * R) ≒ 50[Hz]

AC解析

VCVSなので高周波数で利得が上がっていますが目をつぶります。

過渡解析

ノイズとして500Hz、1Vp-pの矩形波を入力しています。フィルターを通すとノイズはそこそこ取れているし定常状態になるにも20ms程度で済んでいます。+50mV程度オフセットが出ていますがACS712モジュール側のオフセット調整でなんとかなりそう。

ブレッドボード図

実験中のようす

電流は100Ωの抵抗を並列にして50Ωの負荷とし、+5Vを印加して100mA流しています。

OPAMPは低電圧で動作するフルスイングCMOSタイプのNJU7032を使いました。

オシロで観測


無電流時

ch1:ACS712の出力 ch2:フィルタ通過後

100mA時

ch1:ACS712の出力 ch2:フィルタ通過後

ACS712のオフセットやゲインをきっちり調整していないので出力電圧に誤差がありますが、ノイズはかなり低減できています。

以下、オシロの入力をAC結合して波形を拡大したところです。

無電流時

ch1:ACS712の出力 ch2:フィルタ通過後

100mA時

ch1:ACS712の出力 ch2:フィルタ通過後

1.4Vp-p程度あったノイズを50mVp-p程度まで低減できました。なんとかなりそうかな?

2020年1月2日木曜日

ACS712はノイズが多い

あけましておめでとうございます。

ACS712でかんたんに電流計を作ろうと目論んでいますが、出力ノイズが多いようです。

計測しているようす

前回、出力電圧をテスタで測っていたところをオシロで見てみました。

ACS712電源OFF

ch1:正電源 ch2:負電源

ACS712電源ON 電流0mA

ch1:正電源(電流なし) ch2:負電源(電流なし)

ACS712電源ON 電流50mA

ch1:正電源(電流+50mA) ch2:負電源(電流-50mA)

中心値(V)を見ると入力した電流に従って出力電圧が変化しています。±50mA流しているので計算上は±250mVの変化になります。

ところがオシロの表示値(Vp)を見るとノイズが1Vpp以上あります。出力電圧の変化に対してノイズが大きすぎます。

反応が鈍くなりますが、Analog/DigitalのLPFを入れて、測定値をならすかどうか悩みます。

新春早々悔しいですが、一旦保留してしまうかも?

2019年12月28日土曜日

ACS712利用両電源電流計の構想

自作の電流/電圧計付可変両電源は一応電流を測定できますが、ローサイドで測定しているため、片電源で利用する場合でしか電流を測定できません。

単電源の電流計は以前、LED電圧計を利用したものを製作しました。精度はあまり良くありませんが、電源電流を測定するのに便利です。電源と回路の間に入れておくと、電源電流が流れすぎて「何かがおかしいぞ」とすぐに判断できます。

秋月でAllegroのACS712を使った電流センサーモジュールが販売されていたので、これを使って同じように両電源電流計が作れないか考えました。

ACS712の特徴はホール素子を利用して、被測定電流側と、電圧出力と電源側が絶縁されていることです。絶縁されているので正側、負側の出力電圧を測定してマイコンで処理すれば、比較的かんたんに両電源の電流が測定できそうです。

ホール素子を利用しているということは、測定対象の電流によって発生する磁力をホール素子で電圧に変換しているということでしょうか。とにかく磁気は厳禁です。

購入したACS712使用電流センサー

表面実装部品ははんだ付けされているので、スルーホールの大きな部品だけ自分ではんだ付けする必要があります。

オフセット、ゲイン調整


マニュアルに従って出力オフセットとゲインを調整しました。100mA→500mVの設定です。5V電源を使うと±500mAまで測定できます。

磁気を避けるために樹脂製の調整ドライバーを近所で探したのですが、売っていなかったので田楽用の竹串をカッターで削ってマイナスドライバー状のものを作りました。


竹なのでまずまず強度はありますが、すぐにボロボロとヘタってきます。カッターで削り直しながら使いました。ちなみに、割り箸だと弱すぎて実用になりませんでした。

両電源の電流測定のテスト


測定回路図

測定時のようす

被測定電流用の電源(可変両電源)と、モジュールの電源(5V/3.3V安定化電源Ver.2)は分離しました。(GNDも分離)

モジュール側電源電圧
正側: +5.020V
負側: +5.018V

無電流時出力電圧
正側: +2.460V
負側: +2.490V

測定対象抵抗(100Ω)端間電圧
正側: +5.080V
負側: -4.996V

50mA時出力電圧
正側: +2.200V
負側: +2.744V

正側が2.25V、負側が2.75Vになるはずですが誤差が結構あります。

- 理論値[V] 測定値[V] 誤差[mV] 誤差[mA]
正側 2.25 2.200 -50 -10mA
負側 2.75 2.744 +11 +2.2mA

環境の磁界が影響しているのでしょうか。測定中も出力電圧がかなりふらつきます。もう少ししっかりと組んでみて調整しようと思います。

仕様案


Auduino Pro miniを使う予定。

ADCは精度を上げるため外付けのMCP3208を利用。

表示はI2C LCDまたはOLED。

電池電源を使ってポータブルにする。

過電流が流れている場合(例えば500mA以上)ブザーを鳴らす?

電磁シールドを使う?