logo
Всё по МСА доц

3.4.1. ИнтерфейсRs-485

ИнтерфейсRS-485 илиEIA/TIA-485, один из наиболее распространенных стандартов физического уровня связи. Физический уровень – это первый уровень модели взаимосвязи открытых систем. Характеристики интерфейса приведены в табл.3.6.

Таблица 3.6. Стандартные параметры интерфейса RS-485

Допустимое число передатчиков / приемников

32 / 32

Максимальная длина кабеля

1200 м

Максимальная скорость связи

10 Мбит/с

Диапазон напряжений "1" передатчика

+1.5...+6 В

Диапазон напряжений "0" передатчика

-1.5...-6 В

Диапазон синфазного напряжения передатчика

-1...+3 В

Допустимый диапазон напряжений приемника

-7...+12 В

Пороговый диапазон чувствительности приемника

±200 мВ

Максимальный ток короткого замыкания драйвера

250 мА

Допустимое сопротивление нагрузки передатчика

54 Ом

Входное сопротивление приемника

12 кОм

Максимальное время нарастания сигнала передатчика

30% бита

Если необходимо организовать связь на расстоянии большем 1200 м или подключить больше устройств, чем допускает нагрузочная способность передатчика, применяют специальные повторители (репитеры).

Сеть, построенная на интерфейсе RS-485, представляет собой приемопередатчики, соединенные при помощи витой пары. В основе интерфейса RS-485 лежит принцип дифференциальной или балансной передачи данных. Суть его заключается в передаче одного сигнала по двум проводам. Причем по одному проводу (условно A) идет оригинальный сигнал, а по другому (условно B) – его инверсная копия. Другими словами, если на одном проводе «1», то на другом «0» и наоборот. Таким образом, между двумя проводами витой пары всегда есть разность потенциалов: при «1» она положительна, при «0» – отрицательна (рис. 3.17).

Рис. 3.17. Электрический сигнал интерфейса RS-485

Именно этой разностью потенциалов и передается сигнал. Такой способ передачи обеспечивает высокую устойчивость к синфазной помехе. Синфазной называют помеху, действующую на оба провода линии одинаково. К примеру, электромагнитная волна, проходя через участок линии связи, наводит в обоих проводах потенциал. Если сигнал передается потенциалом в одном проводе относительно общего, как в RS-232, то наводка на этот провод может исказить сигнал относительно хорошо поглощающего наводки общего («земли»). Кроме того, на сопротивлении длинного общего провода будет падать разность потенциалов земель - дополнительный источник искажений. А при дифференциальной передаче искажения не происходит. В самом деле, если два провода пролегают близко друг к другу, да еще перевиты, то наводка на оба провода одинакова. Потенциал в обоих одинаково нагруженных проводах изменяется одинаково, при этом информативная разность потенциалов остается без изменений.

Аппаратная реализация выходного устройства интерфейса – микросхемы приемопередатчиков с дифференциальными входами и выходами к линии связи и цифровыми портами к портам UART контроллера.

RS-485 – полудуплексный интерфейс. Прием и передача идут по одной паре проводов с разделением по времени (рис. 3.18). В сети может быть много передатчиков, так как они могут отключаться в режиме приема.

Рис. 3.18. Приемопередатчик RS-485

Обозначения на рис. 3.18: D(driver) – передатчик;R(receiver) – приемник;DI(driver input) – цифровой вход передатчика;RO(receiver output) – цифровой выход приемника;DE(driver enable) – разрешение работы передатчика;RE(receiver enable) – разрешение работы приемника;A– прямой дифференциальный вход/выход;B– инверсный дифференциальный вход/выход.

Цифровой выход приемника (RO) подключается к порту приемника UART (Rx). Цифровой вход передатчика (DI) к порту передатчика UART (Tx). Поскольку на дифференциальной стороне приемник и передатчик соединены, то во время приема нужно отключать передатчик, а во время передачи - приемник. Для этого служат управляющие входы – разрешение приемника (RE) и разрешения передатчика (DE). Так как вход RE инверсный, то его можно соединить с DE и переключать приемник и передатчик одним сигналом с любого порта контроллера. При уровне «0» – работа на прием, при «1» – на передачу (рис. 3.18).

