Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Описание стандарта RS485.doc
Скачиваний:
398
Добавлен:
01.05.2014
Размер:
155.65 Кб
Скачать

Описание стандарта rs485

RS485 — полудуплексный многоточечный последовательный интерфейс передачи данных. Передача данных осуществляется по одной паре проводников с помощью дифференциальных сигналов. Разница напряжений между проводниками одной полярности означает логическую единицу, разница другой полярности — ноль.

Стандарт RS485 совместно разработан двумя ассоциациями: Ассоциацией электронной промышленности (EIA — Electronics Industries Association) и Ассоциацией промышленности средств связи (TIA — Telecommunications Industry Association). Ранее EIA маркировала все свои стандарты префиксом «RS» (Рекомендованный стандарт). Многие инженеры продолжают использовать это обозначение, однако EIA/TIA официально заменил «RS» на «EIA/TIA» с целью облегчить идентификацию происхождения своих стандартов. На сегодняшний день, различные расширения стандарта RS485 охватывают широкое разнообразие приложений.

В стандарте RS485 для передачи и приёма данных часто используется единственная витая пара проводов. Процедуры совместного использования линии передачи требуют применения определённого метода управления направлением потока данных. Наиболее широко распространённым методом является использование сигналов RTS (Request To Send) и CTS (Clear To Send).

Примечание:

  1. Стандарт RS485 оговаривает только электрические характеристики, физический уровень (среду), но не программную платформу.

  2. Стандарт RS485 не оговаривает:

  • возможность объединения несимметричных и симметричных цепей,

  • параметры качества сигнала, уровень искажений (%)

  • методы доступа к линии связи

  • протокол обмена

  • аппаратную конфигурацию (среда обмена, кабель)

  • типы соединителей, разъёмов, колодок, нумерацию контактов

  • качество источника питания (стабилизация, пульсация, допуск)

  • отражённость, уровень сигнала (reflect)

Электрические и временные характеристики интерфейса rs485:

  • 32 приёмопередатчика при многоточечной конфигурации сети (на одном сегменте, максимальная длина линии в пределах одного сегмента сети: 1200 метров (4000 футов)).

  • Только один передатчик активный.

  • Максимальное количество узлов в сети — 250 с учётом магистральных усилителей.

  • Характеристика скорость обмена/длина линии связи (зависимость экспоненциальная):

    • 62,5 кбит/с 1200 м (одна витая пара)

    • 375 кбит/с 300 м (одна витая пара)

    • 500 кбит/с

    • 1000 кбит/с

    • 2400 кбит/с 100 м (две витых пары)

    • 10000 кбит/с 10

Примечание: Скорости обмена 62,5 кбит/с, 375 кбит/с, 2400 кбит/с оговорены стандартом RS485. На скоростях обмена свыше 500 кбит/с рекомендуется использовать экранированные витые пары.

Интерфейс rs-485: описание, подключение

Стандарт

RS-485 — это номер стандарта, впервые принятого Ассоциацией электронной промышленности (EIA). Cейчас этот стандарт назывется TIA/EIA-485 Electrical Characteristics of Generators and Receivers for Use in Balanced Digital Multipoint Systems (Электрические характеристики передатчиков и приемников, используемых в балансных цифровых многоточечных системах).

В народе RS-485 — это название популярного интерфейса, используемого в промышленных АСУТП для соединения контроллеров и другого оборудования. Главное отличие RS-485 от также широко распространенного RS-232 — возможность объединения нескольких устройств.

Описание интерфейса RS-485

Интерфейс RS-485 обеспечивает обмен данными между несколькими устройствами по одной двухпроводной линии связи в полудуплексном режиме. Широко используется в промышленности при создании АСУ ТП.

Скорость и дальность

RS-485 обеспечивает передачу данных со скоростью до 10 Мбит/с. Максимальная дальность зависит от скорости: при скорости 10 Мбит/с максимальная длина линии — 120 м, при скорости 100 кбит/с — 1200 м.

Количество соединяемых устройств

Количество устройств, подключаемых к одной линии интерфейса, зависит от типа примененных в устройстве приемопередатчиков. Один передатчик рассчитан на управление 32 стандартными приемниками. Выпускаются приемники со входным сопротивлением 1/2, 1/4, 1/8 от стандартного. При использовании таких приемников общее число устройств может быть увеличено соответственно: 64, 128 или 256.

Протоколы и разъемы

Стандарт не нормирует формат информационных кадров и протокол обмена. Наиболее часто для передачи байтов данных используются те же фреймы, что и в интерфейсе RS-232: стартовый бит, биты данных, бит паритета (если нужно), стоповый бит.

