Elvas Tower: Wishes for improvement of braking systems - Elvas Tower

Jump to content

  • 71 Pages +
  • « First
  • 66
  • 67
  • 68
  • 69
  • 70
  • Last »
  • You cannot start a new topic
  • You cannot reply to this topic

Wishes for improvement of braking systems Adding and correcting of features Rate Topic: -----

#671 User is offline   pschlik 

  • Conductor
  • Group: Posts: Contributing Member
  • Posts: 487
  • Joined: 04-March 15
  • Gender:Male
  • Simulator:OpenRails - Unstable
  • Country:

Posted 12 May 2024 - 06:26 PM

Adding extra animation types proved to be smoother than I expected. I can imagine there will be more room to add simulation-driven animations in the future (engine radiator fans and dynamic brake fans come to mind). My very limited testing involved rewiring the mirror animation on an engine to act like brake animations, so I'm not sure these work exactly as expected when given an artistic touch but that's what I need test subjects for (I'm sure there's someone out there who wants to try animating the brakes on their train cars).

Here's the run down:
  • Brake Cylinder Animation: Use an animation matrix with a name that begins with ORTSBRAKECYLINDER (if you need multiple animated brake cylinders, names like ORTSBRAKECYLINDER1, ORTSBRAKECYLINDER2, etc will work, this is true of all the shape animations)
  • Handbrake Wheel Animation: Animation matrix name beginning with ORTSHANDBRAKE
  • Brake Rigging and Brake Shoe Animation: Animation matrix name beginning with ORTSBRAKERIGGING

Use ORTSBRAKECYLINDER for any brake equipment that ONLY moves when the brake cylinder moves and does NOT move when the handbrake is applied (typically, this is the brake cylinder itself, but sometimes the brake cylinder is actuated by the handbrake!)
Conversely, use ORTSHANDBRAKE for any brake equipment that ONLY moves when the handbrake is applied but does NOT move when the brake cylinder moves (typically, this would be the handbrake wheel because the handbrake wheel does not spin when the train brakes apply...looking at you, TSW).
Finally, ORTSBRAKERIGGING is for all the other brake equipment-the things that can be moved by BOTH a handbrake application and automatic brake application (typically, this is the brake levers and brake shoes, but sometimes the brake cylinders fit into this category).

On equipment with disc brakes, you can use these animations to animate brake applied/released indicators too!


There are a few things to consider setting up these animations. For the animations driven by brake cylinder travel (that is, ORTSBRAKECYLINDER and ORTSBRAKERIGGING), the selected animation frame will depend on the simulated brake cylinder travel. This means that you really should use the advanced brake cylinder parameters ORTSBrakeCylinderDiameter and ORTSBrakeCylinderPistonTravel to give reasonable animation in response to the simulation. You can use the animations without the advanced brake cylinder simulation but it may not look as convincing. Now, the values assigned to the animation keys are vital, as the animation key itself represents the amount of brake cylinder travel. So a key value of "8" doesn't mean 8 seconds like in other animations, it means a brake cylinder travel of "8" (the value is normalized, so 8 doesn't actually have units, it isn't a number measured in inches or meters).

The animation values to consider are:
  • 0 - brakes fully released, no brake cylinder motion
  • 8 - the brakes are applied enough for all slack to be removed from the brake rigging; any brake shoe animation should set the brake shoes to touch the friction surface at the 8 keyframe (after this, the brake shoes should not move, but other components can still move due to flexibility in the rods and levers)
  • 10 - the brake cylinder pressure is 50 psi/3.5 bar, this animation should represent the 'normal' amount of brake cylinder travel; note that the animation will run up to the 10 keyframe over 1 second whenever the brakes are applied on trains without advanced brake cylinder simulation (also, for ORTSBRAKERIGGING objects, the handbrake will set the animation to the 10 keyframe)
  • 16 - the maximum possible brake cylinder travel allowed in the simulation, occurs around 200 psi brake cylinder pressure (ie: shouldn't ever happen); if your animation looks good up to the 16 keyframe you are good to go for everything the sim throws at your train car

Note that these rules do NOT apply to the ORTSHANDBRAKE animations. Those behave like a normal two-state animation where the keyframes represent time.
Also, there is no need to make an animation that covers the entire range of motion of the brake equipment. If you want something that just shows the brake cylinder extending enough to take up slack and nothing more, then simply don't define any keyframes greater than 8. If you don't think you need 8 individual animation frames, simply skip the keyframes that seem unneeded. OR is smart enough to smoothly animate in between missing keyframes, and will stop the animation when it reaches its maximum value.


#672 User is offline   pschlik 

  • Conductor
  • Group: Posts: Contributing Member
  • Posts: 487
  • Joined: 04-March 15
  • Gender:Male
  • Simulator:OpenRails - Unstable
  • Country:

Posted 13 May 2024 - 03:48 PM

And what I hope is the final feature addition for this round of updates, I have added the ability for the relay valve ratio and inshot to change with freight animations so you can represent another type of load proportioning equipment.

Unlike other load/empty physics settings, it's not realistic for the relay valve ratio to change continuously with the load of the wagon (it's either on or off), so the switchover from empty mode to loaded mode happens automatically at 25% cargo capacity.

