Isi kandungan:

Arduino LTC6804 BMS - Bahagian 2: Papan Imbangan: 5 Langkah
Arduino LTC6804 BMS - Bahagian 2: Papan Imbangan: 5 Langkah

Video: Arduino LTC6804 BMS - Bahagian 2: Papan Imbangan: 5 Langkah

Video: Arduino LTC6804 BMS - Bahagian 2: Papan Imbangan: 5 Langkah
Video: Lithium-Ion Battery Management System | BMS | LTC6804-2 2024, November
Anonim
Arduino LTC6804 BMS - Bahagian 2: Papan Imbangan
Arduino LTC6804 BMS - Bahagian 2: Papan Imbangan

Bahagian 1 ada di sini

Sistem Pengurusan Bateri (BMS) merangkumi fungsi untuk merasakan parameter pek bateri yang penting termasuk voltan sel, arus bateri, suhu sel, dan lain-lain. Jika ada di antara julat yang telah ditentukan, pek tersebut boleh terputus dari beban atau pengecasnya, atau tindakan lain yang sesuai dapat diambil. Dalam projek sebelumnya (https://www.instructables.com/id/Arduino-LTC6804-Battery-Management-System/) saya membincangkan reka bentuk BMS saya, yang berdasarkan cip Monitor Linear Technology LTC6804 Multicell Battery Monitor dan mikrokontroler Arduino. Projek ini memperluaskan projek BMS dengan menambahkan pengimbangan pek bateri.

Pek bateri dibina dari sel individu dalam konfigurasi selari dan / atau siri. Sebagai contoh, pek 8p12 akan dibina menggunakan 12 set bersambung 8 sel bersambung selari. Akan ada sejumlah 96 sel dalam bungkusan. Untuk prestasi terbaik, semua 96 sel harus mempunyai sifat yang hampir sama, namun selalunya akan ada beberapa variasi di antara sel. Sebagai contoh, beberapa sel mungkin mempunyai kapasiti yang lebih rendah daripada sel lain. Semasa pek dikenakan, sel kapasiti yang lebih rendah akan mencapai voltan selamat maksimum mereka sebelum bungkusan yang lain. BMS akan mengesan voltan tinggi ini dan memotong pengecasan selanjutnya. Hasilnya ialah sebahagian besar pek tidak dicas sepenuhnya ketika BMS memotong pengisian kerana voltan sel yang paling lemah. Dinamik yang serupa dapat berlaku semasa pembuangan, apabila sel berkapasiti lebih tinggi tidak dapat melepaskan sepenuhnya kerana BMS memutuskan beban ketika bateri paling lemah mencapai had voltan rendahnya. Oleh itu, peknya hanya sebaik baterainya yang lemah, seperti rantai yang sama kuatnya dengan pautannya yang paling lemah.

Salah satu penyelesaian untuk masalah ini adalah dengan menggunakan timbangan. Walaupun terdapat banyak strategi untuk mengimbangkan bungkusan, papan keseimbangan 'pasif' termudah dirancang untuk mengeluarkan beberapa cas sel voltan tertinggi ketika pek hampir mengisi penuh. Walaupun sebahagian tenaga dibazirkan, bungkusan secara keseluruhan dapat menyimpan lebih banyak tenaga. Pendarahan dilakukan dengan menghilangkan daya melalui kombinasi perintang / suis yang dikawal oleh mikrokontroler. Instruksional ini menerangkan sistem pengimbangan pasif yang sesuai dengan arduino / LTC6804 BMS dari projek sebelumnya.

Bekalan

Anda boleh memesan Balance Board PCB dari PCBWays di sini:

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

Langkah 1: Teori Operasi

Teori Operasi
Teori Operasi

Halaman 62 lembar data LTC6804 membincangkan keseimbangan sel. Terdapat dua pilihan: 1) menggunakan MOSFETS saluran N dalaman untuk mengalirkan arus dari sel tinggi, atau 2) menggunakan MOSFET dalaman untuk mengawal suis luaran yang membawa arus pendarahan. Saya menggunakan pilihan kedua kerana saya dapat merancang litar pendarahan saya sendiri untuk menangani arus yang lebih tinggi daripada yang boleh dilakukan dengan menggunakan suis dalaman.

MOSFET dalaman boleh didapati melalui pin S1-S12 sementara sel itu sendiri diakses menggunakan pin C0-C12. Gambar di atas menunjukkan salah satu daripada 12 litar pendarahan yang sama. Apabila Q1 dihidupkan, arus akan mengalir dari C1 ke tanah melalui R5, menghilangkan sebahagian cas di dalam sel 1. Saya memilih resist 6 Ohm, 1 Watt, yang seharusnya dapat menangani beberapa mili arus pendarahan.. Terdapat LED ditambahkan supaya pengguna dapat melihat sel mana yang mengimbangkan pada waktu tertentu.