Протоколы обмена в большинстве систем работают по принципу "ведущий"-"ведомый". Одно устройство на магистрали является ведущим (master) и инициирует обмен посылкой запросов подчиненным устройствам (slave), которые различаются логическими адресами. Одним из популярных протоколов является протокол Modbus RTU.

Тип соединителей и распайка также не оговариваются стандартом. Встречаются соединители DB9, клеммные соединители и т.д.

Подключение Схема подключения

На рисунке изображена локальная сеть на основе интерфейса RS-485, объединяющая несколько приемо-передатчиков.

При подключении следует правильно присоединить сигнальные цепи, обычно называемые А и В. Переполюсовка не страшна, но устройство работать не будет.

Общие рекомендации

  • Лучшей средой передачи сигнала является кабель на основе витой пары.

  • Концы кабеля должны быть заглушены терминальными резисторами (обычно 120 Ом).

  • Сеть должна быть проложена по топологии шины, без ответвлений.

  • Устройства следует подключать к кабелю проводами минимальной длины.

Витая пара является оптимальным решением для прокладки сети, поскольку обладает наименьшим паразитным излучением сигнала и хорошо защищена от наводок. В условиях повышенных внешних помех применяют кабели с экранированной витой парой, при этом экран кабеля соединяют с защитной "землёй" устройства.

Согласование

Терминальные резисторы обеспечивают согласование "открытого" конца кабеля с остальной линией, устраняя отражение сигнала.

Номинальное сопротивление резисторов соответствует волновому сопротивлению кабеля, и для кабелей на основе витой пары обычно составляет 100 - 120 Ом. Например, широко распространённый кабель UTP-5, используемый для прокладки Ethernet, имеет импеданс 100 Ом. Специальные кабели для RS-485 марки Belden 9841 ... 9844 — 120 Ом. Для другого типа кабеля может потребоваться другой номинал.

Резисторы могут быть запаяны на контакты кабельных разъемов у конечных устройств. Иногда резисторы бывают смонтированы в самом устройстве и для подключения резистора нужно установить перемычку. В этом случае при отсоединении устройства линия рассогласовывается, и для нормальной работы остальной системы требуется подключение согласующей заглушки.

Уровни сигналов

Интерфейс RS-485 использует балансную (дифференциальную) схему передачи сигнала. Это означает, что уровни напряжений на сигнальных цепях А и В меняются в противофазе, как показано на приведенном ниже рисунке:

Передатчик должен обеспечивать уровень сигнала 1,5 В при максимальной нагрузке (32 стандартных входа и 2 терминальных резистора) и не более 6 В на холостом ходу. Уровни наряжений измеряют дифференциально, один сигнальный провод относительно другого.

На стороне приемника RS-485 минимальный уровень принимаемого сигнала должен быть не менее 200 мВ.

Осциллограмма реального обмена

Ниже приведена осциллограмма реального обмена (запрос и начало ответа) при обмене двух контроллеров ВАРИКОНТ по интерфейсу RS-485 (цепь A относительно цепи B). На осциллограмме цифрами отмечены некоторые ключевые моменты:

  1. Включение передатчика ведущего контроллера. После включения выдержана пауза.

  2. Начало передачи данных — стартовый бит первого фрейма (фреймы аналогичны фреймам RS-232: стартовый бит, биты данных, бит паритета, стоповый бит).

  3. Завершение передачи данных — стоповый бит последнего фрейма.

  4. Выключение передатчика.

  5. Включение передатчика ведомого контроллера.

Cмещение

Как видно на осциллограмме выше, в отсутствие сигнала на сигнальных цепях имеется небольшое смещение. Это смещение предназначено для защиты приемников от ложных срабатываний.

Рекомендуется создавать смещение немногим более 200 мВ (зона недостоверности входного сигнала согласно стандарту). При этом цепь A "подтягивают" к положительному полюсу источника, а цепь B — к "общему". Один из вариантов реализации цепи смещения показан ниже:

Номиналы резисторов рассчитывают, исходя из требуемого смещения и напряжения источника питания. Например, мы хотим получить смещение 250 мВ при терминальных резисторах Rт = 120 Ом и напряжении источника 12 В. Учитывая, что 2 терминальных резистора включены параллельно и не принимая во внимание нагрузку от приемников, получаем ток смещения I = U / R = 0,250 В / 60 Ом = 0,0042 А. Общее сопротивление цепи смещения R = U / I = 12 В / 0,0042 А = 2857 Ом. Получаем Rсм = (2857 - 60) / 2 ~= 1400 Ом. Выбираем ближайший номинал — 1,3 или 1,5 кОм.

