Memantau tegangan tanpa referensi yang diketahui

12

Saya sedang mengerjakan platform sensor kecil yang kehabisan baterai. Saya ingin sekali dapat memicu peringatan ketika voltase terlalu rendah. Masalahnya adalah apa pun yang saya gunakan untuk mengukur tegangan akan didukung oleh sumber tegangan yang sama. Untuk apa nilainya, saya menjalankan klon Arduino Pro-mini (3,3 V) dari 4xAA yang bisa diisi ulang (4,8 V untuk memulai, tetapi sistem tampaknya bekerja hingga 2 V atau lebih, termasuk pemancar XBee).

Adakah yang punya ide cerdik untuk mengerjakannya? Sepertinya apa pun yang menggunakan input analog dari chip ATmega hanya akan membandingkan tegangan input dengan dirinya sendiri. Mungkin memeriksa perbedaan antara apa yang berasal dari regulator dan apa yang berasal dari baterai itu sendiri?

edebill
sumber

Jawaban:

10

Kebanyakan (semua?) AVR dengan ADC memiliki tegangan referensi internal yang diatur ke nilai konstan, terlepas dari pasokan tegangan. Periksa lembar data Anda ... dalam chip yang saya gunakan, ini 2.56V. Ada register yang memilih antara membandingkan terhadap Vcc, AREF, atau referensi tegangan internal. Anda baru saja mengaturnya untuk dibandingkan dengan referensi tegangan internal, bersama dengan menggunakan pembagi tegangan sehingga tegangan maksimum tidak pernah lebih dari 2.56V.

davr
sumber
1
Ini, biasanya referensi band-gap, adalah salah satu referensi yang paling dapat diandalkan. Mereka sangat stabil pada rentang suhu yang luas.
Kortuk
Saya menerima yang ini karena: a) itu akan memungkinkan saya untuk mengukur tegangan dari waktu ke waktu dan b) mungkin dilakukan dengan bagian-bagian yang sudah saya miliki.
edebill
7

Bagaimana dengan supervisor persediaan seperti yang ada di Texas ini ?

Biasanya, mereka memantau pasokan, dan jika dips di bawah ambang batas yang tetap, pin keluaran berubah status.

Anda kemudian dapat menghubungkan ini ke pin interupsi (atau reset) non-maskable prosesor Anda.

Steve Melnikoff
sumber
ini adalah jawaban terbaik - Anda benar-benar membutuhkan solusi perangkat keras yang merupakan komparator + generator pulsa. Mengukur tegangan dengan ADC tidak akan melindungi Anda dari gangguan cepat di mana tegangan suplai turun lebih cepat dari yang dapat diukur oleh ADC.
Jason S
Apakah itu kemungkinan terjadi ketika menggunakan baterai?
edebill
Jika Anda memiliki beban arus tinggi, mungkin.
Jason S
Atau jika regulator 3.3V gagal!
Jason S
1

Jika Arduino Anda tidak mendukung pengukuran referensi celah pita internal, cukup gunakan referensi eksternal.

Tegangan pada pin input akan dijaga konstan oleh dioda referensi, tetapi nilai yang Anda baca akan bervariasi tergantung pada suplai, karena ADC dirujuk ke suplai. Jika referensi Anda adalah 1,0 V, misalnya, dan ADC Anda membaca 512 dari 1024, maka Anda tahu rel tegangan berada pada 2 V.

endolit
sumber