To allow a train to move from the area of one command station to that of an other, an appropriate section of track is simply switched while the train is moving in this section. This can be noticed as little as moving from one booster district to another. At least as long as the new command station doesn't send significantly different data. With the manual switch this was achieved by plugging the throttle in the net of the new command station and with the automatic switch the LocoNet Gateway does this task.
The automatic switch needs to detect trains approaching either of the gaps between the switched section and adjacent permanently assigned sections, to set the switch to match this gap. To detect trains coming from outside of the switched section and trains coming from the inside as well, sensors are needed inside and outside of each gap.
Obviously the switch can't be set to match both gaps. Therefore operation has to be set-up in a way, insuring that there is only one train in the area of the switched section ant the associated sensors. In most cases this is the area between the yard limits (Ra10 boards in Germany), which then have a technical reason as well. Also during the free running between sessions two trains may not just follow each other on sight.
The sensors used are inductive current detectors. These offer galvanic insulation between track power and the switching circuit and a negligible voltage drop. To avoid special installations in the modules, the current detectors are simply inserted in the connection between modules, making the whole module the sensed section. It doesn't matter in which of the two wires the sensor is inserted, allowing in cases, where the rails have direct contact on one side, to place the sensor on the other side.
Figure 2 shows the different sections. Section "A" and "B" are always powered by the left command station, sections "C", "D" and "E" are switched between the command stations and sections "F" and "G" are always powered from the right command station. If either of the two sensors "S" on the left side detects an engine or driving trailer in sections "B" and / or "C", the switch is set for the left command station. The right side is switched in the same manner, if some rolling stock drawing current is detected in sections "E" and / or "F".
To prevent a train with current draw at its end triggers a request for both gaps at the same time, the longest train should fit between the inner sensed sections, i.e. the section "D" should be at least as long as the longest train. Additionally there are two sensed modules on each side ("B" & C" and "E" & "F"), one on the inside and one on the outside of the gap. These should be long enough that an engine or driving trailer fits on this module, to insure it to be detected. Experience shows that rolling stock is detected even when only some of the current pick-up axels are inside the sensed section.
This results in a total length needed of the maximum train length plus four modules. It is required that the connections can be opened, i.e. the rails don't touch each other. As noted above at the transitions to the sensed modules only one side needs to fulfil this requirement. If there are useful gaps within the modules, both halves of the module may be used like a module, assuming the resulting length of each part is sufficient, i.e. at least the maximum engine length.
However the switch is programmed in a way that even too long train is handled correctly as long as it fits between the two gaps. If requests are detected on both sides, a buzzer is activated. As long as one of the outer sensed sections is occupied, the switched sections will match this side. When at some point in time only the two inside sensed sections are occupied, the switch is thrown just once. This will work only, if there is only one train moving through the section maintaining its direction. With more then one train no useful switch setting is possible – apart from the operational security problems on this line.
The test in Cloppenburg showed that there is no problem with freight trains, if the train is as long as the inner switched section "D" plus the shorter of the inner sensed modules "C" and "E". We took advantage of this at one place in Alsfeld, as there was no more length available and there would have been operational restrictions.
At double track lines a separate switch needs to be installed in each line. The two tracks will not be used synchronously to allow switching them together at the same time.
Initially it was intended that track power switch would switch the throttle from one LocoNet to the other as well. But due to the reasons for the LocoNet Gateway this option is not used. But when it was decided to build LocoNet Gateways, the track power switches were already built and therefore the switch for the LocoNet is included in both hardware and software.
With this simple switch the throttle may not just switched with all its connections from one net to the other, but power needs to be removed for a short moment to force the throttle to reconnect. Therefore this switch requires two relays. Also the required timed sequence supported the decision to use a micro controller. This allows to makes the switch more intelligent, then controlling the relays directly by the sensors.
If the old switch of the LocoNet is not needed, some parts may be omitted, especially the relays K2 and K3. If the LocoNet sockets are omitted, work on the case is saved, but it is more difficult to solder the LEDs in the correct position.
The LEDs D1 and D2, the lamp sockets L1 and L2 and the switch S1 are never used. These parts were for tests only and are only built into my first unit. The corresponding holes in the case lid are missing as well.
|Circuit||Circuit diagram Rev.0.3|
|Layout||Tracks top side|
Tracks bottom side
Tracks bottom and top side on one page
|Placement||Placement top and bottom side full page size each|
Placement bottom and top side on one page
|Parts||Part list for ordering|
including notes for additional order for the eighth unit.
|Integration||Drawing of the case|
Building the case
The software is so trivial that there is no need for a real project. As a training example for the AVR programming I wrote it in Assembler. The Hex file is assembled for use with the internal 1 MHz oscillator.