@@ -159,6 +159,7 @@ protected float VacResPressureAdjPSIA()
159
159
( Car as MSTSWagon ) . HandBrakePresent ? string . Format ( "{0:F0}%" , HandbrakePercent ) : string . Empty ,
160
160
FrontBrakeHoseConnected ? "I" : "T" ,
161
161
string . Format ( "A{0} B{1}" , AngleCockAOpen ? "+" : "-" , AngleCockBOpen ? "+" : "-" ) ,
162
+ BleedOffValveOpen ? Simulator . Catalog . GetString ( "Open" ) : string . Empty ,
162
163
} ;
163
164
}
164
165
else
@@ -177,6 +178,7 @@ protected float VacResPressureAdjPSIA()
177
178
HandbrakePercent > 0 ? string . Format ( "{0:F0}%" , HandbrakePercent ) : string . Empty ,
178
179
FrontBrakeHoseConnected ? "I" : "T" ,
179
180
string . Format ( "A{0} B{1}" , AngleCockAOpen ? "+" : "-" , AngleCockBOpen ? "+" : "-" ) ,
181
+ BleedOffValveOpen ? Simulator . Catalog . GetString ( "Open" ) : string . Empty ,
180
182
} ;
181
183
}
182
184
}
@@ -481,7 +483,25 @@ public override void Update(float elapsedClockSeconds)
481
483
}
482
484
else
483
485
{
484
- if ( BrakeLine1PressurePSI < VacResPressurePSIA )
486
+
487
+ if ( BleedOffValveOpen )
488
+ {
489
+ // the following reduces the brake cylinder and vacuum reservoir to 0inHg if the bleed valve is operated
490
+ float dp = elapsedClockSeconds * MaxApplicationRatePSIpS ;
491
+ VacResPressurePSIA += dp ;
492
+ if ( VacResPressurePSIA > OneAtmospherePSI )
493
+ {
494
+ VacResPressurePSIA = OneAtmospherePSI ;
495
+ }
496
+
497
+ CylPressurePSIA += dp ;
498
+ if ( CylPressurePSIA > OneAtmospherePSI )
499
+ {
500
+ CylPressurePSIA = OneAtmospherePSI ;
501
+ }
502
+
503
+ }
504
+ else if ( BrakeLine1PressurePSI < VacResPressurePSIA )
485
505
{
486
506
float dp = elapsedClockSeconds * MaxApplicationRatePSIpS * ( NumBrakeCylinders * BrakeCylVolM3 ) / VacResVolM3 ;
487
507
float vr = VacResVolM3 / BrakePipeVolumeM3 ;
0 commit comments