Przeglądaj źródła

老化模式,校准的电压条件为53.5v, pack厂建议

Signed-off-by: huhui <huhui@sharkgulf.com>
huhui 4 lat temu
rodzic
commit
cd9ab20cbf
1 zmienionych plików z 16 dodań i 6 usunięć
  1. 16 6
      Application/app/sox/soc.c

+ 16 - 6
Application/app/sox/soc.c

@@ -376,12 +376,22 @@ static void soc_calibrate(uint8_t prev_charge_status){
 	if (!(_soc.flags & SOC_FLAG_CALIBRATED)){
 		if (chargering){//ÓÃocv½øÐÐÑϸñУ׼
 			if (_soc.capacity != 100){
-				if ((bms_state_get()->pack_voltage >= FULL_MAX_VOLTAGE_CHARGING) && (_soc.charger_coulomb >= (0.1f * 3600.0f))){
-					_force_capacity_full();
-					push_event(Charger_Full, 10);
-				}else if (bms_health()->sigle_cell_over_voltage) {
-					_force_capacity_full();
-					push_event(Charger_Full, 1);
+				if (!bms_work_is_normal()) {
+					if ((bms_state_get()->pack_voltage >= FULL_MAX_VOLTAGE_CHARGING)){
+						_force_capacity_full();
+						push_event(Charger_Full, 12);
+					}else if (bms_health()->sigle_cell_over_voltage) {
+						_force_capacity_full();
+						push_event(Charger_Full, 13);
+					}
+				}else {
+					if ((bms_state_get()->pack_voltage >= FULL_MAX_VOLTAGE_CHARGING) && (_soc.charger_coulomb >= (0.1f * 3600.0f))){
+						_force_capacity_full();
+						push_event(Charger_Full, 10);
+					}else if (bms_health()->sigle_cell_over_voltage) {
+						_force_capacity_full();
+						push_event(Charger_Full, 1);
+					}
 				}
 			}
 		}else if (prev_charge_status){