Automated computer control chapter 3 - Advanced blocks.In this chapter, we'll look at ways to divide a layout into blocks. Dividing the layout can be a rather daunting task, especially if you already have an existing layout. If you're still planning a layout, you can keep the blocks in mind when designing the layout.
Before you decided how to divide a layout though, you need to decided which directions trains run, and whether some or all blocks should allow for travel in both directions. You will also need to decide on the method of detection you want to use, as well as how secure you want this detection to be.
The most common method of detection in a 2-rail scenario, is to check for a change on the tracks. Usually, there's no current flow between the plus and minus. However, if for example a locomotive drives on the track, there'll be a current flowing from plus through the motor to minus. What we then do, is to connect a device to the minus to detect when there's a current flowing. When there is a current flow, the device will know something is occupying the track.
So, when dividing the layout into blocks, we only add plastic rail joiners in 1 rail, rather than both. Instead of plastic rail joiners, you can also just cut the rail where you want a block section to begin or end. Below is a very basic diagram:

Now that we know how to create basic blocks, we need to look at brake and stop sections. These sections are contained within each block. For example, if a block only has 1 section in total, and a train needs to stop in that block, the train will start braking using a certain deceleration, and then come to a stop. You can't control exactly where it comes to a stop though. It might stop way before coming to a signal, or it might stop just past the signal. There are programs that can calculate the braking distance based on locomotive speed and length of a block, but driving characteristics of trains change over time, so it's not a reliable method in the long run. Some decoders also have constant braking features built in, but this will cause the same problems as calculating the distance by a program.
To solve this, and to make sure a train stops pretty much exactly where we want it to stop, we create brake and stop sections within a block. A brake section is a section where the train slows down to a crawl, but doesn't come to a complete stop. Only at a stop section will it stop. Below is a diagram:

So, a train enters a block at say 120 km/h. In the previous block the distant signal indicated the driver should expected a stop sign. The moment th train enters the brake section, it'll start slowing down to for example 20 km/h (usually you can set the "crawling speed" of a locomotive in the program used to control the layout). When it gets to 20 km/h but hasn't arrived at the stop section yet, it'll continue at 20 km/h until it does. When it arrives at the stop section, it'll decelarate and come to a complete stop. If it arrives at the stop section before having decelerated to 20 km/h, it'll still decelerate all the way to 0.
In terms of feedback to the computer program, this means that we need at least 2 detection points for each block. The program needs to know when a train enters the brake section, so it can decide whether or not the trains needs to decelerate, and it needs to know when a train arrives at a stop section, so it knows exactly where to halt the train. The problem however, is that with 1 brake section and 1 stop section, the train can really only travel in 1 direction. Should it drive in the other other direction, it'll first come across the stop section, and then the brake section. To solve that, we add a brake section on both ends of a block as seen below:

Obviously, this is getting expensive, and is starting to require a lot of wiring. If the program supports is, you can leave out the brake section (and the detection of it), and instead the train will start decelerating the moment it enters the first stop section, and stop when it arrives at the 2nd stop section. The program will decide which direction the train is running in based on from which block to which block the train is traveling. The problem with that is that you have no detection in parts of a block. Should a train loose several cars on that section, the program won't be able to figure that out.
So, you have multiple options:
- 1 section per block and let the program/decoder decide braking distance.
- 1 brake and 1 stop section per block, only allow for 1 way traffic.
- 1 brake and 2 stop sections per block, travel in both directions.
- 2 stop sections per block, travel in both directions with limited detection.
I'm going to a combination of the 2nd and 3rd options. If I'm certain some blocks only have 1 way travel I'll go for 1 brake and 1 stop section. Any other block will get 1 brake and 2 stop sections.
With that out of they way, we need to decided where to divide the layout. This is mostly just a matter of experimenting and trying things, but there are 2 major guidelines:
- A block needs to be at least as long as the longest train that will be traveling through the block.
- Turnouts should NOT be included in a block.
There are exceptions to the first guideline, for example an express train that doesn't need to stop at a local station could theoretically be longer than the station block. However, the controlling program specifically needs to support this one way or another. For example, the program should be able to allow you to say that a certain type of train in a certain block number should stop unless the next long block is free. That way, if the short block is occupied, the express train will halt before the short block, and will only continue when the next long block is free.
As for turnouts not being in a block, the reason for that is that you don't want turnouts to be "occupied" because a block is occupied. In certain situations it'll keep trains waiting for the block (and thus the turnout) to be freed, while if the turnout would've been outside the block, a different train could've run through the turnout. You can still add detection to turnouts though, so you can see when there's a train on a turnout, just don't add them to blocks. In the following image for example, the turnout is part of block 2. Even though the train on block 2 isn't occupying the turnout, the turnout is still unusable for the train in block 1. A better solution here would be to have block 2 end before the turnout, and leave the turnout outside of any block. That way if the train in block 2 would have a 5 minute scheduled stop, the train in block 1 can still drive through the turnout.

