既知の基準なしで電圧を監視


12

私は、バッテリー切れの小さなセンサープラットフォームで作業しています。電圧が低くなりすぎたときにアラートをトリガーできるようになりたいです。問題は、その電圧を測定するために使用するものはすべて同じ電圧源から給電されることです。価値のあるものとして、4xAA充電式バッテリー(最初は4.8 Vですが、システムはXBeeトランスミッターを含む2 V程度まで動作するようです)からArduino Pro-miniクローン(3.3 V)を実行しています。

誰もこれを動作させる方法について賢いアイデアを持っていますか?ATmegaチップのアナログ入力を使用するものは、入力電圧をそれ自体と比較するだけのようです。たぶん、レギュレーターから来るものとバッテリー自体から来るものとの違いをチェックしますか?

回答:


10

ADCを備えたほとんどの(すべて?)AVRには、電圧供給に関係なく一定値に調整される内部基準電圧があります。データシートを確認してください...使用しているチップでは、2.56Vです。Vcc、AREF、または内部電圧リファレンスとの比較を選択するレジスタがあります。最大電圧が2.56Vを超えないように分圧器を使用して、内部電圧リファレンスと比較するように設定するだけです。


1
これは通常、バンドギャップ参照であり、最も信頼できる参照の1つです。広い温度範囲にわたって非常に安定しています。
Kortuk

私はこれを受け入れています:a)時間の経過とともに電圧を測定できるようになり、b)すでに手元にある部品で実行できる可能性があるからです。
エデビル09


7

これらのテキサスのような供給監督者はどうですか?

通常、電源を監視し、一定のしきい値を下回ると、出力ピンの状態が変化します。

その後、これをプロセッサのマスク不能割り込み(またはリセット)ピンに接続できます。


これが最良の答えです-コンパレータ+パルスジェネレータであるハードウェアソリューションが本当に必要です。ADCを使用して電圧を測定しても、電源電圧がADCで測定できるよりも速く低下する高速グリッチから保護することはできません。
ジェイソンS

バッテリーで実行しているときに発生する可能性がありますか?
エデビル2009

大電流の負荷がある場合。
ジェイソンS

または、3.3Vレギュレーターが故障した場合!
ジェイソンS

1

Arduinoが内部バンドギャップリファレンスの測定をサポートしていない場合は、外部リファレンスを使用してください。

入力ピンの電圧は基準ダイオードによって一定に保たれますが、ADCは電源を基準にしているため、読み取る値は電源によって異なります。たとえば、リファレンスが1.0 Vで、ADCが1024のうち512を読み取る場合、電圧レールが2 Vにあることがわかります。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.