mirror of
https://github.com/MaSzyna-EU07/maszyna.git
synced 2026-07-19 06:29:18 +02:00
Rework of speed control algorithm for DieselEngine - functions for PESA-DMU
This commit is contained in:
committed by
tmj-fstate
parent
936e537a7a
commit
e43ea7fcfe
10
DynObj.cpp
10
DynObj.cpp
@@ -2831,8 +2831,10 @@ bool TDynamicObject::Update(double dt, double dt1)
|
||||
&& (MoverParameters->EngineType == TEngineType::DieselEngine)
|
||||
&& (MoverParameters->EIMCtrlType > 0)) {
|
||||
MoverParameters->CheckEIMIC(dt1);
|
||||
MoverParameters->eimic_real = MoverParameters->eimic;
|
||||
MoverParameters->SendCtrlToNext("EIMIC", MoverParameters->eimic, MoverParameters->CabNo);
|
||||
if (MoverParameters->SpeedCtrl)
|
||||
MoverParameters->CheckSpeedCtrl(dt1);
|
||||
MoverParameters->eimic_real = std::min(MoverParameters->eimic,MoverParameters->eimicSpeedCtrl);
|
||||
MoverParameters->SendCtrlToNext("EIMIC", MoverParameters->eimic_real, MoverParameters->CabNo);
|
||||
}
|
||||
if( ( Mechanik->primary() )
|
||||
&& ( MoverParameters->EngineType == TEngineType::ElectricInductionMotor ) ) {
|
||||
@@ -2852,10 +2854,10 @@ bool TDynamicObject::Update(double dt, double dt1)
|
||||
if( ( MoverParameters->Power < 1 )
|
||||
&& ( ctOwner != nullptr ) ) {
|
||||
MoverParameters->MainCtrlPos = ctOwner->Controlling()->MainCtrlPos*MoverParameters->MainCtrlPosNo / std::max(1, ctOwner->Controlling()->MainCtrlPosNo);
|
||||
MoverParameters->ScndCtrlActualPos = ctOwner->Controlling()->ScndCtrlActualPos;
|
||||
MoverParameters->SpeedCtrlValue = ctOwner->Controlling()->SpeedCtrlValue;
|
||||
}
|
||||
MoverParameters->CheckEIMIC(dt1);
|
||||
MoverParameters->CheckSpeedCtrl();
|
||||
MoverParameters->CheckSpeedCtrl(dt1);
|
||||
|
||||
auto eimic = Min0R(MoverParameters->eimic, MoverParameters->eimicSpeedCtrl);
|
||||
MoverParameters->eimic_real = eimic;
|
||||
|
||||
Reference in New Issue
Block a user