Мы, например, используем для смещения резисторы 1,5 кОм и внешний 12-вольтовый, гальванически развязанный выход блока питания контроллера ВАРИКОНТ, который является ведущим в своём сегменте сети.

Возможны другие варианты реализации смещения, например, распределённая схема с резисторами большого номинала на каждом узле. При размещении цепей смещения следует принимать во внимание, что узел, обеспечивающий смещение, может быть выключен или вовсе удалён из сети.

При использовании приёмо-передатчиков с гальванической развязкой (типа MAX1480) следует использовать и гальванически развязанный источник питания, иначе пользы от дорогих приёмо-передатчиков не будет никакой.

При наличии смещения потенциал цепи А на холостом ходу положителен относительно цепи B, что может служить ориентиром при подключении х приёмо-передатчиков не будет никакой.

При наличии смещения потенциал цепи А на холостом ходу положителен относительно цепи B, что может служить ориентиром при подключении нового устройства к кабелю с немаркированными проводами.

Искажения из-за неправильной разводки сети

Выполнение перечисленных выше рекомендаций гарантирует нормальнуюподключения приемника, расположенного в 15 метрах от передатчика и 30 метрах от конца линии, при включенном и отключенном согласующем резисторе:

 

Следующая осциллограмма показывает искажения сигнала, возникающие при подключении к основному согласованному кабелю длинным 3-метровым отводом:

Приведенные осциллограммы характерны для высоких скоростей обмена (1 Мбит/с и выше). Однако и на более низких скоростях не следует пренебрегать приведенными рекомендациями, даже если "оно и так работает".

Рекомендации по программированию

При программировании приложений для контроллеров, использующих для связи интерфейс RS-485, следует учитывать несколько моментов:

  • Перед началом выдачи посылки нужно включить передатчик. Хотя некоторые источники утверждают, что выдачу можно начинать сразу после включения, мы рекомендуем выдержать паузу, равную или большую длительности передачи одного фрейма (включая стартовый и стоповый биты). В этом случае правильная программа приема успевает обнаружить ошибки переходного процесса, нормализоваться и подготовиться к приему первого байта данных.

  • После выдачи последнего байта данных следует также выдержать паузу перед выключением передатчика RS-485. Это связано с тем, что контроллер последовательного порта обычно имеет два регистра: параллельный входной для приема данных и выходной сдвиговый для последовательного вывода. Прерывание по передаче контроллер формирует при опустошении входного регистра, когда данные уже выложены в сдвиговый регистр, но ещё не выданы! Поэтому с момента прерывания до выключения передатчика нужно выдержать паузу. Ориентировочная длительность паузы — на 0,5 бита длиннее фрейма, для точного расчета следует внимательно изучить документацию на контроллер последовательного порта.

  • Поскольку передатчик и приемник интерфейса RS-485 подключены к одной линии, то собственный приемник будет "слышать" передачу своего же передатчика. Иногда, в системах с произвольным доступом к линии, это свойство используют для проверки отсутствия "столкновений" двух передатчиков. В системах, работающих по принципу "ведущий - ведомый", на время передачи лучше просто закрывать прерывания от приемника.

Интерфейс RS-485: схемы подключения, рекомендации по работе с длинными линиями, рекомендации по прокладке. 

Интерфейс RS-485 - широко распространенный высокоскоростной и помехоустойчивый промышленный последовательный интерфейс передачи данных. Практически все современные компьютеры в промышленном исполнении, большинство интеллектуальных датчиков и исполнительных устройств, программируемые логические контроллеры наряду с традиционным интерфейсом RS-232 содержат в своем составе ту или иную реализацию интерфейса RS-485.

Интерфейс RS-485 основан на стандарте EIA RS-422/RS-485. К сожалению, полноценного эквивалентного российского стандарта не существует, поэтому в данном разделе предлагаются некоторые рекомендации по применению интерфейса RS-485.

Традиционный интерфейс RS-232 в промышленной автоматизации применяется достаточно редко. Сигналы этого интерфейса передаются перепадами напряжения величиной (3…15) В, поэтому длина линии связи RS-232, как правило, ограничена расстоянием в несколько метров из-за низкой помехоустойчивости. Интерфейс RS-232 имеется в каждом PC – совместимом компьютере, где используется в основном для подключения манипулятора типа “мышь”, модема, и реже – для передачи данных на небольшое расстояние из одного компьютера в другой. Передача производится последовательно, пословно, каждое слово длиной (5…8) бит предваряют стартовым битом и заканчивают необязательным битом четности  и стоп-битами. Интерфейс RS-232 принципиально не позволяет создавать сети, так как соединяет только 2 устройства (так называемое соединение “точка - точка”).

