Ajuda para medir corrente alternada ACS712- 30A e ADS1115

Tenho um projeto para realizar leitura de corrente alternada com ACS712-30A e o Arduino UNO, como o conversor analógico/digital do Arduino tem baixa resolução, estou utilizando o ADS1115 para melhorar a precisão, os links dos componentes estão abaixo. Pesquisando encontrei o seguinte código num tópico do Lab (Link tópico método raiz do valor quadrático médio) para medir corrente alternada com ACS721-30A com Arduino: http://pastebin.com/5bGdGEiu. Eu fiz adaptações desse código para utilização com ADS1115, segue o código: http://pastebin.com/CRQ2f00r, a lógica é a mesma do anterior, só mudam os valores para as conversões.

Fazendo leitura com o código que utiliza o conversor analógico do Arduino eu obtive resultados razoáveis, porém, utilizando o código do ADS1115, que era para melhorar a precisão, obtive resultados bem abaixo dos conseguidos pelo conversor analógico/digital do Arduino.

Lendo outro tópico (Link tópico explicação RMS tensão de pico) eu percebi que esse método anterior pode estar incorreto, pois a amostra da tensão alternada pode variar, com isso não conseguiria resultados precisos. Nesse mesmo tópico eu encontrei o método de calcular a corrente alternada através da tensão de pico produzida pelo ACS712-30A, segue o link: http://pastebin.com/8sAQXe6Y. Contudo, com esse método da tensão de pico o resultado ficou maior que o esperado utilizando a porta analógica do Arduino, pois medir a corrente alternada de uma lâmpada num multímetro e logo após com o código acima, os resultados do código de tensão de pico ficaram bem maiores. Pensei em adaptar esse método de medir através da tensão de pico para utilização com ADS115, mas ainda não conseguir fazê-lo funcionar corretamente.

Alguém da comunidade já trabalhou com o sensor ACS712-30A e conseguiu alguma solução para medir corrente alternada?

Link ACS712 30A:http://www.allegromicro.com/~/media/Files/Datasheets/ACS712-Datashe....

Link ADS115: https://learn.adafruit.com/adafruit-4-channel-adc-breakouts?view=all.

Link tópico método raiz do valor quadrático médio: http://labdegaragem.com/forum/topics/ajuda-com-o-codigo-do-sensor-a....

Link tópico explicação RMS tensão de pico: http://labdegaragem.com/forum/topics/ajuda-capturar-valor-sensor-de...

Exibições: 4591

Responder esta

Respostas a este tópico

Consigo medir tensão, sobre a precisão, ainda não fiz muitos testes, só com algumas pilhas e uma fonte, os resultados foram bons, pois validei num multímetro, contudo ainda preciso testar mais. 

As faixas de medições eu tinha decidido medir de 250v a -250v para tensão contínua e alternada, porém, por conta da dificuldade de trabalhar com tensão alternada (também com corrente alternada), decidi trabalhar somente com grandezas contínuas, em função disso, abaixei a faixa de tensão contínua de 50v a -50v, no esquema postado acima os resistores do divisor de tensão ainda estão para faixa de 250v e o código também, mas assim que comprar os novos resistores para o novo divisor de tensão irei alterar.  A corrente eu estava trabalhando com o ACS712-30A, como postado aqui, não consegui um método eficaz para medir corrente alternada, então só trabalharei com corrente contínua e como em geral as correntes contínuas são baixas vou utilizar o ACS712-5A para corrente.

Sobre a resistência, ainda não trabalhei muito no seu projeto, mas pretendo fazer uma coisa básica, pois o tempo está curto para o termino do trabalho, o que até agora pensei, foi aplicar uma tensão de 5v e medir a corrente que será gerada com ACS712-5A, conseguindo assim saber a resistência, isso vai limitar minha faixa de medições, mas é o que tenho por enquanto. 

