Lityum iyon pil voltajını ölçün (böylece kalan kapasite)


15

Ne ile çalışıyorum: 3.3V'de kendi ürettiğim Arduino kartımı (Arduino önyükleyici ve kod düzenleyicisini kullandığım anlamında) çalıştırıyorum ve karşılık gelen bir Mikroçip tarafından USB ile şarj edilmiş bir Lityum iyon pilden güç alıyorum şarj cihazı IC.

Ne elde etmeye çalışıyorum: Dakikada bir kez pil kapasitesini ölçmek istiyorum. Bağlı bir LCD'im var, bu yüzden fikir, genel kurulumun pilin belirli bir anda nasıl çalıştığını bana bildirmesi. Bataryanın veri sayfası, deşarj seviyesi eğrisine karşı bir voltaja sahiptir ve bu nedenle bataryanın voltajını ölçerek, kalan kapasiteyi tahmin edebilirim (çok kabaca ama benim için yeterli!).

Ben ne yaptım:

  • (EDIT: Direnç değerleri güncellendi ve P-MOSFET anahtarı @stevenvh ve @ Jonny'nun önerilerine göre eklendi).

  • V_plus pilinden bir voltaj bölücü bağladım, daha büyük "kısmı" Arduino / Atmega çipindeki bir analog okuma pimine (yani ADC) gidiyor.

  • Bölücü 33 KOhm-10 KOhm'dir, böylece 3.3V seviye mikrodenetleyicimden maksimum 4.1 Volt'a kadar Li-ion pil ölçümü sağlar.

  • Ayrıca, n-kanallı bir MOSFET'e bağlı G / Ç pinlerinden birini kullanarak, akımı sadece ölçüme ihtiyacım olduğunda bölücüden değiştirebilirim.

  • İşte kaba bir şema (@stevenvh ve @Nick'in önerilerine göre 2. kez güncellenmiştir):

resim açıklamasını buraya girin

Benim sorum:

  • Mevcut kurulumum nasıl?

  • Tek kısıtlarım: (1) Yukarıda açıklandığı gibi voltaj okumasına dayanarak pil kapasitesinin kabaca ölçümünü yapmak istiyorum. (2) Voltaj bölücüsünün şarj IC'mizin pilin varlığını okumasına müdahale etmesini önlemek istiyorum (orijinal kurulumumda, bölücü bazen pilin yokken bile IC'nin yanlış okunmasına neden oldu).


1
Msgstr "Büyük direnç değerleri kullandım". Giriş pimi bir kaçak akıma sahip olabilir, tipik bir en kötü durum değeri 1 uA'dır. Bölücüden geçen düşük akım ile bu, okumayı bozabilir.
stevenvh

Bu yüzden bölücüden düşük akım istiyorum, ancak maksimum kaçak akımın en azından bir büyüklük sırasına sahip olacak kadar yüksek istiyorum.
boardbite

Ya da benzer bir soruya bu cevapta önerdiğim gibi bölücüyü açmak ve kapatmak için bir FET kullanın .
stevenvh

FET yerinde, bölücünün kapalı "durumunda", bunun şarj cihazı IC'sinin pil varlığını yanlış okuması sorununu da çözebileceğini düşünüyor musunuz? (BTW, o kişinin bugün de soruyu yayınlaması ne tesadüf!)
boardbite

1
Yanlış tarafta yanlış FET var. Bunu kapatırsanız, R1 akım çekmeyeceğinden tam pim giriş pininde olacaktır. Yüksek tarafta bir P-MOSFET'e ihtiyacınız vardır, böylece onu kapatmak G / Ç pimini toprağa çeker.
stevenvh

Yanıtlar:


13

resim açıklamasını buraya girin

Bu Nick'in şemasına çok benziyor, muhtemelen :-) yayınladığında çizmekle meşguldü.

İlk olarak neden N-FET'i yüksek tarafta kullanamıyorsunuz: kaynaktan birkaç volt daha yüksek bir geçit voltajına ihtiyacı var ve 4.2 V sahip olduğunuz tek şey, daha yüksek bir şey değil, bu yüzden işe yaramaz.

100 kΩ'luk bir değer de yapacak olsa da, pull-up için daha yüksek bir değere sahibim. 10 kΩ ölçüm yaparken gereksiz fazla 400 µA akıma neden olur. Dünyanın sonu değil, ama her iki durumda da 1 direnç, bu yüzden neden daha yüksek bir değer kullanmıyorsunuz?

MOSFET'ler için, gereksinimlerin çok katı olmadığı göz önüne alındığında seçilebilecek çeşitli parçalar vardır; örneğin P-kanalı için Si2303 ve N kanalı için BSS138 gibi ucuz olanları düşünebilirsiniz .


Resmi cevap için teşekkürler! Bu özel kombinasyon için birkaç kullanım düşünebilirim. Sorudaki şemamı buna dayanarak güncelledim. Ve N-FET'in açıklamasını takdir ediyorum.
boardbite

Burada kullanmak için uygun bir N-Kanal MOSFET (ideal olarak SMD tipi) örneği olarak ne önerirsiniz? IRF530 da büyük ve çok ucuz değil gibi görünüyor. (P-Kanalı için, Si2303'ün SMD'de geldiğini görüyorum, böylece biri zaten halledildi.)
boardbite

1
@Inga - Akıma ihtiyacınız yok, bu yüzden açık direnç o kadar önemli değil. Sadece kapının eşik voltajına bakın: 3.3 V'da olmalıdır, ancak o zaman bile herhangi bir akımı batırmak zorunda kalmaz ve sonra bolca seçenek vardır. BSS138 bulabildiğim en ucuzlardan biri ve güzel bir şekilde yapacak.
stevenvh

7

@Inga. Bu bir cevaptan çok bir yorumdur. Ama bir resim göndermek istiyorum, bu yüzden bir cevap olarak gönderiyorum.

Mikrodenetleyiciniz (uC) + 3.3V ile çalışır. Önerilen P-MOSFET'in tahliyesi + 4.1V kadar yüksek olabilir. Halihazırda çizildiği gibi, bir + 3.3V mantık sinyali P-MOSFET'i tamamen kapatamayacaktır. Aşağıdaki şemadaki Q6, + 4.1V'ye toleranslı bir açık tahliye çıkışı oluşturur.

C14, A / D'nizin göreceği empedansı azaltır.

resim açıklamasını buraya girin

[...] akü gerilimi (böylece kalan kapasite)

Akü voltajını algılamanın kalan kapasiteyi algılamanın doğru bir yolu olmadığını görebilirsiniz. Taşınabilir cihazlarda (cep telefonları, dizüstü bilgisayarlar), pil kapasitesi, pilin içindeki ve dışındaki akımı ölçerek tahmin edilir. Bu görevde yardımcı olan onlarca özel pil yakıt göstergesi IC'si ( örneğin, bq27200 ) vardır.

Neden düşük tarafta tek bir N-kanal MOSFET ve üst tarafta iki direnç bölücü yok?
[aşağıdaki yorumdan]

Akü voltajı (V bat ) mikrodenetleyicinin besleme voltajından (V cc ) yüksek olduğunda düşük taraftaki bir anahtarda sorunlar vardır . Düşük yan anahtar kapalı olduğunda, voltaj bölücünün toprak ucu yüzer, bölücü artık bölünmez, tam kontrol voltajı mikrodenetleyicinin ADC pininde görünür. Bu uC'ye zarar verebilir. Ayrıca pilin deşarj olacağı bir sızıntı yolu oluşturur.
V bat > V cc olduğunda yüksek taraf anahtarı çağrılır .

1 Kısaca V cc kullanacağım , ancak bu tartışma V dd , AV cc , AV dd için de geçerlidir. Şüpheniz varsa, elbette bir veri sayfasına bakın.


Teşekkürler Nick! Bu mantıklı ve şemayı güncelledim (Yakıt göstergesi bir seçenektir, ancak aynı zamanda bazı temel elektronikleri ve deneyleri, dolayısıyla voltaj bölücü fikrini öğrenmeye çalışıyorum)
boardbite

Neden alçak tarafta tek bir N Mosfet ve üst tarafta iki direnç bölücü yok? P
Luis Carlos

1
@ Luis Cevabı düzenledim ve yanıtı yorumunuza ekledim.
Nick Alexeev

4

Ad.A: Bence akü voltajını tespit etmek için basit bir voltaj bölücü kullanmak yeterince adil. Bununla birlikte, direnci dikkatli bir şekilde seçmelisiniz. ATmega328 veri sayfasına göre ADC girişlerinizin iç empedansı 100kΩ'dur . Bkz. "Şekil 23-8. Analog Giriş Devresi". Bölücünüzün ADC girişiyle karşılaştırılabilir bir empedansı varsa, ADC giriş devresi temel olarak bölücüdeki başka bir düğüm gibi davranacaktır. Size ADC okumalarında ofset verebilir.

Raylar boyunca 10kΩ'a kadar bir ayırıcı kullanmak, sadece 410µA kullanırken ADC giriş empedansını göz ardı edecek kadar düşük olacaktır. Uygulamanız için bu çok fazlaysa, elbette daha büyük dirençler seçebilirsiniz, ancak ADC'nin orada olduğunu ve Vcc / 2'ye bağlı olduğunu unutmayın.


Bu açıklama mantıklı. Kesinlikle 0.4 mA o kadar değil! Sadece olabildiğince idealist olmaya çalışıyordum :) Neden bu bölücüye sahip olduğumda şarj cihazımın IC'sinin pil olup olmadığını okumasını etkileyebileceğine dair bir tahmininiz var mı?
boardbite

Tahminimce, bölücünün bulunduğu pozitif pil pimi ile usb'den + 5V arasında bir bağlantı var. Kendi devrenizi bilmiyorum, ama eminim Arduino şemasına bakarsanız nereye gideceğinizi çıkarabilirsiniz .
Jonny B Good

Eminim stephenh'ın gerektiğinde bölücüyü bağlamak / bağlantısını kesmek için bir FET kullanma fikrini takip ederseniz, her şey iri dory olacaktır. MOSFET'lerin bölücünüz için tamamen ihmal edilebilir dirençleri vardır. USB'nin takılı olup olmadığını izlemek için başka bir ADC'ye ihtiyacınız olabilir.
Jonny B Good

Teşekkür ederim; Soruyu iki öneriye göre güncelledim ve bir şema ekledim. USB besleme izlemesine gelince, şarj IC'nin zaten bunun için bir durum çıkışı var!
boardbite
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.