Here's an example for a random coal gondola I had. This one uses 50% brake cylinder pressure when empty.

    ORTSMaxBrakeShoeForce ( 31300lb )
    MaxHandbrakeForce ( 32000lb )

    ORTSFreightAnims (
        MSTSFreightAnimEnabled ( 0 )
        WagonEmptyWeight( 28.9t-us )
	
	Comment ( NEW PARAMETERS! )
        EmptyBrakeRelayValveRatio ( 0.5 )
        EmptyBrakeRelayValveInshot ( -15psi )

        ORTSDavis_A ( 87.35lbf )
        ORTSDavis_B ( 0.289lbf/mph )
        ORTSDavis_C ( 0.144lbf/mph^2 )
        ORTSWagonFrontalArea ( 120ft^2 )
        ORTSDavisDragConstant ( 0.0012 )
        EmptyCentreOfGravity_Y ( 1.377 )
        IsGondola( 1 )
        UnloadingStartDelay ( 5 )

        FreightAnimContinuous (
            IntakePoint ( 0.0 6.0 FreightCoal )
            Shape ( COAL_LOAD.s )
            MaxHeight ( 0.0 )
            MinHeight ( -2.2 )
            FreightWeightWhenFull ( 114.1t-us )
            FullAtStart ( 0 )

            Comment ( NEW PARAMETERS! )
            FullBrakeRelayValveRatio ( 1.0 )
            FullBrakeRelayValveInshot ( 0psi )

            FullORTSDavis_A ( 258.5lbf )
            FullORTSDavis_B ( 1.43lbf/mph )
            FullORTSDavis_C ( 0.0504lbf/mph^2 )
            ORTSWagonFrontalArea ( 120ft^2 )
            ORTSDavisDragConstant ( 0.00042 )
            FullCentreOfGravity_Y ( 2.251 ) 
        )
    ) 

Note how I defined the brake shoe force outside of the freight animation block; I don't want the brake force to change depending on the cargo load I want the brake pressure to change instead. Also note that -15 psi inshot, that's typical for American freight cars when empty (remember that "negative" inshot allows pressure to increase to the setting, but then stops increasing until the relay valve provides sufficient pressure to overcome the setting).

For static freight animations, the empty state will use whatever parameters have been set elsewhere in the wag file, but you can still use FullBrakeRelayValveRatio and FullBrakeRelayValveInshot in the FreightAnimStatic block.

#673 User is offline   Traindude 

  • Foreman Of Engines
  • Group: Posts: Contributing Member
  • Posts: 767
  • Joined: 17-November 13
  • Gender:Male
  • Location:Seattle, WA
  • Simulator:Open Rails
  • Country:

Posted 14 May 2024 - 02:23 AM

I like what I'm hearing so far, but as I started to retrofit the tender for my one-piece Challenger with the necessary parts, there's one issue that remains -- hierarchies.

Depending on the equipment in question, the levers and rods can be either attached to the vehicle main frame (MAIN) or to a truck (BOGIE). However, for levers and rods that connect a body-mounted component to a truck-mounted component, which part do you parent it to? The body or the truck?

#674 User is offline   pschlik 

  • Conductor
  • Group: Posts: Contributing Member
  • Posts: 487
  • Joined: 04-March 15
  • Gender:Male
  • Simulator:OpenRails - Unstable
  • Country:

Posted 14 May 2024 - 05:40 AM

Whatever looks most convincing. I'm not about to implement inverse kinematics to handle flawlessly connecting rods and pins so there will be clipping or separation in some circumstances.

But I would figure the most visually appealing approach for the rigging components you are thinking of is to attach them to the main body. The thing to consider is that people are more likely to see a rod moving in a way that makes no sense (eg: rotating with the bogie and sticking out of the frame) than they are to notice a rod not moving when it should move.

#675 User is offline   Traindude 

  • Foreman Of Engines
  • Group: Posts: Contributing Member
  • Posts: 767
  • Joined: 17-November 13
  • Gender:Male
  • Location:Seattle, WA
  • Simulator:Open Rails
  • Country:

Posted 14 May 2024 - 09:45 AM

View Postpschlik, on 14 May 2024 - 05:40 AM, said:

Whatever looks most convincing. I'm not about to implement inverse kinematics to handle flawlessly connecting rods and pins so there will be clipping or separation in some circumstances.

