Cómo leer 120 Vac con arduino

Buen día electrónicos, recién me he topado con un proyecto de la facu que me tiene atorado y no le encuentro solución, resulta que tengo que sensar una línea de 120 Vac, me estoy apoyando con un transformador 120/24 a su salida estoy usando un divisor resistivo para poder ingresar esa señal al ADC del arduino, he armado ya el circuito y no ha presentado problemas, pero el programa no hace lo que debería, únicamente imprime lecturas erróneas o sólo ceros. Agradecería cualquier tipo de ayuda u orientación, anexo el circuito con el que estoy trabajando y el código, a la salida mi divisor me da 2.54 V.

void setup () {

Serial.begin(9600);
}

void loop () {

int Lectura = analogRead(A0);
float tension = (Lectura * (5.0/1023);
Serial.print(tension);

}
Divisor

Hola.
El código esta bien. En cuanto al circuito que usas no lo veo del todo claro.

  • Yo quitaria las R y el condensador uniendo la R10K a masa, asi tienes la ref interna del aduino, tienes mas margen y menos error, ademas no le indicas en el codigo que cambie a una ref externa.
  • Rectifica la tensión de salida del transformador con un puente de diodos, los ceros de la medición es seguramente porque mides en el semiciclo negativo de la señal.
  • Las lecturas erroneas puede que no lo sean, piensalo, ¿no sera que te este midiendo la tensión instantanea del semiciclo positivo?
  • Cabia el divisor de tension por un buen potenciometro de ajuste de 150 o 200 K ajustalo hasta que la salida tengas 5V antes de conectarlo al arduino. Para hacer este ajuste coloca temporalmente un electrolitilico entre la salida y GND , este se carga a la lensión "pico a pico" de la señal de entrada y en la medicion nunca se sobrepasaran los 5V admitidos por tu arduino.
    Saludos.

El circuito que has propuesto es el típico circuito que se usaba en los inicios del proyecto openEneryMonitor. El circuito funciona pero para poder leer correctamente la tensión debes tomar muestras y hacer una serie de cálculos.

Todos estos calculos estan disponibles en la libreria emonlib

Dos cosas:

Ni que decir que tengas cuidado, trabajar con tensión alta es peligroso para ti y para el arduino/pc.

Y corrige tu primer post. La imagen se ve correctamente, pero el código debe ir entre etiquetas code para que se vea correctamente.