First JMRI post
It will be a multi-part posting as well as I get time to document my progress.
To start, I needed a good but simple example to work with. With the key values of ‘good’ and ‘simple’, I knew that Lance Mindheim would probably have something I could use. He has been advocating simple track designs for operations for a while now. So, I found a good idea in his blog posting from September 17, 2012.
I like this example because it has only one industry (a bakery) but a variety of cars (hoppers, tank, box) and only one train to service it.
This blog entry assumes that you have read the JMRI operations tutorial and web pages and are mostly familiar with filling in the various forms.
Starting Small
The Operations menu in JMRI indicates the order of the steps you should take when starting out, namely: Settings, Locations, Cars, Locomotives, Routes and Trains.
Settings
I give the railroad a name of ‘Lance Mindheim – Bakery’, set the trains to travel East/West and check the box next to “Add Operations Menu to Main Menu”.
Locations
The first thing I did was analyze track plan in Lance’s blog. In JMRI terms, we have a location named ‘Bakery’ that can accommodate up to 10 cars – 1 grain hopper, 4 tank cars and 5 box cars. Assuming each car is a maximum of 50 feet, the spur must be longer than 500 feet. I’ll make it 600 feet for now.
I added the “Bakery” location as follows:
The JMRI Operations document recommends adding two interchanges when starting out. Since the bakery is service by a ‘turn’ train (one that leaves a yard, services some industries and then returns to the yard), I will set up the interchange as the cassette mentioned in Lance’s blog post.
Since, the recommendation is for two interchanges, I will model that by having two interchange tracks in my cassette.
A note about names in JMRI: If you have a hyphen followed by a number in a name, the hyphen and number and any following text will not show up in the reports or switch lists. For example, the name ‘Cassette-1’ will show up as ‘Cassette’ in the switch lists.
I added the “Cassette” location as follows:
I added the ‘Diesel’ rolling stock to this location because I want the train engine to arrive on the cassette.
Cars
To start simply, I will have one car – the Grain Hopper available. I will add it to the Cassette-1 track and set it to Loaded.
Locomotives
I will have one locomotive – a diesel – also located on the Cassette-1 track.
Routes
The route is very simple: it starts from Cassette, travels west to Bakery and then travels east to Cassette. I will call this the ‘Bakery Turn’.
Trains
Finally, I can set up a train to run along the Bakery Turn route.
Generating the Train Manifest
Finally, I can try to generate a train manifest! Before I do, however, I want to check the ‘Build Reports’ and ‘Preview’ boxes so that I can see what actions JMRI operations is performing.
Now I press the ‘Build’ button. The button changes from ‘Build’ to ‘Preview’ so that I may look at the build report and switch list generated. Pressing the ‘Preview’ button presents two new windows: the “Train Build Report” and the “Train Manifest”. Looking at the Train Manifest first, it looks like JMRI Operations did what I wanted.
It says to pick up the grain hopper from the Cassette and drop it off at the Bakery but, wait a minute! What engine are we supposed to use? Maybe the Train Build Report will tell me something.
It says that the train does not require any locomotives. Not exactly what I had in mind… The ‘Edit Train’ form has a section named ‘Optional train requirements’ where the number of locomotives is currently set to 0. Let’s set that to one and see what happens.
In the ‘Trains’ form, select the radio button labeled ‘Reset’ and then select the ‘Reset’ action for the train. This will reset the Function to ‘Build’. I reset and then build the train again.
That’s more like it. The engine is picked up from the Cassette and returned to it at the end.
Now that the preview looks good, it’s time to tell JMRI that I have moved the cars. I select the ‘Move’ radio button in the Trains form and then click on the ‘Move’ Action for this train.
The train is now reported to be ‘In route’….
I push the ‘Move’ Action button again…
The train now has no cars. Where did the cars go? Checking the Cars form shows me the following:
So, the grain hopper has been dropped off at the Bakery.
Notice that the train has not terminated its journey. Press the ‘Move’ action button again.
Now the train is terminated. Checking the Locomotives form shows me the following:
So, in summary, I have created two locations: Bakery and Cassette, loaded the Cassette with an engine and a grain hopper car, created a route between the Cassette and the Bakery and then scheduled a train to run over the route.
The train picked up the loaded grain hopper and dropped it off at the Bakery and then returned the engine to the Cassette.
In the next section, I will add the other car types to the mix.