Смещение шины (failsafe)
Смещение шины — пара резисторов, которая задаёт уровень на линиях RS-485, когда все передатчики выключены. Без него приёмники в паузах между кадрами могут принять шум за данные и выдать мусорные байты.
Обновлено Редакция GAW
Содержание
Смещение шины (failsafe biasing) — пара резисторов на шине RS-485, которая подтягивает неинвертирующую линию A к питанию, а инвертирующую B — к общему проводу. Ток через них создаёт на терминаторах разность напряжений UAB, и в простое, когда все передатчики выключены, приёмники видят уверенную логическую единицу.
Почему шина «висит»
Порог приёмника RS-485 — ±200 мВ, и между −200 и +200 мВ его выход не определён. Между кадрами терминаторы стягивают A и B, разность падает почти до нуля, и обычный приёмник выдаёт что придётся — UART получает мусорные байты и ошибки кадра. TI перечисляет три ситуации потери сигнала: обрыв, замыкание линий и простой терминированной шины.
Расчёт
где Rэкв — нагрузка шины: терминаторы параллельно с входами приёмников. Пример: 5 В, два терминатора по 120 Ом, 16 трансиверов на 1/8 единичной нагрузки, запас 250 мВ над порогом: Rэкв ≈ 59,7 Ом, Rсм ≤ 567 Ом — берут 560 Ом, и в простое на шине около 253 мВ. Расчёт для своей шины — в калькуляторе в статье о RS-485.
Что важно
- Одна точка. Резисторы смещения ставят только в одном месте шины, обычно у ведущего узла — так требует и Modbus. Подтяжки на каждом узле сложатся параллельно и перегрузят передатчики.
- Смещение — тоже нагрузка. По оценке TI пара резисторов на 500–600 Ом забирает до 20 единичных нагрузок из 32.
- True failsafe. Трансиверы со сдвинутым порогом, например MAX3080–MAX3089, держат единицу при нулевой разности сами, без внешних резисторов.
Частые вопросы
Зачем резисторы смещения на шине RS-485?
Между кадрами все передатчики выключены, терминаторы стягивают линии A и B друг к другу, и разность падает почти до нуля — в зону −200…+200 мВ, где выход приёмника не определён. Приёмник может принять шум за старт-бит, и UART получит мусорные байты. Смещение создаёт в простое уверенную единицу — то же состояние, что и стоп-бит.
Какие резисторы смещения поставить?
Для шины 5 В с двумя терминаторами 120 Ом и запасом 250 мВ получается не больше 567 Ом на каждый резистор — ближайший меньший номинал 560 Ом. Линию A подтягивают к питанию, линию B — к общему проводу. Ставят их в одной точке шины, обычно у ведущего узла.
Нужны ли резисторы смещения с трансиверами true failsafe?
Обычно нет. У трансиверов с настоящим failsafe порог приёмника сдвинут в отрицательную область: у MAX3080–MAX3089 единица гарантирована при разности от −50 мВ, поэтому при 0 В — обрыве, замыкании или простое терминированной шины — выход остаётся в единице без внешних резисторов.
Источники
- Texas Instruments. The RS-485 Design Guide (SLLA272C), T. Kugelstadt — ситуации потери сигнала (обрыв, замыкание, простой терминированной шины), формула резисторов смещения, пример 523 Ом, нагрузка смещения в единицах UL
- Modbus Organization. MODBUS over Serial Line Specification and Implementation Guide V1.02 — смещение в одной точке шины, 650 Ом, RC-терминатор 120 Ом + 1 нФ
- TIA/EIA-485-A. Electrical Characteristics of Generators and Receivers for Use in Balanced Digital Multipoint Systems — порог приёмника ±200 мВ, единичная нагрузка
- Maxim Integrated. MAX3080–MAX3089 Fail-Safe, High-Speed (10Mbps), Slew-Rate-Limited RS-485/RS-422 Transceivers — true failsafe: единица при UAB ≥ −50 мВ, ноль при UAB ≤ −200 мВ
Нашли ошибку?