Railroad Turntable


Until recently, my collection of model trains consisted mostly of shinkansen, other passenger trains (diesel and electric), and light-rail trams. That changed when my wife decided she really liked the pictures in a Japanese railfan magazine of the SL Banetsu Monogatari (SLばんえつ物語), a “joyful train” (excursion train) which usually runs between Niigata (Niigata Prefecture) and Aizu-Wakamatsu (Fukushima Prefecture). She asked me to try to find an N gauge model of the train for our collection. I succeeded during my October 2017 trip to Japan, picking up a model of the same locomotive, the C57, as well as a set of five red passenger coaches (she likes red).

Things steam-related didn’t stop there; days later during the same trip to Japan, I spent a couple of days in Tochigi Prefecture, where I discovered another steam-powered “joyful train”, the SL Taiju (SL大樹) . The SL Taiju runs between Shimoimaichi and Kinugawa Onsen stations on the Tobu Railway. The train is pulled by a C11 locomotive with an assist by a DE10 diesel locomotive helper engine at the rear. I didn’t get a chance to ride this train as I had done in 2015 on the SL Ginga (SL銀河) in Iwate Prefecture, but I did get lucky enough to be at the Kinugawa Onsen station to record the locomotive being reversed on a turntable for its return run down to Shimoimaichi.

Once I returned from Japan, I did a bit of shopping and located most of what I need to model the SL Taiju in N gauge, specifically a C11 locomotive, a YO8000 series guard van, and three blue coach cars. I left off the DE10 diesel helper because I don’t want to have locomotives at both ends of the train trying to drive it; the cars in between would either be pulled apart or pushed together from both ends because the locomotives would almost certainly be mismatched in speed at any throttle setting. And I doubt I could find an unpowered dummy diesel engine, there’s no market for that as far as I know.

Modeling the turntable

When members of our model railroad club (Japan Rail Modelers of Washington DC) recently discussed expanding our inventory of T-TRAK modules, I thought this would be a good opportunity to finally make use of a Peco N-gauge turntable and stepper motor which I’ve had in a box for many years. I picked up a KATO 3-stall roundhouse model to use with the turntable, and am now designing the turntable’s drive mechanism.

KATO actually sells a nice N-gauge turntable and accessory tracks which are directly compatible with their Unitrack line of snap-together track… but it is a bit pricey and is designed such that the rails are elevated above the surface holding the turntable. The Peco turntable I have is designed to be installed in a 6.1 inch (151 mm) hole, putting the rail heads at about the same height as those on Unitrack. I’ll need to make short transition tracks to go from the rim of the turntable to the track sections inside the roundhouse, but that’s not a big deal.



Drive mechanism

The simplest way to precisely position a turntable is to use a stepper motor. A stepper motor allows continuous rotation and precise positioning, as long as it is driven properly to avoid “skipping” steps by trying to step it too fast or with too heavy a load.

The stepper motor I will be using is a 5-wire geared stepper with 513 steps per revolution. This particular device is available both in 5 volt and 12 volt versions from Adafruit.com; I will be using the 5 volt version.

The drive mechanism will be a toothed belt going around two pulleys with a 16:1 gear ratio. The smaller gear is a commercially available 18-tooth aluminum gear which will be mounted on the motor shaft. The larger gear will be a custom 3D-printed gear with 288 teeth, mounted on the turntable axle.

According to the Adafruit website, the maximum recommended rotation rate for the geared stepper motor is around 6 RPM. A little internet research found that typical real-life turntables take around 2 to 3 minutes to reverse a locomotive (a 180° rotation); anything faster is considered unsafe. This would put the maximum speed at around 4 minutes per full rotation or 0.25 RPM. With a gear ratio of 16:1, the stepper motor would need to turn 16 times faster, or 4 RPM, so this easily falls within the operating range of the stepper.

If you want more detail on how the motor and gears were selected, you can find it here.

Position indexing

One important detail I should point out is that the turntable mechanism needs to know where the access tracks are located. This means when the turntable controller, an Arduino-class microcontroller, powers up, it needs to find some fixed reference position on the turntable. Once it locates that position, it can use a stored list of positions relative to the reference to align the turntable with each desired access track.

Some designers suggest that the controller store the current position every time the turntable is moved. This doesn’t work well for a few reasons.

  • Values stored in the microcontroller’s RAM storage are not preserved when the power is cycled on the controller. And they’re not guaranteed to start with predictable contents when power is turned on.
  • Values can be stored in the controller’s EEPROM storage which will be preserved through power cycles, but it’s not good practice to repeatedly write many times to any given memory location. EEPROM devices can only be rewritten so many times at each address (admittedly, it’s in the ten-thousands of times) before the EEPROM will not take new data.
  • And none of these take into account that the turntable might be moved manually while the controller and the stepper motor are powered down.

Instead, I will be equipping the turntable mechanism with some form of optical sensor, so that the turntable when powered up will rotate until the sensor is found, then all access track positions will be measured relative to the optical sensor. I have a few sensor designs in mind, keeping in mind that with the motor and gears I’ve selected, the turntable will have 513 ⨯ 16 or 8208 distinct positions, so I will need to identify the reference position with accuracy of about 0.04 degrees. This will be tricky, to say the least. This will be one of my research projects for the near future.