const int POT_V = A0;
const int POT_PF = A1;
const int RELAY = 8;
void setup() {
Serial.begin(9600);
pinMode(RELAY, OUTPUT);
Serial.println("ΣΥΣΤΗΜΑ ΕΛΕΓΧΟΥ ΑΕΡΓΟΥ ΙΣΧΥΟΣ (TEST)");
}
void loop() {
// Μετατροπή ποτενσιόμετρου σε Τάση (0 - 250V)
float voltage = map(analogRead(POT_V), 0, 1023, 0, 250);
// Μετατροπή ποτενσιόμετρου σε Power Factor (0.50 - 1.00)
float pf = map(analogRead(POT_PF), 0, 1023, 50, 100) / 100.0;
Serial.print("Vrms: "); Serial.print(voltage);
Serial.print("V | PF: "); Serial.println(pf);
// Λογική Διόρθωσης
if (pf < 0.85 && voltage > 100) {
digitalWrite(RELAY, HIGH);
Serial.println(">>> RELAY ON: ΧΑΜΗΛΟ PF!");
} else if (pf > 0.95 || voltage < 50) {
digitalWrite(RELAY, LOW);
Serial.println(">>> RELAY OFF: ΟΚ");
}
delay(500);
}