Arduino Embarcado em um Carro

Versão 1.1 em 18/02/2020 – Ricardo Zelenovsky

(Correção de Q1 e Q2 que estavam invertidos)

 

Proposta:

Alimentar o Arduino pela tomada do acendedor de cigarros de um carro.

 

Importante:

O texto aqui apresentado apenas relata o experimento realizado pelo autor, sem qualquer responsabilidade nas suas aplicações. O leitor pode usar trechos deste texto, desde que cite a origem. É vedado o uso comercial. Correções e sugestões são bem-vindas.

O autor recomenda o livro “Arduino: Guia Avançado para Projetos”, veja no final deste estudo.

 

Texto Completo:

Aos que se interessarem sobre o uso do Arduino Mega alimentado pelo acendedor de cigarros de um carro, com super capacitor para backup de energia e recurso para auto desligamento, baixe o texto completo em:

Zele_Estudo_01_v01.pdf

 

Ambientação:

O que é exposto a seguir foi desenvolvido para um projeto que será embarcado em um carro, sendo que os 12 V do carro serão aplicados à entrada VIN do Arduino. Essa entrada VIN supre o regulador interno de 5 V que gera a alimentação para todo o Arduino. O sítio do Arduino [1] indica que VIN deve estar na faixa de 7 V até 12 V (limites são de 6 V e 20 V).

O projeto exige que, após o carro ser desligado, o Arduino ainda funcione por alguns segundos, sustentado por um super capacitor, e depois se desliga. Nos dois blogs anteriores

1) http://labdegaragem.com/profiles/blogs/recurso-para-auto-desligamen...

2) http://labdegaragem.com/profiles/blogs/super-capacitor-para-backup-...

 abordamos com detalhes o circuito para o auto desligamento e o backup de energia com o super capacitor. Agora apresentamos a solução completa, sendo detalhados a proteção para se alimentar o circuito com a energia gerada por um carro e os circuitos para monitorar a alimentação e a tensão do super capacitor.

 

1) Solução para Alimentar um Arduino com os 12 V de um carro

Antes de iniciar, é importante comentar que a solução aqui sugerida ainda não foi testada na prática porque o PCB necessário para a montagem completa do protótipo ainda não chegou da China. Assim, pode ser que esta proteção apresente falhas. Ainda é preciso fazer testes.

 Quando um carro está em funcionamento, a tensão na tomada de 12 V (acendedor de cigarros) é muito suja. Surgem picos de tensão devido ao acionamento de motores elétricos (cargas indutivas), centelhamento para queima do combustível e ainda a atuação do alternador. A Figura 1 ilustra a ideia de um circuito de proteção.

 

Fig 1. Circuito de proteção para alimentar o Arduino com os 12 V de um carro.

 

O circuito proposto para a proteção está apresentado na Figura 2. São duas as principais preocupações. A primeira, tem a ver com picos de tensão que podem danificar todo o circuito. Vamos eliminá-los com um dispositivo TVS [2] (Transient Voltage Supressor), que é um supressor de transientes. Existem diversos tipos, sendo que o mais adequado para o presente caso é o diodo TVS, pois os picos de tensão não são tão altos e nem velozes. O valor não é crítico, e por isso, a sugestão é por um TVS de 15 V unidirecional, que é o dispositivo D4 da Figura 2. Pode-se usar também um TVS bidirecional.

 A segunda preocupação é com a possibilidade de surgimento de um pico de tensão negativa. Para isso, usamos o diodo retificador D1 (1N4007) em série com a alimentação. Ele entra em polarização reversa (em corte) na presença de picos negativos. Esse diodo, quando conduzindo, apresenta uma queda de tensão de 0,7 V, por isso, os 12 V fornecidos pelo carro, são reduzidos para 11,3 V. Isso é uma coisa boa, pois nos afastamos um pouco dos 12 V que é o limite superior do regulador do Arduino. Para finalizar, adicionamos em série um fusível para a proteção em caso de curto-circuito.

  Fig 2. Detalhamento do circuito de proteção para o Arduino usar os 12 V de um carro.

 

2) Circuito Completo

A Figura 3 apresenta a solução completa do projeto, onde se destacam:

  • Circuito de proteção;
  • Backup de energia usando super capacitor;
  • Recurso para auto desligamento do Arduino e
  • Circuito para monitorar alimentação e a carga do super capacitor (R5, R6, ..., R12).

 Pela dificuldade no desenho, o capacitor C1 ficou no lugar errado. Ele faz parte do backup com super capacitor. Para melhor compreensão, é recomendado a leitura dos dois blogs anteriores, já citados.

Fig 3. Circuito completo usado na alimentação do projeto.

 

3) Monitoramento da Alimentação do Carro e do Super Capacitor

