Мазмұны:

Температура мен батареяны таңдаумен батареяны тексеруші: 23 қадам (суреттермен)
Температура мен батареяны таңдаумен батареяны тексеруші: 23 қадам (суреттермен)

Бейне: Температура мен батареяны таңдаумен батареяны тексеруші: 23 қадам (суреттермен)

Бейне: Температура мен батареяны таңдаумен батареяны тексеруші: 23 қадам (суреттермен)
Бейне: ATORCH HIDANCE T18 Battery capacity monitor protection for Phone or tablet charge 2024, Қараша
Anonim
Image
Image
Негізгі жобадан өзгерту
Негізгі жобадан өзгерту

Батарея сыйымдылығын тексеруші.

Бұл құрылғының көмегімен сіз 18650 аккумулятордың, қышқылдың және басқа сыйымдылығын тексере аласыз (мен тексерген ең үлкен батарея - бұл 6в қышқылдық батарея 4, 2А). Тест нәтижесі миллиамперде/сағатты құрайды.

Мен бұл құрылғыны жасаймын, себебі бұл жалған қытай батареясының сыйымдылығын тексеру үшін қажет.

Қауіпсіздік үшін мен термисторды қолдана отырып, қуаттың кедергісі мен батареяның температурасы тым ыстық болмауын қостым, бұл әдіспен мен 6в қышқылдық батареяны тақтаны отсыз тексере аламын (зарядтау циклінде біраз уақыт ыстық қуат резисторына өтіңіз). және температураны төмендету үшін құрылғы 20 секунд күтеді).

Мен atmega328 үйлесімді нано (eBay) шағын микроконтроллерді таңдаймын.

Барлық код осында.

1 -қадам: Негізгі жобадан өзгерту

Мен идеяны OpenGreenEnergy жобасынан ұрладым, мен мүмкіндіктерді қосу үшін тақтаны қайта құрдым, енді жалпыға ортақ боламын.

v0.1

  • Arduino VCC енді автоматты түрде есептеледі;
  • Параметрді ыңғайлы етіп өзгерту үшін айнымалы қосылды.
  • Босату пайызы қосылды
  • Батарея мен қуат резисторының температурасы қосылды

v0.2

  • Батареяны таңдау мүмкіндігі қосылды
  • Тақтаның сыртында экраны, түймесі және динамигі бар прототип тақтасы (схемаға қараңыз) жасалды, себебі мен болашақта пакет жасағым келеді.
  • Қуат резисторына температура шегінің басқарылуы қосылды, сондықтан мен температура 70 ° -тан жоғары көтерілгенде процесті тоқтата аламын (бұл температуралық резистордың шамадан тыс төмендеуі).

v0.3

Жақында бұл қызметтің тақтасы

2 -қадам: Басқарманың V0.2

Басқарманың V0.2
Басқарманың V0.2

Батареялардың әр түрін қолдау үшін v0.2 -де мен батареяның атауымен, минималды кернеумен және максималды кернеумен толтырылуы керек құрылымды құрдым (оны толтыру үшін маған көмек керек: P).

// BatteryType {char name [10] аккумулятор машинасының құрылымы; float maxVolt; өзгермелі минВольт; }; #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 қышқылы», 6.50, 5.91 }};

Енді мен аналогтық кірістің қосарланған температурасын оқу үшін кернеу бөлгіш үшін 10к резисторлар жиынтығын қолданамын. Егер сіз кернеуді қолдауды өзгерткіңіз келсе, сіз бұл мәнді өзгертуіңіз керек (келесіде жақсы түсіндіріңіз):

// Батарея кернеуінің кедергісі

#BAT_RES_VALUE_GND 10.0 анықтаңыз #BAT_RES_VALUE_VCC 10.0 анықтаңыз // Қуат резисторының кернеу кедергісін анықтаңыз #RES_RES_VALUE_GND 10.0 белгілеңіз #RES_RES_VALUE_VCC 10.0 анықтаңыз

Егер сіз термисторды пайдаланбасаңыз, оны жалған етіп орнатыңыз:

#аккумуляторлық_термисторды қолдануды анықтаңыз

USES_RESISTO_TERMISTOR -ды қолдануды анықтаңыз

Егер сіз басқа i2c дисплейін қолдансаңыз, бұл әдісті қайта жазуыңыз қажет:

