mirror of
https://github.com/MaSzyna-EU07/maszyna.git
synced 2026-11-10 13:43:14 +01:00
AI braking: predict the ESt3 brake force from the distributor characteristic
This commit is contained in:
@@ -5091,6 +5091,7 @@ void TMoverParameters::ComputeTotalForce(double dt)
|
||||
double TMoverParameters::BrakeForceR(double ratio, double velocity)
|
||||
{
|
||||
double press = 0;
|
||||
ratio = Hamulec->GetBrakeRatio(ratio);
|
||||
if (MBPM > 2)
|
||||
{
|
||||
press = MaxBrakePress[1] + (MaxBrakePress[3] - MaxBrakePress[1]) * std::min(1.0, (TotalMass - Mass) / (MBPM - Mass));
|
||||
|
||||
@@ -351,6 +351,17 @@ double TNESt3::GetCRP()
|
||||
// return Miedzypoj.P;
|
||||
}
|
||||
|
||||
double TNESt3::GetBrakeRatio( double const Ratio ) const // udzial cisnienia w cylindrze dla udzialu spadku w PG
|
||||
{
|
||||
if( MaxBP <= 0.0 || BVM <= 0.0 ) {
|
||||
return Ratio;
|
||||
}
|
||||
// pelny spadek sluzbowy w PG (HPP - LPP), odtworzony z przelozenia
|
||||
double const spadek{ MaxBP / BVM + dPSprezyny };
|
||||
double const cel{ ( Ratio * spadek - dPSprezyny ) * BVM };
|
||||
return ( cel > 0.0 ? std::max( cel, pStopnia ) / MaxBP : 0.0 );
|
||||
}
|
||||
|
||||
double TNESt3::CelBCP( double const CVP, double const VVP ) const // docelowe cisnienie w cylindrze
|
||||
{
|
||||
double const cel{ ( CVP - dPSprezyny - VVP ) * BVM };
|
||||
|
||||
@@ -197,6 +197,7 @@ class TNESt3 : public TBrake {
|
||||
double GetCRP() override;
|
||||
double GetRapidRatio(double const Vel) const override;
|
||||
double CelBCP(double const CVP, double const VVP) const; // docelowe cisnienie w cylindrze
|
||||
double GetBrakeRatio(double const Ratio) const override; // udzial cisnienia w cylindrze dla udzialu spadku w PG
|
||||
void CheckState(double const BCP, double &dV1); // glowny przyrzad rozrzadczy
|
||||
void CheckReleaser(double const dt); // odluzniacz
|
||||
double CVs(double const BP) const; // napelniacz sterujacego
|
||||
|
||||
@@ -421,6 +421,10 @@ class TBrake
|
||||
double GetVRP() const; // cisnienie komory wstepnej rozdzielacza
|
||||
/// <summary>Returns control reservoir (ZS) pressure [bar]; defaults to the auxiliary reservoir for valves without a dedicated ZS.</summary>
|
||||
virtual double GetCRP(); // cisnienie zbiornika sterujacego
|
||||
/// <summary>Share of the full cylinder pressure the distributor settles at for the given share
|
||||
/// of the full service pipe drop. Used only to predict the brake force; the default is proportional.</summary>
|
||||
/// <param name="Ratio">Share of the full service brake pipe drop.</param>
|
||||
virtual double GetBrakeRatio(double const Ratio) const { return Ratio; }
|
||||
/// <summary>
|
||||
/// Sets the brake delay (G/P/R/M) selector if requested mode is supported.
|
||||
/// </summary>
|
||||
|
||||
Reference in New Issue
Block a user