- battery calc now more efficent
- new battery values now every 0.5s
This commit is contained in:
+15
-6
@@ -17,22 +17,31 @@ Do later:
|
|||||||
-> Menu Display from parent as run() to make Menu as Component
|
-> Menu Display from parent as run() to make Menu as Component
|
||||||
-> Racing Mode
|
-> Racing Mode
|
||||||
-> ConsolControl
|
-> ConsolControl
|
||||||
|
-> Menü für Sensordaten (kann in jedem Betriebsmodus aufgerufen werden)
|
||||||
|
- GNSS
|
||||||
|
- Ntrip
|
||||||
|
- CalcCompass
|
||||||
|
- RealCompass
|
||||||
|
- Gyroskop
|
||||||
|
- Geschwindigkeiten (vielleicht)
|
||||||
|
-> Menü für Einstellungen
|
||||||
|
- PID
|
||||||
|
- Geschwindigkeiten
|
||||||
|
-> Battery
|
||||||
|
- tabelle mit eigenen Werten übergeben und nicht in header (wiederverwendbarkeit)
|
||||||
|
- kalibrierungsmethode mit Menü
|
||||||
|
- Daten in flash speichern können
|
||||||
|
|
||||||
|
|
||||||
Do now:
|
Do now:
|
||||||
Code:
|
Code:
|
||||||
Doxygen Kommentare aktualisieren
|
Doxygen Kommentare aktualisieren
|
||||||
Geschwindigkeiten außerhalb von Modi einstellen, Manager kann die Werte einstellen da Interface
|
|
||||||
Automat in MoveControl weil jetzt in Arbeit beschrieben
|
Automat in MoveControl weil jetzt in Arbeit beschrieben
|
||||||
Liste mit Betriebsmodi, automatisch in Menü einfügen
|
Liste mit Betriebsmodi, automatisch in Menü einfügen
|
||||||
Betriebmodi dem Drivemanger ohne switchCase geben, aus Liste oder so
|
|
||||||
bettery managment checken, buffer in battery und in Main
|
|
||||||
battery tabelle mit eigenen Werten übergeben und nicht in header (wiederverwendbarkeit)
|
|
||||||
battery methode für daten erzeugen und in eeporm speichern
|
|
||||||
battery bruch mit R werten nur einmal berechnen
|
battery bruch mit R werten nur einmal berechnen
|
||||||
lange kein daten von fernbedienung dann?
|
lange kein daten von fernbedienung dann?
|
||||||
Input pointer von fernbedienung nicht veränderbar doppel const
|
Input pointer von fernbedienung nicht veränderbar doppel const
|
||||||
trennen funktion und ui route menü
|
trennen funktion und ui route menü
|
||||||
DriveManager Mode als Template übergeben
|
|
||||||
|
|
||||||
Latex:
|
Latex:
|
||||||
Genaue Beschreibung von PulseCounter HardwareUnit wenn möglich
|
Genaue Beschreibung von PulseCounter HardwareUnit wenn möglich
|
||||||
|
|||||||
@@ -15,6 +15,7 @@ Battery::Battery(uint8_t pin, uint32_t r1, uint32_t r2) {
|
|||||||
this->pin = pin;
|
this->pin = pin;
|
||||||
this->r1 = r1;
|
this->r1 = r1;
|
||||||
this->r2 = r2;
|
this->r2 = r2;
|
||||||
|
this->batteryVoltageFactor = (double) (this->r1 + this->r2)) / (double) this->r2
|
||||||
this->initBuffer();
|
this->initBuffer();
|
||||||
this->loopDelay = 100;
|
this->loopDelay = 100;
|
||||||
}
|
}
|
||||||
@@ -71,7 +72,7 @@ double Battery::calculateInputVoltage() {
|
|||||||
|
|
||||||
void Battery::calculateBatteryVoltage() {
|
void Battery::calculateBatteryVoltage() {
|
||||||
if (this->r1 && this->r2) {
|
if (this->r1 && this->r2) {
|
||||||
this->batteryVoltage = (this->calculateInputVoltage() * (double) (this->r1 + this->r2)) / (double) this->r2;
|
this->batteryVoltage = (this->calculateInputVoltage() * this->batteryVoltageFactor;
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -88,13 +88,14 @@ class Battery : public Component {
|
|||||||
uint8_t batteryPercent = 0;
|
uint8_t batteryPercent = 0;
|
||||||
uint8_t batteryLowPercent = 10;
|
uint8_t batteryLowPercent = 10;
|
||||||
uint8_t bufferPos = 0;
|
uint8_t bufferPos = 0;
|
||||||
uint8_t calulationDelayMultiplier = 10;
|
uint8_t calulationDelayMultiplier = 5;
|
||||||
uint8_t loopCounter = 0;
|
uint8_t loopCounter = 0;
|
||||||
uint16_t adcBuffer[bufferSize];
|
uint16_t adcBuffer[bufferSize];
|
||||||
uint32_t r1 = 0;
|
uint32_t r1 = 0;
|
||||||
uint32_t r2 = 0;
|
uint32_t r2 = 0;
|
||||||
bool calculatetNewValues = false;
|
bool calculatetNewValues = false;
|
||||||
double batteryVoltage = 0;
|
double batteryVoltage = 0;
|
||||||
|
double batteryVoltageFactor;
|
||||||
|
|
||||||
const float capacityVoltages[21] = {9.82, 10.83, 11.06, 11.12, // 0 5 10 15
|
const float capacityVoltages[21] = {9.82, 10.83, 11.06, 11.12, // 0 5 10 15
|
||||||
11.18, 11.24, 11.3, 11.36, // 20 25 30 35
|
11.18, 11.24, 11.3, 11.36, // 20 25 30 35
|
||||||
|
|||||||
@@ -154,6 +154,7 @@ void loop() {
|
|||||||
lcdWrapper->loop();
|
lcdWrapper->loop();
|
||||||
mainBattery->loop();
|
mainBattery->loop();
|
||||||
|
|
||||||
|
// new Value ervery 0.5s
|
||||||
if (mainBattery->isNewValue()) {
|
if (mainBattery->isNewValue()) {
|
||||||
static uint8_t batteryLowCounter = 0;
|
static uint8_t batteryLowCounter = 0;
|
||||||
if (mainBattery->isBatteryLow(10))
|
if (mainBattery->isBatteryLow(10))
|
||||||
|
|||||||
Reference in New Issue
Block a user