mirror of
https://github.com/MaSzyna-EU07/maszyna.git
synced 2026-07-18 01:59:19 +02:00
Fix for EP/MED brake after LBP changes
This commit is contained in:
committed by
tmj-fstate
parent
3751c8a0a8
commit
387f396ecb
10
DynObj.cpp
10
DynObj.cpp
@@ -3206,20 +3206,20 @@ bool TDynamicObject::Update(double dt, double dt1)
|
||||
p->MoverParameters->Hamulec->GetFC(
|
||||
Nmax / (p->MoverParameters->NAxles * p->MoverParameters->NBpA), VelC) *
|
||||
1000; // sila hamowania pn
|
||||
p->MoverParameters->LocalBrakePosA = (p->MoverParameters->SlippingWheels ? 0 : FzEP[i] / FmaxPoj);
|
||||
if (p->MoverParameters->LocalBrakePosA>0.009)
|
||||
p->MoverParameters->LocalBrakePosAEIM = (p->MoverParameters->SlippingWheels ? 0 : FzEP[i] / FmaxPoj);
|
||||
if (p->MoverParameters->LocalBrakePosAEIM>0.009)
|
||||
if (p->MoverParameters->P2FTrans * p->MoverParameters->BrakeCylMult[0] *
|
||||
p->MoverParameters->MaxBrakePress[0] != 0)
|
||||
{
|
||||
float x = (p->MoverParameters->BrakeSlckAdj / p->MoverParameters->BrakeCylMult[0] +
|
||||
p->MoverParameters->BrakeCylSpring) / (p->MoverParameters->P2FTrans *
|
||||
p->MoverParameters->MaxBrakePress[0]);
|
||||
p->MoverParameters->LocalBrakePosA = x + (1 - x) * p->MoverParameters->LocalBrakePosA;
|
||||
p->MoverParameters->LocalBrakePosAEIM = x + (1 - x) * p->MoverParameters->LocalBrakePosAEIM;
|
||||
}
|
||||
else
|
||||
p->MoverParameters->LocalBrakePosA = p->MoverParameters->LocalBrakePosA;
|
||||
p->MoverParameters->LocalBrakePosAEIM = p->MoverParameters->LocalBrakePosAEIM;
|
||||
else
|
||||
p->MoverParameters->LocalBrakePosA = 0;
|
||||
p->MoverParameters->LocalBrakePosAEIM = 0;
|
||||
++i;
|
||||
}
|
||||
|
||||
|
||||
@@ -1025,7 +1025,8 @@ public:
|
||||
double BrakeCtrlPosR = 0.0; /*nastawa hamulca zespolonego - plynna dla FV4a*/
|
||||
double BrakeCtrlPos2 = 0.0; /*nastawa hamulca zespolonego - kapturek dla FV4a*/
|
||||
int ManualBrakePos = 0; /*nastawa hamulca recznego*/
|
||||
double LocalBrakePosA = 0.0;
|
||||
double LocalBrakePosA = 0.0; /*nastawa hamulca pomocniczego*/
|
||||
double LocalBrakePosAEIM = 0.0; /*pozycja hamulca pomocniczego ep dla asynchronicznych ezt*/
|
||||
/*
|
||||
int BrakeStatus = b_off; //0 - odham, 1 - ham., 2 - uszk., 4 - odluzniacz, 8 - antyposlizg, 16 - uzyte EP, 32 - pozycja R, 64 - powrot z R
|
||||
*/
|
||||
|
||||
@@ -3462,8 +3462,10 @@ void TMoverParameters::UpdatePipePressure(double dt)
|
||||
if ((BrakeCtrlPosNo > 1) /*&& (ActiveCab != 0)*/)
|
||||
// with BrakePressureTable[BrakeCtrlPos] do
|
||||
{
|
||||
dpLocalValve = LocHandle->GetPF(LocalBrakePosA, Hamulec->GetBCP(), ScndPipePress, dt, 0);
|
||||
|
||||
if ((EngineType != TEngineType::ElectricInductionMotor))
|
||||
dpLocalValve = LocHandle->GetPF(std::max(LocalBrakePosA, LocalBrakePosAEIM), Hamulec->GetBCP(), ScndPipePress, dt, 0);
|
||||
else
|
||||
dpLocalValve = LocHandle->GetPF(LocalBrakePosAEIM, Hamulec->GetBCP(), ScndPipePress, dt, 0);
|
||||
if( ( BrakeHandle == TBrakeHandle::FV4a )
|
||||
&& ( ( PipePress < 2.75 )
|
||||
&& ( ( Hamulec->GetStatus() & b_rls ) == 0 ) )
|
||||
|
||||
Reference in New Issue
Block a user