My current N-Scale layout design was started ten years ago. All track was laid with both track's insulated between each block. Block length varies between 15 centimeters and 2 meters. The shorter ones are used on intersecting tracks mainly entering and leaving stations. Mainline track are mostly insulated between every second flex-track. Currently many physically insulated blocks are combined into one. This makes it easy to introduce more blocks later.
My railway measures 2.8 meters in length and approx. 80 Centimeters in Width. It has basically Two stations one lower and one up in the Mountains. Between them a double track mainline of approx. 12 Meters.
Upper Station Area
There is a hidden loop close to the upper
station that makes it possible to run more trains than it is possible to turn on
the upper station. This upper loop also hides an unloading track for Fleischman
automatic unloading wagons. In addition there are storage capacity for up to
three trains. Upper stations is not finished yet (only one track at the moment)
but the plan is for four passenger tracks, and a small engine facility with a
Fleischman turntable. I also have plans for a short single track line to a small
mining company close to the upper station.
Lower Station
This is the main station. Trains arrives at the
visible part of the layout from a hidden storage loop and enters the station
from the left. There are four tracks with passenger platforms. Passenger trains
arriving with Electrical engines must change engine to Diesel or Steam. There is
one engine house with a total capacity of six Diesel or Electric Engines. Steam
engines are stored in a hidden track connected inside an Engine House. There are
three tracks dedicated to loading and shifting of Fleischman automatic unloading
wagons.
Currently control system has been implemented on the mainline between stations, with two blocks for each track. Upper Loop has one block controller, and lower station has three block controllers. All mainline turnouts on lower station has been added to the system. This makes it possible to automate Trains leaving lower station - running mainline to upper reverse loop and returning to lower station via main line.
History of Control SystemMy basic idea was to use TTL logic circuits to control trains. The logic was hardwired into the circuitry and after some experimenting I decided something else had to be done. I started experimenting with my Commodore VIC 20 and Later Commodore 64.
Turnout Control
Model Railroader had an article about Turnout
Control from a PC a couple of years ago. This was the basic of my system.
However I decided to simplify the Hardware and move as much logic as possible
into software. This could be done by building a Custom 8080 computer. Then I
read some articles about PIC Controllers, and decided for a design with PIC
controllers. However The initial cost of starting development with PIC
controllers was to high. I therefore started development using the single
Parallel Printer Port on my PC (At that time a PS/2 386) A single block Speed
controller with 32 steps was developed and tested. Later a driver circuit for
four Turnouts was developed. Both of them required a 8 bit parallel Port. Next
task was to build decoder circuits to make it possible to connect multiple
blocks and Turnout to a few parallel ports. My current design for switching
(version 3) are able to control 64 Turnouts from one single 8-bit parallel port.
If you would like to try building any of my circuitry, I would suggest that you
try this one first. Why ?
Next task was block controller.
My block controller has a lot of
functionality on a single circuit board
(Updated June 1998) So far I have built controllers for eight blocks. I did have some electrical noise problems especially with Roco Engines. This has now been solved. Current design integrates four block controllers into one single 10 x 15 cm circuit board. Unfortunately, you will need two eight bit ports for this design (This will support up to 255 blocks, but current software driver only supports eight blocks). In addition you will need one 8-bit port for every eight block for train detection. (current driver only supports 8 detectors) This could of course be multiplexed but I need very fast signaling. Current design will check for trains 18 times each second. This should make it possible to write software that will compensate for dirty tracks by temporary increasing track voltage when inconsistent signaling indicates dirty tracks. It should also make it possible with automatic routing of track cleaning trains.
UPDATE JANUARY 1998
I have added five more block controllers (one single
block controller and one four block controller This is the basis of my
automation scripts as documented
Uncoupling Tracks
Driver for uncoupling tracks has been designed
and installed for 8 tracks. (this is actually my first design for turnout
control. Design will be documented in a couple of months.
Infra Red detectors
Optical detectors are needed for precision
switching and counting of equipment in trains. This will be used at uncoupling
tracks. A more advanced detector will probably be used for equipment
identification.
Fast Clock
Currently this is implemented only in software. I will
design interface for LED or LCD displays. I have also built a small Visual basic
application to view the clock in Windows.