diff --git a/VectoCore/VectoCore/Models/SimulationComponent/Data/Gearbox/TorqueConverterData.cs b/VectoCore/VectoCore/Models/SimulationComponent/Data/Gearbox/TorqueConverterData.cs index 21eca1fb7e2fd376cb0a3f0f080d96838c08bd4b..c5a63ad3c5c6ea0feb0e4e441c403904df5762e7 100644 --- a/VectoCore/VectoCore/Models/SimulationComponent/Data/Gearbox/TorqueConverterData.cs +++ b/VectoCore/VectoCore/Models/SimulationComponent/Data/Gearbox/TorqueConverterData.cs @@ -32,6 +32,7 @@ using System; using System.Collections.Generic; using System.ComponentModel.DataAnnotations; +using System.Diagnostics; using System.Linq; using TUGraz.VectoCommon.Exceptions; using TUGraz.VectoCommon.Utils; @@ -366,6 +367,7 @@ namespace TUGraz.VectoCore.Models.SimulationComponent.Data.Gearbox } } + [DebuggerDisplay("nu: {SpeedRatio}, mu: {TorqueRatio}, T_ref: {Torque}")] public class TorqueConverterEntry { public double SpeedRatio; diff --git a/VectoCore/VectoCore/Models/SimulationComponent/Impl/TorqueConverter.cs b/VectoCore/VectoCore/Models/SimulationComponent/Impl/TorqueConverter.cs index f4374c57cc4f5011ace6ead489fdd4d7c3a8f4ef..3765d8d04a9253771236c510a464b5ce2db8502d 100644 --- a/VectoCore/VectoCore/Models/SimulationComponent/Impl/TorqueConverter.cs +++ b/VectoCore/VectoCore/Models/SimulationComponent/Impl/TorqueConverter.cs @@ -196,7 +196,7 @@ namespace TUGraz.VectoCore.Models.SimulationComponent.Impl Source = this, DeltaFullLoad = 10 * deltaMax, DeltaDragLoad = 10 * deltaMin, - TorqueConverterOperatingPoint = dryOperatingPointMax + TorqueConverterOperatingPoint = DataBus.DrivingAction == DrivingAction.Brake ? dryOperatingPointMin : dryOperatingPointMax }; } @@ -209,7 +209,9 @@ namespace TUGraz.VectoCore.Models.SimulationComponent.Impl engineResponse.DragPower - engineResponse.AuxiliariesPowerDemand, DataBus.EngineSpeed, outAngularVelocity, _engineInertia, dt, previousPower); var maxInputSpeed = VectoMath.Min(ModelData.TorqueConverterSpeedLimit, DataBus.EngineN95hSpeed); - var lowerInputSpeed = VectoMath.Max(DataBus.EngineIdleSpeed * 1.001, 0.8 * DataBus.EngineSpeed); + var lowerInputSpeed = DataBus.DrivingAction == DrivingAction.Brake + ? DataBus.EngineIdleSpeed * 1.001 + : VectoMath.Max(DataBus.EngineIdleSpeed * 1.001, 0.8 * DataBus.EngineSpeed); var corrected = false; if (operatingPoint.InAngularVelocity.IsGreater(maxInputSpeed)) { operatingPoint = ModelData.FindOperatingPoint(maxInputSpeed, outAngularVelocity); @@ -230,7 +232,9 @@ namespace TUGraz.VectoCore.Models.SimulationComponent.Impl return operatingPoint; } catch (VectoException ve) { Log.Error(ve, "TorqueConverter: Failed to find operating point for DragPower {0}", engineResponse.DragPower); - var engineSpeed = VectoMath.Max(DataBus.EngineIdleSpeed * 1.001, 0.8 * DataBus.EngineSpeed); + var engineSpeed = DataBus.DrivingAction == DrivingAction.Brake + ? DataBus.EngineIdleSpeed * 1.001 + : VectoMath.Max(DataBus.EngineIdleSpeed * 1.001, 0.8 * DataBus.EngineSpeed); var retVal = FindValidTorqueConverterOperatingPoint( absTime, dt, outAngularVelocity, engineSpeed, diff --git a/VectoCore/VectoCoreTest/TestData/XML/XMLReaderDeclaration/SchemaVersion2.1/vecto_vehicle-new_parameters-sample.xml b/VectoCore/VectoCoreTest/TestData/XML/XMLReaderDeclaration/SchemaVersion2.1/vecto_vehicle-new_parameters-sample.xml index 14d9ce13ab7e84ffb65f0daadf945dc6ccf186cc..df6a1128629fcf2d3cf110a4207695636c0c4da1 100644 --- a/VectoCore/VectoCoreTest/TestData/XML/XMLReaderDeclaration/SchemaVersion2.1/vecto_vehicle-new_parameters-sample.xml +++ b/VectoCore/VectoCoreTest/TestData/XML/XMLReaderDeclaration/SchemaVersion2.1/vecto_vehicle-new_parameters-sample.xml @@ -31,7 +31,7 @@ urn:tugraz:ivt:VectoAPI:DeclarationDefinitions:v2.1 E:\QUAM\Workspace\VECTO_quam <VocationalVehicle>false</VocationalVehicle> <SleeperCab>true</SleeperCab> <v2.1:ADAS xsi:type="v2.1:AdvancedDriverAssistantSystemsType"> - <EnginStopStart>false</EnginStopStart> + <EngineStopStart>false</EngineStopStart> <EcoRollWithoutEngineStop>false</EcoRollWithoutEngineStop> <EcoRollWithEngineStop>false</EcoRollWithEngineStop> <PredictiveCruiseControl>none</PredictiveCruiseControl> @@ -43,7 +43,7 @@ urn:tugraz:ivt:VectoAPI:DeclarationDefinitions:v2.1 E:\QUAM\Workspace\VECTO_quam </v2.1:TorqueLimits> <Components xsi:type="v2.0:VehicleComponentsType"> <Engine xmlns="urn:tugraz:ivt:VectoAPI:DeclarationDefinitions:v2.0" xsi:type="EngineComponentDeclarationType"> - <v2.0:Data id="ENG-gooZah3D" xsi:type="v2.1:EngineDataDeclarationType" xmlns="urn:tugraz:ivt:VectoAPI:DeclarationDefinitions:v2.1"> + <v2.0:Data id="ENG-gooZah3D" xsi:type="v2.0:EngineDataDeclarationType" xmlns="urn:tugraz:ivt:VectoAPI:DeclarationDefinitions:v2.0"> <Manufacturer>Generic Engine Manufacturer</Manufacturer> <Model>Generic 40t Long Haul Truck Engine</Model> <CertificationNumber>e12*0815/8051*2017/05E0000*00</CertificationNumber> @@ -60,7 +60,7 @@ urn:tugraz:ivt:VectoAPI:DeclarationDefinitions:v2.1 E:\QUAM\Workspace\VECTO_quam <BFColdHot>1.0000</BFColdHot> <CFRegPer>1.0000</CFRegPer> <CFNCV>1.0000</CFNCV> - <FuelType>NG CI</FuelType> + <FuelType>Diesel CI</FuelType> <FuelConsumptionMap> <Entry engineSpeed="560.00" torque="-149.00" fuelConsumption="0.00" /> <Entry engineSpeed="560.00" torque="0.00" fuelConsumption="1256.00" /> @@ -2600,7 +2600,7 @@ urn:tugraz:ivt:VectoAPI:DeclarationDefinitions:v2.1 E:\QUAM\Workspace\VECTO_quam </Signature> </Gearbox> <TorqueConverter xmlns="urn:tugraz:ivt:VectoAPI:DeclarationDefinitions:v2.0" xsi:type="TorqueConverterComponentDeclarationType"> - <Data id="tc-123xyz" xsi:type="TorqueConverterDeclarationDataType"> + <Data id="tc-123xyz" xsi:type="TorqueConverterDataDeclarationType"> <Manufacturer>Some Manufacturer</Manufacturer> <Model>Some Model</Model> <CertificationNumber>e12*0815/8051*2017/05E0000*00</CertificationNumber>