RS485 Termination

Revision as of 13:48, 2 April 2009 by Sandra (talk | contribs)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

RS-485 line termination and "pull up/pull down"

Several Barix products provide an RS-485 interface.

General Comments

An RS-485 (sometimes also written RS485) interface is generally bidirectional, a "bus" structure (which is different to RS-422, which is point-to-point). It is not suggested to connect any "branches" (introducing star topology elements) to the bus to ensure communication reliability - especially for longer lines (up to 1200 m) and/or higher speeds (up to 230kbps).

To work as a bidirectional device, the transmitter generally must be switched off and only drive the line if the device has something to say.

The RS-485 signal uses 2 wires, which are driven alternatively (inverse). the receivers look at the difference, not the absolute voltage value, of the two wires - a difference of higher than 0.3V (300mV) is accepted as a valid signal, absolute values below 0.3V are considered "undefined" and may result in either high or low reading.

In many applications, a "ground reference" line is available in addition to the 2 data lines (typically connected to the device ground through a 100 Ohm resistor), but this is not absolutely necessary.

You can find a lot of information about the RS-485 technology in general on the internet, for example in Wikipedia.

Line Termination

For high speed applications, the bus should be terminated with 120 Ohm resistors at both ends to avoid electrical reflections which can disturb the signal resulting in occasional of permanent communication failures. Our experience is that for shorter distances and low speeds the line termination is "optional", and not required in many installations. Barix devices currently do *not* provide onboard termination resistors.

Line Bias

Line bias is critical in RS-485 applications. At times where no transmitter is active, the bus should be forced to the "idle" state. This is typically done at the master side.

The Barionet is not necessarily a master - it is a universal device which can be used as master or slave on an RS-485 bus infrastructure. A common technique to get to reasonable line bias, implemented in the Barix devices, is to use "weak" (10kOhm or similar) pullups and pulldowns in each device to provide the line bias.

Barix devices all do this - if no transmitter is active, the bus is pulled via these resistors (in every device !) to the idle state so all devices see the correct difference no the bus.

HOWEVER: 3rd party devices may not do this, or may even disturb this biasing by low impedance or reverse polarity biasing. The problem can be clearly deteced if such a device is connected to the Barionet- the RS-485 indicator LED will stay "on" because an active transmission is detected. If you want to use such a device with Barix equipment, you need to provide (stronger) bias outside of the Barix devices, by using 2 resistors to pull up and pull down the two bus lines correctly.

(NOTE: Often times a single pull-down resistor will do the trick. We typically use a 1000 ohm resistor between the RS485- and RS485 shield on J7 of the BarioNet when using it with our RS485 i/o devices. - Adam)

Back to Troubleshooting