Сигналы интерфейса RS-485 передаются дифференциальными перепадами напряжения величиной (0,2…8) В, что обеспечивает высокую помехоустойчивость и общую длину линии связи до 1 км (и более с использованием специальных устройств – повторителей). Кроме того, интерфейс RS-485 позволяет создавать сети путем параллельного подключения многих устройств к одной физической линии (так называемая “мультиплексная шина”).

В обычном PC-совместимом персональном компьютере (не промышленного исполнения) этот интерфейс отсутствует, поэтому необходим специальный адаптер - преобразователь интерфейса RS-485/232.

Преобразователь интерфейса ПИ-485/232, выпускаемый НПФ “КонтрАвт”, используется при организации связи между устройствами, оборудованными интерфейсом RS-232, но использующими в качестве среды передачи интерфейс RS-485.

Некоторые технические данные преобразователя ПИ-485/232:

·        взаимное “прозрачное” преобразование сигналов интерфейсов RS-232 и RS-485 с гальванической изоляцией между ними;

·        управление направлением передачи осуществляется со стороны RS-232 по сигналу RTS;

·        требует наличия сигнала DTR, используемого для питания преобразователя (на стороне RS-232);

·        организация связи между различными устройствами, протокол передачи которых использует полудуплексный режим (запрос и ответ передаются по одной физической линии, но в разные промежутки времени);

·        индикация состояния сигналов интерфейса RS-232: RxD (прием), TxD (передача), RTS (сигнал управления передачей);

·        максимальная скорость обмена – 19200 бит/с.

Грубо принцип управления направлением передачи преобразователя ПИ-485/232 можно представить так:

Сигнал DTR устанавливается при запуске программного обеспечения подключенного со стороны RS-232 устройства. Сброс DTR производится при завершении работы программного обеспечения. Сигнал RTS устанавливается до начала передачи и сбрасыватся после полного ее окончания.

Существуют и полностью автоматические преобразователи, не требующие сигнала управления передатчиком, но, как правило, они требуют жесткого указания скорости обмена и длины передаваемого слова (с учетом стартовых, стоповых бит и бита четности).

Подключение преобразователя ПИ-485/232 к порту RS-232 осуществляется так называемым “модемным” кабелем. Преобразователь имеет 9-контактный разъем (DB9, гнездо), персональный компьютер может иметь разъемы как 9-контактные (DB9, штырь), так и 25-контактные (DB25, штырь). Для 9-контактного разъема распайка кабеля осуществляется “один в один” (в скобках указаны номера контактов):

 

DB9, штырь – к преобразователю

DB9, гнездо – к компьютеру

GND (5)

GND (5)

RxD (2)

RxD (2)

TxD (3)

TxD (3)

DTR (4)

DTR (4)

DSR (6)

DSR (6)

RTS (7)

RTS (7)

CTS (8)

CTS (8)

RI (9)

RI (9)

DCD (1)

DCD (1)

Этот стандартный кабель производится многими изготовителями.

Преобразователь ПИ-485/232 использует в кабеле линии к контактам 2,3,4,5,7.

Соответствие контактов разъемов DB9 - DB25

 

Наименование контакта

DB9

DB25

DCD

1

8

RxD

2

3

TxD

3

2

DTR

4

20

GND (сигнальная)

5

7

DSR

6

6

RTS

7

4

CTS

8

5

RI

9

22

Устройства, подключаемые к интерфейсу RS-485, характеризуются важным параметром по входу приемопередатчика: “единица нагрузки” (“Unit Load” - UL). По стандарту в сети допускается использование до 32 единиц нагрузки, т.е. до 32 устройств, каждое из которых нагружает линию в 1 UL. В настоящее время существуют микросхемы приемопередатчиков с характеристикой менее 1 UL, например - 0,25 UL. В этом случае количество физически подключенных к линии устройств можно увеличить, но суммарное количество UL в одной линии не должно превышать 32.

В качестве линии связи используется экранированная витая пара с волновым сопротивлением ≈120 Ом. Для защиты от помех экран (оплетка) витой пары заземляется в любой точке, но только один раз: это исключает протекание больших токов по экрану из-за неравенства потенциалов “земли”. Выбор точки, в которой следует заземлять кабель, не регламентируется стандартом, но, как правило, экран линии связи заземляют на одном из ее концов.

Устройства к сети RS-485 подключаются последовательно, с соблюдением полярности контактов A и B:

