Skip to main content

Is it possible to wire a loop divided into blocks such the transformer (or throttle) controlling each individual block moves as the train moves from one block to another.

 

Obvious CC is the answer.  I am interested as a way to power my old post-war motive stock.  

 

i.e. could a relay detecting entry of the locomotive into a new block switch the power to the old block to null and the new block to a variable throttle? Assuming there are at least two different throttles connected to the system to control at least two different engines traveling at different speeds [but same direction!!!]

Original Post

Replies sorted oldest to newest

I assume you are trying to have a power supply follow a train as it passes from one block to the next. It can be done, but it is quite a complex wiring job.

 

As an alternative, is it possible to convert older trains to some sort of command control? I know it's very easy to convert them to radio control. I have done it to many of my old locomotives and operating cars.

Originally Posted by Dale H:

I am a bit lost on what you are trying to do. Are you trying to run a command and conventional engine on the same loop? The way you describe things,trains at different speeds would collide eventually,unless you had a block system which shut off the train behind it when it got too close.

 

 

Dale H

You nailed it.  I figured I would have three times as many blocks as engines running on the loop with a train shutting off power to block behind it.  There would be "control" blocks in between each block that would be locations of relays and serve as an electric bridge from one block to the next.  

  

Originally Posted by Arthur P. Bloom:

I assume you are trying to have a power supply follow a train as it passes from one block to the next. It can be done, but it is quite a complex wiring job.

 

As an alternative, is it possible to convert older trains to some sort of command control? I know it's very easy to convert them to radio control. I have done it to many of my old locomotives and operating cars.

It is tempting to not pursue, but I have a foolish notion that one day my layout will be complete and I will simply enjoy buying vintage trains and placing them on the layout to run.  : )

Originally Posted by lckiii:

...

Assuming there are at least two different throttles connected to the system to control at least two different engines traveling at different speeds [but same direction!!!]

Does a particular throttle (voltage level) follow an engine from block to block?

 

So two basic tasks:

 

1. Cut/null power to block following an engine

 

2. Apply constant throttle to a particular engine no matter where it is.  So, for example, Engine #1 always receives power from throttle A.  Engine #2 always receives power from throttle B, Engine #3 always receiver power from throttle C, etc.

 

Do I have this right?  Each engine, when running, would run at a constant throttle/speed (ignoring grades/curves).  And if I have it right the slowest engine would run continuously.  Each of the faster engines would run and stop paced by the slowest engine...so on average all engines would run at the speed of the slowest engine which becomes the pacing engine.

 

If this is what you mean it is a very interesting idea...especially if it automatically adapts to however many engines are running at a given time.

If I understand it right it is complicated but I think it could be done. First with the outside insulated rail method make a conventional block system with relays where the power is cut off to the train 2 blocks behind it. 

 

Then set up a system with reed switches and a twin coiled latch relay where a magnet on the engine latches the relay and switches transformers when the train enters the block and a magnet on the caboose resets the relay when it leaves. The reeds would be side by side but offset.  The other train would not have magnets and not affect the reed switches. Roller jumping might be an issue,you may have to use a modern transformer. It would be better to use one transformer and use a diode dropper as the second throttle. that would avoid the issue somewhat. I would have to think about it some more. 

 

it is a lot easier to just make a block system and run 2 engines with different speed ratios. 

 

Here is a link for 2 engines on a track.

 

LINK

 

It is simpler to do but the trains run only one at a time. 

 

Dale H

Last edited by Dale H
Originally Posted by stan2004:
Originally Posted by lckiii:

...

Assuming there are at least two different throttles connected to the system to control at least two different engines traveling at different speeds [but same direction!!!]

Does a particular throttle (voltage level) follow an engine from block to block?

 

So two basic tasks:

 

1. Cut/null power to block following an engine

 

2. Apply constant throttle to a particular engine no matter where it is.  So, for example, Engine #1 always receives power from throttle A.  Engine #2 always receives power from throttle B, Engine #3 always receiver power from throttle C, etc.

 

Do I have this right?  Each engine, when running, would run at a constant throttle/speed (ignoring grades/curves).  And if I have it right the slowest engine would run continuously.  Each of the faster engines would run and stop paced by the slowest engine...so on average all engines would run at the speed of the slowest engine which becomes the pacing engine.

 

If this is what you mean it is a very interesting idea...especially if it automatically adapts to however many engines are running at a given time.

