Test battery ah and time remain calc

This commit is contained in:
Carsten Schmiemann 2022-04-23 16:59:43 +02:00
parent 359f8e4abe
commit 1975c90ecb
3 changed files with 12 additions and 0 deletions

View file

@ -46,6 +46,7 @@ void OvmsVehicleRenaultZoePh2::IncomingLBC(uint16_t type, uint16_t pid, const ch
}
case 0x9002: { //Battery SOC
mt_bat_lbc_soc->SetValue((float) (CAN_UINT(0)) * 0.01, Percentage);
StandardMetrics.ms_v_bat_cac->SetValue(Bat_cell_capacity * CAN_UINT(0) * 0.0001);
//ESP_LOGD(TAG, "9002 LBC mt_bat_lbc_soc: %f", CAN_UINT(0) * 0.01);
break;
}

View file

@ -122,6 +122,15 @@ void OvmsVehicleRenaultZoePh2::ConfigChanged(OvmsConfigParam* param) {
m_UseBMScalculation = MyConfig.GetParamValueBool("xrz2", "UseBMScalculation", false);
m_UseBMSsoc = MyConfig.GetParamValueBool("xrz2", "UseBMSsoc", false);
StandardMetrics.ms_v_bat_range_ideal->SetValue(m_range_ideal, Kilometers);
if (m_battery_capacity == 52000) {
Bat_cell_capacity = 78.0 * 2 * (StandardMetrics.ms_v_bat_soh->AsFloat() / 100.0);
}
if (m_battery_capacity == 41000) {
Bat_cell_capacity = 65.6 * 2 * (StandardMetrics.ms_v_bat_soh->AsFloat() / 100.0);
}
if (m_battery_capacity == 22000) {
Bat_cell_capacity = 36.0 * 2 * (StandardMetrics.ms_v_bat_soh->AsFloat() / 100.0);
}
ESP_LOGI(TAG, "Renault Zoe Ph2 reload configuration: Range ideal: %d, Battery capacity: %d, Use Car trip counter: %s, Use BMS as energy counter: %s, Use BMS for SOC: %s", m_range_ideal, m_battery_capacity, m_UseCarTrip ? "Yes" : "No", m_UseBMScalculation ? "yes" : "no", m_UseBMSsoc ? "yes" : "no");
}
@ -264,6 +273,7 @@ void OvmsVehicleRenaultZoePh2::ChargeStatistics() {
if (StandardMetrics.ms_v_charge_type->AsString() == "type2") {
StandardMetrics.ms_v_charge_efficiency->SetValue((battery_power / charger_power) * 100.0);
ESP_LOGI(TAG, "Charge time remaining: %d mins, AC Charge at %.2f kW with %.1f amps, %s at %.1f efficiency, %.2f powerfactor", minsremaining, charger_power, ac_current, ac_phases.c_str(), StandardMetrics.ms_v_charge_efficiency->AsFloat(100), ACInputPowerFactor);
ESP_LOGI(TAG, "Charge remain time, based on Ah capacity in hours: %f", StandardMetrics.ms_v_bat_cac->AsFloat() / StandardMetrics.ms_v_bat_current->AsFloat());
} else if (StandardMetrics.ms_v_charge_type->AsString() == "ccs" || StandardMetrics.ms_v_charge_type->AsString() == "chademo") {
StandardMetrics.ms_v_charge_power->SetValue(battery_power);
ESP_LOGI(TAG, "Charge time remaining: %d mins, DC Charge at %.2f kW", minsremaining, battery_power);

View file

@ -76,6 +76,7 @@ class OvmsVehicleRenaultZoePh2 : public OvmsVehicle {
bool CarIsDriving = false;
bool CarIsDrivingInit = false;
float ACInputPowerFactor = 0.0;
float Bat_cell_capacity = 0.0;
protected:
int m_range_ideal;