Как видно из рисунка, длинные ответвления (шлейфы) от магистрали до периферийных устройств не допускаются. Стандарт исходит из предположения, что длина шлейфа равна нулю, но на практике этого достичь невозможно (небольшой шлейф всегда имеется внутри любого периферийного устройства: от клеммы до микросхемы приемопередатчика).

Качество витой пары оказывает большое влияние на дальность связи и максимальную скорость обмена в линии. Существуют специальные методики расчета допустимых скоростей обмена и максимальной длины линии связи, основанные на паспортных параметрах кабеля (волновое сопротивление, погонная емкость, активное сопротивление) и микросхем приемопередатчиков (допустимые искажения фронта сигнала). Но на относительно низких скоростях обмена (до 19200 бит/с) основное влияние на допустимую длину линии связи оказывает активное сопротивление кабеля. Опытным путем установлено, что на расстояниях до 600 м допускается использовать кабель с медной жилой сечением 0,35 мм (например, кабель КММ 2х0,35), на большие расстояния сечение кабеля необходимо пропорционально увеличить. Этот эмпирический результат хорошо согласуется с результатами, полученными расчетными методами.

Даже для скоростей обмена порядка 19200 бит/с кабель уже можно считать длинной линией, а любая длинная линия для исключения помех от отраженного сигнала должна быть согласована на концах. Для согласования используются резисторы сопротивлением 120 Ом (точнее, с сопротивлением, равным волновому сопротивлению кабеля, но, как правило, используемые витые пары имеют волновое сопротивление около 120 Ом и точно подбирать резистор нет необходимости) и мощностью не менее 0,25 Вт – так называемый “терминатор”. Терминаторы устанавливаются на обоих концах линии связи, между контактами A и B витой пары. Преобразователь ПИ-485/232 уже имеет терминатор, и при необходимости его можно включить установкой перемычки между контактами ‘T’ и ‘T’.

В сетях RS-485 часто наблюдается состояние, когда все подключенные к сети устройства находятся в пассивном состоянии, т.е. в сети отсутствует передача и все приемопередатчики “слушают” сеть. В этом случае приемопередатчики не могут корректно распознать никакого устойчивого логического состояния в линии, а непосредственно  после передачи все приемопередатчики распознают в линии состояние, соответствующее последнему переданному биту, что эквивалентно помехе в линии связи. На эту проблему не так часто обращают внимания, борясь с ее последствиями программными методами, но тем не менее решить ее аппаратно несложно. Достаточно с помощью специальных цепей смещения создать в линии потенциал, эквивалентный состоянию отсутствия передачи (так называемое состояние “MARK”: передатчик включен, но передача не ведется). Цепи смещения реализованы в преобразователе ПИ-485/232, для их подключения достаточно установить 2 перемычки между контактами ‘+V’ и ‘+V’, ‘-V’ и ‘-V’ соответственно. Для корректной работы цепей смещения необходимо наличие двух терминаторов в линии связи. Точная настройка цепей смещения описана в руководстве по эксплуатации преобразователя ПИ-485/232, но она не потребуется, если к сети подключены только произведенные  в НПФ “КонтрАвт” устройства.

В сети RS-485 возможна конфликтная ситуация, когда 2 и более устройства начинают передачу одновременно. Это происходит в следующих случаях:

·        в момент включения питания из-за переходных процессов устройства кратковременно могут находится в режиме передачи;

·        одно или более из устройств неисправно;

·        некорректно используется так называемый “мультимастерный” протокол, когда инициаторами обмена могут быть несколько устройств.

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

В последнем случае необходимо предусмотреть программное разделение канала между устройствами - инициаторами обмена, так как в любом случае для нормального функционирования линия связи может одновременно предоставляться только одному передатчику. В протоколе обмена, реализованном в устройствах и программном обеспечении НПФ “КонтрАвт”, мультимастерный режим не поддерживается.

Последовательный интерфейс RS-485

    Протокол связи RS-485 является наиболее широко используемым промышленным стандартом, использующим двунаправленную сбалансированную линию передачи. Протокол поддерживает многоточечные соединения, обеспечивая создание сетей с количеством узлов до 32 и передачу на расстояние до 1200 м. Использование повторителей RS-485 позволяет увеличить расстояние передачи еще на 1200 м или добавить еще 32 узла. Стандарт RS-485 поддерживает полудуплексную связь. Для передачи и приема данных достаточно одной скрученной пары проводников.

Стандарт

EIA RS-485

Скорость передачи

10 Мбит/с (максимум)

Расстояние передачи

1200 м (максимум)

Характер сигнала, линия передачи

дифференциальное напряжение, скрученная пара

Количество драйверов

32

Количество приемников

32

Схема соединения

полудуплекс, многоточечная