Satura rādītājs:

Arduino LTC6804 BMS - 2. daļa: Līdzsvara dēlis: 5 soļi
Arduino LTC6804 BMS - 2. daļa: Līdzsvara dēlis: 5 soļi

Video: Arduino LTC6804 BMS - 2. daļa: Līdzsvara dēlis: 5 soļi

Video: Arduino LTC6804 BMS - 2. daļa: Līdzsvara dēlis: 5 soļi
Video: BMS (система управления аккумулятором) || Сделай сам или купи || Правильная защита литий-ионных/литий-полимерных аккумуляторов 2024, Novembris
Anonim
Arduino LTC6804 BMS - 2. daļa: Bilances dēlis
Arduino LTC6804 BMS - 2. daļa: Bilances dēlis

1. daļa ir šeit

Akumulatora pārvaldības sistēma (BMS) ietver funkcionalitāti, lai saprastu svarīgus akumulatora bloka parametrus, tostarp elementu spriegumu, akumulatora strāvu, šūnu temperatūru utt. Ja kāds no tiem ir ārpus iepriekš noteikta diapazona, bloku var atvienot no slodzes vai lādētāja vai var veikt citas atbilstošas darbības. Iepriekšējā projektā (https://www.instructables.com/id/Arduino-LTC6804-Battery-Management-System/) es apspriedu savu BMS dizainu, kura pamatā ir Linear Technology LTC6804 daudzšūnu akumulatora monitora mikroshēma un Arduino mikrokontrolleris. Šis projekts paplašina BMS projektu, pievienojot akumulatoru balansēšanu.

Akumulatori ir veidoti no atsevišķām šūnām paralēlās un/vai virknes konfigurācijās. Piemēram, 8p12s pakotne tiktu veidota, izmantojot 12 sērijveidā savienotus 8 paralēli savienotu šūnu komplektus. Kopā iepakojumā būtu 96 šūnas. Lai panāktu vislabāko sniegumu, visām 96 šūnām vajadzētu būt cieši saskaņotām īpašībām, tomēr starp šūnām vienmēr būs dažas atšķirības. Piemēram, dažām šūnām var būt mazāka jauda nekā citām šūnām. Kad iepakojums ir uzlādēts, zemākas ietilpības šūnas sasniegs maksimālo drošo spriegumu pirms pārējā iepakojuma. BMS noteiks šo augstspriegumu un pārtrauks turpmāku uzlādi. Rezultātā liela daļa iepakojuma nav pilnībā uzlādēta, kad BMS pārtrauc uzlādi vājākās šūnas augstākā sprieguma dēļ. Līdzīga dinamika var notikt izlādes laikā, kad lielākas jaudas šūnas nevar pilnībā izlādēties, jo BMS atvieno slodzi, kad vājākais akumulators sasniedz zemsprieguma robežu. Tādējādi iepakojums ir tikpat labs kā vājākās baterijas, piemēram, ķēde ir tik stipra kā vājākais posms.

Viens no šīs problēmas risinājumiem ir līdzsvara dēļa izmantošana. Lai gan iepakojuma līdzsvarošanai ir daudz stratēģiju, vienkāršākās “pasīvās” līdzsvara plāksnes ir paredzētas, lai atdalītu daļu no augstākā sprieguma elementu uzlādes, kad iepakojums tuvojas pilnai uzlādei. Kaut arī daļa enerģijas tiek izšķiesta, iepakojums kopumā var uzglabāt vairāk enerģijas. Asiņošana tiek veikta, izkliedējot daļu jaudas caur rezistora/slēdža kombināciju, ko kontrolē mikrokontrolleris. Šī pamācība apraksta pasīvu balansēšanas sistēmu, kas ir saderīga ar iepriekšējā projekta arduino/LTC6804 BMS.

Piegādes

Jūs varat pasūtīt bilances dēļa PCB no PCBWays šeit:

www.pcbway.com/project/shareproject/Balance_board_for_Arduino_BMS.html

1. darbība: darbības teorija

Darbības teorija
Darbības teorija

LTC6804 datu lapas 62. lappusē ir aplūkota šūnu līdzsvarošana. Ir divas iespējas: 1) izmantojot iekšējo N-kanālu MOSFETS, lai novadītu strāvu no augstajām šūnām, vai 2) izmantojot iekšējos MOSFETS, lai kontrolētu ārējos slēdžus, kas pārvada atgaisošanas strāvu. Es izmantoju otro iespēju, jo es varu izveidot savu asiņošanas ķēdi, lai apstrādātu lielāku strāvu, nekā to varētu izdarīt, izmantojot iekšējos slēdžus.

Iekšējie MOSFETS ir pieejami, izmantojot tapas S1-S12, savukārt pašām šūnām var piekļūt, izmantojot tapas C0-C12. Augšējā attēlā parādīta viena no 12 identiskām izplūdes ķēdēm. Kad Q1 ir ieslēgts, strāva plūdīs no C1 uz zemi caur R5, izkliedējot daļu no lādiņa šūnā 1. Es izvēlējos 6 omu, 1 vatu rezistoru, kuram vajadzētu būt spējīgam izturēt vairākus miliampus izplūdes strāvas. pievienota gaismas diode, lai lietotājs varētu redzēt, kuras šūnas jebkurā brīdī balansē.