Pin S1-S12 dikendalikan oleh CFGR4 dan 4 bit pertama dari kumpulan daftar CFGR5 (lihat halaman 51 dan 53 dari lembaran data LTC6804). Kumpulan daftar ini ditetapkan dalam kod Arduino (dibincangkan di bawah) dalam fungsi balance_cfg.

Langkah 2: Skematik

Skematik
Skematik

Skema untuk papan imbangan BMS dirancang menggunakan Eagle CAD. Ia cukup mudah. Terdapat satu litar pendarahan untuk setiap segmen siri pek bateri. Suis dikendalikan oleh isyarat dari LTC6804 melalui header JP2. Arus pendarahan mengalir dari pek bateri melalui header JP1. Perhatikan bahawa arus pendarahan mengalir ke segmen pek bateri yang lebih rendah seterusnya, jadi misalnya, C9 mengalir ke C8, dll. Simbol pelindung Arduino Uno diletakkan pada skema untuk susun atur PCB yang dijelaskan dalam Langkah 3. Gambar beresolusi lebih tinggi disediakan dalam fail zip. Berikut adalah senarai bahagian (Untuk sebab tertentu, ciri muat naik fail Instructables tidak berfungsi untuk saya….)

Huraian Bahagian Pakej Peranti Nilai Kuantiti

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, Q6, Q6, Q6, Q6, Q6, Q6, Q6, Q6, Q6, Q6, Q6, 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, simbol Amerika 12 1K R-US_R0805 R0805 R4, R6, R8, R10, R12, R14, R16, R18, R20, R22, R24, R26 RESISTOR, simbol Amerika 12 200 R-US_R0805 R0805 R1, R2, R3, R28, R29, R30, R31, R32, R33, R34, R35, R36 RESISTOR, simbol Amerika

Langkah 3: Susun atur PCB

Susun atur PCB
Susun atur PCB

Susun atur kebanyakannya ditentukan oleh reka bentuk sistem BMS utama yang dibincangkan dalam arahan yang berasingan (https://www.instructables.com/id/Arduino-LTC6804-Battery-Management-System/). Header JP1 dan JP2 harus sesuai dengan header yang sepadan di BMS. Mosfets, resistor pendarahan dan LED disusun secara logik pada perisai Arduino Uno. Fail gerber dibuat menggunakan Eagle CAD dan PCB dihantar ke Litar Sierra untuk fabrikasi.

Fail terlampir "Gerbers Balance Board.zip.txt" sebenarnya adalah fail zip yang mengandungi Gerbers. Anda hanya boleh menghapus bahagian.txt dari nama fail dan kemudian menyahzipnya seperti fail zip biasa.

Kirimkan saya mesej jika anda ingin mendapatkan PCB, saya mungkin masih ada yang tinggal.

Langkah 4: Pemasangan PCB

PCB papan imbangan disolder dengan tangan menggunakan stesen pematerian terkawal suhu Weller WESD51 dengan hujung ETB ET 0.093 "pemutar skru" dan solder 0.3mm. Walaupun petua yang lebih kecil mungkin kelihatan lebih baik untuk kerja yang rumit, mereka tidak menahan panas dan menjadikan pekerjaan lebih sukar. Gunakan pen fluks untuk membersihkan pad PCB sebelum memateri. Pateri 0.3 mm berfungsi dengan baik untuk bahagian SMD pematerian tangan. Letakkan sedikit pateri pada satu pad dan kemudian letakkan bahagian tersebut dengan pinset atau pisau x-acto dan ketatkan pad itu. Selebihnya pad kemudian boleh disolder tanpa bahagiannya bergerak. Pastikan tidak terlalu panas bahagian atau pad PCB. Oleh kerana sebahagian besar komponennya cukup besar mengikut standard SMD, PCB cukup mudah dipasang.

Langkah 5: Kod

Kod
Kod

Kod Arduino lengkap disediakan dalam arahan sebelumnya yang dihubungkan dengan di atas. Di sini saya akan menarik perhatian anda ke bahagian yang mengawal pengimbangan sel. Seperti yang disebutkan di atas, S1-S12 dikendalikan oleh CFGR4 dan 4 bit pertama dari kumpulan daftar CFGR5 pada LTC6804 (lihat halaman 51 dan 53 dari lembar data LTC6804). Fungsi gelung kod Arduino mengesan segmen pek bateri voltan tertinggi dan meletakkan nombornya dalam selMax_i yang berubah-ubah. Sekiranya voltan cellMax_i lebih besar daripada CELL_BALANCE_THRESHOLD_V, kod akan memanggil fungsi balance_cfg (), melewati bilangan segmen tinggi, cellMax_i. Fungsi balance_cfg menetapkan nilai daftar LTC6804 yang sesuai. Panggilan ke LTC6804_wrcfg kemudian menuliskan nilai-nilai ini ke IC, menghidupkan pin S yang berkaitan dengan cellMax_i.

Disyorkan: