Módulo Controlador de Carga e Descarga de Bateria Lithium XY-CD60: Manual Técnico Completo

Introdução
Neste manual, será apresentado como instalar, configurar e utilizar o Módulo Controlador de Carga e Descarga de Bateria Lithium XY-CD60. Se desejar adquirir este produto, clique aqui.
O Módulo Controlador de Carga e Descarga de Bateria Lithium XY-CD60 (código SKU RB1536) é uma unidade supervisora digital microcontrolada de tensão contínua (DC a ) projetada para embutir em painéis elétricos () e proteger bancos de acumuladores contra sobrecarga (Overvoltage Protection — OVP) e sobredescarga profunda (Undervoltage Lockout — UVLO/UVP). Equipado com visor LCD de cristal líquido retroiluminado, comutação eletromecânica direta por relé de até e memória não volátil EEPROM, o instrumento opera em dois perfis selecionáveis: Modo de Carga (IN / P-1) e Modo de Descarga (OUT / P-2), incorporando temporizadores programáveis de condução (OP), retardo de reconexão (dOP), partida forçada contra afundamento transitório de tensão (FOP) e interface serial UART TTL () em revisões com barramento de telemetria habilitado. Este guia técnico destina-se a técnicos, estudantes e engenheiros de sistemas embarcados e energia estacionária, apresentando especificações elétricas completas, mapeamento de bornes, parametrização matemática para químicas Li-Ion, LiFePO4 e Chumbo-Ácido, códigos de diagnóstico e firmware C++ completo para supervisão via ESP32 e Arduino.
Especificações técnicas
Principais especificações
Os parâmetros construtivos, funcionais e de interface do Módulo Controlador XY-CD60 estão consolidados na tabela a seguir:
| Parâmetro | Especificação |
|---|---|
| Modelo Comercial | Módulo Controlador Digital de Carga e Descarga de Bateria XY-CD60 |
| Código de Referência (SKU) | RB1536 |
| Químicas de Bateria Compatíveis | Íon de Lítio (Li-Ion / LiPo), Fosfato de Ferro-Lítio (LiFePO4), Chumbo-Ácido (AGM / Gel / Estacionária) e NiMH ( a ) |
| Faixa de Tensão de Controle | a |
| Corrente Máxima de Comutação | contínuos no relé interno (recomenda-se margem operacional de : contínuos) |
| Resolução de Exibição e Ajuste | |
| Precisão de Medição de Tensão | |
| Topologia de Saída | Saída Direta por Relé (Direct Relay Switch Output) — quando atracado (não realiza conversão DC-DC step-up ou step-down) |
| Modos Operacionais Integrados | Modo Carga (IN / P-1) e Modo Descarga (OUT / P-2) selecionáveis via teclado frontal |
Temporizador de Ciclo (OP) | 00:00 a 99:59 (HH:MM) — 00:00 desabilita o corte por tempo |
Atraso de Reconexão (dOP) | 0 a 999 segundos entre ciclos consecutivos |
Partida Forçada na Descarga (FOP) | 0 a 10 segundos (exclusivo do modo OUT, ignora queda de tensão de inrush na partida de cargas indutivas) |
| Visor Integrado | Display LCD segmentado com retroiluminação azul e modo de economia de energia configurável (L-P: ON / OFF) |
| Retenção de Parâmetros | Memória EEPROM interna não volátil (preserva UP, dn, OP, dOP, FOP e modo IN/OUT após desenergização) |
| Interface de Telemetria (PCB Interna) | Barramento UART TTL () de vias (3.3V, TX, RX, GND) a (8N1) em revisões com header populado |
| Dimensões Externas () | (gabinete plástico industrial cinza grafite com travas laterais) |
| Recorte Recomendado em Painel | (massa aproximada: ) |
Características elétricas e operacionais
Os limites elétricos nominais e máximos absolutos do estágio de medição, alimentação lógica interna e chaveamento de potência do XY-CD60 estão detalhados na tabela abaixo:
| Parâmetro Elétrico / Operacional | Mínimo | Típico | Máximo | Unidade | Condição / Observação Técnica |
|---|---|---|---|---|---|
| Tensão de Alimentação / Monitoramento | Abaixo de o regulador interno pode reiniciar; acima de há risco de dano permanente | ||||
| Corrente de Contato do Relé () | Carga resistiva DC; para motores, bombas ou inversores, usar contator auxiliar externo | ||||
| Consumo Próprio (Relé Desenergizado) | Modo de espera com economia de backlight ativa (L-P: ON) | ||||
| Consumo Próprio (Relé Atracado + LCD) | Bobina do relé energizada e retroiluminação LCD acesa continuamente (L-P: OFF) | ||||
| Erro Absoluto do Divisor ADC | Leitura estabilizada em regime contínuo sem ripple excessivo na linha | ||||
| Histerese Mínima Programável () | Diferença obrigatória (se , exibe ERR) | ||||
| Nível Lógico da Porta Serial UART | Lógica CMOS/TTL de nos pinos TX e RX internos (, 8N1) | ||||
| Taxa de Amostragem / Telemetria | — | Atualização do visor LCD e envio de pacotes CSV quando o comando start está ativo | |||
| Temperatura de Operação Industrial () | Umidade relativa de a sem condensação sobre a PCB traseira |
Descrição do produto
O que é o Módulo Controlador de Carga e Descarga de Bateria Lithium XY-CD60?
O Módulo Controlador de Carga e Descarga de Bateria Lithium XY-CD60 é um relé supervisor de janela de tensão de alta precisão com interface homem-máquina (IHM) frontal integrada em gabinete padrão de painel (). Sua arquitetura interna combina um estágio regulador step-down de alta tensão de entrada (capaz de operar diretamente a partir do barramento monitorado de até sem exigir fonte auxiliar externa), um conversor analógico-digital (ADC) acoplado a divisores resistivos de precisão para leitura simultânea da bateria, um microcontrolador dedicado com memória não volátil, um display LCD multifunção (que exibe simultaneamente tensão instantânea em Volts, estado percentual estimado % ou tempo de condução HH:MM, além dos ícones IN e OUT) e um relé eletromecânico de potência conectado a um bloco traseiro de 4 bornes de parafuso.
Do ponto de vista de engenharia de potência, é fundamental compreender que o XY-CD60 atua estritamente como uma chave comutadora automática controlada por tensão (Direct Output Voltage Controller): ele não contém conversor CC-CC regulador de corrente constante/tensão constante (CC/CV) nem altera o nível da tensão entre entrada e saída. No Modo Carga (IN / P-1), o módulo conecta ou desconecta uma fonte carregadora DC apropriada aos polos da bateria conforme os limiares inferior (dn) e superior (UP); já no Modo Descarga (OUT / P-2), ele atua como protetor de subtensão (Low-Voltage Disconnect — LVD), desligando automaticamente a carga consumidora assim que a tensão do banco atinge o limite mínimo seguro (dn).
Para que serve?
- Automação de recarga com corte preciso contra sobrecarga (
Modo IN / P-1): Gerenciamento automático da conexão entre carregadores DC, fontes chaveadas ajustáveis ou barramentos solares pré-regulados e bancos de baterias de lítio (2S a 14S Li-Ion ou 2S a 16S LiFePO4) e chumbo-ácido (, , e ), iniciando a recarga emdne interrompendo emUP. - Proteção contra descarga profunda (Low-Voltage Disconnect —
Modo OUT / P-2): Desligamento automático de cargas DC (iluminação de emergência, telecomunicações off-grid, robôs móveis AGVs, refrigeração portátil e bombas DC) antes que as células de lítio ou estacionárias sofram degradação química irreversível por subtensão. - Supervisão temporizada e telemetria embarcada de bancos de energia: Controle combinado por janela de tensão e limite máximo de tempo de condução (
OP), com suporte a leitura serial em tempo real e comando remoto por microcontroladores ESP32 / Arduino através da interface UART TTL interna.
Por que devo usar?
- Ampla faixa dinâmica de a autoalimentada em único instrumento de painel: Dispensa fontes auxiliares separadas para o circuito lógico e atende desde pequenos packs
2Sde até bancos industriais de nominais ( / em plena carga) com resolução de . - Proteção inteligente contra falsos desarmes de partida (
FOP) e ciclagem rápida (dOP): O recurso exclusivo de condução forçada inicial (FOPde a ) mantém o relé fechado durante o pico de corrente de partida (inrush) de motores ou capacitores, impedindo que o afundamento momentâneo da tensão da bateria desarme prematuramente o cortedn. - Visor LCD completo com cálculo percentual, horímetro de ciclo e retenção em EEPROM: Permite inspecionar instantaneamente no painel frontal a tensão real, o percentual útil entre
dneUPe o tempo acumulado de carga/descarga, mantendo todos os ajustes gravados mesmo após queda total de energia.
Quando devo usar?
Este controlador é indicado sempre que você já dispuser de uma fonte carregadora com limitação de corrente adequada (para o Modo Carga IN) ou de uma carga consumidora DC até (para o Modo Descarga OUT) operando entre e , e necessitar de histerese ajustável ao décimo de Volt (), montagem limpa em porta de quadro elétrico e proteções temporizadas (OP, dOP e FOP).
Por outro lado, adote as seguintes soluções específicas caso a sua aplicação apresente estas condições:
- Conexão direta de placas fotovoltaicas sem regulação prévia de corrente/MPPT: Painéis solares possuem alta tensão de circuito aberto () e exigem rastreamento do ponto de máxima potência e estágios PWM/Buck dedicados. Para arranjos fotovoltaicos em ou , utilize o Controlador de Carga Painel Solar MPPT 60A 12V/24V Automático ou o Controlador de Carga Painel Solar MPPT 100A 12V/24V.
- Fontes brutas sem limitação de corrente conectadas a baterias de lítio descarregadas: Como o XY-CD60 fecha um contato seco de relé entre
VIN+eOUT+, ligar uma fonte chaveada comum de tensão fixa sem limite de corrente diretamente a uma bateria de lítio vazia provocará sobrecorrente severa. Utilize sempre um carregador CC/CV ou associe um conversor DC-DC com controle de corrente constante em série. - Balanceamento individual célula a célula (Cell Balancing) ou correntes acima de : O XY-CD60 monitora a tensão total do pacote; todo banco multicélula de lítio (
2Sa16S) deve manter obrigatoriamente sua placa BMS (Battery Management System) interna instalada para proteção individual das células. Para correntes superiores a – (como inversores senoidais pesados), utilize a saída do XY-CD60 apenas para acionar a bobina de um contator DC externo ou relé automotivo de alta corrente ( a ).
Pinout e diagrama de entradas/saídas
As interfaces físicas do XY-CD60 dividem-se em três subsistemas: (1) o bloco traseiro de 4 bornes de parafuso para potência e sensoriamento DC, (2) o painel frontal com display LCD e 3 botões táteis de parametrização, e (3) o barramento interno UART TTL na placa de circuito impresso.
1. Terminais de potência e sensoriamento (Bloco traseiro de 4 bornes azuis)
A função física dos bornes VIN+, VIN-, OUT+ e OUT- depende diretamente do modo operacional ativo (IN ou OUT). Observe atentamente a correspondência na tabela abaixo:
| Borne (Serigrafia) | Função no Modo Carga (IN / P-1) | Função no Modo Descarga (OUT / P-2) | Características Internas na PCB |
|---|---|---|---|
VIN+ | Entrada Positiva do Carregador DC ( a ) | Entrada Positiva da Bateria ( a ) | Alimenta o regulador interno do módulo e conecta-se ao contato comum do relé de . |
VIN- | Negativo Comum do Carregador DC ( / GND) | Negativo da Bateria ( / GND) | Malha de referência negativa comum interligada diretamente na PCB ao borne OUT-. |
OUT+ | Saída Positiva para a Bateria (+) (mede permanentemente) | Saída Positiva Chaveada para a Carga DC (+) | Conecta-se ao contato Normalmente Aberto (NO) do relé e ao divisor ADC de leitura da bateria no modo IN. |
OUT- | Negativo da Bateria (-) ( / GND) | Negativo da Carga DC (-) ( / GND) | Barramento negativo comum contínuo com VIN- (o relé interrompe estritamente o polo positivo +). |
2. Interface frontal (Display LCD e teclas de comando)
| Elemento Frontal | Identificação | Função Operacional Detalhada |
|---|---|---|
| Display LCD Linha Superior | XX.XV (00.0V–60.0V) | Exibe em tempo real a tensão medida da bateria com resolução de , ou o mnemônico do parâmetro em edição (UP, dn, OP, dOP, FOP). |
| Display LCD Linha Inferior | XXX% ou HH:MM | Alterna entre o percentual estimado de carga (%) e o tempo de condução acumulado (HH:MM), ou exibe códigos de estado (OFF, ERR, nbE, H:ER). |
Indicadores IN / OUT | Ícones Laterais LCD | IN aceso indica Modo Carga (P-1), piscando enquanto o relé carrega; OUT aceso indica Modo Descarga (P-2), piscando enquanto alimenta a carga. |
Botão UP | Tecla Superior | Toque curto: alterna a exibição inferior entre % e tempo HH:MM (ou incrementa valores no menu). Pressão longa (): comuta entre Modo Carga (IN) e Modo Descarga (OUT). |
Botão SET | Tecla Central | Toque curto: consulta em sequência os parâmetros salvos (UP, dn, OP, dOP, FOP). Pressão longa (–): entra ou salva/sai do menu de programação. |
Botão DOWN | Tecla Inferior | Toque curto: habilita/desabilita manualmente o relé (Parada de Emergência — exibe OFF). Pressão longa (): alterna economia do backlight (L-P: ON / L-P: OFF). |
3. Conector interno de comunicação serial UART TTL (4 pinos na PCB)
Nas revisões de placa do XY-CD60 / XY-CD60L equipadas com header lateral de 4 furos/pinos (passo ), os sinais seguem esta distribuição:
| Pino na PCB | Direção (Relativa ao XY-CD60) | Nível Elétrico | Função Técnica |
|---|---|---|---|
3.3V / VCC | Saída (Referência Lógica) | Barramento lógico interno do microcontrolador (baixa corrente; usar apenas como referência de nível lógico, não alimentar cargas externas). | |
TX | Saída Serial | TTL | Transmite pacotes periódicos CSV de telemetria e respostas de parâmetros a para o pino RX do microcontrolador externo. |
RX | Entrada Serial | TTL | Recebe comandos em texto ASCII (start, read, on, off, upXX.X, dwXX.X) vindos do microcontrolador externo (usar divisor resistivo se o mestre for ). |
GND | Referência Comum | Terra comum conectado internamente à malha VIN- / OUT- (atenção ao acoplamento galvânico direto). |
Como fazer a ligação
Requisitos de instalação e alimentação
- Verificação obrigatória da topologia conforme o modo (
INvs.OUT):- Para Carregar uma Bateria (
Modo IN / P-1): A fonte carregadora DC (–, com limitação própria de corrente) DEVE ser ligada emVIN+eVIN-, enquanto a bateria DEVE ser conectada emOUT+eOUT-. Nessa topologia, o ADC monitora continuamente a tensão real da bateria emOUT+; se nenhuma bateria for detectada emOUT+, o visor indicará0.00V/nbEe manterá o relé aberto por segurança. - Para Proteger a Descarga de uma Bateria (
Modo OUT / P-2): A bateria DEVE ser conectada emVIN+eVIN-(alimentando tanto o próprio controlador quanto a entrada do relé), e a carga consumidora DC DEVE ser conectada emOUT+eOUT-.
- Para Carregar uma Bateria (
- Dimensionamento de condutores e proteção contra sobrecorrente:
- Para correntes até , utilize cabos flexíveis de cobre estanhado de no mínimo (); para correntes entre e , utilize cabos de a ( a ) com terminais tubulares ilhós prensados, evitando fiapos soltos entre bornes vizinhos.
- Instale sempre um fusível DC rápido ou disjuntor DC de em série com o polo positivo próximo ao terminal da bateria para proteção contra curtos-circuitos externos na fiação.
- Acoplamento mecânico e interface lógica UART ():
- Ao embutir em painel metálico (recorte ), certifique-se de manter afastamento mínimo de atrás dos bornes traseiros em relação a chapas metálicas aterradas.
- Como o pino
GNDda porta serial UART compartilha a mesma referência elétrica deVIN-eOUT-, ao conectar um ESP32 () alimentado por USB de computador, garanta que o negativo da fonte DC e oGNDdo USB não formem laço de potencial distinto (em bancos industriais flutuantes de , recomenda-se isolador digital UART como o ADuM1201 ou optoacopladores rápidos). Em placas Arduino Uno/Mega de , insira um divisor resistivo ( em série + paraGND) entre oTXdo Arduino e oRXdo XY-CD60.
Diagrama de ligação elétrica
A figura abaixo ilustra a arquitetura de conexões do Módulo Controlador XY-CD60 nos dois cenários de potência (Modo Carga IN com carregador DC + bateria de lítio e Modo Descarga OUT com bateria + carga DC), bem como a interligação de supervisão digital UART TTL com um microcontrolador ESP32:

Observe que o relé eletromecânico interno atua como interruptor unilateral sobre o barramento positivo (VIN+ OUT+), enquanto os terminais negativos (VIN- e OUT-) permanecem internamente unificados como referência comum de para o divisor resistivo do conversor analógico-digital.
Tabela de conexões dos terminais
1. Ligações de Potência — Modo de Carga (IN / P-1)
| Terminal de Origem | Terminal de Destino (XY-CD60) | Cor Sugerida do Fio | Tipo de Sinal | Observação Técnica |
|---|---|---|---|---|
| Carregador DC Positivo (+) | Borne VIN+ | Vermelho | Entrada DC (–) | Usar carregador CC/CV compatível com a tensão nominal do banco e |
| Carregador DC Negativo (-) | Borne VIN- | Preto | Referência Comum () | Interligado internamente na placa ao terminal OUT- |
| Bateria Polo Positivo (+) (via Fusível 10A) | Borne OUT+ | Vermelho | Saída / Sensoriamento | O XY-CD60 mede continuamente neste borne; liga em e corta em |
| Bateria Polo Negativo (-) | Borne OUT- | Preto | Referência Comum () | Retorno negativo da corrente de carga da bateria |
2. Ligações de Potência — Modo de Descarga (OUT / P-2)
| Terminal de Origem | Terminal de Destino (XY-CD60) | Cor Sugerida do Fio | Tipo de Sinal | Observação Técnica |
|---|---|---|---|---|
| Bateria Polo Positivo (+) (via Fusível 10A) | Borne VIN+ | Vermelho | Entrada Bateria (–) | Energiza o controlador e monitora para proteção contra subtensão |
| Bateria Polo Negativo (-) | Borne VIN- | Preto | Referência Comum () | Negativo principal proveniente do banco de baterias |
| Carga DC Positivo (+) | Borne OUT+ | Laranja / Vermelho | Saída Chaveada () | Libera energia quando e corta imediatamente quando |
| Carga DC Negativo (-) | Borne OUT- | Preto | Referência Comum () | Retorno negativo da carga consumidora ( resistivos) |
3. Ligações de Telemetria Serial UART TTL () — ESP32 () e Arduino ()
| Pino no XY-CD60 (Header UART) | Destino no ESP32 ( Nativo) | Destino no Arduino Mega / Uno () | Cor Sugerida | Observação Técnica |
|---|---|---|---|---|
Pino 3.3V | Deixar livre (NC) (ou ler referência) | Deixar livre (NC) | — | Não conectar ao pino 5V nem usar para alimentar placas externas |
Pino TX | GPIO 16 (RX2) | Pino 19 (RX1 Mega) ou D10 | Azul Claro | Saída do XY-CD60 (reconhecida como nível HIGH por ESP32 e Arduino) |
Pino RX | GPIO 17 (TX2) | Pino 18 (TX1) via Divisor | Verde / Amarelo | Entrada sensível de — nunca aplicar direto sem divisor resistivo |
Pino GND | GND | GND | Preto | Equaliza o potencial lógico com VIN- / OUT- do controlador |
Cuidados e observações de segurança
⛔ Perigo: O XY-CD60 NÃO possui proteção contra inversão de polaridade nos bornes de potência e opera exclusivamente em Corrente Contínua ( a )! Jamais conecte tensão alternada da rede elétrica ( / ) em nenhum terminal do módulo e confira rigorosamente com um multímetro a polaridade positiva (
+) e negativa (-) da bateria e do carregador antes de apertar os parafusos. A inversão de polaridade em bancos de lítio de alta capacidade provoca curto-circuito instantâneo no diodo/regulador interno e risco severo de arco elétrico e incêndio.
⚠️ Atenção: Lembre-se de que a saída do XY-CD60 é direta por relé () e nunca dispensa o BMS em pacotes multicélula de lítio! O módulo não regula tensão nem limita corrente: se você aplicar em
VIN+para carregar uma bateria de sem controle de corrente, danificará a bateria e soldará os contatos do relé de . Além disso, ao acionar cargas indutivas DC (motores, solenoides, válvulas ou bombas), instale obrigatoriamente um diodo flyback de roda-livre (ex.:1N5408ouMBR20100, catodo no positivoOUT+e anodo emOUT-) em paralelo com a carga para suprimir picos reversos de tensão na abertura do relé.
💡 Dica: Se ao ligar uma carga pesada no Modo Descarga (
OUT) o relé armar e desarmar imediatamente no primeiro segundo mesmo com a bateria carregada, ajuste o parâmetroFOP(Forced Start Time) para02ou03segundos. Cargas capacitivas (fontes internas/inversores) ou motores DC geram uma queda momentânea de tensão nos cabos na partida (voltage sag); o temporizadorFOPmantém a condução sustentada durante esses segundos iniciais até a corrente estabilizar em regime nominal.
Como usar
Guia de operação passo a passo
- Seleção do Modo de Operação (
INCarga vs.OUTDescarga):- Com o módulo energizado na tela principal, pressione e segure o botão
UPpor 5 segundos contínuos. - Observe o ícone lateral no visor LCD alternar entre
IN(Modo de Controle de CargaP-1) eOUT(Modo de Controle de DescargaP-2). Selecione o modo estritamente compatível com a fiação física instalada.
- Com o módulo energizado na tela principal, pressione e segure o botão
- Consulta rápida dos parâmetros atuais:
- Dê um toque curto no botão
SET. O display exibirá sequencialmente os valores gravados deUP(tensão superior),dn(tensão inferior),OP(tempo máximo de condução),dOP(atraso de reconexão) e, se estiver no modoOUT,FOP(tempo de partida forçada), retornando automaticamente à tela principal.
- Dê um toque curto no botão
- Programação dos limiares de tensão e temporizadores (
Menu SET):- Pressione e mantenha pressionado o botão
SETpor 2 a 3 segundos até o visor entrar na interface de ajuste (o parâmetroUPpiscará). - Utilize toques curtos (passo de ) ou pressão contínua (avanço rápido) nas teclas
UPeDOWNpara ajustar o valor desejado. - Dê um toque curto em
SETpara avançar ao próximo parâmetro na sequência:UPdnOPdOPFOP(este último visível apenas no modoOUT). - Após ajustar todos os itens, pressione e segure o botão
SETpor mais de 3 segundos para gravar os parâmetros na memória EEPROM e retornar à tela operacional. (Nota: caso configurednmaior ou igual aUP, o visor piscaráERRalertando parametrização inválida).
- Pressione e mantenha pressionado o botão
- Alternância de leitura inferior e controle manual do relé:
- Na tela principal, um toque curto em
UPalterna a linha inferior do LCD entre a porcentagem de bateria (%) e o cronômetro de condução (HH:MM). - Um toque curto em
DOWNatua como chave geral habilita/desabilita do relé: quando desabilitado, o visor mostraOFFna linha inferior e mantém o relé desconectado independentemente da tensão; um novo toque curto emDOWNrestaura a operação automática.
- Na tela principal, um toque curto em
- Configuração da economia de energia do display (
L-P):- Na tela principal, pressione e segure o botão
DOWNpor 5 segundos para alternar entre:L-P: OFF: Retroiluminação azul do LCD permanece sempre acesa (ideal para bancadas e painéis internos).L-P: ON: Retroiluminação apaga automaticamente após 5 a 10 minutos sem interação para poupar bateria (qualquer tecla acende novamente a tela sem alterar o estado do relé).
- Na tela principal, pressione e segure o botão
Modos de operação e ajustes
Equacionamento da janela de histerese e cálculo percentual no LCD
Para impedir oscilações mecânicas destrutivas no relé (chattering) decorrentes da recuperação elástica da tensão interna da bateria () no instante em que a corrente cessa, o XY-CD60 opera por comparador de janela com histerese definida pela largura :
No Modo de Carga (IN / P-1), o estado lógico do relé em função da tensão medida na bateria () e do estado imediatamente anterior obedece à lei:
Simetricamente, no Modo de Descarga (OUT / P-2), o estado lógico libera a alimentação para a carga apenas após a bateria recuperar o patamar superior e interrompe o fornecimento ao atingir o corte de subtensão :
O percentual de tensão exibido no LCD (%) representa uma interpolação linear direta da tensão instantânea dentro da janela útil configurada pelo usuário entre () e ():
(Observação: em algumas revisões de documentação traduzidas de fábrica, a relação é descrita simplificadamente sobre a excursão ; na prática operacional, corresponde a e corresponde a , tratando-se de estimativa volt-métrica linear e não de contagem coulombimétrica ).
Para um banco composto por células associadas em série, os limiares recomendados de projeto calculam-se multiplicando o número de células em série pelas tensões seguras por célula:
Tabela de parâmetros configuráveis do menu SET
| Código no LCD | Nome Técnico do Parâmetro | Faixa Ajustável | Unidade | Comportamento Funcional |
|---|---|---|---|---|
UP | Limite Superior de Tensão | a | No modo IN, desliga o carregador (tensão máxima de carga). No modo OUT, religa a carga após recuperação da bateria. | |
dn | Limite Inferior de Tensão | a | No modo IN, religa o carregador para iniciar nova recarga. No modo OUT, desliga a carga protegendo a bateria contra descarga profunda. | |
OP | Tempo Máximo de Condução | 00:00 a 99:59 | HH:MM | Limita a duração máxima de cada ciclo de carga/descarga. Configurar 00:00 desativa o limite de tempo (operação puramente por tensão). |
dOP | Atraso de Reconexão (Delay) | 000 a 999 | Intervalo mínimo de repouso/resfriamento entre o fim de um ciclo e o próximo acionamento permitido do relé. | |
FOP | Tempo de Partida Forçada | 00 a 10 | Visível apenas no modo OUT. Mantém o relé forçado ligado pelos primeiros – ignorando quedas transitórias de partida abaixo de dn. | |
L-P | Economia de Backlight LCD | ON / OFF | — | Acionado segurando DOWN por fora do menu: OFF = luz sempre ligada; ON = apaga luz de fundo após –. |
Tabela prática de valores UP e dn para baterias comerciais ( a )
Utilize a tabela de engenharia abaixo como ponto de partida seguro para configurar os limiares do seu banco (respeitando uma margem conservadora que maximiza a vida útil cíclica das células):
| Configuração do Banco | Química | Tensão Nominal | Modo Carga IN: dn (Inicia) / UP (Corta) | Modo Descarga OUT: UP (Liga) / dn (Corta) |
|---|---|---|---|---|
2S Lítio (/cél.) | Li-Ion / LiPo | dn = 7.2V / UP = 8.4V (ou 8.3V) | UP = 7.6V / dn = 6.4V | |
3S Lítio (/cél.) | Li-Ion 18650 | dn = 10.8V / UP = 12.6V (ou 12.4V) | UP = 11.4V / dn = 9.6V | |
4S Lítio Ferro (/cél.) | LiFePO4 12V | dn = 12.8V / UP = 14.4V (máx. 14.6V) | UP = 13.0V / dn = 11.2V | |
12V Estacionária / Automotiva | Chumbo-Ácido AGM | dn = 12.2V / UP = 14.4V | UP = 12.6V / dn = 11.1V | |
7S Lítio (/cél.) | Li-Ion 24V | dn = 25.2V / UP = 29.4V (ou 29.0V) | UP = 26.6V / dn = 22.4V | |
8S Lítio Ferro (/cél.) | LiFePO4 24V | dn = 25.6V / UP = 28.8V (máx. 29.2V) | UP = 26.0V / dn = 22.4V | |
24V Bancada Solar / No-Break | Chumbo-Ácido AGM | dn = 24.4V / UP = 28.8V | UP = 25.2V / dn = 22.2V | |
13S E-Bike / Mobilidade | Li-Ion 48V | dn = 46.8V / UP = 54.6V | UP = 49.4V / dn = 41.6V | |
16S Telecom / Solar 48V | LiFePO4 48V | dn = 51.2V / UP = 57.6V (máx. 58.4V) | UP = 52.0V / dn = 44.8V |
Diagnóstico de códigos de alerta e erro no visor LCD
| Código no Visor | Significado Técnico | Causa Raiz e Procedimento de Correção |
|---|---|---|
ERR (piscando) | Erro de Janela de Parametrização | O limite inferior dn foi ajustado com valor maior ou igual ao limite superior UP (). Reentre no menu SET e garanta . |
nbE / 0.00V | No Battery Error (Bateria Ausente) | No Modo Carga (IN), nenhuma tensão válida (–) foi detectada nos bornes OUT+ / OUT-, ou o fusível da bateria abriu. Confira a conexão da bateria em OUT+/OUT-. |
H:ER (piscando) | Hours Error (Tempo OP Insuficiente) | O temporizador OP encerrou a carga antes que a tensão da bateria conseguisse ultrapassar o patamar mínimo dn, desativando OP por segurança. Pressione qualquer tecla para limpar o alerta e aumente OP (ou ajuste 00:00). |
OFF (fixo) | Parada de Emergência Manual Ativa | O relé foi desabilitado manualmente por toque curto no botão DOWN (ou pelo comando serial off). Pressione brevemente DOWN (ou envie on) para retomar o controle automático. |
Protocolo de comunicação serial UART TTL (115200 bps, 8N1)
Para integração com supervisórios embarcados, o microcontrolador do XY-CD60 aceita comandos ASCII em letras minúsculas a 115200 bps, 8 bits de dados, sem paridade, 1 stop bit (8N1):
| Comando ASCII | Exemplo de Envio | Ação Executada pelo Controlador XY-CD60 |
|---|---|---|
start | start | Inicia o envio periódico automático () da linha CSV de telemetria em tempo real. |
stop | stop | Interrompe a transmissão periódica de telemetria pela porta TX. |
read | read | Solicita a leitura imediata dos parâmetros atualmente configurados (UP, dn, OP, dOP, FOP). |
on | on | Habilita a operação automática do relé (sai do modo de bloqueio manual OFF). |
off | off | Força a abertura imediata do relé (Parada de Emergência remota — exibe OFF no LCD). |
upXX.X | up14.4 | Altera remotamente o limite superior UP (usar zero à esquerda abaixo de , ex.: up08.4). |
dwXX.X | dw12.8 | Altera remotamente o limite inferior dn (usar zero à esquerda abaixo de , ex.: dw07.2). |
HH:MM | 02:30 | Configura o tempo máximo de condução OP (00:00 desabilita o corte por tempo). |
Quando o streaming é ativado via start, o pino TX transmite a cada segundo um quadro ASCII separado por vírgulas no formato:
12.8V,050%,00:14,OP
Onde o 1º campo informa a tensão medida da bateria (12.8V), o 2º campo informa o percentual dentro da janela (050%), o 3º campo informa o tempo decorrido de condução (00:14) e o 4º campo indica o estado operacional do relé (OP = conduzindo/habilitado ou OFF = bloqueado).
Exemplos práticos de uso
Supervisório de Telemetria e Parametrização Remota UART TTL (ESP32 e Arduino)
Como o XY-CD60 utiliza protocolo ASCII aberto sobre UART padrão, não é necessária nenhuma biblioteca externa de terceiros — utiliza-se diretamente a classe nativa HardwareSerial do núcleo oficial Arduino/ESP32 (ou SoftwareSerial no Arduino Uno). O firmware completo abaixo inicializa a porta serial secundária a , requisita automaticamente a telemetria contínua (start), decodifica cada campo do pacote CSV em variáveis numéricas estruturadas (tensaoV, percentual, tempoConducao, statusRele) prontas para envio via Wi-Fi/MQTT e oferece um console interativo no Monitor Serial para reconfigurar remotamente os limites UP, dn, OP ou acionar corte de emergência (off/on):
/**
* ============================================================================
* Projeto: Supervisor de Telemetria e Controle Remoto UART para XY-CD60
* Hardware: Modulo Controlador Carga/Descarga Bateria Lithium XY-CD60 (RB1536)
* Plataformas: ESP32 (HardwareSerial 2 - 3.3V nativo) e Arduino Mega (Serial1)
* Protocolo: UART TTL 3.3V - 115200 bps, 8N1 (Comandos ASCII + Telemetria CSV)
* ============================================================================
*/
#include <Arduino.h>
#if defined(ESP32)
// Conexao direta 3.3V no ESP32: GPIO 16 (RX2 <- TX XY-CD60), GPIO 17 (TX2 -> RX XY-CD60)
const int PIN_XY_RX = 16;
const int PIN_XY_TX = 17;
HardwareSerial xySerial(2);
#elif defined(__AVR_ATmega2560__)
// No Arduino Mega 2560 (5V): usar divisor resistivo (1k / 2k) do Pino 18 (TX1) para o RX do XY-CD60
#define xySerial Serial1
#else
#error "Para comunicacao estavel a 115200 bps, utilize ESP32 (Serial2) ou Arduino Mega (Serial1)."
#endif
// Estrutura para armazenar os dados decodificados em tempo real do XY-CD60
struct TelemetriaXYCD60 {
float tensaoVolts;
uint8_t percentual;
char tempoHHMM[8];
char statusModo[8];
uint32_t ultimaAtualizacaoMs;
bool dadosValidos;
};
TelemetriaXYCD60 bateria = {0.0f, 0, "00:00", "---", 0, false};
String bufferLinhaXY = "";
/**
* Envia comando ASCII limpo ao controlador XY-CD60 (sem caracteres extras de controle)
*/
void enviarComandoXY(const char *cmd) {
xySerial.print(cmd);
xySerial.flush();
Serial.print(F("\n[CMD -> XY-CD60] Enviado: "));
Serial.println(cmd);
}
/**
* Configura remotamente os limiares superior (UP) e inferior (dn) com formatacao XX.X
*/
void configurarJanelaTensao(float limiteInferiorDn, float limiteSuperiorUp) {
if (limiteInferiorDn < 6.0f || limiteSuperiorUp > 60.0f || limiteInferiorDn >= limiteSuperiorUp) {
Serial.println(F("[ERRO] Limites invalidos! Respeite 6.0V <= dn < UP <= 60.0V."));
return;
}
char cmdUp[12];
char cmdDn[12];
// Formato estrito com zero a esquerda abaixo de 10.0V (ex: up08.4 / dw07.2)
snprintf(cmdUp, sizeof(cmdUp), "up%04.1f", limiteSuperiorUp);
snprintf(cmdDn, sizeof(cmdDn), "dw%04.1f", limiteInferiorDn);
enviarComandoXY(cmdUp);
delay(250); // Intervalo para gravacao interna na EEPROM do XY-CD60
enviarComandoXY(cmdDn);
}
/**
* Interpreta linhas CSV de telemetria no formato: "12.8V,050%,00:14,OP"
*/
void processarLinhaXY(const String &linha) {
int v1 = linha.indexOf(',');
int v2 = (v1 > 0) ? linha.indexOf(',', v1 + 1) : -1;
int v3 = (v2 > 0) ? linha.indexOf(',', v2 + 1) : -1;
// Se possuir os 3 separadores CSV e sufixo 'V' no primeiro campo, decodifica telemetria
if (v1 > 0 && v2 > v1 && v3 > v2 && linha.indexOf('V') < v1) {
String strTensao = linha.substring(0, v1);
strTensao.replace("V", "");
String strPerc = linha.substring(v1 + 1, v2);
strPerc.replace("%", "");
String strTempo = linha.substring(v2 + 1, v3);
String strStatus = linha.substring(v3 + 1);
strTempo.trim();
strStatus.trim();
bateria.tensaoVolts = strTensao.toFloat();
bateria.percentual = (uint8_t)constrain(strPerc.toInt(), 0, 100);
strncpy(bateria.tempoHHMM, strTempo.c_str(), sizeof(bateria.tempoHHMM) - 1);
strncpy(bateria.statusModo, strStatus.c_str(), sizeof(bateria.statusModo) - 1);
bateria.ultimaAtualizacaoMs = millis();
bateria.dadosValidos = true;
Serial.print(F("[TELEMETRIA] Vbat: "));
Serial.print(bateria.tensaoVolts, 1);
Serial.print(F(" V | Janela: "));
Serial.print(bateria.percentual);
Serial.print(F(" % | Tempo: "));
Serial.print(bateria.tempoHHMM);
Serial.print(F(" | Estado: "));
Serial.println(bateria.statusModo);
} else {
// Respostas de leitura de parametros ('read') ou confirmacoes do modulo
Serial.print(F("[RESPOSTA XY-CD60] "));
Serial.println(linha);
}
}
void exibirMenuSerial() {
Serial.println(F("\n======================================================================"));
Serial.println(F(" SUPERVISOR UART XY-CD60 (SKU: RB1536) - 115200 bps (8N1)"));
Serial.println(F(" [S] Iniciar telemetria continua 1 Hz ('start')"));
Serial.println(F(" [P] Pausar telemetria continua ('stop')"));
Serial.println(F(" [R] Ler parametros salvos na EEPROM ('read')"));
Serial.println(F(" [1] Habilitar rele automatico ('on')"));
Serial.println(F(" [0] CORTE DE EMERGENCIA - Desabilitar rele ('off')"));
Serial.println(F(" [L] Aplicar perfil seguro LiFePO4 4S 12.8V (dn=12.8V / UP=14.4V)"));
Serial.println(F(" [I] Aplicar perfil seguro Li-Ion 3S 11.1V (dn=10.8V / UP=12.6V)"));
Serial.println(F("======================================================================"));
}
void setup() {
Serial.begin(115200);
delay(400);
#if defined(ESP32)
xySerial.begin(115200, SERIAL_8N1, PIN_XY_RX, PIN_XY_TX);
#else
xySerial.begin(115200);
#endif
bufferLinhaXY.reserve(64);
exibirMenuSerial();
// Solicita leitura inicial dos parametros e ativa streaming de telemetria
delay(300);
enviarComandoXY("read");
delay(300);
enviarComandoXY("start");
}
void loop() {
// 1. Recebe bytes assincronos vindos do pino TX do XY-CD60 sem bloquear o loop
while (xySerial.available() > 0) {
char c = (char)xySerial.read();
if (c == '\n' || c == '\r') {
if (bufferLinhaXY.length() > 0) {
processarLinhaXY(bufferLinhaXY);
bufferLinhaXY = "";
}
} else if (isPrintable(c)) {
bufferLinhaXY += c;
if (bufferLinhaXY.length() >= 60) {
bufferLinhaXY = ""; // Protecao contra overflow de ruido serial
}
}
}
// 2. Comandos interativos digitados pelo engenheiro no Monitor Serial USB
if (Serial.available() > 0) {
char opcao = toupper(Serial.read());
switch (opcao) {
case 'S': enviarComandoXY("start"); break;
case 'P': enviarComandoXY("stop"); break;
case 'R': enviarComandoXY("read"); break;
case '1': enviarComandoXY("on"); break;
case '0': enviarComandoXY("off"); break;
case 'L': configurarJanelaTensao(12.8f, 14.4f); break;
case 'I': configurarJanelaTensao(10.8f, 12.6f); break;
case '?': exibirMenuSerial(); break;
default: break;
}
}
}
Projetos
Para integrar o Módulo Controlador XY-CD60 a arquiteturas completas de monitoramento remoto via navegador web, acionamento de contatores/relés de alta corrente () ou geração solar off-grid, consulte os projetos práticos e guias relacionados disponíveis no blog da RoboBuilders:
- Painel Web de Diagnóstico para ESP32: Projeto de código aberto com interface web responsiva servida diretamente pelo ESP32 via Wi-Fi, ideal para publicar em gráficos e cartões em tempo real a tensão (
Vbat), o percentual (%) e o estado do relé lidos da porta UART do XY-CD60. - Painel Web para Placa ESP32 com 8 Relés de 30A (RB2553): Solução prática com firmware completo para seccionamento distribuído de múltiplos circuitos de carga de até por canal a partir dos alertas de subtensão do banco de baterias.
- Controlador de Carga Painel Solar MPPT 60A 12V/24V Automático: Manual Técnico Completo: Referência complementar para sistemas híbridos nos quais o controlador MPPT gerencia a recarga fotovoltaica e o módulo XY-CD60 atua como disjuntor dedicado de proteção contra sobredescarga (
Modo OUT) para cargas críticas em , ou .
Conclusão
Neste manual técnico do Módulo Controlador de Carga e Descarga de Bateria Lithium XY-CD60 (SKU: RB1536), foram detalhados os requisitos elétricos, topologias de ligação e recursos de programação local e serial indispensáveis para a proteção confiável de bancos de baterias:
- Especificações e topologia de chaveamento direto: Operação autoalimentada em ampla janela de a com precisão de e comutação por relé até (), compatível com bancos Li-Ion/LiPo, LiFePO4 e Chumbo-Ácido em gabinete compacto de painel ().
- Diferenciação rigorosa de bornes por modo operacional: No Modo Carga (
IN/P-1), o carregador DC entra emVIN+/VIN-e a bateria conecta-se emOUT+/OUT-; no Modo Descarga (OUT/P-2), a bateria alimentaVIN+/VIN-e a carga DC é seccionada emOUT+/OUT-. - Ajustes avançados de histerese e temporização: Parametrização dos limiares superior (
UP) e inferior (dn), limite de tempo de ciclo (OP), retardo de reconexão (dOP), condução forçada anti-inrush na partida (FOP) e economia do backlight (L-P), além da interpretação imediata dos alertasERR,nbEeH:ER. - Supervisão embarcada via UART TTL (): Integração direta em com ESP32 (ou Arduino via divisor resistivo) para decodificação automática de pacotes CSV de telemetria a e envio remoto de comandos ASCII.
Respeitando o uso obrigatório de carregadores com limitação de corrente, fusível de proteção em série, diodo flyback em cargas indutivas e BMS dedicado em pacotes multicélula de lítio, o XY-CD60 proporciona controle preciso de ciclos e máxima longevidade operacional para sistemas de armazenamento de energia.
Solução de problemas
Olá! Sou o assistente técnico da RoboBuilders. Descreva seu problema com o Módulo Controlador de Carga e Descarga de Bateria Lithium XY-CD60: Manual Técnico Completo e eu ajudarei a encontrar a solução.
O assistente usa IA e pode errar. Confirme informações críticas no datasheet oficial do fabricante.