From d7136a31fcd3d47d6920ada05dde079cc6014045 Mon Sep 17 00:00:00 2001 From: "VKMTHD\\haraldmartini" <harald.martini@student.tugraz.at> Date: Wed, 28 Sep 2022 12:36:44 +0200 Subject: [PATCH] cleaned up DCDC converter --- .../SimulationComponent/DCDCConverter.cs | 25 ++++++++----------- 1 file changed, 11 insertions(+), 14 deletions(-) diff --git a/VectoCore/VectoCore/Models/SimulationComponent/DCDCConverter.cs b/VectoCore/VectoCore/Models/SimulationComponent/DCDCConverter.cs index 8e5438aa98..324aa905f8 100644 --- a/VectoCore/VectoCore/Models/SimulationComponent/DCDCConverter.cs +++ b/VectoCore/VectoCore/Models/SimulationComponent/DCDCConverter.cs @@ -37,18 +37,20 @@ namespace TUGraz.VectoCore.Models.SimulationComponent public Watt PowerDemand(Second absTime, Second dt, bool dryRun) { - - var dischargeEnergy = (-DataBus.BatteryInfo.MaxDischargePower(dt) * dt); - var chargeEnergy = (-DataBus.BatteryInfo.MaxChargePower(dt) * dt); - var efficiency = PreviousState.ConsumedEnergy > 0 ? 1 / Efficiency : Efficiency; //WHY ? - - var electricConsumersPower = _electricConsumers.Sum(aux => aux.PowerDemand(absTime, dt, dryRun)).DefaultIfNull(0); + var energyDemand = PreviousState.ConsumedEnergy + electricConsumersPower * dt; + - var powerDemand = PreviousState.ConsumedEnergy / dt * efficiency + electricConsumersPower / Efficiency; + var efficiency = energyDemand > 0 ? 1 / Efficiency : Efficiency; + + var powerDemand = energyDemand / dt * efficiency; + + + + var dischargeEnergy = (-DataBus.BatteryInfo.MaxDischargePower(dt) * dt); + var chargeEnergy = (-DataBus.BatteryInfo.MaxChargePower(dt) * dt); - if (!dryRun) { CurrentState.ElectricAuxPower = electricConsumersPower; @@ -59,13 +61,8 @@ namespace TUGraz.VectoCore.Models.SimulationComponent return powerDemand; } - //if ((PreviousState.ConsumedEnergy * efficiency).IsBetween(chargeEnergy, dischargeEnergy)) { - // return (PreviousState.ConsumedEnergy / dt * efficiency) + electricConsumersPower / Efficiency; - //} - - // write in mod-file for post-processing correction if (!dryRun) { - CurrentState.MissingEnergy = powerDemand * dt; + CurrentState.MissingEnergy = energyDemand; } return 0.SI<Watt>(); -- GitLab