Приемник, получая на дифференциальных входах (AB) разность потенциалов (UAB) переводит их в цифровой сигнал на выходе RO. Обычно порог чувствительности приемника составляет ± 200 мВ. То есть, когда UAB > +200 мВ – приемник определяет «1», когда UAB < –200 мВ – приемник определяет «0». Если разность потенциалов в линии настолько мала, что не выходит за пороговые значения - правильное распознавание сигнала не гарантируется. Кроме того, в линии могут быть и не синфазные помехи, которые исказят столь слабый сигнал.

Все устройства подключаются к одной витой паре одинаково: прямые выходы (A) к одному проводу, инверсные (B) – к другому.

Пример подключения приемопередатчика RS-485 к микроконтроллеру показан на рис. 3.19.

Рис. 3.19. Подключение приемопередатчика к микроконтроллеру

Входное сопротивление приемника со стороны линии (RAB) обычно составляет 12 кОм. Так как мощность передатчика имеет определенное значение, это создает ограничение на количество приемников, подключенных к линии. Согласно спецификации RS-485 с учетом согласующих резисторов передатчик может вести до 32 приемников. Однако есть ряд микросхем с повышенным входным сопротивлением, что позволяет подключить к линии значительно больше 32 устройств.

При больших расстояниях между устройствами, связанными по витой паре и высоких скоростях передачи начинают проявляться так называемые эффекты длинных линий. Причина этому - конечность скорости распространения электромагнитных волн в проводниках. Скорость эта существенно меньше скорости света в вакууме и составляет немногим больше 200 мм/нс. Электрический сигнал имеет также свойство отражаться от открытых концов линии передачи и ее ответвлений. Грубая аналогия - желоб, наполненный водой. Волна, созданная в одном конце, идет по желобу и, отразившись от стенки в конце, идет обратно, отражается опять и так далее, пока не затухнет. Для коротких линий и малых скоростей передачи этот процесс происходит так быстро, что остается незамеченным. Однако, время реакции приемников – десятки или сотни наносекунд. В таком масштабе времени несколько десятков метров электрический сигнал проходит отнюдь не мгновенно. И если расстояние достаточно большое, фронт сигнала, отразившийся в конце линии и вернувшийся обратно, может исказить текущий или следующий сигнал. В таких случаях нужно каким-то образом подавлять эффект отражения.

У любой линии связи есть такой параметр, как волновое сопротивление Zв. Оно зависит от характеристик используемого кабеля, но не от длины. Для обычно применяемых в линиях связи витых пар Zв = 120 Ом. Оказывается, что если на удаленном конце линии, между проводниками витой пары включить резистор с номиналом равным волновому сопротивлению линии, то электромагнитная волна, дошедшая до «тупика» поглощается на таком резисторе. Отсюда его названия - согласующий резистор или «терминатор».

Большой минус согласования на резисторах - повышенное потребление тока от передатчика, ведь в линию включается низкоомная нагрузка. Поэтому рекомендуется включать передатчик только на время отправки посылки. Есть способы уменьшить потребление тока, включая последовательно с согласующим резистором конденсатор для развязки по постоянному току. Однако, такой способ имеет свои недостатки. Для коротких линий (несколько десятков метров) и низких скоростей (меньше 38400 бод) согласование можно вообще не делать.

Эффект отражения и необходимость правильного согласования накладывают ограничения на конфигурацию линии связи.

Линия связи должна представлять собой один кабель витой пары. К этому кабелю присоединяются все приемники и передатчики. Расстояние от линии до микросхем интерфейса RS-485 должно быть как можно короче, так как длинные ответвления вносят рассогласование и вызывают отражения.

В оба наиболее удаленных конца кабеля (Zв = 120 Ом) включают согласующие резисторы Rt по 120 Ом (0,25 Вт). Если в системе только один передатчик и он находится в конце линии, то достаточно одного согласующего резистора на противоположном конце линии. Пример линии связи интерфейса RS-485 приведен на рис. 3.20.

Рис. 3.20. Линия связи интерфейса RS-485