But I would figure the most visually appealing approach for the rigging components you are thinking of is to attach them to the main body. The thing to consider is that people are more likely to see a rod moving in a way that makes no sense (eg: rotating with the bogie and sticking out of the frame) than they are to notice a rod not moving when it should move.


Understood. Maybe save the IK stuff for the new shape format discussion, but eventually it'll make animating our models a whole lot more realistic.

#676 User is offline   ATW 

  • Engineer
  • Group: Posts: Contributing Member
  • Posts: 659
  • Joined: 07-January 13
  • Gender:Male
  • Simulator:MSTS Open Rails
  • Country:

Posted 04 June 2024 - 08:53 AM

This new brake animation is great to have and am starting to like an slowly equip my stock with them. Brake Cylinder spring pressure also plays a good role in this animation. Instead of 4 animations I just use the 0 an 1 and still get smooth results. The higher the last number frame is the shorter the piston travel is. Have not tried the handbrake yet as I am trying to make a good 3d shape or texture for animating chains an latch.

Not big of a deal but multiple key animation for a smoother look don't animate well and decimal key animation don't work.

#677 User is offline   pschlik 

  • Conductor
  • Group: Posts: Contributing Member
  • Posts: 487
  • Joined: 04-March 15
  • Gender:Male
  • Simulator:OpenRails - Unstable
  • Country:

Posted 04 June 2024 - 10:21 AM

View PostATW, on 04 June 2024 - 08:53 AM, said:

Not big of a deal but multiple key animation for a smoother look don't animate well and decimal key animation don't work.

I think there's some more I can do to make things smoother, and at the same time probably fix decimal keys (I think the current code treats the keys as if they were numbered 0, 1, 2, 3...etc regardless of what you actually typed in, which is why you are getting best results with just a 0 key and a 1 key). Probably something I would have noticed if I actually knew 3D art and animations.

#678 User is offline   ATW 

  • Engineer
  • Group: Posts: Contributing Member
  • Posts: 659
  • Joined: 07-January 13
  • Gender:Male
  • Simulator:MSTS Open Rails
  • Country:

Posted 04 June 2024 - 11:41 AM

View Postpschlik, on 04 June 2024 - 10:21 AM, said:

I think there's some more I can do to make things smoother, and at the same time probably fix decimal keys (I think the current code treats the keys as if they were numbered 0, 1, 2, 3...etc regardless of what you actually typed in, which is why you are getting best results with just a 0 key and a 1 key). Probably something I would have noticed if I actually knew 3D art and animations.


Yea when I have a decimal as the final frame the Cylinders an Shoes on release is still set out instead of released. With 0 an 1 frames set it seams too much animation half out on a minimum set instead of say 1/4 travel but still smooth. But till then I'm stuck now on the physics side of Brake Cylinder pressures this railroad charts down in their books and am very close to the goal by few pressures.

I am using TSM an manually change the key frames eliminating 0-3 to 0-1 even though whole model has 8 frames for other animations. Later I plan to convert to Blender from scratch.

#679 User is offline   pschlik 

  • Conductor
  • Group: Posts: Contributing Member
  • Posts: 487
  • Joined: 04-March 15
  • Gender:Male
  • Simulator:OpenRails - Unstable
  • Country:

Posted 04 June 2024 - 05:28 PM

Alright so MSTS shapes straight up didn't support decimal animation keyframes, entering in a decimal just rounds down to the nearest integer (in your case, I guess that was zero). Thanks for checking my assumption there, would not have known that didn't work. To account for that, the keyframe values used need to be multiplied, which will break any existing brake animations. I see that some 3D cab views have selected keyframe value 0 for 0% and keyframe value 8 for 100%, so I'll do something similar here. Keyframe 8 will represent the state where brake shoes touch the wheels, 10 will represent the travel at 50 psi, and 16 will be the true maximum (at 200 psi ish) (ie: multiply the numbers I previously said by 10).

This now means that keyframes at 0 and 8 (rather than 0 and 1) are the minimum you'd want to use. Additional keyframes can be added in between 0 and 8 for fine tuning, and between 8 and 16 if you want to show brake cylinder motion beyond a minimum application.

#680 User is offline   pschlik 

  • Conductor
  • Group: Posts: Contributing Member
  • Posts: 487
  • Joined: 04-March 15
  • Gender:Male
  • Simulator:OpenRails - Unstable
  • Country:

Posted 16 June 2024 - 12:41 PM

Have you tried the brake animations again in the last week? I've got a long vacation coming up at the end of this week and I'd like to tie any loose ends with this change before then.

  • 71 Pages +
  • « First
  • 66
  • 67
  • 68
  • 69
  • 70
  • Last »
  • 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