|
@@ -114,6 +114,8 @@ int bms_work_mode_set(int mode, int start){
|
|
|
if ((_bms_state.work_mode != WORK_MODE_AGING_TEST) && (mode == WORK_MODE_AGING_TEST)) {
|
|
if ((_bms_state.work_mode != WORK_MODE_AGING_TEST) && (mode == WORK_MODE_AGING_TEST)) {
|
|
|
memcpy(_bms_state.aging_start_temp, measure_value()->pack_temp, PACK_TEMPS_NUM * sizeof(int));
|
|
memcpy(_bms_state.aging_start_temp, measure_value()->pack_temp, PACK_TEMPS_NUM * sizeof(int));
|
|
|
memcpy(_bms_state.aging_max_temp, measure_value()->pack_temp, PACK_TEMPS_NUM * sizeof(int));
|
|
memcpy(_bms_state.aging_max_temp, measure_value()->pack_temp, PACK_TEMPS_NUM * sizeof(int));
|
|
|
|
|
+ _bms_state.aging_real_start = 0;
|
|
|
|
|
+ _bms_state.agint_cost_time = 0;
|
|
|
}
|
|
}
|
|
|
_bms_state.work_mode = mode;
|
|
_bms_state.work_mode = mode;
|
|
|
}else {
|
|
}else {
|
|
@@ -715,11 +717,18 @@ static void _temperature_notify(void){
|
|
|
pcb_temp_count = 0;
|
|
pcb_temp_count = 0;
|
|
|
}
|
|
}
|
|
|
check_temp_state(); //check health of cell/pcb temperature
|
|
check_temp_state(); //check health of cell/pcb temperature
|
|
|
- if (bms_work_is_aging_test()&& (measure_value()->load_current <= -2000)) {
|
|
|
|
|
- for (int i = 0; i < PACK_TEMPS_NUM; i++) {
|
|
|
|
|
- if (_bms_state.aging_max_temp[i] < measure_value()->pack_temp[i]) {
|
|
|
|
|
- _bms_state.aging_max_temp[i] = measure_value()->pack_temp[i];
|
|
|
|
|
|
|
+ if (bms_work_is_aging_test()) {
|
|
|
|
|
+ if ((measure_value()->load_current <= -2000)) {
|
|
|
|
|
+ if (_bms_state.aging_real_start == 0) {
|
|
|
|
|
+ _bms_state.aging_real_start = shark_get_seconds();
|
|
|
}
|
|
}
|
|
|
|
|
+ for (int i = 0; i < PACK_TEMPS_NUM; i++) {
|
|
|
|
|
+ if (_bms_state.aging_max_temp[i] < measure_value()->pack_temp[i]) {
|
|
|
|
|
+ _bms_state.aging_max_temp[i] = measure_value()->pack_temp[i];
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
|
|
+ }else if((_bms_state.agint_cost_time == 0) && (_bms_state.aging_real_start > 0)){
|
|
|
|
|
+ _bms_state.agint_cost_time = shark_get_seconds() - _bms_state.aging_real_start;
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|