アナログ入力を使用してArduinoの電源電圧を測定する


9

5vバッテリー(ステップアップモジュールに3.7v)を使用してArduinoに電力を供給していて、電圧を測定する必要があります。バッテリーが大電流を供給しているとしましょう。AnalogInで電圧を測定しても安全ですか?このように:

ここに画像の説明を入力してください

私が尋ねている理由は、ArduinoのADCアーキテクチャと制限についてあまり知らないためです。だから通常、私は安全のためにそうします:

ここに画像の説明を入力してください

最初の図の接続はADCにとって安全ですか?前もって感謝します!

注:同様の質問がここで行われました:(DC電力使用量の監視)が、バッテリーの高電流負荷の質問には答えません。


1
5Vバッテリーはどこで入手しましたか?

実際には、昇圧電圧レギュレータ回路に入るのは3.7vバッテリーです。私は確かに3.7vバッテリー自体を測定することに興味がありますが、例として、Arduinoが動作していることを示すために5vと仮定しました。
アーメド・ファリッド

ああ、でもそれは状況を変えるかもしれません。おそらくそうではないかもしれません:arduinoは、すべての電流がIOピンを通過しない限り、バッテリーがどれだけの電流を消費するかを気にしません。しかし、私は確かではありません、私はarduinoを知りません。

それは本当だ。バッテリーに直接接続すると、アナログ入力ピンへの電流入力が心配です。
アーメドファリッド

回答:


6

I / Oピンの入力電流については、データシートを確認してください。Arduinoのコントローラーの正確なタイプによって異なります。これはおそらく入力リーク電流I / Oピンと呼ばれ、1μA近くになります

これは、Uno / Duemilanove / ...使用される典型的なATmegaデータシートです。304ページのパラメーターを見つけることができます。正確な詳細については、特定のコントローラーのデータシートを確認しください。

3.7Vバッテリーとステップアップコンバーターを使用して5Vをコントローラーに供給する場合、バッテリーをコントローラーのアナログ入力に直接接続できます。ただし、ステップアップコンバーターの出力電圧が(なんらかの理由で)バッテリーの電圧を下回ると、Arduino全体がアナログ入力ピンを介して供給され、それは望ましくありません。すべての入力ピンは、この動作を可能にする過電圧に対する保護を備えていますが、ダイオードは連続電流に対して定格されていません。結論として、バッテリと入力ピンの間に直列抵抗を含めることが最善です。

しかし今、あなたの測定は5V電源の精度に依存しています。使用しているコントローラによっては、電源電圧よりもはるかに正確なさまざまな内部基準電圧を利用できます。グランド(R2)に追加の抵抗を追加すると、そのようなリファレンスを使用して入力電圧を正確に測定できます。これは(抵抗)分圧器と呼ばれます。与えられた比率で、バッテリー電圧が3.7Vのとき、入力ピンのボルタガは1Vになります。

Vmeasurement=R2×VBATTR1+R2

概略図

この回路のシミュレーションCircuitLabを使用して作成された回路


1
つまり、本質的にはバッテリーに直接接続することが可能ですが、5vが異なる場合はお勧めしません。5vが規制されていて一定であっても?
アフメド

2
5Vが一定であれば安全なはずですが、常に問題が発生するため、申し訳ありませんが安全です。1つまたは2つの抵抗は、新しいマイクロコントローラーよりもはるかに安価です。エンジニアリングとは、物事を機能させることだけでなく、必要に応じて機能し続ける物事を作ることでもあります。
ジッピー2013

もう1つの質問があります。バッテリーに並列の単一抵抗(1K)は、高電流入力を防ぐのに十分ではないですか。(私の2番目の図を参照)
Ahmed Farid

いいえ、それはバッテリーを引く以外に何もしません。
ジッピー2013

4

別のオプションは、Arduinoの内部1.1Vバンドギャップ電圧リファレンスを使用して、次の2つのリンクで詳述されている追加の外部部品を使用せずにVCCの値を決定することです。

http://jeelabs.org/2012/05/04/measuring-vcc-via-the-bandgap/

そして

http://arduino.cc/forum/index.php?topic=88935.0

唯一の問題は、内部の1.1Vバンドギャップに対して最大10%オフになる可能性があるため、キャリブレーション値を決定する必要があることです。

しかし、それは追加の部品を必要とせず、あなたのatmegaがその電源の電圧を決定することを可能にするでしょう。


3
これを行う方法を説明する別の記事を次に示します。使用するコードは少し異なります。provideyourown.com
2012

@ThomasWいいね!1.1vバンドギャップの使用に関するもう1つのすばらしい記事。
ウイングタンウォン
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.