90 lines
2.2 KiB
Arduino
90 lines
2.2 KiB
Arduino
|
|
||
|
void simulateUpDownSensorValues() {
|
||
|
|
||
|
if (demo1Increasing == false) {
|
||
|
globalCurrent -= 5.0;
|
||
|
globalPower = 25.6 * globalCurrent;
|
||
|
|
||
|
// Überprüfe, ob die maximalen Werte erreicht sind
|
||
|
if (globalCurrent < -100.0) {
|
||
|
demo1Increasing = true;
|
||
|
globalCurrent = 0;
|
||
|
}
|
||
|
} else if (demo1Increasing == true) {
|
||
|
globalCurrent += 5.0;
|
||
|
globalPower = 25.6 * globalCurrent;
|
||
|
|
||
|
}
|
||
|
|
||
|
// Überprüfe, ob die maximalen Werte erreicht sind
|
||
|
if (globalCurrent > 100.0) {
|
||
|
// Setze Werte auf 0 zurück
|
||
|
globalCurrent = 0.0;
|
||
|
globalPower = 0.0;
|
||
|
globalBusVoltage = 0.0;
|
||
|
globalEnergy = 0.0;
|
||
|
|
||
|
demoMode1 = false;
|
||
|
demo1Increasing = false;
|
||
|
}
|
||
|
|
||
|
}
|
||
|
|
||
|
void simulateChrgFull() {
|
||
|
static unsigned long startTime = 0;
|
||
|
|
||
|
// Startzeit initialisieren, wenn es der erste Durchlauf ist
|
||
|
if (startTime == 0) {
|
||
|
startTime = millis();
|
||
|
}
|
||
|
|
||
|
globalCurrent = 200.0;
|
||
|
globalPower = 25.6 * globalCurrent;
|
||
|
|
||
|
// Zeitdauer seit dem Start berechnen
|
||
|
unsigned long currentTime = millis();
|
||
|
unsigned long elapsedTime = currentTime - startTime;
|
||
|
|
||
|
// Überprüfe, ob die Zeit von 60 Sekunden abgelaufen ist
|
||
|
if (elapsedTime >= 60000) {
|
||
|
// Setze Werte auf 0 zurück
|
||
|
globalCurrent = 0.0;
|
||
|
globalPower = 0.0;
|
||
|
globalBusVoltage = 0.0;
|
||
|
globalEnergy = 0.0;
|
||
|
|
||
|
// Setze Flags zurück
|
||
|
demoMode2 = false;
|
||
|
startTime = 0; // Zurücksetzen der Startzeit für den nächsten Durchlauf
|
||
|
}
|
||
|
}
|
||
|
|
||
|
void simulateDischrgEmpty() {
|
||
|
static unsigned long startTime = 0;
|
||
|
|
||
|
// Startzeit initialisieren, wenn es der erste Durchlauf ist
|
||
|
if (startTime == 0) {
|
||
|
startTime = millis();
|
||
|
}
|
||
|
|
||
|
globalCurrent = -200.0;
|
||
|
globalPower = 25.6 * globalCurrent;
|
||
|
|
||
|
// Zeitdauer seit dem Start berechnen
|
||
|
unsigned long currentTime = millis();
|
||
|
unsigned long elapsedTime = currentTime - startTime;
|
||
|
|
||
|
// Überprüfe, ob die Zeit von 60 Sekunden abgelaufen ist
|
||
|
if (elapsedTime >= 60000) {
|
||
|
// Setze Werte auf 0 zurück
|
||
|
globalCurrent = 0.0;
|
||
|
globalPower = 0.0;
|
||
|
globalBusVoltage = 0.0;
|
||
|
globalEnergy = 0.0;
|
||
|
|
||
|
// Setze Flags zurück
|
||
|
demoMode3 = false;
|
||
|
startTime = 0; // Zurücksetzen der Startzeit für den nächsten Durchlauf
|
||
|
}
|
||
|
}
|