To validate a new process before its full-scale deployment, developers first test it in a small-scale pilot plant. Although controlling this plant with programmable logic controllers (PLCs) would allow maximum flexibility, PLCs are too large and expensive for such temporary use. In most cases, the alternative is hard-wired relay logic. But such an approach makes modifications difficult and time consuming. (For safety reasons, modern pilot and process plants employ 24-V and 12-V dc control logic rather than 120-V ac logic.)
This circuit incorporates PLC programmability with the low cost of relay control (see the figure). These features are combined with a software program to form a robust 24-V industrial controller that offers low cost, full surface-mount construction, low power, and ESD protection (click here to view the listing).
With an 8-bit microcontroller used to provide the program control, the circuit's eight debounced and ESD-protected inputs can accept voltages up to 24 V dc. The eight open-drain outputs can handle up to 45 V dc and sink up to 250 mA (or 1.5 A of pulsed current). A 24-V, low-power linear regulator drives the circuit, while a voltage monitor with a manual reset guards against power brownouts.
CMOS switch debouncer U2 ensures robust industrial-rated inputs and a wide input-voltage range. It offers eight fully debounced and ESD-protected inputs, eight tristate outputs, and a change-of-state output (—CH) for simplifying connections to the microcontroller. Pull-up resistor R3 provides a logic high that disables U1 and U2 during power-up until the microcontroller I/O has been configured.
An octal D-type latch (U3) supplies eight open-drain outputs, rated to 45 V dc. These outputs can easily drive process indicator lamps, isolation relays, and other logic controls in a 24-V control system. A built-in voltage clamp on each output enables direct connection of relays, solenoids, buzzers, and other inductive loads. Resistor R1 ensures that all outputs are off during power-up until the microcontroller I/O has been configured.
Microcontroller U1 includes 32 bytes of RAM for variables and 1232 bytes of EPROM for storing the process control program. (A low-cost, one-time-programmable version is also available.) The bidirectional pins of port A (PA0 to PA7) furnish an 8-bit data bus for I/O data to U2 and U3. Using software, the first three pins of bidirectional port B (PB0 through PB2) are configured as outputs. As a result, they can provide the control signals —EN, —CLR, and CLK for U2 and U3.
By issuing a logic-low reset during power-up, the U5 voltage monitor ensures automatic recovery during power brownouts. U5 also offers a debounced manual reset to U1 when the reset pushbutton is pressed. R2 prevents contention with the microcontroller's bidirectional —RESET pin.
Power to the controllers is provided by U4, a high-voltage, low-power linear regulator configured to deliver up to 30 mA from a 5-V output. U4 accepts input voltages to 28 V dc. Therefore, it lets the controller function with 12/24-V control systems and mixed-voltage control systems (i.e., 24-V field devices and 12-V control logic).
Since every U2 input pin (IN1 to IN8) has an internal, 63k pull-up resistor, each one requires an applied logic low to indicate a change of state. Input "8" shows a pushbutton-switch interface where R5 limits the 24-V-to-ground current to 10 mA. This enables the use of low-cost switch contacts and a logic-high level (24 V) as the change-of-state signal. Input "1" demonstrates a limit-switch interface in which R4 limits the current to 10 mA and a logic low (0 V) is the change-of-state signal. U3's output "1" illustrates a lamp, solenoid, or other load connected to a 24-V source.
The timer function internal to the microcontroller can replace expensive relay timers in the control system. Additional inputs are easily gained by adding another switch-debouncer IC, installing a pull-down resistor on the microcontroller's —IRQ pin, and adding steering diodes between each —CH pin and U1's —IRQ pin. One of U1's unused port-B pins can be configured as the —EN signal to the new IC. For analog functions, a serial digital-to-analog converter (DAC) or analog-to-digital converter (ADC) and the microcontroller's unused port-B pins (PB3 to PB5) can be used to implement 0- to 10-V or 4-to-20-mA process controls.