Spisu treści:
- Kieszonkowe dzieci
- Krok 1: Teoria działania
- Krok 2: Schemat
- Krok 3: Układ PCB
- Krok 4: Montaż PCB
- Krok 5: Kod
Wideo: Arduino LTC6804 BMS - Część 2: Płytka równoważąca: 5 kroków
2024 Autor: John Day | [email protected]. Ostatnio zmodyfikowany: 2024-01-30 11:27
Część 1 jest tutaj
System zarządzania akumulatorem (BMS) obejmuje funkcję wykrywania ważnych parametrów akumulatora, w tym napięcia ogniw, prądu akumulatora, temperatury ogniw itp. Jeśli którykolwiek z nich jest poza zdefiniowanym zakresem, pakiet można odłączyć od obciążenia lub ładowarki lub można podjąć inne odpowiednie działania. W poprzednim projekcie (https://www.instructables.com/id/Arduino-LTC6804-Battery-Management-System/) omawiałem mój projekt BMS, który opiera się na układzie Linear Technology LTC6804 Multicell Battery Monitor i mikrokontrolerze Arduino. Ten projekt rozszerza projekt BMS o równoważenie pakietów baterii.
Pakiety akumulatorów są zbudowane z pojedynczych ogniw w konfiguracjach równoległych i/lub szeregowych. Na przykład pakiet 8p12s zostałby skonstruowany przy użyciu 12 połączonych szeregowo zestawów 8 połączonych równolegle komórek. W paczce byłoby łącznie 96 ogniw. Aby uzyskać najlepszą wydajność, wszystkie 96 ogniw powinno mieć ściśle dopasowane właściwości, jednak zawsze będą występować pewne różnice między ogniwami. Na przykład niektóre ogniwa mogą mieć mniejszą pojemność niż inne. Gdy pakiet jest ładowany, ogniwa o mniejszej pojemności osiągną swoje maksymalne bezpieczne napięcie przed resztą pakietu. BMS wykryje to wysokie napięcie i odetnie dalsze ładowanie. W rezultacie znaczna część pakietu nie jest w pełni naładowana, gdy BMS odetnie ładowanie z powodu wyższego napięcia najsłabszego ogniwa. Podobna dynamika może mieć miejsce podczas rozładowania, gdy ogniwa o większej pojemności nie mogą się całkowicie rozładować, ponieważ BMS odłącza obciążenie, gdy najsłabszy akumulator osiągnie dolną granicę napięcia. Pakiet jest zatem tak dobry, jak jego najsłabsze akumulatory, tak jak łańcuch jest tak mocny, jak jego najsłabsze ogniwo.
Jednym z rozwiązań tego problemu jest użycie deski balansowej. Chociaż istnieje wiele strategii równoważenia pakietu, najprostsze „pasywne” płyty równoważące są zaprojektowane tak, aby spuszczać część ładunku z ogniw o najwyższym napięciu, gdy pakiet zbliża się do pełnego naładowania. Podczas gdy część energii jest marnowana, opakowanie jako całość może przechowywać więcej energii. Odpowietrzanie odbywa się poprzez rozproszenie części mocy przez kombinację rezystora/przełącznika sterowaną przez mikrokontroler. Ta instrukcja opisuje pasywny system równoważenia kompatybilny z arduino/LTC6804 BMS z poprzedniego projektu.
Kieszonkowe dzieci
Możesz zamówić płytkę Balance Board od PCBWays tutaj:
www.pcbway.com/project/shareproject/Balance_board_for_Arduino_BMS.html
Krok 1: Teoria działania
Strona 62 arkusza danych LTC6804 omawia równoważenie komórek. Istnieją dwie opcje: 1) użycie wewnętrznych tranzystorów MOSFET z kanałem N do upuszczania prądu z ogniw o wysokim poziomie lub 2) użycie wewnętrznych tranzystorów MOSFETS do sterowania zewnętrznymi przełącznikami, które przenoszą prąd upływu. Używam drugiej opcji, ponieważ mogę zaprojektować własny obwód upustowy, aby obsłużyć wyższy prąd, niż można to zrobić za pomocą wewnętrznych przełączników.
Wewnętrzne tranzystory MOSFET są dostępne przez piny S1-S12, podczas gdy same komórki są dostępne za pomocą pinów C0-C12. Powyższy obrazek przedstawia jeden z 12 identycznych obwodów upustowych. Gdy Q1 jest włączony, prąd płynie z C1 do uziemienia przez R5, rozpraszając część ładunku w ogniwie 1. Wybrałem rezystor 6 Ohm, 1 W, który powinien wytrzymać kilka miliamperów prądu upustu. dodana dioda LED, dzięki której użytkownik może zobaczyć, które komórki w danym momencie się równoważą.
Piny S1-S12 są sterowane przez CFGR4 i pierwsze 4 bity grup rejestrów CFGR5 (patrz strony 51 i 53 arkusza danych LTC6804). Te grupy rejestrów są ustawiane w kodzie Arduino (omówione poniżej) w funkcji balance_cfg.
Krok 2: Schemat
Schemat płyty wagi BMS został zaprojektowany przy użyciu Eagle CAD. To dość proste. Dla każdego segmentu serii akumulatorów istnieje jeden obwód upustowy. Przełączniki są sterowane sygnałami z LTC6804 poprzez złącze JP2. Prąd upustowy płynie z akumulatora przez złącze JP1. Zwróć uwagę, że prąd upływu płynie do następnego dolnego segmentu akumulatora, więc na przykład C9 uchodzi do C8 itd. Symbol osłony Arduino Uno jest umieszczony na schemacie układu PCB opisanego w kroku 3. Dostępny jest obraz o wyższej rozdzielczości w pliku zip. Poniżej znajduje się lista części (z jakiegoś powodu funkcja przesyłania plików Instructables nie działa dla mnie….)
Ilość Wartość Opakowanie urządzenia Części Opis
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, Q7, Q8, Q9, Q10, Q11, Q12 P-Mosfet 2 PINHD-1X13_BIG 1X13-DUŻY JP1, JP2 NAGŁÓWEK STYKÓW 12 16 R-US_R2512 R2512 R5, R7, R9, R11, R13, R15, R17, R19, R21, R23, REZYSTOR R25, R27, symbol amerykański 12 1K R-US_R0805 R0805 R4, R6, R8, R10, R12, R14, R16, R18, R20, R22, R24, R26 REZYSTOR, symbol amerykański 12 200 R-US_R0805 R0805 R1, R2, R3, R28, R29, R30, R31, R32, R33, R34, R35, R36 REZYSTOR, symbol amerykański
Krok 3: Układ PCB
Układ jest w większości określony przez projekt głównego systemu BMS omówionego w oddzielnej instrukcji (https://www.instructables.com/id/Arduino-LTC6804-Battery-Management-System/). Nagłówki JP1 i JP2 muszą pasować do pasujących nagłówków w BMS. Mosfety, rezystory upustowe i diody LED są rozmieszczone w logiczny sposób na tarczy Arduino Uno. Pliki Gerber zostały utworzone za pomocą Eagle CAD, a płytki drukowane zostały wysłane do Sierra Circuits w celu wykonania.
Załączony plik „Gerbers Balance Board.zip.txt” jest w rzeczywistości plikiem zip zawierającym Gerbery. Możesz po prostu usunąć część.txt nazwy pliku, a następnie rozpakować ją jak normalny plik zip.
Wyślij mi wiadomość, jeśli chciałbyś otrzymać płytkę PCB, może jeszcze trochę mi zostało.
Krok 4: Montaż PCB
Płytki PCB wagi lutowano ręcznie za pomocą stacji lutowniczej Weller WESD51 z kontrolą temperatury z końcówką ETB ET serii 0,093 „śrubokręt” i lutem 0,3 mm. Chociaż mniejsze końcówki mogą wydawać się lepsze do skomplikowanej pracy, nie zatrzymują ciepła i faktycznie utrudniają pracę. Użyj topnika, aby wyczyścić pady PCB przed lutowaniem. Lut 0,3 mm dobrze sprawdza się przy lutowaniu ręcznym części SMD. Umieść trochę lutowia na jednym padu, a następnie umieść część pęsetą lub nożem x-acto i przymocuj ten pad. Pozostały pad może być następnie lutowany bez poruszania się części. Uważaj, aby nie przegrzać części ani podkładek PCB. Ponieważ większość komponentów jest dość duża jak na standardy SMD, płytka PCB jest dość łatwa w montażu.
Krok 5: Kod
Pełny kod Arduino znajduje się w poprzedniej instrukcji połączonej z powyższym. Tutaj zwrócę uwagę na sekcję dotyczącą równoważenia komórek. Jak wspomniano powyżej, S1-S12 są kontrolowane przez CFGR4 i pierwsze 4 bity grup rejestrów CFGR5 w LTC6804 (patrz strony 51 i 53 arkusza danych LTC6804). Funkcja pętli kodu Arduino wykrywa segment akumulatora o najwyższym napięciu i umieszcza jego numer w zmiennej cellMax_i. Jeśli napięcie cellMax_i jest większe niż CELL_BALANCE_THRESHOLD_V, kod wywoła funkcję balance_cfg(), przekazując numer wyższego segmentu, cellMax_i. Funkcja balance_cfg ustawia wartości odpowiedniego rejestru LTC6804. Wywołanie LTC6804_wrcfg następnie zapisuje te wartości do układu scalonego, włączając pin S powiązany z cellMax_i.
Zalecana:
Złota płytka Arduino: 12 kroków
Złota płytka Arduino: CelCelem tej płytki jest posiadanie dokładnie takiej samej funkcjonalności jak Arduino Uno, ale z ulepszonymi funkcjami projektowymi. Będzie zawierał cechy konstrukcyjne zmniejszające hałas, takie jak ulepszone kondensatory routingu i odsprzęgania. Zatrzymamy stoisko
Własna płytka Arduino: 8 kroków
Własna płytka Arduino: Projektując własną płytkę Arduino, dowiesz się o nowych komponentach i obwodach elektronicznych, w tym o niektórych zaawansowanych tematach, takich jak zasilanie, obwód czasowy i użycie ATmega IC (zintegrowanego układu). przyszłość z
Płytka STM32 z Arduino IDE STM32F103C8T6: 5 kroków
Płyta STM32 z Arduino IDE STM32F103C8T6: Cześć, ponieważ wiele osób korzysta z płyt Arduino, ale jak wiemy, mają one pewne ograniczenia, więc niewiele innych płyt pojawiło się jako alternatywa dla Arduino, która może zapewnić lepszą wydajność i lepsze funkcje niż Arduino i jedna z to jest STM3
Płytka drukowana Tima (płytka drukowana): 54 kroki (ze zdjęciami)
Płytka drukowana Tima (Plotted Circuit Board): Jest to proces, którego używam do tworzenia niestandardowej płytki drukowanej do moich projektów. Aby wykonać powyższe: używam mojego plotera XY z rysikiem, aby usunąć warstwę żywicy trawiącej, aby odsłonić miedź na działanie wytrawiacza .Używam mojego plotera XY z laserem do wypalania atramentu w
Płytka HiFive1 Arduino z modułem WiFi ESP-01 Samouczek: 5 kroków
Płytka HiFive1 Arduino z modułem WiFi ESP-01 Samouczek: HiFive1 to pierwsza kompatybilna z Arduino płytka oparta na RISC-V, zbudowana z procesorem FE310 firmy SiFive. Płyta jest około 20 razy szybsza niż Arduino UNO, ale podobnie jak płyta UNO, nie ma łączności bezprzewodowej. Na szczęście istnieje kilka tań