Mundarija:

Harorat va batareyani tanlash bilan batareya tekshiruvi: 23 qadam (rasmlar bilan)
Harorat va batareyani tanlash bilan batareya tekshiruvi: 23 qadam (rasmlar bilan)

Video: Harorat va batareyani tanlash bilan batareya tekshiruvi: 23 qadam (rasmlar bilan)

Video: Harorat va batareyani tanlash bilan batareya tekshiruvi: 23 qadam (rasmlar bilan)
Video: Telefonni to’g’ri quvvatlash | Batareya ishlashi | Texnoplov 2024, Noyabr
Anonim
Image
Image
Asosiy loyihadan o'zgartirish
Asosiy loyihadan o'zgartirish

Batareya quvvatini tekshiruvchi.

Ushbu qurilma yordamida siz 18650 ta batareya, kislota va boshqalarning quvvatini tekshirishingiz mumkin (men sinovdan o'tkazgan eng katta batareya - bu 6v kislotali akkumulyator 4, 2A). Sinov natijasi milliamper/soatni tashkil qiladi.

Men bu qurilmani yaratdim, chunki soxta Xitoy batareyasining imkoniyatlarini tekshirish kerak.

Xavfsizlik uchun men termistor yordamida quvvat qarshiligi va batareyaning harorati haddan tashqari qizib ketmasligi uchun qo'shib qo'ydim, bu hiyla bilan men 6v kislotali batareyani taxtani olovsiz tekshirishim mumkin (bir muddat zaryadsizlanish davrida issiq quvvat rezistoriga o'ting. va qurilma haroratni pasaytirish uchun 20 soniya kutadi).

Men atmega328 mos keladigan nano (eBay) kichik mikrokontrolrni tanlayman.

Hamma kod shu erda.

1 -qadam: Asosiy loyihadan o'zgartirish

Men OpenGreenEnergy loyihasidan g'oyani o'g'irladim va xususiyatlarni qo'shish uchun taxtani qayta ishladim, shuning uchun endi umumiyroq bo'laman.

v0.1

  • Arduino VCC endi avtomatik ravishda hisoblab chiqiladi;
  • Sozlamani qulayroq tarzda o'zgartirish uchun o'zgaruvchi qo'shildi.
  • Bo'shatish foizi qo'shildi
  • Batareya va quvvat qarshiligining harorati qo'shildi

v0.2

  • Batareyani tanlash imkoniyati qo'shildi
  • Ekran, tugma va karnaydan tashqari, prototiplar taxtasi (sxemaga qarang) yaratilgan, chunki kelajakda men paket yaratmoqchiman.
  • Quvvat qarshiligiga harorat chegarasi boshqaruvi qo'shildi, shuning uchun men harorat 70 ° dan oshganda jarayonni blokirovka qila olaman.

v0.3

Tez orada https://www.pcbgogo.com?code=y xizmatidan foydalanamiz

2 -qadam: Kengashning V0.2

Kengash V0.2
Kengash V0.2

Har xil turdagi batareyalarni qo'llab -quvvatlash uchun v0.2 -da men batareyaning nomi, minimal kuchlanish va maksimal kuchlanish bilan to'ldirilishi kerak bo'lgan tuzilmani yaratdim (uni to'ldirish uchun menga yordam kerak: P).

// Akkumulyator tipidagi tuzilish BatteryType {char nomi [10]; suzuvchi maxVolt; suzuvchi minVolt; }; #define BATTERY_TYPE_NUMBER 4 BatteryType batteryType [BATTERY_TYPE_NUMBER] = {{"18650", 4.3, 2.9}, {"17550", 4.3, 2.9}, {"14500", 4.3, 2.75}, {"6v kislotasi", 6.50, 5.91 }};

Endi men analog kirishning ikki marta haroratini o'qish uchun kuchlanish taqsimlagichi uchun 10k rezistorlar to'plamidan foydalanaman. Agar siz kuchlanishni o'zgartirishni xohlasangiz, bu qiymatni o'zgartirishingiz kerak (keyinroq tushuntiring):

// Batareya kuchlanishining qarshiligi

#BAT_RES_VALUE_GND 10.0 ni aniqlang #BAT_RES_VALUE_VCC 10.0 ni aniqlang // Quvvat qarshiligining kuchlanish qarshiligi #RES_RES_VALUE_GND 10.0 ni belgilang #RES_RES_VALUE_VCC 10.0 ni aniqlang

Agar siz termistorni ishlatmasangiz, buni noto'g'ri deb belgilang:

#define USING_BATTERY_TERMISTOR haqiqiy

#define USING_RESISTO_TERMISTOR rost

Agar siz boshqa i2c displeyidan foydalansangiz, bu usulni qayta yozishingiz kerak bo'ladi:

bo'sh tortish (bekor)

Loyihada siz shafqatsiz sxemalar, fotosuratlar va boshqalarni topishingiz mumkin.

3 -qadam: Breadboard: I2c belgilarini ko'rsatish boshqaruvchisi kengaytirilgan

Non paneli: I2c belgilarini ko'rsatish boshqaruvchisi kengaytirilgan
Non paneli: I2c belgilarini ko'rsatish boshqaruvchisi kengaytirilgan

Men umumiy belgilar ekranini ishlatardim va i2c tekshirgichini qurdim va uni shaxsiy kutubxonamda ishlatardim.

Ammo, agar xohlasangiz, standart kutubxonaga ega oddiy i2c kontrollerini (1 € dan kam) olishingiz mumkin, kod o'zgarmaydi. Barcha displey kodlari chizish funktsiyasida, shuning uchun siz boshqa narsalarni o'zgartirmasdan o'zgartirishingiz mumkin.

Bu erda tushuntirish yaxshiroq.

4 -qadam: Non paneli: I2c o'rnatilgan belgilarni ko'rsatish

Non paneli: I2c o'rnatilgan belgilarni ko'rsatish
Non paneli: I2c o'rnatilgan belgilarni ko'rsatish

Xuddi shu sxema i2c boshqarilmasdan kengaytirildi.

5 -qadam: amalga oshirish

Voltajni o'lchash uchun biz kuchlanish bo'luvchi printsipidan foydalanamiz (Vikipediyada qo'shimcha ma'lumot).

Oddiy so'zlar bilan aytganda, bu kod batareyaning kuchlanishini o'lchash uchun ko'paytiruvchi omil hisoblanadi.

batResValueGnd / (batResValueVolt + batResValueGnd)

BatResValueVolt va batResValueGnd ning 2 ta qarshiligini analog o'qish simidan keyin va oldin kiritdim.

batVolt = (namuna1 / (1023.0 - ((BAT_RES_VALUE_GND / (BAT_RES_VALUE_VCC + BAT_RES_VALUE_GND)) * 1023.0))) * vcc;

sample1 - o'rtacha analog ko'rsatkichlar;

vcc mos yozuvlar Arduino kuchlanishi;

1023.0 - analog o'qishning mos yozuvlar maksimal qiymati (Arduino analog o'qishi 0 dan 1023 gacha).

