feat: Alarmanzeigen für Aderbruch, Erdschluss, Schleifenfehler und Isolationsfehler verbessert

- Anzeige des Isolationswerts bei aktivem Alarm durch abwechselndes Blinken von Text und Icon ersetzt.
- Spezifische `useEffect`-Hooks hinzugefügt, um bei Alarmmeldungen den Wert auszublenden und stattdessen eine Alarmanzeige zu zeigen.
- Dynamische Anzeige für "Aderbruch", "Erdschluss", "Schleifenfehler" und "Isolationsfehler" integriert.
This commit is contained in:
ISA
2024-10-28 10:30:30 +01:00
parent 8222eeac21
commit ef069e45ea
2 changed files with 66 additions and 38 deletions

View File

@@ -323,7 +323,7 @@ function Kue705FO({
//-------------------------------------------------
// Intervall für den Wechsel der Anzeige zwischen "Aderbruch" und ">200 MOhm"
// Intervall für den Wechsel der Anzeige zwischen "Aderbruch" und dem Icon
useEffect(() => {
if (window.kueCableBreak[slotIndex] === 1) {
const intervalId = setInterval(() => {
@@ -337,15 +337,21 @@ function Kue705FO({
"Aderbruch"
)
);
}, 2000);
}, 2000); // Wechselt alle 2 Sekunden zwischen Text und Icon
// Setze den Isolationswert auf einen leeren String bei Aderbruch
setCurrentDisplayValue("");
return () => clearInterval(intervalId);
} else {
setIsoDisplayText(isolationswert || ">200");
// Zeigt den tatsächlichen Isolationswert, wenn kein Aderbruch vorliegt
setCurrentDisplayValue(isolationswert || ">200");
setIsoDisplayText("");
}
}, [slotIndex, isolationswert]);
//-------------------------------------------------
// Intervall für den Wechsel der Anzeige zwischen "Erdschluss" und dem Icon
useEffect(() => {
if (window.kueGroundFault[slotIndex] === 1) {
const intervalId = setInterval(() => {
@@ -359,14 +365,20 @@ function Kue705FO({
"Erdschluss"
)
);
}, 2000); // Wechsel alle 2 Sekunden
}, 2000); // Wechselt alle 2 Sekunden zwischen Text und Icon
// Setze den Isolationswert auf einen leeren String bei Erdschluss
setCurrentDisplayValue("");
return () => clearInterval(intervalId);
} else {
setGroundFaultDisplayText(isolationswert || ">200"); // Standardwert, wenn kein Erdschluss vorliegt
// Zeigt den tatsächlichen Isolationswert, wenn kein Erdschluss vorliegt
setCurrentDisplayValue(isolationswert || ">200");
setGroundFaultDisplayText("");
}
}, [slotIndex, isolationswert]);
//-------------------------------------------------
// Intervall für den Wechsel der Anzeige zwischen "Schleifenfehler" und dem Icon
useEffect(() => {
if (window.kueAlarm2[slotIndex] === 1) {
@@ -381,14 +393,20 @@ function Kue705FO({
"Schleifenfehler"
)
);
}, 2000);
}, 2000); // Wechselt alle 2 Sekunden zwischen Text und Icon
// Setze den schleifenwiderstand auf einen leeren String bei Alarm
setCurrentDisplayValue("");
return () => clearInterval(intervalId);
} else {
setLoopFaultDisplayText(isolationswert || ">200");
// Zeigt den tatsächlichen schleifenwiderstand, wenn kein Alarm vorliegt
setCurrentDisplayValue(schleifenwiderstand || "0");
setLoopFaultDisplayText("");
}
}, [slotIndex, isolationswert]);
}, [slotIndex, schleifenwiderstand]);
//------------------------------------------------
// Intervall für den Wechsel der Anzeige zwischen "Isolationsfehler" und dem Icon
useEffect(() => {
if (window.kueAlarm1[slotIndex] === 1) {
@@ -403,13 +421,19 @@ function Kue705FO({
"Isolationsfehler"
)
);
}, 10000);
}, 2000); // Wechselt alle 2 Sekunden zwischen Text und Icon
// Setze den isolationswert auf einen leeren String bei Alarm
setCurrentDisplayValue("");
return () => clearInterval(intervalId);
} else {
setIsoFaultDisplayText(isolationswert || ">200");
// Zeigt den tatsächlichen isolationswert, wenn kein Alarm vorliegt
setCurrentDisplayValue(isolationswert || ">200");
setIsoFaultDisplayText("");
}
}, [slotIndex, isolationswert]);
//------------------------------------------------
// Dynamischer Abruf des kueVersion-Werts für jeden Slot
// Dynamischer Abruf des kueVersion-Werts für jeden Slot in Intervallen