Para o projeto aqui discutido, monitorar significa:

  • Saber se o carro está ligado (se tem a alimentação de 12 V);
  • Ser alertado imediatamente quando o carro for desligado;
  • Medir a tensão atual sobre o super capacitor e
  • Ser alertado quando a tensão sobre o super capacitor cair abaixo do limite escolhido.

 Na Figura 3, destacamos os 4 divisores resistivos (R5, R6, ..., R12) que vão permitir realizar os monitoramentos e gerar os alertas acima propostos. A Figura 4, logo a seguir, apresenta em separado somente os divisores resistivos usados para o monitoramento da alimentação e a geração dos alertas necessários. As tensões nesses divisores estão calculadas logo a seguir. Foi intenção usar divisores com alguns resistores de mesmo valor para facilitar a montagem.

 Fig 4. Circuitos para monitoramento da alimentação e geração de alertas, recortados da figura anterior.

 

Os divisores resistivos estão dedicados às seguintes tarefas:

  • R5 e R6: para gerar Interrupção;
  • R7 e R8: tensão para o ADC;
  • R9 e R10: tensão para o ADC e
  • R11 e R12: interrupção com o Comparador Analógico

 Para saber se o carro está ligado (será que tem 12 V?) é usado o divisor resistivo formado por R7 e R8, e sua saída (VCAR) deve ser ligada a uma das entradas do conversor AD (ADC) do Arduino. Com o carro ligado, essa tensão VCAR deve estar perto de 2,0 V. Assim, basta consultar o ADC para saber se a tensão de 12 V está presente.

 Aqui, é preciso um alerta. Em geral, quando se usa o ADC, toma-se como referência o VCC analógico (AVCC). Entretanto, isso não pode ser feito quando se pretende monitorar a alimentação da CPU, porque se a tensão da alimentação cai, a referência AVCC também cai e o ADC vai sempre retornar a mesma medida. Em tais situações, é necessário usar uma das referências internas do Arduino, que não variam com a alimentação. O Arduino Mega tem referências internas de 1,1 V e 2,56 V e, para este projeto, foi escolhida a referência interna de 2,56 V. Por isso, o divisor resistivo gera 2,0 V, quando os 12 V estão ligados. Se o carro estiver ligado, a conversão desta entrada deve retornar um número próximo de 800 decimal.

 A interrupção é a melhor forma de alertar o processador de que o carro foi desligado. Para isto foi usado o divisor resistivo R5 e R6 cuja saída (VCAR-INT) deve ser ligada a uma das entradas de interrupção do Arduino (interrupção por flanco de descida). Enquanto o carro está ligado, esta saída está em 3,6 V, o que corresponde a nível alto (HIGH). Quando o carro é desligado, esta saída vai para nível baixo (LOW) e pode interromper o processador.

 Para monitorar a tensão sobre o super capacitor, foi usado o divisor resistivo formado por R9 e R10. Os mesmos cuidados tomados com R7 e R8 aqui se aplicam. O divisor foi projeto para a referência de 2,56 V, por isso, quando o super capacitor está com carga plena (10,6 V) a saída (VCAP) está em 1,9 V. Esta saída também deve ser ligada a uma entrada do ADC. A qualquer momento, consultando o ADC, o programa tem como medir a tensão sobre o super capacitor.

 Finalmente, é necessário um recurso para alertar o processador de que a carga do super capacitor está próxima da exaustão. Novamente, vamos usar uma interrupção. A solução com R5 e R6, para gerar nível baixo quando os 12 V são desligados só funciona porque o Arduino é sustentado pelo super capacitor. Para o presente caso, precisamos gerar o alerta quando a tensão VCAP fica perto de 5,4 V (visto num blog anterior). Este problema é perfeito para o uso do comparador analógico. O Arduino possui um comparador analógico que pode interromper o processador quando a tensão num pino específico cai abaixo da referência de 1,1 V. Nos ensaios anteriormente apresentados, determinamos que 6,0 V era um bom valor para o limite inferior da carga do super capacitor. Como temos D5 em série, vamos trabalhar com 6,7 V. Adicionando uma pequena margem de segurança e para chegar a resistores comerciais, o limite foi considerado como 7,1 V. Assim, a saída deste divisor (VCAP-COMP) foi calculada para gerar 1,1 V quando VCAP for igual a 7,1 V. Quando isto acontece, o processador é interrompido e sabe que o super capacitor está próximo da exaustão.

 

Conclusão

Aqui foi apresentado o circuito completo. O destaque foi para a parte de proteção no uso dos 12 V do carro e os recursos para monitorar a alimentação e carga do super capacitor. Fica a promessa de que, quando o circuito for montado de forma definitiva e os testes realizados, um novo relatório será publicado.

  

Referências

 [1] https://store.arduino.cc/usa/mega-2560-r3

 [2]https://www.newtoncbraga.com.br/index.php/novos-componentes/52-arti...

 

 

O autor recomenda o livro

Exibições: 556

Comentar

Você precisa ser um membro de Laboratorio de Garagem (arduino, eletrônica, robotica, hacking) para adicionar comentários!

Entrar em Laboratorio de Garagem (arduino, eletrônica, robotica, hacking)

© 2024   Criado por Marcelo Rodrigues.   Ativado por

Badges  |  Relatar um incidente  |  Termos de serviço