Saturday, February 27, 2021
Movements in the month of Feb
Sunday, October 4, 2020
LM324 Op Amp Wonders
As I have explained in my previous posts on how I operate my layout which is basically from the viewpoint of a locomotive driver calling on shift to do a job from one main town to another main town, both having a crew change stop.
Given the small layout I have, I use the same station area as multiple places that we pass through until arriving at the next main town where this driver gets out and clocks off.
This entails a few laps of the layout. I have settled on two inner laps and then one outer lap where the station is located.
I am always looking at ways to enjoy this small layout. One issue I have with this operation is the changing of points every-time I leave the outer loop/station area to traverse the two inner loops (which represents some distance between stations). Instead of enjoying the layout from different viewpoints, I am called back to the location of the layout where I can change the points, one is operated by a Modertec Lever and the other by a Tortoise Switch machine.
I know I could use a decoder to control both if I replaced the Modertec lever with a tortoise, but that would entail more cumbersome button presses on the throttle. Wouldn't it be good if I could automate this whole concept, namely, for every two passes of the inner loop, the points would change to the direction of the outer loop and every time a train was in the outer loop, the points would change and a path would be made to take the inner loop.
I researched whether this was possible and to my amazement I came across the following schematic that uses the LM324 OP-AM connected to an Arduino Micro-controller!
However I had some major thinking to do in the realm of how to code this. Lucky for me, I had some spare Current Transformers as detection circuits which I had built previously for my signalling project so I could use these as well.
Logic used to construct the code and the different scenarios I had to take into account:
| Tortoise T1 Point near staging | Tortoise T2 Point near station | |
1: Travelling in the UP Direction SW2 HIGH and SW 4 HIGH | T1 | T2 |
| ex staging | ||
| Goes Over detect A0 | HIGH | HIGH |
| Goes Over detect A1 | HIGH | LOW |
| Goes Over detect A1 again | LOW | LOW |
| Goes Over detect A0 | HIGH | HIGH |
2: Travelling in the DN Direction SW1 HIGH and SW3 HIGH | T1 | T2 |
| ex staging | ||
| Goes Over detect A0 | LOW | LOW |
| Goes Over detect A1 | HIGH | LOW |
| Goes Over detect A1 again | HIGH | HIGH |
| Goes Over detect A0 | LOW | LOW |
3 - Travelling in the UP Direction SW2 HIGH and SW3 HIGH | T1 | T2 |
| ex STATION | ||
| Initially Set: using flags in code | HIGH | HIGH |
| Goes Over detect A1 | HIGH | LOW |
| Goes Over detect A1 again | LOW | LOW |
| Goes Over detect A0 | HIGH | HIGH |
SW4/2:Traveling in the DN Direction Can be used as 2! SW1 HIGH and SW3 HIGH | T1 | T2 |
| ex STATION | ||
| Goes Over detect A0 | LOW | LOW |
| Goes Over detect A1 | HIGH | LOW |
| Goes Over detect A1 again | HIGH | HIGH |
| Goes Over detect A0 | LOW | LOW |
MANUAL: When our train takes loop for Cross/Meets SW1 HIGH and SW4 HIGH | T1 | T2 |
| When this SW5 SW4 set to HIGH | LOW | HIGH |
After some thinking and coding, I got to the testing phase and then came the deployment phase. This took about one whole day to get all the toggle switches and wiring set up as well as the wiring from the Arduino UNO and the LM324.
Power was supplied and to my relief I heard one of the Point motors make that crawling sound. Good, now I need to run a train and see if the points set correctly, so I took a Down Goods and as it went over the sensor block of the outer loop, both points changed and made a path for the inner loop! Good!! Now, two passes of the inner loop and again, automatically, both points changed to make a path for the Outer Loop! WOW! Total automation of the points!!! I was ecstatic! Now I can walk round the layout whilst we make the journey from one major town, passing some intermediate towns and then arriving at out crew change location.
LM324 soldered to a veroboard (2 pins from the UNO which is not shown are connected to the LM324):
The only times I need to change points, is when leaving the yard and when re-entering at the end of the journey at the "other" location.
So I now have the signalling of the DOWN section near the station automated, points for the correct path automated, the two automatic signals displaying the yellow aspect and automated. The only section left is the UP side near the station to automate.
The following video demonstrates the LM384 automatically changing the points when the sensor is detected
The opportunity cost of spending all this time spent on the electronics side is that I have not spend any time on scenery. But the winds are full in my sails so I am not going to change course at this point.
Monday, September 7, 2020
More Arduino microcontroller fun
The automatic signals as discussed in the previous post are now controlled by an arduino and display all three aspects. The red aspect is shown whenever a train passes the signal. It will then show yellow for a set period of time, then turn to green. This has been done for both the UP and DOWN signals
The main station and yard is governed by an UP Home Departure signals and an Arrival Home Signal with a LOW speed indicator as per the prototype. The LOW speed signal is used to bring in trains into the yard with a reduced speed as there could be obstructions/wagons on the same track.
I was able to use the one detection circuit for both the Approach Home Head and the LOW Speed Head - so that made the LOW Speed detector circuit surplus. Another bonus of using the Arduino.
I spent the last two days re-wiring everything on that section of the layout and also took the opportunity to label the wires!
Now, I have these sets of signals on "Automatic" mode using a toggle switch (DPDT), or I can override the signals to manual, in case there is a cross or meet at the loop. Obviously, the LOW Speed signal is not set for automatic operation as this aspect is shown to bring a train into the yard.
The good thing is I can use the same code for the other side of the layout - in the UP direction, as the signalling setup is the same, with a DOWN Approach HOME signal and a UP Departure Signal.
I will have to leave this side of the layout for another time.
