Blocks

I'm writing this piece to explain how blocks work in this system.  It is radically different to traditional blocks.

My understanding of a traditional block is that it is a physical piece of track, probably with a sensor at each end.  Train goes in, block is locked, signals react.  Train comes out, block unlocks, signals react.

On my system, the blocks are entirely a feature of software.  The track so far is divided up into "pieces" and some of those pieces are grouped into blocks.  Most are not - blocks containing multiple pieces are quite rare on the setup.

It's all software defined, there are no PHYSICAL blocks.  A block does not need a sensor at each end.

To illustrate this - the track currently has over 200 pieces, most of which are individual blocks, yet only 58 sensors.

How does this work?   Well, the software is constantly simulating where the train is, and uses the sensors only as a cross check.  Therefore a block can be defined somewhere a sensor doesn't even exist, and the software just works out where the train will be.  The more sensors, the more accuracy that's achieved.

The software spits out statistics.  These are a bit false, because they include the track in the little room I haven't laid yet, but here they are anyway:

285 Pieces of Track
162 Metres of Track
48 Points
58 Sensors
12 Arduinos
14 Locos

Comments