16
0
mirror of https://github.com/MaSzyna-EU07/maszyna.git synced 2026-07-22 20:59:19 +02:00

Small fix to eimic and speedcontrol interaction

This commit is contained in:
Królik Uszasty
2019-03-14 18:58:31 +01:00
parent f02d30fd9a
commit 7249ffd068
4 changed files with 5 additions and 4 deletions

View File

@@ -2703,7 +2703,7 @@ bool TDynamicObject::Update(double dt, double dt1)
MoverParameters->CheckSpeedCtrl();
auto eimic = Min0R(MoverParameters->eimic, MoverParameters->eimicSpeedCtrl);
MoverParameters->eimic = eimic;
MoverParameters->eimic_real = eimic;
MoverParameters->SendCtrlToNext("EIMIC", Max0R(0, eimic), MoverParameters->CabNo);
auto LBR = Max0R(-eimic, 0);

View File

@@ -1281,6 +1281,7 @@ public:
/*- zmienne dla lokomotyw z silnikami indukcyjnymi -*/
double eimic = 0; /*aktualna pozycja zintegrowanego sterowania jazda i hamowaniem*/
double eimic_real = 0; /*faktycznie uzywana pozycja zintegrowanego sterowania jazda i hamowaniem*/
int EIMCtrlType = 0; /*rodzaj wariantu zadajnika jazdy*/
double eimv_pr = 0; /*realizowany procent dostepnej sily rozruchu/hamowania*/
double eimv[21];

View File

@@ -5051,7 +5051,7 @@ double TMoverParameters::TractionForce( double dt ) {
}
else
{
PosRatio = Max0R(eimic, 0);
PosRatio = Max0R(eimic_real, 0);
eimv[eimv_Fzad] = PosRatio;
if ((Flat) && (eimc[eimc_p_F0] * eimv[eimv_Fful] > 0))
PosRatio = Min0R(PosRatio * eimc[eimc_p_F0] / eimv[eimv_Fful], 1);
@@ -9550,7 +9550,7 @@ bool TMoverParameters::RunCommand( std::string Command, double CValue1, double C
end */
else if (Command == "EIMIC") // ElectricInductionMotor Integrated Control - propulsion and brakes in relative values
{
eimic = CValue1;
eimic_real = CValue1;
OK = SendCtrlToNext(Command, CValue1, CValue2, Couplertype);
}
else if (Command == "Brake") // youBy - jak sie EP hamuje, to trza sygnal wyslac...

View File

@@ -5261,7 +5261,7 @@ bool TTrain::Update( double const Deltatime )
// else
// fEIMParams[0][3] =
// mvControlled->eimv[eimv_Fzad] - mvOccupied->LocalBrakeRatio(); // procent zadany
fEIMParams[0][3] = mvOccupied->eimic;
fEIMParams[0][3] = mvOccupied->eimic_real;
fEIMParams[0][4] = Max0R(fEIMParams[0][3], 0);
fEIMParams[0][5] = -Min0R(fEIMParams[0][3], 0);
fEIMParams[0][1] = fEIMParams[0][4] * mvControlled->eimv[eimv_Fful];