Changeset 26 for trunk/fw_g473rct/SES/src/esr.c
- Timestamp:
- Sep 8, 2025, 6:57:30 PM (7 weeks ago)
- File:
-
- 1 edited
-
trunk/fw_g473rct/SES/src/esr.c (modified) (4 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/fw_g473rct/SES/src/esr.c
r25 r26 104 104 { 105 105 //ESR berechnen! 106 sys_data.s.values.esr = ( (double)dU / (double) dI) * 1000 ;106 sys_data.s.values.esr = ( (double)dU / (double) dI) * 10000; 107 107 last_refresh = sys_data.s.values.onTime; 108 108 … … 129 129 130 130 //Anzeige vor wieviel Sekunden zuletzt aktualisiert wurd. 131 sys_data.s.values.esrCalcTime = sys_data.s.values.onTime - last_refresh; 131 //Aktuell erfolgt nur die Anze der low speed Methode 132 //sys_data.s.values.esrCalcTime = sys_data.s.values.onTime - last_refresh; 132 133 133 134 … … 153 154 154 155 155 //Suche Zeitpunkt der größten Änderung in I 156 156 157 157 158 //Delta berechnen 158 159 int32_t dI = maxI - minI; 159 int32_t dU = maxU - minU; 160 161 //Nehme nicht mehr die gesamte maximale Differenz der Spannungen, sondern nehme das delt U wo auch das Delta I gemessen wurde 162 //Funktioniert nur bei Synchroner Messug von Strom und Spannung 163 //int32_t dU = maxU - minU; 164 int32_t dU = adc12Data[maxdIPos][1] - adc12Data[minIPos][1]; 160 165 161 166 //Umrechnung in mV / mA 162 dI = dI * (( int64_t) VREF / FAST_CURRENT_SHUNT_RESISTOR / FAST_CURRENT_I_SENSE_GAIN / FAST_CURRENT_ADC_RESOLUTION);167 dI = dI * ((double) VREF / FAST_CURRENT_SHUNT_RESISTOR / FAST_CURRENT_I_SENSE_GAIN / FAST_CURRENT_ADC_RESOLUTION); 163 168 dI = dI * (sys_data.s.parameter.batteryCurrentGainCorrectionFaktor / 1000000.0); 164 169 165 dU = dU * VREF * BATTERY_VOLTAGE_VOLTAGE_DIVIDER / BATTERY_VOLTAGE_ADC_RESOLUTION ;170 dU = dU * (double )VREF * BATTERY_VOLTAGE_VOLTAGE_DIVIDER / BATTERY_VOLTAGE_ADC_RESOLUTION ; 166 171 167 172 … … 204 209 } 205 210 206 if ((dIMaxPos < 5 ) || (dIMaxPos > (SAMPLE_ARRAY_SIZE-5) ))207 {208 return -3;209 }211 //if ((dIMaxPos < 5 ) || (dIMaxPos > (SAMPLE_ARRAY_SIZE-5) )) 212 //{ 213 // return -3; 214 // } 210 215 211 216 212 217 //ESR berechnen! 213 sys_data.s.values.esr_fast = ( (double)dU / (double) dI) * 1000 ;218 sys_data.s.values.esr_fast = ( (double)dU / (double) dI) * 10000; 214 219 last_refresh = sys_data.s.values.onTime; 215 220
Note: See TracChangeset
for help on using the changeset viewer.
