Skip to main content

I am interested in comments/suggestions on the circuit below, which I designed to control indicator LEDs for turnouts with an Arduino. My main goals are to 1) minimize the number of Arduino pins required by using 1 pin to control the LEDs for both directions of the turnout, and 2) use transistors to drive the LEDs because the current requirements are too high to use the Arduino to supply LED power directly.

Here is a diagram of the circuit. To simplify things, I am just showing the circuit for 1 turnout. My final board will be for a total of 12 turnouts. When the Arduino pin is HIGH the top 3 LEDs will light, and when the pin is LOW the bottom 3 LEDs will light.

 schematic

Here are the data sheets for the Inverter (CD74ACT04E) and Transistor (ULN2803A). I'm planning to use 220 ohm resistors. Please let me know if I’ve made any mistakes or if you have any suggestions.

Attachments

Images (1)
  • schematic
Original Post

Replies sorted oldest to newest

GRJ,

The Arduino Mega knows what the switch is doing because I am also using it to control the Atlas turnouts. The Arduino receives inputs (through an optocoupler) from either a momentary toggle switch, an AIU or an insulated rail. The Arduino activates a relay for 1/2 a second to throw the switch and also stores the position of the switch in memory.

Right now I am only using 2 LEDs for each state - one on the control panel and one on a small block signal next to the switch. In the future, I plan to add a 3rd LED on an indicator panel at the far end of my layout.

I am using relays to control the LEDs now (one state to NC and the other state to NO) and that works fine.  I am really just doing this project to learn more about how some electronic components work and also practice using Diptrace software. I am also planning to add some modular connectors to the board to make wiring easier.

Add Reply

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