Estoy diseñando un circuito que mide la energía consumida desde el suministro de CA de 50Hz (el error debe ser < 1%), midiendo el voltaje a través del divisor potencial; y la corriente de la resistencia de derivación. Luego, estas dos señales van a las entradas ADC del microcontrolador PIC18F46K80 para multiplicarse y obtener la potencia.
La señal de voltaje ingresa a un divisor de potencial y un amplificador con compensación de CC y va a la entrada ADC. En el circuito de medición de corriente, la diferencia entre los terminales de derivación se amplifica y luego un amplificador con dos resistencias de retroalimentación (NMOS que se utiliza para seleccionar entre ellos para modificar la ganancia) vuelve a amplificarla. Luego vaya a una etapa de compensación de CC después de eso a la entrada ADC.
El problema es cuando el cambio de fase entre la corriente y el voltaje, el error de medición de energía cambió en 0.8% si el factor de potencia de la energía medida cambió de 1 a 0.8L .
Durante mi trabajo en este circuito, he venido con estas notas:
1- El ruido acoplado capacitivo (en la entrada negativa OPAMP) podría afectar la medición si se cambia el factor de potencia. Pero en este caso estoy seguro de que no es porque mido el valor RMS en el ADC para verificar si hay un ruido acoplado capacitivo o no.
2- El OPAMP no es 100% invertido, tiene algunos efectos parásitos en la fase de la señal que viene a él. Depende de la ganancia y otras cosas.
3- Tenía un capacitor de bloqueo de CC que realizará un cambio de fase (retardo de tiempo), entre la señal de voltaje y corriente, esta fase es muy pequeña pero afecta la precisión de la medición.
Los puntos 2 y 3, lo he resuelto haciendo un pequeño retraso de software entre la adquisición de la señal de la tensión y la corriente para compensar ese cambio / retraso de fase.
Tengo dos circuitos: El antiguo funciona perfectamente cuando el factor de potencia cambia de 1 a 0.5L. Pero sufrió el envejecimiento de un condensador como se describe en aquí (intercambio de pila de envejecimiento de capacitores cerámicos). La precisión había disminuido después de 2 meses de operación. Así que he modificado el circuito ( NEW ONE ) aumentando los condensadores y algunas resistencias para minimizar el efecto del envejecimiento del condensador. Pero ahora ni siquiera puedo tener un resultado aceptable, aunque he intentado agregar retrasos variables entre la lectura del voltaje y la corriente del ADC.
El Código:
//================== voltage measurement ==================== //
set_adc_channel(VOLT_CHANNEL); //voltage reading channel
delay_us(3); //wait for ADC channel capacitor to charge
voltage_binary = read_adc();
delay_us(10);
//================== current measurement =====================//
set_adc_channel(Current_Channel); //current reading channel
delay_us(3); //wait for ADC channel capacitor to charge
current_binary = read_adc();
Diferencias entre dos diseños:
Elemento Nuevo diseño / Diseño antiguo
C16 10uF /4.7uF
C7 100uF / 47uF
OPAMP TL064ID / TL064INSR
D9 BAS70 / BAV99S
Código de caso de resistencia 1608 / 2012
R38 100K /18.2K
R35 470K / 82K
Frecuencia de muestreo (muestra / segundo) 3400 / 2700
La pregunta es: ¿Qué más podría afectar el funcionamiento de la medición cuando cambia el factor de potencia?