From 2df7903ccf16cf2b55800a4fa12b678b45b82773 Mon Sep 17 00:00:00 2001 From: "VKMTHD\\franzjosefkober" <franz.josef.kober@ivt.tugraz.at> Date: Mon, 6 Sep 2021 18:19:22 +0200 Subject: [PATCH] added HEV-S primary bus S3 to reader --- VECTO3GUI2020/Properties/Version.cs | 4 +- .../VectoCommon/Models/PowertrainPosition.cs | 2 + .../XMLDeclarationComponentsDataProvider.cs | 12 +++++ .../XMLDeclarationVehicleDataProvider.cs | 11 +++-- ...XMLDeclarationInputDataV210InjectModule.cs | 6 +++ .../Reader/Impl/XMLComponentReader.cs | 27 ++++++++--- .../XML/XMLDeclarationInputv210.cs | 45 ++++++++++++++++--- 7 files changed, 91 insertions(+), 16 deletions(-) diff --git a/VECTO3GUI2020/Properties/Version.cs b/VECTO3GUI2020/Properties/Version.cs index 5ade37d679..b22bfb599c 100644 --- a/VECTO3GUI2020/Properties/Version.cs +++ b/VECTO3GUI2020/Properties/Version.cs @@ -30,5 +30,5 @@ */ using System.Reflection; -[assembly: AssemblyVersion("0.1.0.1954")] -[assembly: AssemblyFileVersion("0.1.0.1954")] +[assembly: AssemblyVersion("0.1.0.2430")] +[assembly: AssemblyFileVersion("0.1.0.2430")] diff --git a/VectoCommon/VectoCommon/Models/PowertrainPosition.cs b/VectoCommon/VectoCommon/Models/PowertrainPosition.cs index 05d91d6aa7..4d3e806d6e 100644 --- a/VectoCommon/VectoCommon/Models/PowertrainPosition.cs +++ b/VectoCommon/VectoCommon/Models/PowertrainPosition.cs @@ -110,6 +110,8 @@ namespace TUGraz.VectoCommon.InputData { case "Components_HEV-S3_LorryType": case "Components_HEV-S4_LorryType": case "Components_HEV-S2_PrimaryBusType": + case "Components_HEV-S3_PrimaryBusType": + case "Components_HEV-S4_PrimaryBusType": case "Components_PEV-E2_LorryType": case "Components_PEV-E3_LorryType": case "Components_PEV-E4_LorryType": diff --git a/VectoCore/VectoCore/InputData/FileIO/XML/Declaration/DataProvider/XMLDeclarationComponentsDataProvider.cs b/VectoCore/VectoCore/InputData/FileIO/XML/Declaration/DataProvider/XMLDeclarationComponentsDataProvider.cs index b33fa35cde..0e24e0e762 100644 --- a/VectoCore/VectoCore/InputData/FileIO/XML/Declaration/DataProvider/XMLDeclarationComponentsDataProvider.cs +++ b/VectoCore/VectoCore/InputData/FileIO/XML/Declaration/DataProvider/XMLDeclarationComponentsDataProvider.cs @@ -366,4 +366,16 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration.DataProvider public XMLDeclarationPrimaryBusHEVS2ComponentDataProviderV210(IXMLDeclarationVehicleData vehicle, XmlNode componentNode, string sourceFile) : base(vehicle, componentNode, sourceFile) { } } + + // --------------------------------------------------------------------------------------- + + public class XMLDeclarationPrimaryBusHEVS3ComponentDataProviderV210 : XMLDeclarationPrimaryBusHEVS2ComponentDataProviderV210 + { + public new static readonly XNamespace NAMESPACE_URI = XMLDefinitions.DECLARATION_DEFINITIONS_NAMESPACE_URI_V210_JOBS; + public new const string XSD_TYPE = "Components_HEV-S3_PrimaryBusType"; + public new static readonly string QUALIFIED_XSD_TYPE = XMLHelper.CombineNamespace(NAMESPACE_URI.NamespaceName, XSD_TYPE); + + public XMLDeclarationPrimaryBusHEVS3ComponentDataProviderV210(IXMLDeclarationVehicleData vehicle, + XmlNode componentNode, string sourceFile) : base(vehicle, componentNode, sourceFile) { } + } } \ No newline at end of file diff --git a/VectoCore/VectoCore/InputData/FileIO/XML/Declaration/DataProvider/XMLDeclarationVehicleDataProvider.cs b/VectoCore/VectoCore/InputData/FileIO/XML/Declaration/DataProvider/XMLDeclarationVehicleDataProvider.cs index d6db6eaf01..b4b6f12d43 100644 --- a/VectoCore/VectoCore/InputData/FileIO/XML/Declaration/DataProvider/XMLDeclarationVehicleDataProvider.cs +++ b/VectoCore/VectoCore/InputData/FileIO/XML/Declaration/DataProvider/XMLDeclarationVehicleDataProvider.cs @@ -1248,6 +1248,14 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration.DataProvider public XMLDeclarationHEVSxPrimaryBusDataProviderV210(IXMLDeclarationJobInputData jobData, XmlNode xmlNode, string sourceFile) : base(jobData, xmlNode, sourceFile) { } + + #region Overrides of XMLDeclarationVehicleDataProviderV10 + + public override IList<ITorqueLimitInputData> TorqueLimits => + Components is XMLDeclarationPrimaryBusHEVS3ComponentDataProviderV210 + ? null : base.TorqueLimits; + + #endregion } // --------------------------------------------------------------------------------------- @@ -1297,7 +1305,4 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration.DataProvider #endregion } - - // --------------------------------------------------------------------------------------- - } \ No newline at end of file diff --git a/VectoCore/VectoCore/InputData/FileIO/XML/Declaration/NinjectModules/XMLDeclarationInputDataV210InjectModule.cs b/VectoCore/VectoCore/InputData/FileIO/XML/Declaration/NinjectModules/XMLDeclarationInputDataV210InjectModule.cs index f229a8b339..357e49ba34 100644 --- a/VectoCore/VectoCore/InputData/FileIO/XML/Declaration/NinjectModules/XMLDeclarationInputDataV210InjectModule.cs +++ b/VectoCore/VectoCore/InputData/FileIO/XML/Declaration/NinjectModules/XMLDeclarationInputDataV210InjectModule.cs @@ -64,6 +64,9 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration.NinjectModules Bind<IXMLVehicleComponentsDeclaration>().To<XMLDeclarationPrimaryBusHEVS2ComponentDataProviderV210>() .Named(XMLDeclarationPrimaryBusHEVS2ComponentDataProviderV210.QUALIFIED_XSD_TYPE); + Bind<IXMLVehicleComponentsDeclaration>().To<XMLDeclarationPrimaryBusHEVS3ComponentDataProviderV210>() + .Named(XMLDeclarationPrimaryBusHEVS3ComponentDataProviderV210.QUALIFIED_XSD_TYPE); + Bind<IXMLComponentReader>().To<XMLComponentReaderV210_CompletedBus>().Named(XMLComponentReaderV210_CompletedBus.QUALIFIED_XSD_TYPE); Bind<IXMLComponentReader>().To<XMLComponentReaderV210_HEV_PxHeavyLorry>().Named(XMLComponentReaderV210_HEV_PxHeavyLorry.QUALIFIED_XSD_TYPE); @@ -74,6 +77,9 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration.NinjectModules Bind<IXMLComponentReader>().To<XMLPrimaryBusHEVS2DeclarationComponentReaderV201>() .Named(XMLPrimaryBusHEVS2DeclarationComponentReaderV201.QUALIFIED_XSD_TYPE); + Bind<IXMLComponentReader>().To<XMLPrimaryBusHEVS3DeclarationComponentReaderV201>() + .Named(XMLPrimaryBusHEVS3DeclarationComponentReaderV201.QUALIFIED_XSD_TYPE); + Bind<IXMLComponentReader>().To<XMLHeavyLorryHEVS2DeclartionComponentReaderV201>().Named(XMLHeavyLorryHEVS2DeclartionComponentReaderV201.QUALIFIED_XSD_TYPE); Bind<IXMLComponentReader>().To<XMLHeavyLorryHEVS3DeclarationComponentReaderV201>().Named(XMLHeavyLorryHEVS3DeclarationComponentReaderV201.QUALIFIED_XSD_TYPE); diff --git a/VectoCore/VectoCore/InputData/FileIO/XML/Declaration/Reader/Impl/XMLComponentReader.cs b/VectoCore/VectoCore/InputData/FileIO/XML/Declaration/Reader/Impl/XMLComponentReader.cs index b5b22b9f9c..69830e79b7 100644 --- a/VectoCore/VectoCore/InputData/FileIO/XML/Declaration/Reader/Impl/XMLComponentReader.cs +++ b/VectoCore/VectoCore/InputData/FileIO/XML/Declaration/Reader/Impl/XMLComponentReader.cs @@ -305,8 +305,6 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration.Reader.Impl var electricMachine = Factory.CreateElectricMachinesData(version, Vehicle, componentNode, sourcefile); electricMachine.ElectricMachineSystemReader = Factory.CreateElectricMotorReader(version, Vehicle, componentNode, sourcefile); - - //electricMachine.ADCReader = Factory.CreateADCReader(version, Vehicle, componentNode, sourcefile); return electricMachine; } @@ -660,9 +658,7 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration.Reader.Impl protected IBusAuxiliariesDeclarationData _busAuxInputData; public XMLPrimaryBusHEVPxDeclarationComponentReaderV201(IXMLDeclarationVehicleData vehicle, XmlNode componentsNode) - : base(vehicle, componentsNode) - { - } + : base(vehicle, componentsNode) { } public override IAuxiliariesDeclarationInputData AuxiliaryData => null; @@ -687,9 +683,30 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration.Reader.Impl public XMLPrimaryBusHEVS2DeclarationComponentReaderV201(IXMLDeclarationVehicleData vehicle, XmlNode componentsNode) : base(vehicle, componentsNode) { } } + + // --------------------------------------------------------------------------------------- + + public class XMLPrimaryBusHEVS3DeclarationComponentReaderV201 : XMLPrimaryBusHEVPxDeclarationComponentReaderV201 + { + public new static readonly XNamespace NAMESPACE_URI = XMLDefinitions.DECLARATION_DEFINITIONS_NAMESPACE_URI_V210_JOBS; + public new const string XSD_TYPE = "Components_HEV-S3_PrimaryBusType"; + public new static readonly string QUALIFIED_XSD_TYPE = XMLHelper.CombineNamespace(NAMESPACE_URI.NamespaceName, XSD_TYPE); + + public XMLPrimaryBusHEVS3DeclarationComponentReaderV201(IXMLDeclarationVehicleData vehicle, XmlNode componentsNode) + : base(vehicle, componentsNode) { } + + #region Overrides of XMLComponentReaderV10 + + public override IGearboxDeclarationInputData GearboxInputData => null; + public override ITorqueConverterDeclarationInputData TorqueConverterInputData => null; + public override IAngledriveInputData AngledriveInputData => null; + #endregion + } + // --------------------------------------------------------------------------------------- + public class XMLHeavyLorryHEVS2DeclartionComponentReaderV201 : XMLComponentReaderV10 { public new static readonly XNamespace NAMESPACE_URI = XMLDefinitions.DECLARATION_DEFINITIONS_NAMESPACE_URI_V210_JOBS; diff --git a/VectoCore/VectoCoreTest/XML/XMLDeclarationInputv210.cs b/VectoCore/VectoCoreTest/XML/XMLDeclarationInputv210.cs index 1b04b2fc56..975563d1ec 100644 --- a/VectoCore/VectoCoreTest/XML/XMLDeclarationInputv210.cs +++ b/VectoCore/VectoCoreTest/XML/XMLDeclarationInputv210.cs @@ -667,7 +667,7 @@ namespace TUGraz.VectoCore.Tests.XML [TestCase(@"HeavyLorry\HEV-S_heavyLorry_S3.xml")] - public void TestHeavyLorryS3(string jobfile) + public void TestHEVHeavyLorryS3(string jobfile) { var filename = Path.Combine(BASE_DIR, jobfile); var dataProvider = xmlInputReader.CreateDeclaration(XmlReader.Create(filename)); @@ -700,7 +700,7 @@ namespace TUGraz.VectoCore.Tests.XML [TestCase(@"HeavyLorry\HEV-S_heavyLorry_S4.xml")] - public void TestHeavyLorryS4(string jobfile) + public void TestHEVHeavyLorryS4(string jobfile) { var filename = Path.Combine(BASE_DIR, jobfile); var dataProvider = xmlInputReader.CreateDeclaration(XmlReader.Create(filename)); @@ -732,7 +732,7 @@ namespace TUGraz.VectoCore.Tests.XML } [TestCase(@"MediumLorry\HEV-S_mediumLorry_AMT_S2.xml")] - public void TestMediumLorryS2(string jobfile) + public void TestHEVMediumLorryS2(string jobfile) { var filename = Path.Combine(BASE_DIR, jobfile); var dataProvider = xmlInputReader.CreateDeclaration(XmlReader.Create(filename)); @@ -764,7 +764,7 @@ namespace TUGraz.VectoCore.Tests.XML } [TestCase(@"MediumLorry\HEV-S_mediumLorry_S3.xml")] - public void TestMediumLorryS3(string jobfile) + public void TestHEVMediumLorryS3(string jobfile) { var filename = Path.Combine(BASE_DIR, jobfile); var dataProvider = xmlInputReader.CreateDeclaration(XmlReader.Create(filename)); @@ -797,7 +797,7 @@ namespace TUGraz.VectoCore.Tests.XML [TestCase(@"MediumLorry\HEV-S_mediumLorry_S4.xml")] - public void TestMediumLorryS4(string jobfile) + public void TestHEVMediumLorryS4(string jobfile) { var filename = Path.Combine(BASE_DIR, jobfile); var dataProvider = xmlInputReader.CreateDeclaration(XmlReader.Create(filename)); @@ -829,7 +829,7 @@ namespace TUGraz.VectoCore.Tests.XML } [TestCase(@"PrimaryBus\HEV-S_primaryBus_AMT_S2.xml")] - public void TestPrimaryBusS2(string jobfile) + public void TestHEVPrimaryBusS2(string jobfile) { var filename = Path.Combine(BASE_DIR, jobfile); var dataProvider = xmlInputReader.CreateDeclaration(XmlReader.Create(filename)); @@ -860,6 +860,39 @@ namespace TUGraz.VectoCore.Tests.XML Assert.IsNull(vehicle.MaxPropulsionTorque); } + [TestCase(@"PrimaryBus\HEV-S_primaryBus_S3.xml")] + public void TestHEVPrimaryBusS3(string jobfile) + { + var filename = Path.Combine(BASE_DIR, jobfile); + var dataProvider = xmlInputReader.CreateDeclaration(XmlReader.Create(filename)); + + Assert.NotNull(dataProvider.JobInputData); + var vehicle = dataProvider.JobInputData.Vehicle; + Assert.NotNull(vehicle); + Assert.IsNotNull(vehicle.Components); + Assert.IsNotNull(vehicle.Components.EngineInputData); + Assert.IsNotNull(vehicle.Components.ElectricMachines); + Assert.AreEqual(2, vehicle.Components.ElectricMachines.Entries.Count); + Assert.AreEqual(PowertrainPosition.BatteryElectricE2, vehicle.Components.ElectricMachines.Entries[0].Position); + Assert.AreEqual(PowertrainPosition.GEN, vehicle.Components.ElectricMachines.Entries[1].Position); + Assert.IsNull(vehicle.Components.GearboxInputData); + Assert.IsNull(vehicle.Components.TorqueConverterInputData); + Assert.IsNull(vehicle.Components.AngledriveInputData); + Assert.IsNotNull(vehicle.Components.RetarderInputData); + Assert.IsNotNull(vehicle.Components.AxleGearInputData); + Assert.IsNotNull(vehicle.Components.AxleWheels); + Assert.IsNull(vehicle.Components.AuxiliaryInputData); + Assert.IsNotNull(vehicle.Components.BusAuxiliaries); + Assert.IsNull(vehicle.Components.AirdragInputData); + Assert.IsNotNull(vehicle.Components.ElectricStorage); + Assert.IsNull(vehicle.Components.PTOTransmissionInputData); + Assert.IsNull(vehicle.CargoVolume); + Assert.IsNull(vehicle.TorqueLimits); + Assert.IsNotNull(vehicle.ElectricMotorTorqueLimits); + Assert.IsNull(vehicle.MaxPropulsionTorque); + } + + #region Test existence of torque converter private void TestTorqueConverter(IVehicleDeclarationInputData vehicle) -- GitLab