Additional Control By PLC’s

Programmable Logic Controllers (PLC) are extremely versatile control devices. They can be used very effectively in traffic control systems to provide additional functionality or connect otherwise incompatible equipment to make more effective control systems. PLC devices have been around for quite a while. Around 1988 I started looking for ways to provide additional functionality in the traffic control systems I was responsible for. The then common method was to prepare a logic box with a number of logic cards which provided various functions that implemented the desired functions. Individual cards might provide any number of functions but the most common were timers, “or” gates, and “and” gates. Anywhere from one to possibly a hundred or more might be used in conjunction with the traffic controller or other devices to implement the desired function. We had simple boxes of one or two gates that provided special flash control or controller steering for coordination purposes. We also had full railroad preemptor systems that provided complete control of all signal colors during railroad preemption. The later was a bit before the development of the microprocessor based traffic controllers we now enjoy. Needless to say, troubleshooting a problem in such a system was never a simple task. There needed to be a simpler way to do these kind of things.

I started looking at small single board computer devices. Most of these were programmed using the “C” programming language. While the device could provide the necessary control, program development to provide the desired function was not easily accomplished nor modified. There were some devices that allowed for simpler programming using “Tiny Basic”. The Basic language was much easier to work with but the command set was rather limited. Finally, I stumbled upon the Tri-PLC. This was a rather inexpensive device that was programmed using “Ladder Logic”. It also included a powerful verion of tiny basic as well, something most PLC’s do not include. The combination made a very powerful device.

Ladder Logic is a programming method that more closely matches relay and timer control systems. When running the control program, PLCs capture all inputs make the appropriate logic decisions and then set all the outputs based on the status of those inputs. This is done several times per second. This is very beneficial in that most of the problems caused by dynamic inputs to the system are eliminated without the need for exotic input and output control programming. Another great advantage was that they worked well with the 24 volt negative logic used in traffic control systems. The PLC usually had an input range of 12-33 volts using ground true inputs and open collector outputs. This was ideal.

Now PLCs had been around for a while in industrial control but the costs of the systems were quite high. The Trilogic PLC was quite economical ($200-300 or less) and came with the required programming language which included a simulator as well. A device was obtained and it did work as well as expected. I had never seen PLCs used for traffic control before, they may have been, but they are certainly more commonly used now

I was rather busy with other demands at the time so a co-worker, Tony Rucker, looked around and found a similar PLC from IDEC, more easily available locally and still reasonably priced. He then implemented several uses including Light Rail Vehicle Preemption, HOV ramp signal control and simple two phase control such as fire house exits and pedestrian crossings, among other uses.

I was very pleased to finally be rid of logic boxes and to be able to provide sophisticated control functions not otherwise available in traffic control systems.

I’ve programmed several other systems as well, implementing several systems:

  • Lead/lag pedestrian control.
  • Light Rail Vehicle Control.
  • Close Intersection Coordination.
  • Alternate return phase for RR preempt.
  • Storm Pump Flow Data Logger and Alarm.
  • Even a eight phase controller with full functionality.

Lead/lag pedestrian control.

Suppose you wanted to allow the pedestrian “walk” signal to come on before the associated green phase or allow the green to come on before the “walk”. Could your controller do this. Ours couldn’t and we needed the former. The PLC came to the rescue and made the intersection much safer. Our controller now does this, but the original function was developed using the PLC. It proved useful and was then specified for implementation in the controller.
Light Rail Vehicle Control.

Light Rail Vehicle control was implemented in two different ways. Originally, when Tony programmed the system, the PLC provided the LRV signal color outputs and basic timing because the controller had limited outputs. Later, a program was developed, though not implemented, that used the controller to provide the outputs and the PLC provided most of the timing and control, including various return phase options based on traffic demand and preempt point. In addition several preempt methods were provided such as hold, expedited service, and full preempt selectable by the traffic controller based on coordination plan.
Close Intersection Coordination.

Here’s another special need, two intersections, less than 100 feet apart. The slave intersection was not on the main street. The main street signal was six phase, later upgraded to eight. The slave intersection was five phase. Each had a full compliment of pedestrian movements. Basically the slave controller was synchronized with two progressions from the main signal and the main signal was synchronized with the feed from the slave signal.

Since the main street signal could be part of a coordinated system on the main road and had much heavier traffic, the slave intersection could serve some movements several times before the main street signal was ready to feed or receive traffic from the slave signal.

This was implemented with two traffic controllers and the PLC as the “glue.” Now the same intersections could be implemented in one 16 phase controller with only slight compromises for pedestrian control. The PLC might not be needed now, if, your controller was advanced enough to provide the necessary control.
Alternate return phase for RR preempt.

Coordination of traffic signals sometimes makes odd controls necessary. Suppose you wanted to have different return phases at the end of railroad preemptions based on coordination plan or time of day. Again, use a PLC. This was not a complex implementation using a simple six input, four output PLC to provide the functionality and, in addition, provide other flashing signal control. Two preempt channels were used and the selection steered by the PLC based on controller position.
Storm Pump Flow Data Logger And Alarm.

Not really traffic control related but suppose you needed to monitor and record flow volumes from a pump station and provide alarm and notification functions as well. Sounds like a PLC is needed here. The PLC interfaced with the existing pump control PLC and was calibrated to record the run times and flow of the four pumps at the site. Two pumps normally pumped water to the sanitary sewer for treatment and payment was based on volume discharged. In addition, when there was storm water present, the storm pumps discharged to the storm system. Run times of each pump were recorded.

The pump operation was monitored and, depending on the alarm type , notification of the appropriate personnel ( maintenance or administration) could be made.

Even An Eight Phase Controller With Full Functionality.

This was just for fun, but basically an entire traffic signal controller was programmed using a single PLC. It provided modified density control coordination, TOD, and other special functions. It was never implemented but worked well on the simulator.

Several special traffic controllers were implemented including construction lane control, pedestrian crossings, and fire station exits.

Device Tester.

The PLC is ideal for controlling and monitoring for testing devices on the bench.


If you have a special control need that your existing traffic controller does not pprovide, try using a PLC. You can easily make adjustments or changes to the control program to fine tune the system for your needs. PLCs are ideal for testing of control methods possibly before implementation by other means.

For more information about PLC ladder logic, check the Tri-PLC website.