Skip to content

Commit c163e21

Browse files
committed
Set default value for brake insensitivity
A non-zero value is required in order to release brakes after an overcharge.
1 parent 341c1ce commit c163e21

File tree

1 file changed

+3
-3
lines changed
  • Source/Orts.Simulation/Simulation/RollingStocks/SubSystems/Brakes/MSTS

1 file changed

+3
-3
lines changed

Source/Orts.Simulation/Simulation/RollingStocks/SubSystems/Brakes/MSTS/AirSinglePipe.cs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -49,7 +49,7 @@ public class AirSinglePipe : MSTSBrakeSystem
4949
protected float MaxReleaseRatePSIpS = 1.86f;
5050
protected float MaxApplicationRatePSIpS = .9f;
5151
protected float MaxAuxilaryChargingRatePSIpS = 1.684f;
52-
protected float BrakeInsensitivityPSIpS = 0;
52+
protected float BrakeInsensitivityPSIpS = 0.07f;
5353
protected float EmergencyValveActuationRatePSIpS = 0;
5454
protected float EmergResChargingRatePSIpS = 1.684f;
5555
protected float EmergAuxVolumeRatio = 1.4f;
@@ -230,7 +230,7 @@ public override void Parse(string lowercasetoken, STFReader stf)
230230

231231
// OpenRails specific parameters
232232
case "wagon(brakepipevolume": BrakePipeVolumeM3 = Me3.FromFt3(stf.ReadFloatBlock(STFReader.UNITS.VolumeDefaultFT3, null)); break;
233-
case "wagon(ortsbrakeinsensitivity": BrakeInsensitivityPSIpS = stf.ReadFloatBlock(STFReader.UNITS.PressureRateDefaultPSIpS, null); break;
233+
case "wagon(ortsbrakeinsensitivity": BrakeInsensitivityPSIpS = stf.ReadFloatBlock(STFReader.UNITS.PressureRateDefaultPSIpS, 0.07f); break;
234234
case "wagon(ortsemergencyvalveactuationrate": EmergencyValveActuationRatePSIpS = stf.ReadFloatBlock(STFReader.UNITS.PressureRateDefaultPSIpS, 15f); break;
235235
case "wagon(ortsmainrespipeauxrescharging": MRPAuxResCharging = this is AirTwinPipe && stf.ReadBoolBlock(true); break;
236236
}
@@ -481,7 +481,7 @@ public override void Update(float elapsedClockSeconds)
481481
{
482482
ControlResPressurePSI = BrakeLine1PressurePSI;
483483
}
484-
else if (ControlResPressurePSI > BrakeLine1PressurePSI) // Overcharge elimination
484+
else if (ControlResPressurePSI > BrakeLine1PressurePSI && ControlResPressurePSI < BrakeLine1PressurePSI + 1) // Overcharge elimination
485485
{
486486
float dp = elapsedClockSeconds * BrakeInsensitivityPSIpS;
487487
ControlResPressurePSI = Math.Max(ControlResPressurePSI - dp, BrakeLine1PressurePSI);

0 commit comments

Comments
 (0)