From af4688ff20e6244eb994ea65669ae5d132124ecc Mon Sep 17 00:00:00 2001 From: Raphael Luz <luz@ivt.tugraz.at> Date: Thu, 26 Mar 2015 13:52:22 +0100 Subject: [PATCH] - Small fixes in Calc and Shift model --- CHANGES.md | 3 +++ VECTO/Input Files/cGBX.vb | 6 ++++-- VECTO/MODcalc/cPower.vb | 10 +++++----- 3 files changed, 12 insertions(+), 7 deletions(-) diff --git a/CHANGES.md b/CHANGES.md index 53b15cc4d0..0195181b93 100644 --- a/CHANGES.md +++ b/CHANGES.md @@ -1,6 +1,9 @@ ### VECTO x.x (current source) +TODO +- Don't mark gearbox extrapolation as error > only info (MAN) +- Traction interruption: No engine rev down - hold rpm until new gear engaged (Allison) ### VECTO 2.0.4-beta3 diff --git a/VECTO/Input Files/cGBX.vb b/VECTO/Input Files/cGBX.vb index 355a56410b..55ed4606e5 100644 --- a/VECTO/Input Files/cGBX.vb +++ b/VECTO/Input Files/cGBX.vb @@ -415,6 +415,7 @@ Public Class cGBX Dim Mout As Single Dim Min As Single Dim MinMax As Single + Dim MinCalc As Single Dim nuStep As Single Dim nuMin As Single Dim nuMax As Single @@ -522,8 +523,9 @@ Public Class cGBX 'Check if Min is too high If Min > MinMax Then Continue Do - 'Calculated output torque for given mu - MoutCalc = fTCtorque(nu, nUin) * mu + 'Calculated input and output torque for given mu + MinCalc = fTCtorque(nu, nUin) + MoutCalc = MinCalc * mu 'Add to lists nuList.Add(nu) diff --git a/VECTO/MODcalc/cPower.vb b/VECTO/MODcalc/cPower.vb index 9bb20f6bda..957b661119 100644 --- a/VECTO/MODcalc/cPower.vb +++ b/VECTO/MODcalc/cPower.vb @@ -670,7 +670,7 @@ lbGschw: 'Eco-Roll Speed Correction (because PreRun speed profile might still be too high or speed might generally be too low) If Vh.EcoRoll(jz) AndAlso Vact > MODdata.Vh.Vsoll(jz) - VEC.UnderSpeed / 3.6 AndAlso Not VehState0 = tVehState.Stopped AndAlso Pplus Then If Not Vh.ReduceSpeed(jz, 0.9999) Then - WorkerMsg(tMsgID.Err, "Engine full load too low for vehicle start (speed reduction failed) !", MsgSrc & "/t= " & jz + 1) + WorkerMsg(tMsgID.Err, "Engine full load too low for vehicle start! Road gradient = " & Vh.fGrad(dist) & "[%] at " & dist.ToString("#.0") & "[m]", MsgSrc & "/t= " & jz + 1) Return False End If FirstSecItar = False @@ -955,7 +955,7 @@ lb_nOK: Pclutch = nMtoPe(nU, GBX.TCMin) - If P >= 0 Then + If Pclutch >= 0 Then PlossTC = Math.Abs(nMtoPe(GBX.TCnUin, GBX.TCMin) * (1 - GBX.TC_mu * GBX.TC_nu)) Else PlossTC = Math.Abs(nMtoPe(GBX.TCnUout, GBX.TCMout) * (1 - GBX.TC_mu * GBX.TC_nu)) @@ -1140,8 +1140,8 @@ lb_nOK: FirstSecItar = False GoTo lbGschw Else - 'ERROR: Speed Reduction brings nothing? ... - WorkerMsg(tMsgID.Err, "Speed reduction failed!", MsgSrc & "/t= " & jz + 1) + 'ERROR: Speed Reduction failed. (Road gradient too high) + WorkerMsg(tMsgID.Err, "Engine full load too low for vehicle start! Road gradient = " & Vh.fGrad(dist) & "[%] at " & dist.ToString("#.0") & "[m]", MsgSrc & "/t= " & jz + 1) Return False End If Else 'tEngState.Idle, tEngState.Stopped, tEngState.Drag @@ -1899,7 +1899,7 @@ lb_nOK: iRatio = GBX.Igetr(LastGear + 1) / GBX.Igetr(LastGear) - If fnUout(Vact, LastGear + 1) > Math.Min(900, iRatio * (FLD(LastGear).N80h - 150)) AndAlso FLD(LastGear + 1).Pfull(nU * iRatio, Pe) > 0.7 * FLD(LastGear).Pfull(nU, Pe) Then + If fnUout(Vact, LastGear + 1) > Math.Min(900, iRatio * (FLD(LastGear).N80h - 150)) AndAlso FLD(LastGear + 1).Pfull(nU * iRatio) > 0.7 * FLD(LastGear).Pfull(nU) Then Return LastGear + 1 End If End If -- GitLab