RS-485: физический уровень под Modbus RTU и BACnet MS/TP

RS-485 — не протокол, а электрический стандарт дифференциальной последовательной шины. Терминирование, топология, кабель и частые причины нестабильной линии.
RS-485: физический уровень под Modbus RTU и BACnet MS/TP

Иллюстрация создана ИИ — пример обстановки.

RS-485 — не протокол

RS-485 (стандарт TIA/EIA-485) описывает только электрическую сторону: какие напряжения на проводах и как подключаются устройства. Что передаётся по ним, решает протокол над ним. Чаще всего это Modbus RTU и BACnet MS/TP, но и множество фирменных протоколов.

Дифференциальный сигнал

Данные идут по двум проводам, называемым A и B (иногда D− и D+). Приёмник смотрит на разность между ними, а не на напряжение относительно земли. Помеха действует на оба провода почти одинаково и вычитается, поэтому линия выдерживает большие расстояния и промышленную среду. Приёмник распознаёт сигнал при разности около 200 мВ, а синфазное напряжение может быть от −7 до +12 В относительно земли устройства.

Полудуплекс

Самая распространённая схема — двухпроводная. Два провода означают, что в каждый момент говорит только один. Передатчик каждого устройства выключен, пока оно слушает, и включается только при отправке. Управляют этим выводы DE (включение передатчика) и RE (включение приёмника), часто соединённые вместе. Многие преобразователи делают это автоматически. У четырёхпроводного варианта отдельные пары для каждого направления.

Расстояние и скорость

СкоростьТипичное расстояние
до 100 кбит/сдо примерно 1200 м
1 Мбит/соколо 100 м
10 Мбит/соколо 12 м

В автоматизации зданий и в Modbus обычно используют 9600–115200 бит/с, где длина редко становится проблемой.

Топология

Шина, а не звезда. Кабель идёт от устройства к устройству (daisy chain). Допустимы только совсем короткие ответвления. Звезда и длинные отводы вызывают отражения и ошибки данных.

Терминирование

На обоих концах шины ставится резистор, равный волновому сопротивлению кабеля, обычно 120 Ом между A и B. Не в середине и не на каждом устройстве. Отсутствие терминатора на одном конце или больше двух терминаторов вызывает отражения, особенно на длинном кабеле или высокой скорости.

Смещение (bias)

Когда никто не передаёт, линия «плавает», и приёмники могут принять шум за данные. Поэтому в одном месте шины (обычно у ведущего устройства) ставят резисторы к питанию и к земле, которые удерживают линию в определённом состоянии. Только в одном месте, а не на каждом устройстве.

Кабель

  • Витая пара для сигнала, желательно экранированная, с волновым сопротивлением около 120 Ом.
  • Экран заземляют в одной точке, чтобы по нему не тёк ток.
  • Третий проводник (общий) используют, если у устройств разные потенциалы.
  • Силовой кабель не должен идти параллельно сигнальному.

Самые частые проблемы

  • Перепутаны A и B. Производители обозначают их по-разному. Если связи нет, первое, что проверяют, — перестановка.
  • Отсутствующий или лишний терминатор.
  • Звездообразная прокладка кабеля.
  • Слишком много устройств. Классический приёмник — 1 единичная нагрузка, а линия выдерживает 32. Современные микросхемы нагружают шину меньше и допускают больше.
  • Разные параметры порта: скорость, чётность, стоп-биты.
  • Нет гальванической развязки между раздельными заземлениями.