Amperni olish uchun rezistordan keyin va oldin kuchlanish kerak.

Quvvat qarshiligidan keyin va oldin kuchlanishni o'lchaganingizda, siz batareyani iste'mol qiladigan milliamperni hisoblashingiz mumkin.

MOSFET batareyaning quvvat qarshiligidan tushishini boshlash va to'xtatish uchun ishlatiladi.

Xavfsizlik uchun men batareyaning va quvvat qarshiligining haroratini kuzatish uchun 2 ta termistorni joylashtirdim.

6 -qadam: kengayish

Kengayish
Kengayish
Kengayish
Kengayish

Men kengaytiriladigan prototip taxtasini yozishga harakat qilaman, lekin hozircha men faqat minimal pinlar to'plamidan foydalanaman (kelajakda men LED va boshqa tugmalarni qo'shaman).

Agar siz 10V dan yuqori quvvatlanishni xohlasangiz, formulaga muvofiq batareyaning qarshilik qiymatini va qarshilikni o'zgartirishingiz kerak

(BAT_RES_VALUE_GND / (BAT_RES_VALUE_VCC + BAT_RES_VALUE_GND)

Rezistorning kuchlanish kuchlanish sxemasida

Rezistor kuchlanishi GND 1/2/

Pushti past lehimli

7 -qadam: qismlar ro'yxati

Miqdor qism turi xususiyatlari

  • 2 ta 5 mm vintli terminali tenglikni tenglamali vintli terminal bloki 8A 250V LW SZUS (eBay)
  • 1 Arduino Pro Mini klon (mos keladigan nano) (eBay)
  • 1 asosiy FET P-kanal IRF744N yoki IRLZ44N (eBay)
  • 11 10kΩ qarshilik qarshiligi 10kΩ (eBay)
  • 2 harorat sensori (termistor) 10kΩ; (eBay)
  • * Umumiy erkak sarlavha shakli male (erkak); (eBay)
  • * Umumiy ayol sarlavha shakli female (ayol); (eBay)
  • 1 PerfBoard taxtasi 24x18 prototipli karta (eBay)
  • 10R, 10 Vt

    quvvat qarshiligi (eBay) Men o'zimni eski televizorda topaman.

8 -qadam: Kengash: Qayta o'rnatish, Gnd E tugmasi batareyani tanlash uchun

Kengash: Qayta o'rnatish, Gnd E tugmasi batareyani tanlash uchun
Kengash: Qayta o'rnatish, Gnd E tugmasi batareyani tanlash uchun

Pimlarning chap qismida siz tugma va signalni topishingiz mumkin.

Men 3 tugmani ishlataman:

  1. batareya turini o'zgartirish uchun;
  2. tanlangan batareyani zaryadsizlantirishni boshlash uchun;
  3. keyin men hamma narsani qayta ishga tushirish va yangi operatsiyani faollashtirish uchun reset pinidan foydalanaman.

Barcha pin allaqachon tushirilgan, shuning uchun siz VCC bilan faollashtirishingiz kerak

Qayta tiklash GND yordamida faollashadi

Pushti past lehimli

9 -qadam: Kengash: I2c va quvvat manbai pinlari

Kengash: I2c va quvvat manbai pinlari
Kengash: I2c va quvvat manbai pinlari

Baza uchun siz VCC, GND va SDA, SCL (va boshqalarni kelajakda) ko'rishingiz mumkin.

Pushti past lehimli

10 -qadam: taxta: termistor va kuchlanishni o'lchash

Kengash: termistor va o'lchash kuchlanishi
Kengash: termistor va o'lchash kuchlanishi

O'ng tomonda termistor qiymatini o'qish uchun pinlar bor, biri quvvat rezistorli termistor uchun, ikkinchisi (erkak/urg'ochi pinli) batareyali termistor uchun.

Quvvat qarshiligidan keyin va oldin differentsial kuchlanishni o'lchaydigan analog pinlar mavjud.

Pushti past lehimli

11 -qadam: Kengash: kuchlanish o'lchash qarshiligi

Kengash: kuchlanish o'lchash qarshiligi
Kengash: kuchlanish o'lchash qarshiligi
Kengash: kuchlanish o'lchash qarshiligi
Kengash: kuchlanish o'lchash qarshiligi

Bu erda siz arduino pinidan (10v) ikki baravar kuchlanishni qo'llab -quvvatlaydigan rezistorni ko'rishingiz mumkin, siz uni ko'proq kuchlanishni qo'llab -quvvatlash uchun o'zgartirishingiz kerak.

Pushti past lehimli

12 -qadam: Lehimlash bosqichi: Barcha pinlar

Lehimlash bosqichi: barcha pinlar
Lehimlash bosqichi: barcha pinlar
Lehimlash bosqichi: barcha pinlar
Lehimlash bosqichi: barcha pinlar

Birinchidan, men barcha pinlarni qo'shaman va uni lehimlayman.

13 -qadam: Lehimlash bosqichlari: Pulldown rezistori va termistor

Lehimlash bosqichlari: Pulldown rezistori va termistor
Lehimlash bosqichlari: Pulldown rezistori va termistor
Lehimlash bosqichlari: Pulldown rezistori va termistor
Lehimlash bosqichlari: Pulldown rezistori va termistor

Keyin men hamma ochiladigan rezistorni (tugmalar uchun) va i2c ulagichini (displey) qo'shaman.

Keyin quvvat qarshiligi termistori Bu juda muhim, kislotali batareya juda qizib ketadi.

14 -qadam: Lehimlash bosqichlari: MOSFET, kuchlanishni tekshirishga qarshilik

Lehimlash bosqichlari: MOSFET, kuchlanishni tekshirishga qarshilik
Lehimlash bosqichlari: MOSFET, kuchlanishni tekshirishga qarshilik
Lehimlash bosqichlari: MOSFET, kuchlanishni tekshirishga qarshilik
Lehimlash bosqichlari: MOSFET, kuchlanishni tekshirishga qarshilik

Endi biz zo'riqish va kuchlanishni tekshirish uchun qarshilikni faollashtirish uchun mosfetni qo'yishimiz kerak.

Quvvat qarshiligidan oldingi kuchlanish uchun 2 qarshilik, kuch qarshiligidan keyingi kuchlanish uchun 2 qarshilik, agar siz ushbu kuchlanishga ega bo'lsangiz, milliamper iste'molini hisoblashingiz mumkin.

15 -qadam: Kod

Mikrokontroller nano -mos keladi, shuning uchun siz IDE -ni Arduino Nano -ni yuklash uchun sozlashingiz kerak.

Ishlash uchun siz mening github omboridan kodni yuklab olishingiz kerak.

Buning o'rniga siz 3 ta kutubxonani qo'shishingiz kerak:

  1. Tel: i2c protokoli uchun standart arduino kutubxonasi;
  2. Termistor kutubxonasi bu erdan siz arduino IDE -da topishingiz mumkin bo'lgan kutubxona emas, balki mening versiyam;
  3. LiquidCrystal_i2c: agar siz i2c adapterining kengaytirilgan/moslashtirilgan versiyasidan (mening versiyam) foydalansangiz, kutubxonani shu erdan yuklab olishingiz kerak, agar standart komponentdan foydalansangiz, kutubxonani arduino IDE dan olishingiz mumkin, lekin bu erda hamma narsa yaxshiroq tushuntirilgan.

Men LCD -ni standart kutubxona bilan sinovdan o'tkazmayman, menimcha, ular bir -birining o'rnini bosadi, lekin agar biror muammo bo'lsa, men bilan bog'laning.

16 -qadam: yig'ilgandan keyin natija

Image
Image
Yig'ishdan keyin natija
Yig'ishdan keyin natija
Yig'ishdan keyin natija
Yig'ishdan keyin natija

Asosiy karta fotosuratda, keyin biz uni sinab ko'rishimiz mumkin.

17 -qadam: Avval batareya turini tanlang

Avval batareya turini tanlang
Avval batareya turini tanlang

Ta'rif qilinganidek, bizda batareyaning konfiguratsiyasi bilan qiymat xaritasi mavjud.

// Akkumulyator tipidagi tuzilish BatteryType {char nomi [10]; suzuvchi maxVolt; suzuvchi minVolt; }; #define BATTERY_TYPE_NUMBER 4 BatteryType batteryType [BATTERY_TYPE_NUMBER] = {{"18650", 4.3, 2.9}, {"17550", 4.3, 2.9}, {"14500", 4.3, 2.75}, {"6v kislotasi", 6.50, 5.91 }};

18 -qadam: Zaryadlashni boshlang

Zaryadlashni boshlang
Zaryadlashni boshlang
Zaryadsizlanishni boshlang
Zaryadsizlanishni boshlang

Ikkinchi tugmani bosishni boshlang.

Displeyda siz joriy milliamper, milliamper/soat, zaryadsizlanish foizi, batareya zo'riqishi va quvvat qarshiligi va batareyaning haroratini ko'rishingiz mumkin.

19 -qadam: Istisno holatlar: Batareya chiqarildi

Image
Image
Istisno: harorat haqida ogohlantirish
Istisno: harorat haqida ogohlantirish

Agar siz batareyani zaryadsizlantirish jarayonini olib tashlasangiz, pauza qilinadi, uni qayta o'rnatganingizda, u oxirgi qiymatda qayta boshlanadi.

20 -qadam: Istisnolar: harorat haqida ogohlantirish

Istisno: harorat haqida ogohlantirish
Istisno: harorat haqida ogohlantirish
Istisno: harorat haqida ogohlantirish
Istisno: harorat haqida ogohlantirish
Istisno: harorat haqida ogohlantirish
Istisno: harorat haqida ogohlantirish

Agar harorat (batareya yoki quvvat qarshiligi) qizib ketsa, zaryadsizlanish jarayoni pauzaga o'tadi.

#BATTERY_MAX_TEMP 50 ni aniqlang

Ma'lumotlar varag'ida RESISTANCE_MAX_TEMP 69 // 70 ° ni belgilang (qarshilikni pasayishi) #TEMP_TO_REMOVE_ON_MAX_TEMP 20 ni aniqlang

Maksimal harorat uchun standart qiymat batareya uchun 50 ° va quvvat qarshiligi uchun 69.

Sharhda ko'rib turganingizdek, 70 ° dan oshib ketganda kuch rezistorining kuchsizlanishi ta'sir qiladi.

Agar ogohlantirish ko'tarilsa, past haroratni qo'yish uchun TEMP_TO_REMOVE_ON_MAX_TEMP soniyani to'xtatib turing.

21 -qadam: Amperajni sinab ko'ring

Sinov quvvati
Sinov quvvati

Amper sinovining natijasi yaxshi.

22 -qadam: Paket

Ajratilgan komponent bilan paket natijasini tushunish oson.

Qutida, LCD uchun to'rtburchaklar, tugmachalarning teshiklari va tashqi ayol bochkasi quvvat manbaidan kuchlanishni ta'minlashi kerak.

Tugmani bosish qarshiligiga ehtiyoj yo'q, chunki men uni bortga qo'shganman.

Vaqt bo'lganda, men uni yarataman va joylashtiraman.

Tavsiya: