89 lines
2.2 KiB
C++
89 lines
2.2 KiB
C++
|
|
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
|
|
}
|
|
}
|