Tapas S1-S12 kontrolē CFGR4 un CFGR5 reģistra grupu pirmie 4 biti (sk. LTC6804 datu lapas 51. un 53. lpp.). Šīs reģistra grupas ir iestatītas Arduino kodā (aplūkotas turpmāk) funkcijā balance_cfg.

2. darbība. Shēma

Shematisks
Shematisks

BMS līdzsvara dēļa shēma tika izstrādāta, izmantojot Eagle CAD. Tas ir diezgan vienkārši. Katram akumulatoru sērijas segmentam ir viena iztukšošanas ķēde. Slēdži tiek kontrolēti ar signāliem no LTC6804 caur JP2 galveni. Atgaisošanas strāva plūst no akumulatora bloka caur galveni JP1. Ņemiet vērā, ka atgaisošanas strāva plūst uz nākamo apakšējo akumulatora bloka segmentu, piemēram, C9 izplūst C8 utt. Arduino Uno vairoga simbols ir novietots uz 3. darbībā aprakstītās shēmas shēmas. Tiek nodrošināts augstākas izšķirtspējas attēls zip failā. Tālāk ir norādīts detaļu saraksts (kāda iemesla dēļ Instructables failu augšupielādes funkcija man nedarbojas …)

Daudzums Ierīces pakotnes detaļu apraksts

12 LEDCHIPLED_0805 CHIPLED_0805 LED1, LED2, LED3, LED4, LED5, LED6, LED7, LED8, LED9, LED10, LED11, LED12 LED 12 BSS308PEH6327XTSA1 MOSFET-P SOT23-R Q1, Q2, Q3, Q4, Q5, Q5, Q5, Q5, Q9, Q10, Q11, Q12 P-Channel Mosfet 2 PINHD-1X13_BIG 1X13-BIG JP1, JP2 PIN HEADER 12 16 R-US_R2512 R2512 R5, R7, R9, R11, R13, R15, R17, R19, R21, R23, R25, R27 RESISTOR, amerikāņu simbols 12 1K R-US_R0805 R0805 R4, R6, R8, R10, R12, R14, R16, R18, R20, R22, R24, R26 RESISTOR, amerikāņu simbols 12 200 R-US_R0805 R0805 R1, R2, R3, R28, R29, R30, R31, R32, R33, R34, R35, R36 RESISTOR, Amerikas simbols

3. darbība: PCB izkārtojums

PCB izkārtojums
PCB izkārtojums

Izkārtojumu lielākoties nosaka galvenās BMS sistēmas dizains, kas apskatīts atsevišķā instrukcijā (https://www.instructables.com/id/Arduino-LTC6804-Battery-Management-System/). Galvenēm JP1 un JP2 jāsakrīt ar atbilstošajām galvenēm BMS. Mosfets, iztukšošanas rezistori un gaismas diodes ir loģiski sakārtoti uz Arduino Uno vairoga. Gerber faili tika izveidoti, izmantojot Eagle CAD, un PCB tika nosūtīti Sierra Circuits izgatavošanai.

Pievienotais fails "Gerbers Balance Board.zip.txt" faktiski ir zip fails, kas satur Gerbers. Jūs varat vienkārši izdzēst faila nosaukuma.txt daļu un pēc tam izpakot to kā parastu zip failu.

Sūtiet man ziņu, ja vēlaties iegūt PCB, man, iespējams, vēl ir palikuši daži.

4. solis: PCB montāža

Līdzsvara dēļa PCB tika lodēti ar rokām, izmantojot Weller WESD51 lodēšanas staciju ar temperatūras kontroli ar ETB ET sērijas 0,093 "skrūvgrieža" galu un 0,3 mm lodmetālu. Lai gan mazāki padomi var šķist labāki sarežģītam darbam, tie nesaglabā siltumu un faktiski apgrūtina darbu. Pirms lodēšanas notīriet PCB paliktņus ar plūsmas pildspalvu. 0,3 mm lodmetāls labi darbojas SMD detaļu lodēšanai ar rokām. Uz viena spilventiņa ielieciet nedaudz lodēšanas un pēc tam ievietojiet daļu ar pinceti vai x-acto nazi un notīriet šo spilventiņu. Atlikušo spilventiņu var pielodēt, detaļai nekustoties. Pārliecinieties, ka detaļa vai PCB spilventiņi nav pārāk sakarsēti. Tā kā lielākā daļa komponentu ir diezgan lieli pēc SMD standartiem, PCB ir diezgan viegli salikt.

5. darbība: kods

Kods
Kods

Pilns Arduino kods ir sniegts iepriekšējā instrukcijā, kas saistīta ar iepriekš minēto. Šeit es pievērsīšu jūsu uzmanību sadaļai, kas kontrolē šūnu līdzsvarošanu. Kā minēts iepriekš, S1-S12 kontrolē CFGR4 un pirmie 4 biti no CFGR5 reģistra grupām LTC6804 (sk. LTC6804 datu lapas 51. un 53. lpp.). Arduino koda cilpas funkcija nosaka augstākā sprieguma akumulatoru komplektu un ievieto tā numuru mainīgajā cellMax_i. Ja cellMax_i spriegums ir lielāks par CELL_BALANCE_THRESHOLD_V, kods izsauks funkciju balance_cfg (), nododot augstā segmenta cellMax_i numuru. Funkcija balance_cfg nosaka atbilstošā LTC6804 reģistra vērtības. Zvanot uz LTC6804_wrcfg, šīs vērtības tiek ierakstītas IC, ieslēdzot S pin, kas saistīts ar cellMax_i.

Ieteicams: