Elvas Tower: Standing cars trigger LevelCr signals bug - Elvas Tower

Jump to content

  • 2 Pages +
  • 1
  • 2
  • You cannot start a new topic
  • You cannot reply to this topic

Standing cars trigger LevelCr signals bug Rate Topic: -----

#11 User is offline   edwardk 

  • Open Rails Developer
  • Group: Status: Elite Member
  • Posts: 1,350
  • Joined: 11-December 09
  • Gender:Male
  • Location:Chula Vista, CA
  • Simulator:MSTS
  • Country:

Posted 18 January 2017 - 03:33 PM

I was hoping to have this issue resolved before the next official release, but this will not happen.

Edward K.

#12 User is offline   rdamurphy 

  • Open Rails Developer
  • Group: Private - Open Rails Developer
  • Posts: 1,199
  • Joined: 04-May 06
  • Gender:Male
  • Location:Thornton, CO
  • Simulator:MSTS - OR
  • Country:

Posted 18 January 2017 - 04:22 PM

In real life, sitting cars will NOT activate a crossing signal. Nor will a locomotive that has its reverser in neutral.

If a railroad leaves loose cars on a crossing, the crossing will not be activated if a locomotive is not nearby. Not to mention the fact that it's illegal...

The crossing detectors on the railroads detect two things: A locomotive, and its reverser status. If a locomotive is stopped at a signal just before a crossing, with the brakes set, the engineer can place the reverser in neutral and clear the crossing for traffic to cross. The ONLY time a crossing detects cars is if a locomotive passes over it first, it will "hold" activation until the rear of the train clears. (Some crossings show weird behavior if there is a locomotive on the rear of the train because of this, activating again and clearing for the rear power.

If a car/train is left on a crossing, and the locomotive clears the detection zone, it will clear the signal.

Most of these installations are decades old and use old fashioned relays, not solid state electronics. I newer modern installation may work differently, depending on its programming...

However, I haven't seen anybody drive their car through a tanker...

Robert

#13 User is offline   Jovet 

  • Open Rails Developer
  • Group: Status: Elite Member
  • Posts: 2,250
  • Joined: 14-January 08
  • Gender:Male
  • Location:Omaha, Nebraska.
  • Simulator:MSTS/Open Rails
  • Country:

Posted 18 January 2017 - 05:02 PM

View Postrdamurphy, on 18 January 2017 - 04:22 PM, said:

In real life, sitting cars will NOT activate a crossing signal.

It depends on the type of detection equipment.

View Postrdamurphy, on 18 January 2017 - 04:22 PM, said:

If a railroad leaves loose cars on a crossing, the crossing will not be activated if a locomotive is not nearby.

Yes they will. Especially older crossings with an island circuit.

View Postrdamurphy, on 18 January 2017 - 04:22 PM, said:

The crossing detectors on the railroads detect two things: A locomotive, and its reverser status.

I am not aware that the Reverser setting breaks continuity of metal across the wheels. That is what track circuits and frequency detectors sense.

View Postrdamurphy, on 18 January 2017 - 04:22 PM, said:

However, I haven't seen anybody drive their car through a tanker...

Now, Robert, I'm really surprised here. With your involvement in Operation Lifesaver you should know just how many people actually drive into the side of trains!
http://www.elvastower.com/forums/public/style_emoticons/default/spiteful.gif

#14 User is offline   James Ross 

  • Open Rails Developer
  • Group: Status: Elite Member
  • Posts: 5,491
  • Joined: 30-June 10
  • Gender:Not Telling
  • Simulator:Open Rails
  • Country:

Posted 19 January 2017 - 01:40 PM

View Postedwardk, on 17 January 2017 - 08:30 AM, said:

I am updating everyone as to what the issue is. It turns out that if you have a series of track/crossings connected to the same road, the reported issue involving static cars at crossings will exist. I am hoping that either James or someone else can help understand the road/track/crossing relationship.

I think that MSTS treats each and every crossing object independently and uses line-of-sight proximity to activate them. Obviously, in OR, we don't do that - we use the track the train is on. If you are activating all crossings that share a road, I would suggest only including those which are within a short distance (50m? Maybe less) of the one the train is on, using line-of-sight distances.

#15 User is offline   edwardk 

  • Open Rails Developer
  • Group: Status: Elite Member
  • Posts: 1,350
  • Joined: 11-December 09
  • Gender:Male
  • Location:Chula Vista, CA
  • Simulator:MSTS
  • Country:

Posted 19 January 2017 - 02:25 PM

View PostJames Ross, on 19 January 2017 - 01:40 PM, said:

I think that MSTS treats each and every crossing object independently and uses line-of-sight proximity to activate them. Obviously, in OR, we don't do that - we use the track the train is on. If you are activating all crossings that share a road, I would suggest only including those which are within a short distance (50m? Maybe less) of the one the train is on, using line-of-sight distances.


James,

Since you are the original author, I may need your assistance. I am not activating all crossings on purpose. This is happening on its own when a static car is sitting on the crossing versus the player train or even AI train. I have been following the current structure. As it is now, the crossing that passes the train test is the crossing that is used and for the most part there is no problem. If there is a method to limit this, then some hints would be great. What about the static train? I realize there are differences since I have been looking at the code, but evidently there is some information missing that is allowing this to take place. So to fix this, we can either fix it on the track/crossing side or the car side.

Edward K.

#16 User is offline   Jovet 

  • Open Rails Developer
  • Group: Status: Elite Member
  • Posts: 2,250
  • Joined: 14-January 08
  • Gender:Male
  • Location:Omaha, Nebraska.
  • Simulator:MSTS/Open Rails
  • Country:

Posted 19 January 2017 - 06:39 PM

View PostJames Ross, on 19 January 2017 - 01:40 PM, said:

I think that MSTS treats each and every crossing object independently and uses line-of-sight proximity to activate them.

Yes it does do that, but it's a bit more complicated than that. Each LevelCr object is "inert" until a train is pathed across it. Inert objects will not activate by distance. Once the object has been made ready, it will activate based on distance, but seemingly also some simple (flawed) trigonometry to incorporate the predictive early activation features with curves involved. OR's method is definitely much better! And much more consistent...crossing signals can be setup to activate in sequence correctly in OR.

#17 User is offline   James Ross 

  • Open Rails Developer
  • Group: Status: Elite Member
  • Posts: 5,491
  • Joined: 30-June 10
  • Gender:Not Telling
  • Simulator:Open Rails
  • Country:

Posted 20 January 2017 - 03:32 PM

View Postedwardk, on 19 January 2017 - 02:25 PM, said:

Since you are the original author, I may need your assistance. I am not activating all crossings on purpose. This is happening on its own when a static car is sitting on the crossing versus the player train or even AI train. I have been following the current structure. As it is now, the crossing that passes the train test is the crossing that is used and for the most part there is no problem. If there is a method to limit this, then some hints would be great. What about the static train? I realize there are differences since I have been looking at the code, but evidently there is some information missing that is allowing this to take place. So to fix this, we can either fix it on the track/crossing side or the car side.

I am not really understanding the problem here; and while I wrote the original code, it has been heavily modified by others since.

To me, it should be a really simple calculation: if either end of the train is within the minimum activation distance (along the track), or will reach the minimum activation distance in less than the warning time at the current speed (also along the track), or the two ends are on opposite sides of the crossing, activate it. Otherwise, deactivate it.

There's some tuning that could be added to that simple calculation, e.g. so that a crossing never changes activation state more than once per second or something, but the current code is - to me - over-complicated and I am not likely to enjoy reading any changes which make it more complicated. :(

#18 User is offline   edwardk 

  • Open Rails Developer
  • Group: Status: Elite Member
  • Posts: 1,350
  • Joined: 11-December 09
  • Gender:Male
  • Location:Chula Vista, CA
  • Simulator:MSTS
  • Country:

Posted 21 January 2017 - 12:55 PM

I just sent Joseph a fix to test. So far I have been getting good results from my tests on my test route and his route. If I get a positive feedback from him, I may be able to submit it before the 1.2 release. If not, I will submit the fix after the 1.2 release.

Edward K.

#19 User is offline   edwardk 

  • Open Rails Developer
  • Group: Status: Elite Member
  • Posts: 1,350
  • Joined: 11-December 09
  • Gender:Male
  • Location:Chula Vista, CA
  • Simulator:MSTS
  • Country:

Posted 31 January 2017 - 02:32 PM

Major thanks goes to Joseph and his custom custom Rattlesnake Desert route in helping to solve the crossing issue. Secondary issue that was resolved was the ability to have static cars parked in industry sidings within proximity of a crossing without activating it.

Don't worry Joseph. Since my last test fix that I sent you, everything is good.

This fix was just submitted.

Edward K.

#20 User is offline   Jovet 

  • Open Rails Developer
  • Group: Status: Elite Member
  • Posts: 2,250
  • Joined: 14-January 08
  • Gender:Male
  • Location:Omaha, Nebraska.
  • Simulator:MSTS/Open Rails
  • Country:

Posted 01 February 2017 - 05:38 PM

Yep - Looks good to me! Thanks for getting that corrected so quickly, Edward.

  • 2 Pages +
  • 1
  • 2
  • You cannot start a new topic
  • You cannot reply to this topic

1 User(s) are reading this topic
0 members, 1 guests, 0 anonymous users