Índice:
- Suprimentos
- Etapa 1: Teoria de Operação
- Etapa 2: Esquemático
- Etapa 3: Layout PCB
- Etapa 4: Montagem de PCB
- Etapa 5: Código
Vídeo: Arduino LTC6804 BMS - Parte 2: Placa de equilíbrio: 5 etapas
2024 Autor: John Day | [email protected]. Última modificação: 2024-01-30 11:34
A parte 1 está aqui
Um sistema de gerenciamento de bateria (BMS) inclui a funcionalidade para detectar parâmetros importantes do pacote de bateria, incluindo tensões de célula, corrente de bateria, temperaturas de célula, etc. Se algum deles estiver fora de uma faixa predefinida, o pacote pode ser desconectado de sua carga ou carregador, ou outra ação apropriada pode ser tomada. Em um projeto anterior (https://www.instructables.com/id/Arduino-LTC6804-Battery-Management-System/), discuti meu design BMS, que é baseado no chip Linear Technology LTC6804 Monitor de bateria multicelular e um microcontrolador Arduino. Este projeto estende o projeto BMS adicionando balanceamento de pacote de bateria.
As baterias são construídas a partir de células individuais em configurações paralelas e / ou em série. Por exemplo, um pacote 8p12s seria construído usando 12 conjuntos conectados em série de 8 células conectadas em paralelo. Haveria um total de 96 células no pacote. Para melhor desempenho, todas as 96 células devem ter propriedades semelhantes, no entanto, sempre haverá alguma variação entre as células. Por exemplo, algumas células podem ter menor capacidade do que outras células. À medida que o pacote é carregado, as células de menor capacidade atingirão sua tensão máxima de segurança antes do resto do pacote. O BMS detectará essa alta tensão e interromperá o carregamento adicional. O resultado será que grande parte da bateria não estará totalmente carregada quando o BMS interromper o carregamento devido à voltagem mais alta da célula mais fraca. Uma dinâmica semelhante pode acontecer durante a descarga, quando as células de maior capacidade não podem descarregar completamente porque o BMS desconecta a carga quando a bateria mais fraca atinge seu limite de baixa tensão. O pacote é, portanto, tão bom quanto suas baterias mais fracas, como uma corrente sendo tão forte quanto seu elo mais fraco.
Uma solução para esse problema é usar uma prancha de equilíbrio. Embora existam muitas estratégias para equilibrar o pacote, as placas de equilíbrio "passivas" mais simples são projetadas para sangrar parte da carga das células de tensão mais alta quando o pacote está quase cheio. Enquanto alguma energia é desperdiçada, a embalagem pode, como um todo, armazenar mais energia. O sangramento é feito dissipando alguma energia por meio de uma combinação de resistor / chave controlada por um microcontrolador. Este instrutível descreve um sistema de balanceamento passivo compatível com o BMS arduino / LTC6804 de um projeto anterior.
Suprimentos
Você pode solicitar o Balance Board PCB da PCBWays aqui:
www.pcbway.com/project/shareproject/Balance_board_for_Arduino_BMS.html
Etapa 1: Teoria de Operação
A página 62 da folha de dados LTC6804 discute o balanceamento de células. Existem duas opções: 1) usando os MOSFETS de canal N internos para drenar a corrente das células altas, ou 2) usar os MOSFETS internos para controlar interruptores externos que transportam a corrente de drenagem. Eu uso a segunda opção porque posso projetar meu próprio circuito de purga para lidar com corrente mais alta do que poderia ser feito usando os interruptores internos.
Os MOSFETS internos estão disponíveis através dos pinos S1-S12, enquanto as próprias células são acessadas através dos pinos C0-C12. A imagem acima mostra um dos 12 circuitos de sangria idênticos. Quando Q1 está ligado, a corrente fluirá de C1 para o aterramento através de R5, dissipando parte da carga na célula 1. Selecionei um resistor de 6 Ohms e 1 Watt, que deve ser capaz de lidar com vários miliampéres de corrente de sangria. um LED adicionado para que o usuário possa ver quais células estão se equilibrando a qualquer momento.
Os pinos S1-S12 são controlados pelo CFGR4 e os primeiros 4 bits dos grupos de registro CFGR5 (consulte as páginas 51 e 53 da folha de dados LTC6804). Esses grupos de registros são definidos no código do Arduino (discutido abaixo) na função balance_cfg.
Etapa 2: Esquemático
O esquema para o quadro de equilíbrio BMS foi projetado usando Eagle CAD. É bastante simples. Existe um circuito de purga para cada segmento da série de baterias. Os interruptores são controlados por sinais do LTC6804 através do cabeçalho JP2. A corrente de sangria flui da bateria através do cabeçalho JP1. Observe que a corrente de sangria flui para o próximo segmento inferior da bateria, então, por exemplo, C9 sangra em C8, etc. O símbolo de escudo do Arduino Uno é colocado no esquema para o layout de PCB descrito na Etapa 3. Uma imagem de resolução mais alta é fornecida no arquivo zip. A seguir está a lista de peças (por algum motivo, o recurso de upload de arquivo Instructables não está funcionando para mim …)
Descrição das peças do pacote do dispositivo do valor da quantidade
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,, 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, símbolo americano 12 1K R-US_R0805 R0805 R4, R6, R8, R10, R12, R14, R16, R18, R20, R22, R24, R26 RESISTOR, símbolo americano 12 200 R-US_R0805 R0805 R1, R2, R3, R28, R29, R30, R31, R32, R33, R34, R35, R36 RESISTOR, símbolo americano
Etapa 3: Layout PCB
O layout é determinado principalmente pelo design do sistema BMS principal discutido em um instrutível separado (https://www.instructables.com/id/Arduino-LTC6804-Battery-Management-System/). Os cabeçalhos JP1 e JP2 devem corresponder aos cabeçalhos correspondentes no BMS. Os Mosfets, resistores de purga e LEDs são organizados de maneira lógica no escudo do Arduino Uno. Os arquivos Gerber foram criados usando Eagle CAD e os PCBs foram enviados para a Sierra Circuits para fabricação.
O arquivo anexado "Gerbers Balance Board.zip.txt" é na verdade um arquivo zip contendo os Gerbers. Você pode simplesmente excluir a parte.txt do nome do arquivo e, em seguida, descompactá-lo como um arquivo zip normal.
Envie-me uma mensagem se você gostaria de obter um PCB, ainda posso ter algum sobrando.
Etapa 4: Montagem de PCB
Os PCBs da placa de equilíbrio foram soldados à mão usando uma estação de solda com temperatura controlada Weller WESD51 com uma ponta de "chave de fenda" ETB ET série 0,093 e solda de 0,3 mm. Embora pontas menores possam parecer melhores para trabalhos complexos, elas não retêm o calor e, na verdade, tornam o trabalho mais difícil. Use uma caneta de fluxo para limpar as almofadas de PCB antes de soldar. A solda de 0,3 mm funciona bem para peças SMD de solda manual. Coloque um pouco de solda em uma almofada e, em seguida, coloque a peça com uma pinça ou estilete e prenda a almofada. A almofada restante pode então ser soldada sem que a peça se mova. Certifique-se de não superaquecer a peça ou as almofadas do PCB. Como a maioria dos componentes é bastante grande para os padrões SMD, o PCB é bastante fácil de montar.
Etapa 5: Código
O código completo do Arduino é fornecido no instrutível anterior vinculado a acima. Aqui, chamarei sua atenção para a seção que controla o balanceamento celular. Conforme mencionado acima, S1-S12 são controlados pelo CFGR4 e os primeiros 4 bits dos grupos de registro CFGR5 no LTC6804 (consulte as páginas 51 e 53 da folha de dados LTC6804). A função de loop do código do Arduino detecta o segmento de pacote de bateria de maior tensão e coloca seu número na variável cellMax_i. Se a voltagem de cellMax_i for maior que CELL_BALANCE_THRESHOLD_V, o código irá chamar a função balance_cfg (), passando o número do segmento alto, cellMax_i. A função balance_cfg define os valores do registro LTC6804 apropriado. Uma chamada para LTC6804_wrcfg, em seguida, grava esses valores no IC, ativando o pino S associado a cellMax_i.
Recomendado:
Robô de auto-equilíbrio - Algoritmo de controle PID: 3 etapas
Robô de Auto Balanceamento - Algoritmo de Controle PID: Este projeto foi concebido porque eu estava interessado em aprender mais sobre Algoritmos de Controle e como implementar efetivamente loops PID funcionais. O projeto ainda está em fase de desenvolvimento, pois um módulo Bluetooth ainda não foi adicionado, o que
Como alimentar um Gopro com o plugue de equilíbrio Lipo: 3 etapas
Como ligar um Gopro com o plug de equilíbrio Lipo: Oi pessoal, desta vez estou mostrando como usar o plug de equilíbrio de uma bateria lipo para alimentar dispositivos USB. Normalmente, o plugue de equilíbrio é usado ao carregar uma bateria lipo. Ele protege a mesma voltagem em todas as células. Mas com este hack você pode usá-lo como um pow
HeadBot - um robô de auto-equilíbrio para aprendizado e divulgação STEM: 7 etapas (com imagens)
HeadBot - um robô com autobalanceamento para aprendizagem e divulgação STEM: Headbot - um robô com 60 centímetros de altura e autobalanceamento - é uma criação da South Eugene Robotics Team (SERT, FRC 2521), uma equipe competitiva de robótica do ensino médio no FIRST Competição de Robótica, de Eugene, Oregon. Este popular robô de divulgação faz re
Robô de equilíbrio / Robô de 3 rodas / Robô STEM: 8 etapas
Robô de balanceamento / Robô de 3 rodas / Robô STEM: Construímos um robô de balanceamento combinado e de 3 rodas para uso educacional em escolas e programas educacionais após as aulas. O robô é baseado em um Arduino Uno, um escudo personalizado (todos os detalhes de construção fornecidos), um pacote de bateria Li Ion (todos constr
Robô de auto-equilíbrio: 6 etapas (com fotos)
Robô de auto-equilíbrio: neste Instrutível, mostraremos como construir o robô de auto-equilíbrio que fizemos como um projeto escolar. É baseado em alguns outros robôs, como o nBot e outro Instructable. O robô pode ser controlado a partir de um smartphone Android vi