Автор: Яшкардин Владимир    
www.softelectro.ru    
2009              
electron18@softelectro.ru"   
RS-485 (Recommended Standard 485 или EIA/TIA-485-A) – рекомендованный стандарт передачи данных по двухпроводному полудуплексному многоточечному последовательному симметричному каналу связи. Совместная разработка ассоциаций: Electronic Industries Alliance (EIA) и Telecommunications Industry Association (TIA). Стандарт описывает только физические уровни передачи сигналов (т.е. только 1-й уровень модели взаимосвязи открытых систем OSI). Стандарт не описывает программную модель обмена и протоколы обмена. RS-485 создавался для расширения физических возможностей интерфейса RS232 по передаче двоичных данных.
ISO/IEC 8482 (1993г. действующий)
Издатель: ISO, IEC
Название: Information technology - Telecommunications and information exchange between Systems - Twisted pair multipoint interconnections.
Старые редакции:
ISO 8284 (1987г. не действующий)
ITU-T v.11 (1996г. действующий)
Издатель: INTERNATIONAL TELECOMMUNICATION UNION
Название: Electrical characteristics for balanced double-current interchange circuits opertiong at data signalling rates up to 10 Mbit/s.
Старые редакции:
ITU-T v.11 (1993г. не действующий)
CCITT v.11 (1988г. не действующий)
ANSI/TIA-485-A (1998г. действующий)
Издатель: American National Standards Institute, ANSI
Название: Electrical Characteristics of Generators and Receivers for Use in Balanced Digital Multipoint Systems.
1. Двунаправленная полудуплексная передача данных. Поток последовательных данных передаётся одновременно только в одну сторону, передача данных в другую сторону требует переключения приёмопередатчика. Приёмопередатчики принято называть "драйверами"(driver), это устройство или электрическая цепь, которая формирует физический сигнал на стороне передатчика.
2. Симметричный канал связи. Для приёма/передачи данных используются два равнозначных сигнальных провода. Провода означаются латинскими буквами "А" и "В". По этим двум проводам идет последовательный обмен данными в обоих направлениях (поочередно). При использовании витой пары симметричный канал существенно повышает устойчивость сигнала к синфазной помехе и хорошо подавляет электромагнитные излучения создаваемые полезным сигналом.
3. Дифференциальный (балансный способ передачи данных). При этом способе передачи данных на выходе приёмопередатчика изменяется разность потенциалов, при передаче "1" разность потенциалов между AB положительная при передаче "0" разность потенциалов между AB отрицательная. То есть, ток между контактами А и В, при передачи "0" и "1", течёт (балансирует) в противоположных направлениях.
4. Многоточечность. Допускает множественное подключение приёмников и приёмопередатчиков к одной линии связи. При этом допускается подключение к линии только одного передатчика в данный момент времени, и множество приёмников, остальные передатчики должны ожидать освобождения линии связи для передачи данных. 5. Низкоимпендансный выход передатчика. Буферный усилитель передатчика имеет низкоомный выход, что позволяет передавать сигнал ко многим приёмникам. Стандартная нагрузочная способность передатчика равна 32-м приёмникам на один передатчик. Кроме этого, токовый сигнал используется для работы "витой пары" (чем больше рабочий ток "витой пары", тем сильнее она подавляется синфазные помехи на линии связи). 6. Зона нечувствительности. Если дифференциальный уровень сигнала между контактами АВ не превышает ±200мВ, то считается, что сигнал в линии отсутствует. Это увеличивает помехоустойчивость передачи данных. §5. Технические характеристики RS-485.Рис.1 Форма сигналов RS-232 и RS-485 при передаче двух символов "0" и "0".
Как видно из рис.1 происходит простое преобразование уровней сигнала по напряжению. Хотя форма сигналов одинаковая у выше указанных стандартов, но способ их формирования и мощность сигналов различны.Рис.2 Формирование сигналов RS-485 и RS-232
Преобразование уровней сигналов и новый способ их формирования позволил решить ряд проблем, которые в своё время не были учтены при создании стандарта RS-232.Рис.3 Пример использования преобразователя Овен АС3.
Ситуация когда в одно время будет работать более одного драйвера RS-485 в режиме передатчика приводит к потере данных. Эта ситуация называется "коллизией". Чтобы коллизии не возникали в каналах обмена данными необходимо использовать более высокие протоколы (OSI). Такие как MODBUS, DCON, DH485 и др. Либо программы, которые напрямую работают с RS-232 и решают проблемы коллизий. Обычно эти протоколы называют 485-тыми протоколами. Хотя на самом деле, аппаратной основой всех этих протоколов служит, конечно, RS-232. Он обеспечивает аппаратную обработку всего потока информации. Программную обработку потока данных и решение проблем с коллизиями занимаются протоколы высшего уровня (Modbus и др.) и ПО. Основные принципы реализации протоколов верхнего уровня (типа MODBUS) Кратко рассмотрим эти протоколы, хотя они не имеют отношение к стандарту RS-485. Обычно протокол верхнего уровня включает в себя пакетную, кадровую или фреймовую организацию обмена. То есть, информация передаётся логически завершенными частями. Каждый кадр обязательно маркируется, т.е. обозначается его начало и конец специальными символами. Каждый кадр содержит адрес прибора, команду, данные, контрольную сумму, которые необходимы для организации многоточечного обмена. Чтобы избежать коллизий обычно применяют схему "ведущий"(master)-"ведомый"(slave). "Ведущий" имеет право самостоятельно переключать свой драйвер RS-485 в режим передачи, остальные драйверы RS-485 работают в режиме приёма и называются "ведомыми". Чтобы "ведомый" начал предавать данные в линию связи "ведущий" посылает ему специальную команду, которая дает прибору с указанным адресом право переключить свой драйвер в режим передачи на определенное время. После передачи разрешающей команды "ведомому", "ведущий" отключает свой передатчик и ждет ответа "ведомого" в течение промежутка времени, который называется "таймаут". Если в течении таймаута ответ от "ведомого" не получен, то "ведущий" снова занимает линию связи. В роли "ведущего" обычно выступает программа, установленная на компьютер. Существуют и более сложная организация пакетных протоколов, которая позволяет циклически предавать роль "ведущего" от прибора к прибору. Обычно такие приборы называют "лидерами", либо говорят что приборы передают "маркер". Владение "маркером" делает прибор "ведущим", но он должен будет обязательно передать его другому прибору сети по определённому алгоритму. В основном, указанные выше протоколы, отличаются по этим алгоритмам. Как мы видим, верхние протоколы имеют пакетную организацию и выполняются на программном уровне, они позволяют решить проблему с "коллизиями" данных и многоточечную организацию обмена данными. §7. Реализация приемопередатчиков(драйверов) RS-485. Многие фирмы изготовляют приемопередатчики RS485. Называют их обычно конверторы RS232 - RS485 или преобразователи RS232-RS485. Для реализации этих приборов выпускается специальные микросхемы. Роль этих микросхем сводится к преобразованию уровней сигналов RS232C к уровню сигналов RS485 (TTL/CMOS) и обратно, а также обеспечение работы полудуплексного режима.Рис.4 Принципиальная схема RS232-RS485 .
На рис.4 представлена принципиальная схема преобразователя RS232-RS485. Этот преобразователь имеет отдельный сигнал для включения режима передачи данных. В качестве управляющего сигнала используется выходной сигнал СОМ порта RST. Если RST=1 (+12В) преобразователь передает данные с TD(Сом порта) в сеть RS485, если RST=0 (-12 В), то данные принимаются из сети RS-485 на вход RD (СОМ порта). Преобразователь работает от промышленной сети переменного тока напряжением 220 вольт. Блок питания преобразователя выполнен по импульсной схеме на базе микросхемы ТОР232N (DA1). Блок питания выдает два независимых напряжения +5В. Для приёма и преобразования полярных сигналов RS232 (±12 В) в однополярные сигналы TTL/CMOS уровня (+5 В) используется микросхема MAX232N (DD1). Данная микросхема интересна тем, что она питается от однополярного напряжения +5 В и имеет встроенные источники напряжения, которые необходимы для работы с полярными сигналами ±12 В. Для правильной работы встроенных источников напряжения к микросхеме MAX232N подключают внешние конденсаторы С14,С15,С17,С18. Кроме этого микросхема имеет по два преобразователя уровней сигналов RS-232C к TTL/CMOS в обоих направлениях. Назначение сигналов:Рис.5 Топология сети RS485
Если расстояние сегмента сети превышает 1200 м или количество драйверов в сегменте более 32 штук, нужно использовать повторитель (repeater), для создания следующего сегмента сети. При этом каждый сегмент сети должен быть подключен к терминаторам. Сегментом сети при этом считается кабель между крайним прибором и повторителем или между двумя повторителями. Стандарт RS-485 не определяет, какой тип симметричного кабеля нужно использовать, но де-факто используют кабель типа "витая пара" с волновым сопротивлением 120 Ом.Рис.6 Промышленный кабель Belden 3106A для сетей RS485
Рекомендовано использовать промышленный кабель Belden3106A для прокладки сетей RS485. Данный кабель имеет волновое сопротивление 120 Ом и двойной экран витой пары. Кабель Belden3106A содержит 4 провода. Оранжевый и белый провод представляют собой симметричную экранированную витую пару. Синий провод кабеля используется для соединения нулевого потенциала источников питания приборов в сети и называется "общий"(Common). Провод без изоляции используется для заземления оплетки кабеля и называется "дренажный" (Drain). В сегменте сети дренажный провод заземляется через сопротивление на шасси прибора, с одного из концов сегмента, чтобы не допустить протекания блуждающих токов через оплетку кабеля, при разном потенциале земли в удалённых точках. Обычно сопротивления терминаторов и защитного заземления находится внутри прибора. Необходимо правильно подключить их с помощью перемычек или переключателей. В технической документации фирмы изготовителя приборов необходимо найти описание этих подключений. Например, на рис.7 показаны рекомендации фирмы Allen Bradley по подключению кабеля Belden3106A к приборам 1747-AIC (Link Coupler) использующихся для соединения контроллеров SLC в сеть DH-485.Рис.7 Схема подключения 1747-AIC (Allen Bradley)
На рис.7 показаны соединения кабеля с промежуточными приборами сегмента сети. Для первого прибора в сегменте сети DH-485 необходимо установить перемычку 5-6 (она подключает терминатор 120 Ом, который находится внутри прибора 1747-AIC) и перемычку 1-2 (подключает дренажный провод к шасси прибора через внутреннее сопротивление). Для последнего прибора в сегменте сети нужно установить только перемычку 5-6 (подключить терминатор) При использовании других симметричных кабелей, в особенности, когда не известно их волновое сопротивление, величину терминаторов подбирают опытным путем. Для этого необходимо установить осциллограф в середину сегмента сети. Контролируя форму прямоугольных импульсов передаваемых одним из драйверов можно сделать вывод о необходимости корректировки величины сопротивления терминатора.Рис.8 Несогласованная сеть RS-485 (без терминатора) и ее итоговая форма сигнала (слева) по сравнению с сигналом, полученным на правильно согласованной сети (справа)
Рис.9 Терминатор установлен в середине сегмента сети RS-485
Рис.10 Прибор подключен длинным отводом (3 м) к сегменту сети RS-485
Более подробно об этом можете прочитать в статье Maxim's Application Note 373 январь 2001 года 
Для анализа качества согласования линии связи применяют тестовые функции. Обычно такая функция встроена в конкретный прибор или программу. Во время тестирования передатчик посылает в сеть заданную последовательность символов, а приемник на другом конце линии анализирует правильность приема этой известной ему последовательности символов. Сеть тестируется определенное количество времени, после чего по количеству ошибок делается вывод о качестве связи §9. Программное обеспечение для работы в сетях RS-485Интерфейс RS-485, стал основным физическим интерфейсом для промышленных сетей передачи данных. Такие протоколы как ModBus, ProfiBus DP, DCON, DH-485 , работают по на физическом уровне RS-485.
Промышленные протоколы передачи данных часто бывают засекречены фирмами производителями.
Информацию по тому или иному протоколу связи приходится собирать по крупицам.
Специалисту, работающему с промышленными сетями необходима программа для чтения всей информации передаваемой в информационных сетях.
Основные секреты промышленных протоколов можно обнаружить только при всестороннем анализе переданных и полученных данных.
Программа   ComRead v.2.0 предназначена для сохранения и отображения данных и сервисных сигналов передаваемых в информационных сетях, которые работают по стандартам RS-232, RS-485, Bell-202 и др.
Программа не только сохраняет всю информацию, но и создает временную развертку данных и сервисных сигналов.
Программа ComRead v.2.0 сканирует информационный канал не влияя на его работу, то есть работает в режиме прослушивания физической среды передачи информации.
Кроме того, программа может работать в режиме транслятора данных и сервисных сигналов.
При этом она становится непосредственной частью информационного канала связи.
Более подробно можно ознакомится с программой здесь .