Yes the voltage for throttle A would follow train A from block 1 to 2 to 3 etc.  Throttle B would follow train B from block 4 to 5 to 6 etc.  Throttle C for train C and so forth.

 

To prevent trains to catching up to each other, traditional block power cutting would also be wired.  i.e. if Train A enters block 3 while train B is in block 4 then Train A's power is cut (regardless of Throttle A voltage)

 

The wiring would get geometrically more complicated with each throttle.  I would limit the number of throttles per loop to the number of blocks divided by three.  

 

What I need is some way of passing a variable from one block to another.  This could be done by the train itself (different magnetic, IR, etc markers affixed to locomotive) or with electronics (more elegant).  I Do not know enough about electronics to know if there is are off the shelf components that could pass the variable (which throttle to connect to) when a relay is triggered.

Originally Posted by Dale H:

If I understand it right it is complicated but I think it could be done. First with the outside insulated rail method make a conventional block system with relays where the power is cut off to the train 2 blocks behind it. 

 

Then set up a system with reed switches and a twin coiled latch relay where a magnet on the engine latches the relay and switches transformers when the train enters the block and a magnet on the caboose resets the relay when it leaves. The reeds would be side by side but offset.  The other train would not have magnets and not affect the reed switches. Roller jumping might be an issue,you may have to use a modern transformer. It would be better to use one transformer and use a diode dropper as the second throttle. that would avoid the issue somewhat. I would have to think about it some more. 

 

it is a lot easier to just make a block system and run 2 engines with different speed ratios. 

 

Here is a link for 2 engines on a track.

 

LINK

 

It is simpler to do but the trains run only one at a time. 

 

Dale H

I was hoping to use a more scalable solution so I could potentially have three trains on the same loop.  I thought there may be a chip that I could use to store and pass information.  The more I think about it, though, the more I feel I am trying to reinvent the command control "wheel." 

First, I assume you're reflecting on Dale H's wisdom in these matters. 
 
I'm taking your idea at face-value and if you're interested in continuing, if only as a discussion, I think it's an intriguing concept irrespective of complexity.
 
 
Originally Posted by lckiii:
What I need is some way of passing a variable from one block to another.  This could be done by the train itself (different magnetic, IR, etc markers affixed to locomotive) or with electronics (more elegant).  I Do not know enough about electronics to know if there is are off the shelf components that could pass the variable (which throttle to connect to) when a relay is triggered.

I think you identified the key.  Re-stating in engineering logic terms, I see this as choosing between absolute or relative addressing. 

 

Absolute would be to read the address of the train itself (bar code, RFID tag, whatever) and translate that to the throttle to be assigned to it. So each engine is uniquely tagged, each block has a reader, each reader output has control logic to select which throttle to switch to the block.

 

Relative would not require unique tagging.  Each block control logic simply looks at the block(s) ahead and switches in the next throttle.  So it sees that throttle N was used on the active block ahead and uses throttle N+1.  When the train leaves a block, the control logic advances by "1" so that the throttles follow the engine.  There are some boundary-value considerations such as getting the pairing correct in the first place.  For example, one engine could have a magnet and one control block logic could see this and reset the order.

 

Either method is probably most efficiently (wiring, cost) implemented with an Arduino-like microcontroller board but that requires programming savvy.  Programming can be a deal-breaker for some.  I think the "elegant" approach using relative addressing could be done without programming.  Unfortunately it would require assembling a custom block-control-logic circuit - one per block.  Each circuit would be the same and cost "only" a few dollars in parts but lots of assembly/soldering so also a deal-breaker for some. 

 

In any case, I think the low-cost relay modules on eBay could be part of the implementation.  For less than $3 (free shipping from Asia), you get a 4-relay module with 10 Amp contacts.  So these could switch in one of four throttles to a block.  Of course it could switch in none of the throttles if a null block.  One of these relay modules would be used for each block.

 

4-channel-relay-module

Attachments

Images (1)
  • 4-channel-relay-module
Originally Posted by stan2004:
First, I assume you're reflecting on Dale H's wisdom in these matters. 
 
I'm taking your idea at face-value and if you're interested in continuing, if only as a discussion, I think it's an intriguing concept irrespective of complexity.
 
 
Originally Posted by lckiii:
What I need is some way of passing a variable from one block to another.  This could be done by the train itself (different magnetic, IR, etc markers affixed to locomotive) or with electronics (more elegant).  I Do not know enough about electronics to know if there is are off the shelf components that could pass the variable (which throttle to connect to) when a relay is triggered.

