Analog In kullanarak Arduino'nun güç kaynağı voltajını ölçme


9

Bir 5v pil (bir yükseltici modül için 3.7v) kullanarak bir Arduino'ya güç veriyorum ve voltajı ölçmem gerekiyor. Diyelim ki pil yüksek akım veriyor , gerilimi Analog In ile ölçmek güvenli mi? Bunda olduğu gibi:

resim açıklamasını buraya girin

Sormamın nedeni Arduino'nun ADC mimarisi ve sınırlamaları hakkında fazla bir şey bilmemem. Normalde güvenlik için bunu yapardım:

resim açıklamasını buraya girin

İlk şemadaki bağlantılar ADC için güvenli midir? Şimdiden teşekkürler!

Not: Burada benzer bir soru soruldu: ( DC Güç Kullanımını İzleme ), ancak aküdeki yüksek akım yükleri sorusuna cevap vermiyor.


1
5V'luk bir pili nereden aldınız?

Aslında bir yükseltici voltaj regülatörü devresine giren 3.7v'luk bir bataryadır. Gerçekten 3.7v pilin kendisini ölçmekle ilgileniyorum, ancak örnek olarak, sadece 5v'nin Arduino'nun çalıştığını gösterdiği varsayıldı.
Ahmed Farid

Ah, ama bazı şeyleri değiştirebilir. Muhtemelen olmasa da: arduino, tüm akım IO pininden geçmediği sürece pil tarafından ne kadar akım çekildiği umurumda değil. Ama emin değilim, arduino'yu bilmiyorum.

Bu doğru. Doğrudan bir bataryaya bağlarsam Analog Giriş pinine giden akım girişi konusunda endişeliyim.
Ahmed Farid

Yanıtlar:


6

Bir G / Ç pimindeki giriş akımı için veri sayfasını kontrol edin Arduino'nuzdaki tam kontrolör tipine bağlıdır. Muhtemelen Giriş Kaçak Akım G / Ç pini olarak adlandırılır ve 1μA civarında olacaktır .

Uno / Duemilanove / ... üzerinde kullanılan tipik bir ATmega veri sayfasıdır, parametreyi 304. sayfada bulabilirsiniz . Doğru ayrıntılar için özel kontrol cihazınızın veri sayfasını kontrol edin.

Denetleyiciye 5V sağlamak için bir 3.7V pil ve bir adım yukarı dönüştürücü kullanıyorsanız, pili doğrudan denetleyici analog girişinize bağlayabilirsiniz. Dönüştürücü yukarı adım çıkış voltajı ardından tüm Arduino analog giriş pimi ile beslenecektir (herhangi bir nedenle) pil voltajı altına düştüğünde ve Ancak zaman o size ne yok istiyorum. Tüm giriş pimleri, bu davranışı sağlayan aşırı gerilime karşı koruma sağlar, ancak diyotlar sürekli akımlar için derecelendirilmez. Sonuç olarak: batarya ve giriş pimi arasına bir seri direnç eklemek en iyisidir.

Ancak şimdi ölçümünüz 5V güç kaynağının doğruluğuna dayanıyor. Tam olarak hangi kontrolöre sahip olduğunuza bağlı olarak , güç kaynağı voltajından çok daha doğru olan çeşitli dahili referans voltajları vardır. Toprağa (R2) ekstra bir direnç eklerseniz, giriş voltajını doğru bir şekilde ölçmek için böyle bir referans kullanabilirsiniz. Buna (dirençli) voltaj bölücü denir. Verilen oranla, pil voltajı 3.7V olduğunda giriş pimindeki voltaga 1V olacaktır:

Vmeasurement=R2×VBATTR1+R2

şematik

bu devreyi simüle et - CircuitLab kullanılarak oluşturulan şematik


1
Aslında, doğrudan bir bataryaya bağlamak mümkündür, ancak 5v değişirse önerilmez. 5v düzenlenmiş ve sabit olsa bile?
Ahmed Farid

2
5V sabitse güvenli olmalı, ancak işler her zaman yanlış gidiyor, bu yüzden üzgünüm. Bir veya iki direnç yeni bir mikrodenetleyiciden çok daha ucuzdur. Mühendislik sadece işleri işler hale getirmekle kalmaz, aynı zamanda gerektiği gibi çalışmaya devam eden şeyleri de yapar.
jippie

Yapabileceğim başka bir soru: Aküye paralel tek bir direnç (1K) yüksek akım girişini önleyecek kadar iyi değil mi? (Bkz. İkinci figürüm)
Ahmed Farid

Hayır, pili çekmek dışında hiçbir şey yapmaz.
jippie

4

Başka bir seçenek, Arduino'nun dahili 1.1V bant aralığı voltaj referansını, bu iki bağlantıda ayrıntılı olarak açıklandığı gibi ek harici parçalar kullanmadan VCC değerini belirlemek için kullanmaktır:

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

ve

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

Tek sorun, dahili 1.1V bant aralığına karşı bir kalibrasyon değeri belirlemeniz gerektiğidir, çünkü% 10 kadar kapalı olabilir.

Ancak bu ek parça gerektirmez ve atmega'nızın güç kaynağının voltajını belirlemesine izin verir.


3
İşte bunun nasıl yapılacağını tartışan başka bir makale. Kullandığı kod biraz farklıdır: provideyourown.com/2012/…
ThomasW

@ThomasW güzel! 1.1v bandgap kullanımı ile ilgili bir başka harika makale.
Wing Tang Wong
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.