Also, as mentioned before, a good guideline is to think of a block as a piece of track in between 2 signals. If you have a layout design sketched on paper or drawn on the computer, you can add signals where you think they'd be appropriate, and then base your blocks on that. There are really no rules how you should divide the layout, so its difficult to explain. The following are a few examples of various situations and how I personally would divide those into blocks.

The first plan is a simple oval with a siding and traffic in 1 direction (clockwise in this case.) I've drawn this one a bit big and added green circles to indicate where to isolate the track (remember, 1 side only ;)) I've also added indicators where a block starts and where a block ends. I've only done this in the first image, you can try and puzzle it out yourself for the others ;)
The blue section in each block is the brake section. The orange section is the stop section. As mentioned, the train will enter a blue section, the program will register this and start decelarating the locomotive. Once it reaches its minimum "crawl" speed, it'll continue at this speed until it reaches the stop section. Again, the program will register this, and then bring the locomotive to a smooth stop.
The grey sections are sections that are not included in a block, however they can (and maybe should) still have an occupancy detector connected to them, in case a locomotive stalls there, or looses a car for example.

This plan is similar to the first one, except it adds a 2nd siding. Traffic is still only clockwise.

Plan 3 is like plan 2, except this one allows traffic in 2 directions in every block. This means that now each block has a stop section on either end.

Plan 4 is slightly more complicated. We have a double loop with the inner track going clockwise and the outer track going counter clockwise. All blocks of the outer loop are meant for traffic in only 1 direction. However, blocks 1 and 2 in the inner loop allow traffic in both directions.
Think of the inner loop as a local line and the outer loop as a shinkansen line. Blocks 1 to 4 would be a train station. The local train is only allowed to use tracks 1 and 2. The shinkansen normally only uses tracks 3 and 4. However, in case of emergency, the shinkansen can use tracks 1 and 2 as well.

Plan 5 is a fairly typical setup for a small shinkansen station. To the left and right of the double crossovers you'd just continue with blocks the same way as the other plans.
There are a few special situations as well. For example, certain train stations have platforms that are long enough to fit 2 local trains or 1 express train. This track could be divided into 2 blocks for the local trains, but again the program would need to have features so that an express train can drive in and stop in the 2nd block rather than the first. Some blocks should also allow you to override their occupied status for situations where you're manually shunting or where 2 trains should connect to eachother.
There are also terminal stations, where the tracks are driven on in both directions, but they still only need 1 brake and 1 stop section considering the trains will only ever stop at 1 end of the block.
In general though, no matter the situation, setting up blocks is quite straightforward. The best thing to do, is if you already have a digital system, pick up a few occupancy detectors and download a trial version of a computer control program and play around. I can recommend Railroad & Co Train Controller (
http://www.freiwald.com/) due to a fairly easy learning curve to get a basic oval with siding up and running.