[RESOLVIDO] Erro com leitura utilizando emonlib


#1

Boa Noite a todos!

estou realizando a leitura criando três instâncias do objeto EnergyMonitor. Estranhamente ele só realiza a leitura de “A” e replica os valores de A para as outras saídas.
As leitura de corrente estão funcionando.
code:

#include "EmonLib.h"       // Para leitura do valor de corrente com o ACS712
EnergyMonitor voltAmp_A;
EnergyMonitor voltAmp_B;
EnergyMonitor voltAmp_S;

#define i_VA  7            // Tensão entrada A
#define i_IA  4            // Corrente entrada A
#define i_VB  6            // Tensão entrada B
#define i_IB  3            // Corrente entrada B
#define i_VS  5            // Tensão saída
#define i_IS  2            // Corrente saída
int VA, VB, VS;
double  IA, IB, IS;
long tempoAnterior = 0;         // tempo anterior
unsigned long tempoCorrente;

//==========================================================================================
// SETUP
//==========================================================================================
void setup() {
  Serial.begin(9600);
  voltAmp_A.current(i_IA, 5.3);
  voltAmp_B.current(i_IB, 5.37);
  voltAmp_S.current(i_IS, 5.377);
  voltAmp_A.voltage(i_VA, 200.26, 1.7);
  voltAmp_B.voltage(i_VB, 200.26, 1.7);
  voltAmp_S.voltage(i_VS, 200.26, 1.7);
  tempoAnterior = millis();
}

//==========================================================================================
// LOOP
//==========================================================================================
void loop() {
  leituraGrandezas();
  tempoCorrente = millis(); //tempo do processador

  if ((tempoCorrente - tempoAnterior) > 500) {  //se tempoCorrente - anterior for superior ao tempo de delay
    tempoAnterior = tempoCorrente;
    printDados();
  }
}

void leituraGrandezas() {
  voltAmp_A.calcVI(20, 200);
  VA = voltAmp_A.Vrms;
  IA = voltAmp_A.Irms;
  delay(10);
  voltAmp_B.calcVI(20, 200);
  VB = voltAmp_A.Vrms;
  IB = voltAmp_B.Irms;
  delay(10);
  voltAmp_S.calcVI(20, 200);
  IS = voltAmp_S.Irms;
  VS = voltAmp_A.Vrms;
  delay(10);
}
void printDados() {
  Serial.print("VA"); Serial.println(VA);
  delay(10);
  Serial.print("VB"); Serial.println(VB);
  delay(10);
  Serial.print("VS"); Serial.println(VS);
  delay(10);
  Serial.print("IA"); Serial.println(IA);
  delay(10);
  Serial.print("IB"); Serial.println(IB);
  delay(10);
  Seri
}

Alguma sugestão?