void setup() {
Serial.begin(9600);
pinMode(6, OUTPUT);
pinMode(7, OUTPUT);
pinMode(8, OUTPUT);
pinMode(2, INPUT_PULLUP);
}
void loop()
{
int current = analogRead(A0);
int voltage = analogRead(A1);
int vibration = analogRead(A2);
bool fault = false;
// Current Fault
if(current > 800)
{
Serial.println("FAULT: OVERCURRENT");
fault = true;
}
// Voltage Fault
else if(voltage < 200)
{
Serial.println("FAULT: UNDERVOLTAGE");
fault = true;
}
// Vibration Fault
else if(vibration > 700)
{
Serial.println("FAULT: HIGH VIBRATION");
fault = true;
}
else
{
Serial.println("SYSTEM OK");
}
if(fault)
{
digitalWrite(6,HIGH); // Red ON
digitalWrite(8,LOW); // Green OFF
tone(7,1000); // Buzzer ON
}
else
{
digitalWrite(6,LOW); // Red OFF
digitalWrite(8,HIGH); // Green ON
noTone(7); // Buzzer OFF
}
delay(500);
}