I think you identified the key.  Re-stating in engineering logic terms, I see this as choosing between absolute or relative addressing. 

 

Absolute would be to read the address of the train itself (bar code, RFID tag, whatever) and translate that to the throttle to be assigned to it. So each engine is uniquely tagged, each block has a reader, each reader output has control logic to select which throttle to switch to the block.

 

Relative would not require unique tagging.  Each block control logic simply looks at the block(s) ahead and switches in the next throttle.  So it sees that throttle N was used on the active block ahead and uses throttle N+1.  When the train leaves a block, the control logic advances by "1" so that the throttles follow the engine.  There are some boundary-value considerations such as getting the pairing correct in the first place.  For example, one engine could have a magnet and one control block logic could see this and reset the order.

 

Either method is probably most efficiently (wiring, cost) implemented with an Arduino-like microcontroller board but that requires programming savvy.  Programming can be a deal-breaker for some.  I think the "elegant" approach using relative addressing could be done without programming.  Unfortunately it would require assembling a custom block-control-logic circuit - one per block.  Each circuit would be the same and cost "only" a few dollars in parts but lots of assembly/soldering so also a deal-breaker for some. 

 

In any case, I think the low-cost relay modules on eBay could be part of the implementation.  For less than $3 (free shipping from Asia), you get a 4-relay module with 10 Amp contacts.  So these could switch in one of four throttles to a block.  Of course it could switch in none of the throttles if a null block.  One of these relay modules would be used for each block.

 

4-channel-relay-module

Can you post an html link for the image.  I googled 4 channel relays and looking at them it seems like they connect to a processor of some kind.  I saw one paired with an Arduino.  Would that be the best type of processor to use for a project like this?  I have more experience with coding (albeit in ancient FORTRAN and ansi C) than with electronics.    

There's another thread describing a problem with pictures on OGR today; I assume that's what you're referring to.  I originally couldn't see my own pic but now it appears so I guess it's been fixed.  Or go to eBay and search "4 channel relay module" and you'll get hundreds of listings with the pic of the relay module.

 

For a 4-channel relay module, there are 4 control lines.  One line activates one relay.  These modules are often connected to a controller module like an Arduino.  But they can also can be connected to discrete logic circuitry. 

 

If you can program in C you are good to go with the Arduino route.  If coming from a "mainframe" programming background (i.e., Fortran) there's a small learning curve to get your arms around real-time programming or how to handle the dozens of inputs (sensing block occupancy) and dozens of output (driving relays) to implement the control in a timely manner.  There's also some fussing to get used to the programming environment where your program is developed/written on the PC but actually runs/executes on another device (the Arduino or whatever).  It's not rocket science and I think there are enough guys on OGR who hopefully will step in if you choose to go this route.

 

Your application is not particularly taxing and pretty much any processor module can handle the algorithm or logic.  What makes it a challenge is the huge number of signals (inputs and outputs) that the processor must handle.  For example, say you have 3 engines, 3 throttles, and 9 blocks.  At minimum you need 9 inputs that detect block presence (1 input per block) and 27 outputs (3 relay control signals per block).  The reason an Arduino might be a good choice is there's a wide selection of interfacing modules (aka "shields") that that attach to the Arduino to provide large numbers of input and output signals; in most cases you don't even need to solder.

 

If you choose the absolute addressing method with some kind of reader for which modules exist for the Arduino.  The reader approach can get expensive since you probably need one per block.  Obviously in the relative addressing method you simply detect occupancy which may not even require electronic but a simple connection.  Consider the recent introduction of the Lionel LCS track sensors which can send back info on what specific engine just crossed the sensor track; each sensor track section is $95 MSRP.  Another recent thread with a related application discusses $25 reader modules sensing $1 tags placed on each engine.

 

There are dozens of variants of the Arduino controller.  A suitable one from the horsepower perspective can be, say, $10-20.  By the time you add the "shields" to give you the requisite number of input and output signals, maybe you're up to $30-40.  So off-the-cuff I'd say your choice to go with absolute addressing or relative addressing is the main driver of cost.

Add Reply

Post
×
×
×
×
Link copied to your clipboard.
×
×