Ligação do sensor de corrente SCT-013-030 com o Arduino.

Boa noite,

Comprei um sensor de corrente modelo SCT-013-030 para monitorar a corrente de um motor através do arduino. Porém, estou com dificuldade para fazer a ligação do sensor com o arduino. Como fazer essa ligação?

Abaixo a especificação deste sensor:

http://garden.seeedstudio.com/images/b/bc/SCT013-030V.pdf

Exibições: 17508

Responder esta

Respostas a este tópico

Quebrei a cabeça demais com este sensor pra conseguir uma estabilidade na tenção de referencia !

Decidi abandonar as biblio prontas e partir pra uma solução caseira e fiquei contente com o resultado , se alguem quiser testar  segue a dica , é amador mas funcionou lindo !!!!

double Get_AMP (int Porta_ad , int amostras, double fator) //0.069318182
{
  // No meu  meu uso : 
  //   double amperes = Get_AMP(A0,400,0.069318182) ; // resistor de 330R com SCT-013-050
  double read_AD, ma, mi ;
  ma = 0 ;
  mi = 1024 ;
  for ( int x = 0 ; x < amostras ; x++)
  {
     read_AD = analogRead(Porta_ad) ;
     if ( read_AD > ma) ma =read_AD ;
     if ( read_AD < mi) mi = read_AD ;
  }

  double p_medio = (((ma + mi)) / 2) ;
  double difmin = p_medio - mi - 0.5 ;
  return difmin * fator ;
}

não entendi como adaptar ao sensor sct-013-030 você poderia me ajudar fazendo o favor?

Amigo ! Cheguei em um resultado melhor ainda , usando uma porta analógica para fazer a leitura da voltagem de referencia no divisor de meia 

 Eu estou usando 4 portas Ana logicas , sendo uma para a leitura da tensão de referencia, e as outras 3 para 3 sensores SCT , A variável fator estou chamando na função pois tenho 2 sensores de 30 e um de 100A , então para os de 30 uso um fator de conversão e para o de 100 uso outro !

double readSensor(int Porta_ad , int amostras, double fator) //fator = 0.069318182
{
  double read_AD, read_comp, ma , dif;
  ma = 0 ;
  mi = 5000 ;
  for ( int x = 0 ; x < amostras ; x++)
  {
     read_comp = analogRead(A0) ; // Leitura de comparação
     read_AD = analogRead(Porta_ad) ; // Leitura do sensor
     delay(4);
     dif = read_AD - read_comp;  // pego a diferença entre os 2 terminais do  SCT
     ma += dif;                              // somo a diferença para a média
   }
  ma = ma / amostras ; 
  ma -= 1.5;
  if (ma < 0 ) ma = 0 ;
  return ma * fator ;
}

para o SCT 030 uso fator  0.054

para o SCT 100 uso fator  0.01809
Só não lembro se estao com os mesmos resistores em paralelo ! Posso confirmar depois !

Sei que há uma defasagem de sinal conforme o ciclo , mas chego o mais proximo possivel entre as leituras de referencia e do sensor 

Desculpe a explicação rápida , mas se tiver alguma duvida so me chamar no Face ou Whats que respondo aki pra vcs !!!

No meu caso foi sucesso !

no caso estou usando 3.3 no divisor pois estou usando um ESP32

Obrigado!

Adilson Reis Souza, bom dia!

Eu não entendi porque seu mi = 5000. Em seu código que você postou em 09/2019 eu entendi que você pega o valor máximo do arduino = 1024. Mas agora não estou entendendo o porquês do mi ser 5000. Poderia me explicar? 

RSS

© 2024   Criado por Marcelo Rodrigues.   Ativado por

Badges  |  Relatar um incidente  |  Termos de serviço