I'm building a DCC-based railroad. In addition to the usual "invite a bunch of friends over and have an operating session" control, I'd also like to have the ability to have a computer do some things. One movement in particular that I thought I would want to do is to automatically have an off-layout freight come from hidden staging into the arrival tracks of my major classification yard. After thinking about this for a few minutes, it occurred to me that I would probably need three blocks for each arrival track that would receive a train. These would consist of one major block in the middle for general occupancy detection for that track and two small blocks, one at each end, to determine when to stop the train. For example, the arrival track would look like:
===== ========================================== ===== (Blk1) (Blk2) (Blk3)
When a train entered the track, say, from the left, I would know to stop the train when either Blk3 was entered (point engine hit it) or Blk1 was vacated (caboose cleared it). Of course, I'm assuming somewhere else I figured out the track was long enough....
So, now my question: Is this necessary? This is a lot of blocks. Seems like you have similar problems in staging and also at junctions where meets will occur. You'd sort of like the waiting train to wait at the signal, not just somewhere in the block. That implies another short block near the signal to detect and stop the train.
The only other possibility I can think of is to do it based on timing. With back-EMF decoders and some additional software, you can probably get there from here, but I'm not sure how reliable/repeatable that solution would be.
Anybody else have other approaches?
thanx,
V