Roster Speed Profiling

The Speed Profiling tool is designed to create a profile of a loco at various speed steps to help with the automatic running of a loco within JMRI using either DispatcherPro or Warrants.
Primary goal is to help getting a loco to stop within a specific distance using a known Throttle setting.

The tool is accessed through the Roster -> Speed Profiling menu item.
It works on the principle of timing a loco over a known distance at a given speed step, in both the forward and reverse direction. Currently it requires three sensors which monitor the occupancy around a section of track. Ideally the section of track that the timed runs are performed over should be straight, and a minimum of 1 Meter long; the longer the length the better the result. For this profiling to work correctly, acceleration/deacceleration should be disabled in the loco decoder.

Speed Profiling pane in in JMRI 4.12


To profile the loco, fill the above details into the pane, place the loco in the starting section facing forwards towards (but not on) the track Block that the timed run will be taken over, then press [Start].

Speed Profiling Setup

What happens is that the tool will set the loco off running in the forward direction at speed step 1, when it activates the timed section sensor it starts a timer. Once the finish section sensor is activated the timer is stopped, and the speed is calculated in Millimetres per Second, this is then recorded against the roster. The tool will then ensure that the loco is clear of the timed section sensor, then repeat the procedure again but in the reverse direction. Once the loco is back at the initial start section, the whole procedure is repeated again for the next speed step, this occurs until a profile of all speed steps has been completed.

Profiles can be made with fewer speed steps by choosing the steps to start and end on, and how many steps to increment to the next sampling step. When a starting step is larger than 4 be sure to place the loco in a position that will allow it to achieve full speed before reaching the block sensor.

The "Save Merged" button combines and saves whatever profiling has been done with the existing speed profile in the Roster.
The "Save New" button overwrites any existing speed profile.
The "Clear New Data" button disards the most recent results, allowing you to test after a less successful try.
Click "Delete Current Profile" to remove any Speed Profile from the Roster entry.
"Save Sensors" is handy to store newly added Sensors to your configuration file.


Having completed the profiling, it is possible to test a Profile. Place the loco in the starting Block again, facing forward toward the timed Block, ideally some distance away from it. Enter a starting speed number in the Test Data - Step box, then press [Test].
What will occur is that the tool will set the loco off running at the given speed step over the Test Block, stop and reverse at the same Step. Measured speed will be reported in the Forward and Reverse boxes.
Results will vary especially at the higher speed steps, where you will more likely experience an over run.

Speed Profiling Setup


Click one of the buttons in the View area to open a table showing the profile values for either the New Profiling results, Current stored in the Roster or a combination of both. Cells in the table contain the speeds attained by the loco for each throttle step in both directions.
The default speeds are in millimeters per second as measured layout track speed. These values can be converted to scale speeds by selecting either of the "Miles/hr" or "Kilometers/hr" (per Hour) radio buttons over the table.
The Factor column is the ratio of track speed (mm/sec) to throttle setting (from 0.0 to 1.0).
In the example (using simulated timings) cells with unexpected (non-incrementing) values are marked in red. Such cells are editable to correct the value or the whole row for that step can be deleted. Normally the red instruction will not display.