жарамсыз жеребе (жарамсыз)

Жобада сіз жұмсақ схемалар, фотосуреттер және т.б.

3 -қадам: Нан тақтасы: I2c таңбаларды көрсету контроллері кеңейтілді

Нан тақтасы: I2c таңбаларды көрсету контроллері кеңейтілді
Нан тақтасы: I2c таңбаларды көрсету контроллері кеңейтілді

Мен жалпы сипаттағы дисплейді қолдандым, мен i2c контроллерін құрдым және оны жеке кітапханамда қолдандым.

Бірақ егер қаласаңыз, стандартты кітапханасы бар i2c контроллерін (1 € -дан аз) алуға болады, код өзгеріссіз қалады. Дисплейдің барлық коды сурет функциясында, сондықтан оны өзгертуге болмайды.

Мұнда түсіндірген дұрыс.

4 -қадам: Нан тақтасы: I2c интеграцияланған таңбаларды көрсету

Нан тақтасы: I2c интеграцияланған таңбаларды көрсету
Нан тақтасы: I2c интеграцияланған таңбаларды көрсету

I2c басқарылмайтын сол схема кеңейтілді.

5 -қадам: іске асыру

Кернеуді өлшеу үшін біз кернеуді бөлу принципін қолданамыз (Уикипедияда қосымша ақпарат).

Қарапайым сөзбен айтқанда, бұл код аккумулятордың кернеуін өлшейтін фактор.

batResValueGnd / (batResValueVolt + batResValueGnd)

BatResValueVolt және batResValueGnd мәндерінің 2 қарсылықтарын аналогты оқу сымынан кейін және алдында енгіздім.

batVolt = (үлгі1 / (1023.0 - ((BAT_RES_VALUE_GND / (BAT_RES_VALUE_VCC + BAT_RES_VALUE_GND)) * 1023.0))) * vcc;

үлгі1 - орташа аналогты көрсеткіштер;

vcc сілтемесі Arduino кернеуі;

1023.0 - аналогты оқудың анықтамалық максималды мәні (Arduino аналогты оқу 0 -ден 1023 -ке дейін).

Ток күшін алу үшін резистордан кейін және алдында кернеу қажет.

Қуат резисторынан кейін және алдында кернеуді өлшеу кезінде сіз батареяны тұтынатын миллиамперді есептей аласыз.

MOSFET қуат резисторынан батареяның ағуын бастау және тоқтату үшін қолданылады.

Қауіпсіздік үшін мен батарея мен қуат резисторының температурасын бақылау үшін 2 термистор енгіздім.

6 -қадам: кеңейту мүмкіндігі

Кеңейтімділік
Кеңейтімділік
Созылу мүмкіндігі
Созылу мүмкіндігі

Мен прототип тақтасын кеңейтуге тырысамын, бірақ әзірге мен түйреуіштердің минималды жиынтығын қолданамын (болашақта мен шамдар мен басқа түймелерді қосамын).

Егер сіз 10 вольттан жоғары кернеуді қажет етсеңіз, формула бойынша батареяның резисторлық мәнін және қарсылықты өзгертуіңіз керек