Olá José, meu ACS712-5A chegou, estive trabalhando come ele para medir corrente contínua, uma implementação relativamente simples, porém, não obtive muito sucesso nas medições. Você tem alguma implementação que conseguiu bons resultados utilizando o Arduino? Eu posso postar uma explicação da maneira que estou fazendo, é baseada nessa postagem: (http://henrysbench.capnfatz.com/henrys-bench/arduino-current-measur...) com adaptação para o ADS1115.

Cara que sensor complicado!

Breno , considerações importantes :

Use uma tensão VCC precisa ( +5,00V por exemplo) e sem ruidos, para alimentar o sensor ACS712 e seu conversor ADC. Qual é a  tensão de referência do seu ADC?

 

A tensão Vout do ACS712 é exatamente a metade da tensão de alimentação VCC. 

É importante medir essa tensão antes de fazer as medições de corrente. 

http://labdegaragem.com/forum/topics/ajuda-capturar-valor-sensor-de...

Faça ajustes no seu programa, do valor de sensitividade do sensor ACS712-5A. Compare as medições de corrente do seu programa com um multimetro de precisão.  Pode variar entre 180 e 190 mV/A.

Para calcular Tensão RMS, você terá que fazer medições dentro de N semiciclos da senoide. 

Isto é, N medições de 0 a 1/2 T ou de 0 a T ( período completo). 

http://labdegaragem.com/forum/topics/ajuda-capturar-valor-sensor-de...

Faça testes com esses programas :

http://labdegaragem.com/forum/topics/ajuda-capturar-valor-sensor-de...

http://labdegaragem.com/forum/topics/ajuda-com-o-codigo-do-sensor-a...

http://labdegaragem.com/forum/topics/ajuda-capturar-valor-sensor-de...

Referências :

http://labdegaragem.com/forum/topics/sensor-de-corrente-acs712-com-...

http://labdegaragem.com/forum/topics/ajuda-capturar-valor-sensor-de...

http://labdegaragem.com/forum/topics/acs712-n-o-funciona

olá Brenno

você chegou a ver o trabalho desse pessoal aqui:
https://openenergymonitor.org/emon/Overview

acredito que pode te ajudar, veja os códigos e modelos propostos no menu esquerdo 

Obrigado pela dica Wesley, ainda não conhecia, vou olhar.

Brenno, veja o método usado no Open Energy monitor para descobrir os semiciclos de tensão !

As medidas precisam ser dentro dos semiciclos, como eu já havia dito. 

https://github.com/openenergymonitor/EmonLib/blob/master/EmonLib.cpp

//-------------------------------------------------------------------------------------------------------------------------
// 1) Waits for the waveform to be close to 'zero' (mid-scale adc) part in sin curve.
//-------------------------------------------------------------------------------------------------------------------------
boolean st=false; //an indicator to exit the while loop

unsigned long start = millis(); //millis()-start makes sure it doesnt get stuck in the loop if there is an error.

while(st==false) //the while loop...
{
startV = analogRead(inPinV); //using the voltage waveform
if ((startV < (ADC_COUNTS*0.55)) && (startV > (ADC_COUNTS*0.45))) st=true; //check its within range
if ((millis()-start)>timeout) st = true;
}

Legal José, vou estudar esse código.

Ainda não finalizei o código perfeito para o ACS712 !

Estou quase chegando lá . Aguardem. 

Brenno, encontrei esse circuito que simplifica a medição de corrente CC e CA, usando um amplificador operacional. 

Traduzido  do site :

" O circuito remove os 2,5 volts a partir da saída e fornecer a amplificação do sinal de corrente contínua. Compensa a perda de tensão com a  utilização de um diodo e pode ser ajustado.

Ao usar CA escolha valores para R5 e C1 para produzir uma saída CC limpa, com pouca ondulação CA medido em um voltímetro CA. 4.7k e 0,1 uF deve funcionar. Para um tempo de resposta mais rápido diminuir o valor de C1. " 

Não sei se seria adequado para medição de Corrente Alternada...Só testando.

http://www.instructables.com/id/How-to-Measure-AC-Current-using-Hal...

http://www.bristolwatch.com/hall_effect/ac_hall_effect.htm

Vou pesquisar melhor. Valeu José.

Olá boa tarde,  José,   vc tem algo do acs712 para corrente DC?  Obrigado

Eluan , a minha pesquisa foi para usar o ACS712 para medir corrente alternada CA.

E até hoje não consegui um resultado confiável. Obs: a pesquisa esta parada...

http://labdegaragem.com/forum/topics/ajuda-capturar-valor-sensor-de...

http://labdegaragem.com/forum/topics/sensor-de-corrente-acs712-com-...

Mas não testei-o para medição para corrente continua CC. 

Varios colegas já afirmaram que para medição de CC, o sensor é preciso :

http://labdegaragem.com/forum/topics/ajuda-com-o-codigo-do-sensor-a...

RSS

© 2024   Criado por Marcelo Rodrigues.   Ativado por

Badges  |  Relatar um incidente  |  Termos de serviço