要約
This paper describes methods of saving power in RS-485 data communication systems. Methods include low-power transceiver integrated circuits (ICs), ICs with built-in fail-safe thresholds allowing the elimination of cable fail-safe resistors, use of CMOS rather than TTL drivers, employing the driver-disable function when not transmitting, eliminating termination resistors in low data rate short cable length applications, and operation at 3.3V supply when practical. The MAX3088 and MAX3471 are recommended solutions.
Reducing fat in RS-485 designs that are high in saturated power is simple if you understand how to maintain good transmission quality at the same time. The following discussion covers the facts, myths, and dirty tricks you should know to achieve this goal.
Industrial- and building-automation systems include a variety of remote data-acquisition devices that send and receive data via a central unit that makes the data available to users and other processors. Data loggers and meter readers are typical of these applications. A near-ideal data-transfer link for this purpose is defined by the RS-485 standard, which interconnects the data-acquisition devices with a single twisted-pair cable.
Because many of the data-acquisition and data-collection devices in an RS-485 network are small, handheld, battery-powered gadgets, power conservation is necessary for controlling their heat buildup and extending battery life. Similarly, power consumption is an issue for handheld instruments and other applications that use the RS-485 interface for downloading data to a host processor.
If you are not familiar with RS-485, please also see RS-485 Basics.
Where Does All the Power Go?
An obvious indicator of power loss is the transceiver's quiescent current (IQ), and modern parts reduce this factor dramatically. Table 1 compares the quiescent current of low-power CMOS transceivers with the bipolar, industry-standard 75176.
Part | IQ (Driver Disabled) | IQ (Driver Enabled) | Shutdown Current | Maximum Data Rate |
MAX3471 | 2.8µA | 83µA | N/A | 64kbps |
MAX1483 | 20µA | 55µA | 0.1µA | 250kbps |
MAX3088 (SRL = GND) | 420µA | 475µA | 1nA | 10Mbps |
SN75ALS176 | 19,000µA | 30,000µA | N/A | 35Mbps |
Another power-consuming characteristic of RS-485 transceivers is apparent under the conditions of no load, driver enabled, and an alternating input signal. Because open RS-485 lines should be avoided at all times, the drivers "crowbar" their output structures during each output transition. This brief turn-on of both output transistors at once produces a spike in the supply current. A sufficiently large input capacitor smoothes these current spikes, producing an RMS current that increases with a data rate up to a maximum value. For MAX1483 transceivers, this maximum is about 15mA.
Connecting a standard RS-485 transceiver to a minimum load (one other transceiver, two termination resistors, and two failsafe resistors) lets you measure the dependency of supply current on data rate in a more realistic condition. Figure 2 illustrates ICC versus data rate for a MAX1483 transceiver under the following conditions: standard 560Ω/120Ω/560Ω resistors, VCC = 5V, DE = /RE\ = VCC, and 1000 feet of cable.
As you can see in Figure 2, the supply current increased to approximately 37mA even for extremely low data rates; this was caused primarily by the addition of termination and failsafe bias resistors. For low-power applications, this should demonstrate the importance of the type of termination used as well as how the failsafe is achieved. Failsafe is described in the next section, and a detailed description of termination is found in the section "Dirty Tricks of Termination."
Failsafe
For RS-485 receiver inputs between -200mV and +200mV, the output is undefined. That is, if the differential voltage on the RS-485 side of a half-duplex configuration is 0V, and no master transceiver is driving the line (or a connection has come loose), then a logic "high" output is as probable as a logic "low." To ensure a defined output under these conditions, most of today's RS-485 transceivers require failsafe bias resistors: a pullup resistor on one line (A) and a pulldown on the other line (B), as shown in Figure 1. Historically, the failsafe bias resistors on most schematics were labeled 560Ω, but to reduce power loss (when terminating one end only) this value can be increased to approximately 1.1kΩ. Some designers terminate both ends with resistor values between 1.1kΩ and 2.2kΩ. The trade-off is noise immunity versus current draw.
Transceiver manufacturers first avoided external biasing resistors by providing internal pullup resistors at the receiver inputs, but that approach was effective only for detecting open circuits. The pullups used in these pseudo-failsafe receivers were too weak to define the receiver output for a terminated bus. Other attempts to avoid external resistors violated the RS-485 specification by changing the receiver threshold to a level between 0V and -0.5V.
Analog Devices' MAX3080 and MAX3471 family of transceivers solved both of these problems by specifying a precise receiver-threshold range of -50mV to -200mV, thereby eliminating the need for failsafe bias resistors while complying fully with the RS-485 standard. These parts ensure that 0V at the receiver input produces a logic "high" output. Further, this design guarantees a known receiver-output state for the open- and shorted-line conditions.
How to Save Power?
As shown in Table 1, transceivers differ greatly in their draw of quiescent current. So, the first step in conserving power is to choose low-power parts, such as the MAX3471 (2.8µA with driver disabled, up to 64kbps). Because a transceiver's power consumption increases substantially during transmission, another goal is to minimize duty time for the drivers by transmitting short data telegrams with long waiting periods between them. Table 2 shows the structure of a typical serial-transmission telegram.
Control bits | Address bits | Data bits | Check bits | Control bits |
An RS-485 system, including 1-unit-load receivers (32 addressable devices), can have the following bits: 5 address bits, 8 data bits, start bits (all frames), stop bits (all frames), parity bits (optional), and CRC bits (optional). The minimum telegram length for such a configuration is 20 bits. For secure transmissions, you must send additional information, such as the data length, sending address, and direction, which leads to telegram lengths up to 255 bytes (2040 bits).
This variation in telegram length trades bus time and power consumption for data security, with the telegram structure defined by standards such as X.25. The transmission of 20 bits at 200kbps, for example, takes 100µs. Using the MAX1483 to send data every second at 200kbps requires an average current of
(100µs*53mA + (1s - 100µs)* 20µA)/1s = 25.3µA
When a transceiver is in idle mode, its driver must be disabled to achieve minimum power consumption. The effect of telegram length on the power consumption of a single MAX1483 driver that is operating with defined breaks between transmissions is shown in Table 3. The use of a shutdown mode can further limit power consumption in a system that provides a fixed-time polling technology or longer, deterministic breaks between transmissions.
Telegram | Every Sec. | Every 10 Sec. | Every 60 Sec. |
20 bit | 25.3µA | 20.5µA | 20.1µA |
100 bit | 61.1µA | 24.1µA | 20.7µA |
255 byte | 560.4µA | 74µA | 29µA |
In addition to these software considerations, the hardware offers plenty of room for improvement in power consumption. Figure 3 compares the supply current drawn by various transceivers while transmitting a square wave over a 1000-foot cable with drivers and receivers enabled. The 75ALS176 and MAX1483 are terminated with standard 560Ω/120Ω/560Ω networks at each end of the bus, and the "true failsafe" parts (MAX3088 and MAX3471) have only the 120Ω termination resistors at each end of the bus. At 20kbps, the supply current ranges from 12.2mA (MAX3471 with VCC = 3.3V) to 70mA (75ALS176). Thus, a big power savings accrues immediately when you choose low-power parts with a true failsafe feature that also eliminates the need for biasing resistors (to ground and to VCC). Make sure the RS-485 receiver you choose produces valid logic-output levels for both shorted and open conditions on the differential receive lines.
Dirty Tricks of Termination
As mentioned above, termination resistors eliminate the reflections caused by impedance mismatches, but their drawback is the additional power dissipation. Their effect is shown in Table 4, which lists the supply current for various transceivers (drivers enabled) for the conditions of no resistors, termination resistors only, and termination/failsafe bias resistors combined.
MAX1483 | MAX3088 | MAX3471 | SN75ALS176 | |
IVCC (no RT) | 60µA | 517µA | 74µA | 22µA |
IVCC (RT =120) | 24µA | 22.5µA | 19.5µA | 48µA |
IVCC (RT = 560-120-560) | 42µA | N/A | N/A | 70µA |
No Termination
The first approach in minimizing power consumption is to eliminate termination resistors altogether. This option is available only for short cables and low data rates, which allow reflections to settle before data is sampled in the receiver. As a rule of thumb, no termination is needed when the rise time of a signal is at least four times longer than the one-way propagation delay through the cable. In the following steps, this rule is employed to calculate the maximum usable length for an unterminated cable:
- Step 1. For the cable in question, find the one-way velocity of propagation, usually provided by cable manufacturers as a percentage of the speed of light in free space (c = 3x108 m/s). A typical value for standard insulated PVC cable (consisting of a #24 AWG twisted pair) is 8in/ns.
- Step 2. For the RS-485 transceiver, find its minimum rise time (tr min) from the data-sheet specifications. A MAX3471, for example, specifies 750ns.
- Step 3. Divide the minimum rise time by 4. For the MAX3471, tr min/4 = 750ns/4 = 187.5ns.
- Step 4. Calculate the maximum cable distance for which no termination is required: 187.5ns(8in/ns)(1ft/12in) = 125ft.
Thus, the MAX3471 can maintain decent signal quality while transmitting and receiving at 64kbps over a 125-foot cable without terminations. Figure 4 shows the dramatic reduction obtained in MAX3471 supply current when 100 feet of cable with no termination resistor is substituted for 1000 feet of cable and a 120Ωtermination resistor.
RC Termination
At first glance, the ability of an RC termination to block DC current is very promising. You find, however, that this technique imposes specific conditions. The termination consists of an R and C in series across the differential receiver inputs (A and B), as shown in Figure 5. Although R always equals the cable's characteristic impedance (Z0), the choice of C requires some judgement. Large C values provide good terminations by allowing any signal to see an R that matches Z0, but large values also increase the driver's peak output current. Longer cables require larger C values, unfortunately. Entire articles have been written on optimizing the C value with respect to this trade-off. You can find detailed equations for this purpose in the references at the end of this article.
Average signal voltage is another important factor that is often overlooked. Unless the average signal voltage is DC-balanced, a DC stair-stepping effect causes significant jitter due to the pattern-dependent skew, known as "intersymbol interference." In short, RC terminations are effective in reducing supply current but they tend to ruin signal quality. Because RC terminations impose so many constraints on their use, a better alternative in many cases is no termination at all.
Schottky-Diode Termination
Schottky diodes offer an alternative termination when power dissipation is a concern. Unlike other termination types, Schottky diodes do not attempt to match the line impedance. Instead, they simply clamp the over- and undershoots caused by reflections. As a result, voltage excursions are limited to the positive rail plus a Schottky-diode forward drop in one direction, and to ground minus a Schottky drop in the other direction.
Schottky-diode terminations waste little power, because they conduct only in the presence of overshoots and undershoots. Standard resistor terminations, on the other hand (with or without failsafe bias resistors), draw power continuously. Figure 6 illustrates the use of Schottky diodes for the purpose of eliminating reflections. Schottky diodes don't implement failsafe operation, but the choice of threshold voltage allowed by MAX308X and MAX3471 transceivers lets you implement failsafe operation with this type of termination.
The best available approximation to an ideal diode (zero forward voltage Vf, zero turn-on time tON, and zero reverse-recovery time trr) is the Schottky diode, which holds great interest for its value in replacing power-hungry termination resistors. As a disadvantage, Schottky-diode terminations in an RS-485/RS-422 system cannot clamp all reflections. Once a reflection decays below the Schottky's forward voltage, its energy is unaffected by the termination diodes and persists until dissipated by the cable. Whether or not this lingering disturbance is a problem depends on signal magnitudes at the receiver inputs.
A major disadvantage of Schottky terminations is their cost. One termination requires two diodes. Because the RS-485/RS-422 bus is differential, this number is again multiplied by two (Figure 6). Multiple Schottky terminators on a bus are not uncommon.
Schottky-diode terminations have many advantages for RS-485/RS-422 systems, and power saving is foremost among them (Figure 7). No calculations are required, because the specified maximums for cable length and data rate will be met before the Schottky terminators impose any limitation. As a further advantage, multiple Schottky terminators at various stubs and receiver inputs improve signal quality without loading the communications bus.
Summary
When data rates are high and the cable is long, "flea power" in an RS-485 system is difficult to achieve because line terminations are required. In that case, transceivers with "true failsafe" receiver outputs can save power even with terminations, by eliminating the need for failsafe bias resistors. Software communication structures also reduce power consumption by placing the transceiver in shutdown or by disabling the driver when not in use.
For lower data rates and shorter cables, the power differences are huge: Sending data at 60kbps over a 100-foot cable using a standard SN75ALS176 transceiver with 120Ω terminations draws 70mA from the system power supply. On the other hand, using a MAX3471 under the same conditions draws only 2.5mA from the supply.