(BAT_RES_VALUE_GND / (BAT_RES_VALUE_VCC + BAT_RES_VALUE_GND)

схемада резистордың кернеу кернеуі

Резистордың кернеу кернеуі GND 1/2/(резистордың кернеу кернеуі 2/2 + резистордың кернеу кернеуі GND 1/2)

Қызғылт түсті дәнекерлеу

7 -қадам: бөліктердің тізімі

Бөлік түрінің қасиеттері

  • 2 5мм бұрандалы терминал PCA бекіткіш бұрандалы терминал блогы 8A 250V LW SZUS (eBay)
  • 1 Arduino Pro Mini клоны (үйлесімді нано) (eBay)
  • IRF744N немесе IRLZ44N (eBay) 1 негізгі FET P-арнасы
  • 11 10kΩ резисторлық резистор 10kΩ (eBay)
  • 2 температура сенсоры (термистор) 10 кОм; (eBay)
  • * Жалпы ерлер тақырыбының формасы ♂ (еркек); (eBay)
  • * Әйелдер тақырыбының жалпы формасы female (әйел); (eBay)
  • 1 PerfBoard тақтасы 24x18 прототиптік тақтасы (eBay)
  • 10R, 10W

    қуат резисторы (eBay) Мен өзімді ескі теледидардан табамын.

8 -қадам: Тақта: Батареяны таңдау үшін қалпына келтіру, Gnd E түймесі

Тақта: Батареяны таңдау үшін қалпына келтіру, Gnd E түймесі
Тақта: Батареяны таңдау үшін қалпына келтіру, Gnd E түймесі

Түйреуіштердің сол жағында түйме мен дыбыстық сигналды табуға болады.

Мен 3 түймені қолданамын:

  1. батарея түрін өзгертуге арналған біреуі;
  2. таңдалған батареяны зарядтауды бастау үшін біреуі;
  3. содан кейін мен барлығын қайта бастау және жаңа әрекетті қосу үшін қалпына келтіру түйреуішін қолданамын.

Барлық түйреуіш қазірдің өзінде тартылған, сондықтан сіз VCC көмегімен белсендіруіңіз керек

Қалпына келтіру GND көмегімен іске қосылады

Қызғылт түсті дәнекерлеу

9 -қадам: тақта: I2c және қуат көзінің түйреуіштері

Тақта: I2c және қуат көзінің түйреуіштері
Тақта: I2c және қуат көзінің түйреуіштері

Негізге сіз VCC, GND және SDA, SCL -ді көре аласыз (және басқалары болашақта).

Қызғылт түсті дәнекерлеу

10 -қадам: Тақта: термистор және кернеуді өлшеу

Тақта: термистор және өлшеу кернеуі
Тақта: термистор және өлшеу кернеуі

Оң жақта термистордың мәнін оқуға арналған түйреуіштер бар, олардың бірі термисторға, екіншісі батарея термисторына арналған.

Содан кейін қуат резисторынан кейін және алдында дифференциалды кернеуді өлшейтін аналогтық түйреуіштер бар.

Қызғылт түсті дәнекерлеу

11 -қадам: тақта: кернеуді өлшеуге резистор

Тақта: кернеуді өлшеуге резистор
Тақта: кернеуді өлшеуге резистор
Тақта: кернеуді өлшеуге резистор
Тақта: кернеуді өлшеуге резистор

Мұнда резисторды көруге болады, ол кернеуді arduino істігіне (10v) қарағанда екі есе арттыруға мүмкіндік береді, кернеуді жоғарылату үшін оны өзгерту керек.

Қызғылт түсті дәнекерлеу

12 -қадам: Дәнекерлеу қадамы: Барлық түйреуіштер

Дәнекерлеу қадамы: барлық түйреуіштер
Дәнекерлеу қадамы: барлық түйреуіштер
Дәнекерлеу қадамы: барлық түйреуіштер
Дәнекерлеу қадамы: барлық түйреуіштер

Алдымен мен барлық түйреуіштерді қосамын және оны дәнекерлеймін.

13 -қадам: Дәнекерлеу қадамдары: Пулдаун резисторы мен термистор

Дәнекерлеу қадамдары: Пулдаун резисторы мен термистор
Дәнекерлеу қадамдары: Пулдаун резисторы мен термистор
Дәнекерлеу қадамдары: Пулдаун резисторы мен термистор
Дәнекерлеу қадамдары: Пулдаун резисторы мен термистор

Содан кейін мен барлық ашылатын резисторды (түймелер үшін) және i2c қосқышын (дисплей) қосамын.

Содан кейін қуат резисторының термисторы Бұл өте маңызды, қышқылдық батарея өте ыстық.

14 -қадам: Дәнекерлеу қадамдары: MOSFET, кернеуді тексеруге қарсылық

Дәнекерлеу қадамдары: MOSFET, кернеуді тексеруге қарсылық
Дәнекерлеу қадамдары: MOSFET, кернеуді тексеруге қарсылық
Дәнекерлеу қадамдары: MOSFET, кернеуді тексеруге қарсылық
Дәнекерлеу қадамдары: MOSFET, кернеуді тексеруге қарсылық

Енді кернеуді тексеру үшін разрядты және қарсылықты қосу үшін mosfet енгізу керек.

Қуат резисторының алдындағы кернеуге 2 кедергі күштік резистордан кейінгі кернеуге 2 қарсылық, егер сізде бұл кернеу болса, сіз миллиампер тұтынуды есептей аласыз.

15 -қадам: код

Микроконтроллер наноға үйлесімді, сондықтан сіз IDE -ді Arduino Nano жүктеу үшін орнатуыңыз керек.

Жұмыс істеу үшін менің github репозиторийінен кодты жүктеу керек.

3 кітапхананы қосу керек:

  1. Сым: i2c протоколына арналған стандартты arduino кітапханасы;
  2. Termistor Library бұл жерден arduino IDE -де таба алатын кітапхана емес, менің нұсқам;
  3. LiquidCrystal_i2c: егер сіз i2c адаптерінің кеңейтілген/реттелетін нұсқасын қолдансаңыз (менің нұсқам), сіз кітапхананы осы жерден жүктеп алуыңыз керек, егер сіз стандартты компонентті қолдансаңыз, кітапхананы arduino IDE -ден алуға болады, бірақ мұнда бәрі жақсы түсіндірілген.

Мен СКД -ны стандартты кітапханамен тексермеймін, менің ойымша, олар бір -бірін алмастырады, бірақ егер мәселе туындаса, менімен хабарласуға болады.

16 -қадам: Жиналғаннан кейінгі нәтиже

Image
Image
Жиналғаннан кейінгі нәтиже
Жиналғаннан кейінгі нәтиже
Жиналғаннан кейінгі нәтиже
Жиналғаннан кейінгі нәтиже

Негізгі тақта суретте, содан кейін біз оны тексере аламыз.

17 -қадам: Алдымен батарея түрін таңдаңыз

Алдымен Батарея түрін таңдаңыз
Алдымен Батарея түрін таңдаңыз

Сипатталғандай, бізде батареяның конфигурациясы бар мән картасы бар.

// BatteryType {char name [10] аккумулятор машинасының құрылымы; float maxVolt; өзгермелі минВольт; }; #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 қышқылы», 6.50, 5.91 }};

18 -қадам: Зарядтауды бастаңыз

Зарядтауды бастаңыз
Зарядтауды бастаңыз
Зарядтауды бастаңыз
Зарядтауды бастаңыз

Екінші батырманы басуды босатуды бастаңыз.

Дисплейде ағымдағы миллиампер, миллиампер/сағ, зарядсыздану пайызы, батарея кернеуі мен қуат резисторы мен батареяның температурасы көрінеді.

19 -қадам: Ерекшеліктер: Батарея шығарылды

Image
Image
Ерекшеліктер: температура туралы ескерту
Ерекшеліктер: температура туралы ескерту

Егер сіз батареяны зарядсыздандыру процесін тоқтата тұрсаңыз, оны қайта салғанда, ол соңғы мәнде қайта қосылады.

20 -қадам: Ерекшеліктер: Температура туралы ескерту

Ерекшеліктер: температура туралы ескерту
Ерекшеліктер: температура туралы ескерту
Ерекшеліктер: температура туралы ескерту
Ерекшеліктер: температура туралы ескерту
Ерекшеліктер: температура туралы ескерту
Ерекшеліктер: температура туралы ескерту

Егер температура (батарея немесе қуат резисторы) қызып кетсе, разрядтау процесі кідіреді.

#BATTERY_MAX_TEMP 50 анықтау

Деректер кестесінде RESISTANCE_MAX_TEMP 69 // 70 ° анықтаңыз (Резисторларды төмендетеді) #TEMP_TO_REMOVE_ON_MAX_TEMP 20 анықтаңыз

Максималды температураның әдепкі мәні батарея үшін 50 °, ал резистор үшін 69.

Түсініктемеде көріп тұрғаныңыздай, қуат резисторы 70 ° -тан жоғары көтерілу кезінде әсер етеді.

Егер ескерту көтерілсе, төмен температураны қою үшін TEMP_TO_REMOVE_ON_MAX_TEMP секунд үзіліс жасаңыз.

21 -қадам: ток күшін тексеріңіз

Тексеру қуаты
Тексеру қуаты

Амперациялық тест нәтижесі жақсы.

22 -қадам: пакет

Бөлінген компонентпен пакеттің нәтижесі қарапайым.

Қорапта СКД үшін тіктөртбұрыш, түймелер үшін саңылаулар және кернеуді қоректендіру үшін сыртқы әйел баррель болуы керек.

Түймені басатын резистор қажет емес, себебі мен оны бортқа қосамын.

Уақыт болғанда мен оны жасап, жариялаймын.

Ұсынылған: