Адаптер интерфейса RS-232 -> RS-485.
Стандартная конфигурация IBM-совместимого компьютера предусматривает его связь с внешним миром через два коммуникационных порта, выполненных по стандарту RS-232C. Для бытового компьютера, к которому подключают только "мышь" и модем, этого достаточно. Но если он служит основой информационно-управляющей системы и должен быть соединен с множеством датчиков, контроллеров оборудования и исполнительных механизмов, имеющиеся порты уже не обеспечивают нужного качества и дальности связи. Часто их неправильное использование становится причиной выхода компьютера из строя. В предлагаемой статье рассказывается о некоторых альтернативных стандартах последовательного интерфейса, специально предназначенных для связи компьютера с удаленным оборудованием. Приведена схема коммуникационного адаптера по стандарту RS-485, обеспечивающего связь компьютера с удаленным оборудованием по оптически изолированной витой паре проводов.
Последовательный порт RS-232C (согласно отечественным стандартам — "Стык С2") имеет два недостатка, ограничивающих дальность и качество связи. Первый из них — несимметричная и несогласованная линия связи плохо защищена от помех и искажает передаваемые сигналы. Второй недостаток заключается в том, что общий провод всех цепей порта электрически соединен с корпусом компьютера, поэтому при подключении к приборам, находящимся на некотором удалении, по нему могут протекать паразитные токи, не только создающие помехи, но и способные повредить компьютер.
Однако существуют коммуникационные интерфейсы, информационные и управляющие цепи которых симметричны и изолированы (часто говорят "гальванически развязаны") от корпусов и всех прочих цепей соединяемых приборов.
Если не рассматривать такие пока еще экзотические способы передачи данных, как оптический кабель, радио или инфракрасный канал связи, то гальваническую развязку информационных цепей можно обеспечить с помощью трансформаторов или оптронов. Требования к характеристикам этих трансформаторов довольно высоки, так как они должны передавать широкополосные импульсные сигналы с малыми искажениями. Кроме того, трансформатор не пропускает постоянную составляющую сигнала, поэтому приходится применять коды, содержащие равное число импульсов положительной и отрицательной полярности. Оптронная развязка не требует специального кодирования данных, но необходим отдельный "подвешенный" (изолированный от общего провода компьютера) источник питания формирователей и приемников информационных и управляющих сигналов.
Типичный пример интерфейса с трансформаторной развязкой — Ethernet (внешний вид платы его адаптера показан на рис. 1). Нужное для исключения постоянной составляющей кодирование и декодирование данных выполняет специальное программное обеспечение и БИС 1. Сигналы на интерфейсную микросхему 3 поступают через трансформаторы, находящиеся в корпусе 2, причем питается она от специального изолирующего преобразователя напряжения 8. При использовании адаптера следует помнить, что внешний контакт байонетного разъема 4 для подключения "тонкого" коаксиального кабеля (10BASE-2) изолирован пластмассовой вставкой от планки 5, имеющей контакт с корпусом компьютера.
Внешний проводник коаксиального кабеля сети Ethernet обычно заземляют у одного из соединяемых компьютеров. Подключая его к другим, следует соблюдать осторожность, делать это одной рукой, не касаясь корпуса компьютера и других заземленных предметов. Соединять внешние контакты разъемов с корпусами компьютеров, как это рекомендуют некоторые "знатоки", не следует: если потенциалы корпусов неодинаковы, по внешнему проводнику потечет ток, создающий помехи полезным сигналам.
В сети, где соединения выполнены кабелем с витыми парами проводов (10BASE-T), подключенным к разъему 6, в адаптере работает вторая интерфейсная микросхема 7. Трансформаторы развязки находятся в корпусе 8. Кабельная часть разъема не имеет внешних металлических частей, так что при его подключении нет риска получить электроудар.
К сожалению, аппаратная и программная реализации интерфейса Ethernet довольно сложны. Применение его для связи с удаленными контроллерами оборудования привело бы к их излишнему удорожанию. В подобных случаях часто пользуются имеющимся в каждом компьютере и в большинстве контроллеров последовательным интерфейсом RS-232C, не предусматривающим гальванической развязки между соединяемыми устройствами. Скорость и дальность связи ограничены использованием несимметричной относительно земли и несогласованной линии. При возникновении проблем рекомендуется переходить на другие варианты последовательного интерфейса, в той или иной мере лишенные указанных недостатков: "токовую петлю", RS-422 или RS-485. Все они логически не отличаются от RS-232C и часто способны работать с тем же программным обеспечением, хотя электрические характеристики формирователей и приемников сигналов, а также требования к линиям связи различны (см. таблицу).
Параметр | Значение согласно спецификации | |||
RS-422 | RS-485 | RS-232 | RS-423 | |
Тип линии связи | Симметричная | Симметричная | Несимметричная | Несимметричная |
Выходное напряжение передатчика без нагрузки, В | ±10 | ±(1,5...6) | ±(5...25) | ±(4...6) |
Выходное напряжение передатчика под нагрузкой. В | ±2 (Rн=1000M) | ±(1,5...5) (Rн=54 Ом) | ±(5...15) (Rн=3...7 кОм) | ±(3,6...6) (Rн=450 Ом) |
Выходное сопротивление передатчика. Ом | 100 | Не нормировано | 300 (при выключенном питании) | 50 |
Время нарастания выходного сигнала передатчика, % длительности бита | ? 10 | ? 30 | ? 30 В/мкс (скорость нарастания) | ? 30, но не более 300 мкс |
Максимальная емкость нагрузки, пФ | Не нормирована | Не нормирована | 2500 | Не нормирована |
Ток короткого замыкания любого из выходов на общий провод, мА | ? 150 | ? 250 | ? 500 | ? 150 |
Синфазное напряжение на выходе передатчика. В | ±3 | -1...+3 | - | - |
Синфазное напряжение на входе приемника. В | ±7 | -7...+12 | - | - |
Чувствительность приемника, В | ±0,2 | ±0,2 | ±3 | ±0,2 |
Входное сопротивление приемника, кОм | ? 4 | ? 12 | 3..7 | ? 4 |
Пользовавшаяся в недавнем прошлом некоторой популярностью "токовая петля" хотя и снабжена развязывающими оптронами, передает данные по несогласованной линии, что приводит к искажениям, заметным при скоростях передачи 1200 бит/с и более. Сегодня она практически не применяется.
В компьютерах, специально предназначенных для промышленного применения, по стандарту RS-422/485 (ниже будет объяснено, почему в обозначении присутствует дробная черта) бывают выполнены входные и выходные цепи одного из коммуникационных портов (СОМ1 или COM2). В обычных настольных и переносных компьютерах этого нет, поэтому приходится либо устанавливать соответствующую интерфейсную плату, либо подключать линию связи через специальный преобразователь (один из вариантов показан на рис. 2). Для него, как правило, требуется и отдельный источник питания, хотя есть и такие, которые питаются непосредственно от интерфейсных цепей RS-232C.
Стандарты RS-422 и RS-485 предусматривают связь по симметричным согласованным линиям (витым парам проводов) и различаются в основном тем, что первый требует отдельной витой пары для каждого направления передачи, а согласно второму связь в обе стороны ведется по одной и той же паре. Формирователь сигнала (передатчик) RS-485 обязательно имеет управляющий вход ОЕ, переводящий его выходы в высоко-импедансное состояние, в котором они фактически отключены от линии связи.
Возможны два способа переключения прием/передача. Согласно одному из них на вход ОЕ формирователя подается сигнал RTS интерфейса RS-232, уровнем которого управляет программа. Во втором случае этот вход подключен к выходу ждущего мультивибратора, соединенного с цепью TXD. Фронт стартового импульса первого передаваемого байта данных запускает мультивибратор, а каждый последующий перепад сигнала перезапускает его. В результате с началом передачи формирователь автоматически переходит в активное состояние и остается в нем до ее окончания.
Главный недостаток такого способа — жесткие требования к длительности импульса мультивибратора. Если она мала, формирователь будет отключаться в процессе передачи сигналов, не содержащих изменений уровня (например, нулевых байтов), а если велика, — слишком долго оставаться включенным после ее окончания, не давая возможности правильно принять первые байты ответа.
Для передатчика RS-422 наличие управляющего входа не обязательно, но, как правило, он все-таки предусматривается. Это позволяет реализовать оба варианта интерфейса одним и тем же устройством, объединяя или разъединяя входы приемника и выходы передатчика. Именно по этой причине часто встречается обозначение RS-422/485.
В отличие от RS-232C, рассчитанного на обмен данными только между двумя абонентами, высокое входное сопротивление приемников RS-422/485 дает возможность подключить до 32 абонентов к одной и той же линии длиной не более 1200 м. Специальные устройства (репитеры) позволяют объединить до четырех таких участков, в результате дальность возрастает до 4800 м, а число абонентов — до 128.
Если только один из абонентов, объединенных интерфейсом RS-485 (например, управляющий компьютер), имеет право передавать данные, а остальные лишь принимают их, проблем не возникает. Немногим сложнее ситуация, когда передавать может любой, но только с разрешения главного компьютера. Если же все абоненты равноправны и каждый из них может начать передачу, "не спрашивая" других, возникают конфликты. Параллельное соединение передатчика с собственным приемником помогает их обнаруживать. При совпадении принятых данных с переданными — все в порядке. Но когда одновременно заработают несколько передатчиков, совпадения не будет. Устранить последствия конфликта, попросив, например, абонентов по очереди повторить передачу, — забота программного обеспечения, которое в данном случае может быть очень сложным. Подобные же проблемы существуют и успешно решаются в локальных вычислительных сетях, в том числе в уже упоминавшейся Ethernet.
Возможная схема адаптера интерфейса RS-485 показана на рис. 3. Его основой служит микросборка МАХ1480 фирмы Maxim, выполненная в обычном 28-выводном DIP-корпусе и содержащая, кроме собственно приемника и передатчика, преобразователь напряжения с разделительным трансформатором для их питания и оптронные развязки цепей RXD, TXD и RTS. Выводы А и В предназначены для подключения витой пары, С — изолированный от корпуса компьютера общий провод приемника и передатчика. Заметим, что в интерфейсе RS-422 цепи передатчика имеют те же обозначения, а цепи приемника называют соответственно А', В' и С'. Выводы всех цепей микросборки, подключаемых к устройству управления (компьютеру), удалены на максимальное расстояние от выводов, подключаемых к линии связи, и находятся на противоположных сторонах ее корпуса. Изоляция между ними выдерживает напряжение до 2000 В переменного тока.
Номиналы резисторов на рис. 3 указаны для экономичного варианта микросборки МАХ1480В, рассчитанного на скорость передачи не более 250 Кбит/с. Для быстродействующей модификации МАХ1480А (2,5 Мбит/с) сопротивление резистора R2 необходимо уменьшить до 200, R3 и R6 — до 360 Ом, а резистора R4 — увеличить до 3 кОм. Если соединить с общим проводом вывод 6 микросборки А1, рабочая частота преобразователя напряжения понизится с 350 до 200 кГц. Иногда это помогает устранить помехи. Преобразователь можно остановить (например, для экономии энергии в периоды отсутствия связи), отключив от общего провода вывод 7 А1.
Как уже говорилось, сигналы интерфейсов RS-422/485 передают по витым парам проводов дифференциальным методом. Полезным сигналом служит разность напряжений между проводами А и В, причем логической 1 соответствует отрицательный потенциал точки А относительно В. Хорошая помехоустойчивость достигается тем, что благодаря симметрии витой пары, помехи, наводимые на каждый из ее проводов, одинаковы и не изменяют дифференциальной составляющей напряжения. Синфазная составляющая, т. е. среднее арифметическое напряжений в точках А и В относительно С, не должна превосходить 7 В (по абсолютной величине). Для еще большей защиты от помех витую пару иногда дополнительно экранируют. Не забывайте, что экран следует заземлять только у одного из концов кабеля.
При параллельном подключении нескольких адаптеров к одной линии связи (а именно на это рассчитан стандарт RS-485) все точки С необходимо соединить между собой специально предусмотренным в кабеле "дренажным" проводом (ни в коем случае не используя вместо него экран!). Отступление от этого правила возможно, если точки С заземлены у каждого из абонентов и разность их потенциалов гарантированно не превышает 7 В. Если же упомянутые точки соединены, но по условиям безопасности заземление все-таки требуется, подключать его к каждой из них следует через резисторы сопротивлением не менее 100 Ом с номинальной рассеиваемой мощностью не менее 0,5 Вт. Это исключит протекание по дренажному проводу "блуждающих" токов значительной силы.
При коротком кабеле связи и большом выходном сопротивлении передатчика на экране осциллографа, подключенного ко входу приемника, можно наблюдать затягивание фронтов импульсов сигнала, тем большее, чем больше погонная емкость и длина кабеля. При его значительной длине искажения увеличиваются из-за того, что, распространяясь по нему и достигнув конца, сигнал отражается и "бежит" в обратном направлении. На другом конце сигнал отражается еще раз и "циркулирует" таким образом до тех пор, пока вся его энергия не превратится в тепло. На фронтах импульсов появляется "звон" продолжительностью в три—пять раз больше времени распространения сигнала от одного конца кабеля до другого.
Известно, что каждая линия электрической связи характеризуется так называемым волновым сопротивлением, зависящим от площади и формы сечения проводов, их взаимного расположения, толщины и типа диэлектрика между ними (у обычно используемых витых пар оно равно 100...120 Ом). Если подключить к концу линии резистор сопротивлением, равным волновому, сигнал от него отражаться не будет. Такая линия называется согласованной, искажения в ней минимальны.
Согласующие резисторы, иногда называемые терминаторами, устанавливают на том конце линии, в сторону которого распространяется сигнал. Если передача ведется в двух направлениях (как в RS-485), они необходимы на обоих концах. Резисторы обычно подключают между контактами А и В "крайних" адаптеров. В промежуточных точках согласование не требуется. Более того, для наименьшего влияния на распространение сигналов входные сопротивления адаптеров должны быть максимально возможными, а емкости — минимальными. Не выдерживает критики встречающаяся иногда рекомендация подключать параллельно каждому из них такие резисторы, чтобы их общее сопротивление было равно волновому.
Нужно сказать, что необходимость в согласовании возникает только в случаях, когда время распространения сигнала по кабелю превышает 5...10% длительности передачи бита. Так что при обмене со скоростью 9600 бод (длительность бита 104 мкс) и менее по линии длиной до 1200 м (время распространения примерно 6 мкс) вполне можно обойтись и без него. Учитывая, что согласование влияет в основном на распространение высокочастотных составляющих сигнала, последовательно с согласующими резисторами иногда включают разделительные конденсаторы емкостью не менее 0,1 мкф. Это несколько облегчает режим работы передатчиков по постоянному току и снижает потребляемую ими мощность.
Когда ни один из абонентов RS-485 не ведет передачи и выходы всех формирователей сигналов находятся в высокоимпедансном состоянии, разность потенциалов между проводами витой пары, а следовательно, состояние приемников становятся неопределенными. Чтобы устранить этот эффект, входы приемников необходимо "перекосить", подключив резисторы, как показано на рис. 4. Их номинальные сопротивления выбирают такими, чтобы падение напряжения на согласующих резисторах (если они есть) или внутренних сопротивлениях приемников (в противном случае) превысило уровень логической 1. Во время работы любого из передатчиков, выходные сопротивления которых заведомо малы, дополнительные резисторы не влияют на уровни сигналов.
В заключение необходимо сказать о защите интерфейсных цепей от выбросов напряжения, неизбежно возникающих в линиях связи под воздействием промышленных и естественных помех. Необходимость в ней тем больше, чем длиннее линия и насыщеннее силовыми кабелями и мощными электроустановками трасса ее прокладки. Еще более опасны из-за перенапряжений, возникающих под действием атмосферного электричества, открытые линии, подвешенные на столбах или между зданиями.
Существуют специальные защитные устройства, включаемые между адаптером интерфейса и линией. Они содержат несколько ступеней на базе газоразрядных и полупроводниковых приборов и надежно уменьшают энергию импульса помехи до безопасной величины. Во многих случаях достаточно защитить адаптер с помощью полупроводниковых стабилитронов, подключив их, например, как показано на рис. 5.
При этом подавляются как дифференциальные (действующие между проводами линии связи), так и синфазные (действующие между каждым из проводов и "землей") составляющие помех.
В качестве VD1—VD3 можно использовать любые (обязательно одинаковые) стабилитроны с напряжением стабилизации 10...25 В. Приборы повышенной мощности (например, серий Д815—Д817) гарантируют более надежную защиту, но вносят в линию связи довольно значительную дополнительную емкость. Это сказывается на условиях распространения сигнала и уменьшает максимальную скорость обмена данными.
Разработка и оформление Андрея Александровича Борисенко aka ICE.
По всем вопросам просьба писать мне на icenet (at) narod.ru