Estoy tratando de hacer un sistema de corrección del factor de potencia usando arduino.
En los primeros éxitos en i para calcular el PF usando arduino y XOR gate
La siguiente imagen es mi circuito:
Pero ahora quiero convertir este proyecto a PFC conectando algunos relés al arduino para conectar algunos condensadores a la carga inductiva durante el proceso de PFC.
Este es mi código:
int pin = 13;
int cap1 = 6; //0.5 micro farad capacitor
int cap2 = 7; //0.5 micro farad capacitor
int cap3 = 8; //0.5 micro farad capacitor
int cap4 = 9; //0.5 micro farad capacitor
int cap5 = 10; //0.5 micro farad capacitor
int cap6 = 11; //0.5 micro farad capacitor
/*Variables will change their value:*/
double duration,duration1,T=20;
double si,phi;
double power_factor;
void setup()
{
pinMode(pin, INPUT);
Serial.begin(9600);
pinMode(cap1, OUTPUT);
pinMode(cap2, OUTPUT);
pinMode(cap3, OUTPUT);
pinMode(cap4, OUTPUT);
pinMode(cap5, OUTPUT);
pinMode(cap6, OUTPUT);
}
void loop()
{
getpf();
if(power_factor < 0.98)
{
digitalWrite(cap1, HIGH);
getpf();
Serial.println(power_factor);
if(power_factor <0.98)
{
digitalWrite(cap2, HIGH);
getpf();
Serial.println(power_factor);
if(power_factor <0.98)
{
digitalWrite(cap3, HIGH);
getpf();
Serial.println(power_factor);
if(power_factor <0.98)
{
digitalWrite(cap4, HIGH);
getpf();
Serial.println(power_factor);
if(power_factor <0.98)
{
digitalWrite(cap5, HIGH);
getpf();
Serial.println(power_factor);
if(power_factor <0.98)
{
digitalWrite(cap5, HIGH);
getpf();
Serial.println(power_factor);
if(power_factor <0.98)
{
digitalWrite(cap6, HIGH);
getpf();
Serial.println(power_factor);
}
}
}
}
}
}
}
else if(power_factor >= 0.98)
{
Serial.println(power_factor);
}
}
void getpf()
{
duration = pulseIn(pin, HIGH);
duration1=(duration/1000);
si=(duration1/20);
phi=(si*360);
power_factor=cos(phi/57.2);
}
Cada condensador con un valor de 0.5uF se conecta a los relés y los relés conectados al pin 6, pin 7, pin 8, pin 9, pin 10, pin 11
Tengo 3 problemas con este proyecto:
1-Cuando el factor de potencia es bajo y la carga necesita solo dos condensadores (0.5 + 0.5 = 1uF), todos los relés se encienden juntos (creo que hay un problema en el comando "if getpf").
2-Cuando abro el monitor serie en IDE para ver el número del factor de potencia, el reinicio del sistema y los relés se activan y desactivan
3-¿Por qué no puedo medir el PF de la carga armónica en este proyecto? sin embargo, sé que no puedo corregir el PF de la carga armónica agregando condensadores a la carga, pero ¿por qué no puedo medir el factor de potencia de la carga armónica correctamente?