НовостиСИГМА-группа компанийНаукаПроизводствоСтатьи и публикацииСертификатыЛицензииНаградыОтзывыКонтактыЦентральный офисСеверо-ЗападВакансииЛоготипы
| |
RS485, теория и практика. Часть 2
Алексей ОМЕЛЬЯНЧУК, эксперт
Что такое синфазная помеха. Дифференциальный сигнал RS485 передается как напряжение «между двумя проводами». Внешние наводки, как правило, одинаково влияют на оба провода, поэтому разность потенциалов оказывается ненарушенной.
В теории звучит замечательно. А на практике дьявол в деталях. Смотрим внимательно на стандарт RS485 – допустимая синфазная помеха составляет от -7 до +12 вольт. Вообще говоря, это совсем немало. Для типичных схем с питанием 5 вольт это означает возможность превысить напряжение питания как вверх (выше +5 В) так и вниз (ниже 0 В) на полтора питания. Это совсем непросто. Например, у большинства операционных усилителей напряжение на входе никогда не должно выходить за пределы питания. Разработчики стандарта, тем более в те древние времена, потребовали от производителей микросхем весьма серьезных усилий. И эти усилия вполне оправдали себя – системы на основе RS485 успешно работают во многих приложениях. Но помните: диапазон от -7 до +12 вольт – это не так уж много. В частности, встречается серьезное заблуждение, дескать RS485 передает дифференциальный сигнал по двум проводам, поэтому для него достаточно двух проводов.
Нет !
Ни в коем случае недостаточно двух проводов.
Если нет третьего провода, соединяющего нулевую точку двух приборов (обычно это минус питания прибора или специальная клемма G – не путать с клеммой заземления), то малейшие утечки изоляции (а не бывает изоляции совсем без утечек) приведут к произвольно большим перепадам между нулем одного прибора и нулем другого. Может получиться даже 220 Вольт. Очень часто прибор оказывается под потенциалом «примерно половина напряжения розетки», то есть 110 В. Это намного больше, чем «от -7 до +12». Что же произойдет? Как только разность потенциалов превысит допустимые, скажем, +12 Вольт, сработает защита, встроенная в микросхему приемника RS485. Поэтому дальше разность потенциалов нарастать не будет. Но микросхема при этом оказывается в аварийном режиме, и конечно же ничего не принимает. Если на линии началась передача, сигналы на каждом из проводов начали колебаться, и с некоторой немалой вероятностью окажется, что пока один провод поднялся и уперся в защиту на +12 Вольт, второй опустился на 5 Вольт ниже, и потому приемник распознал передаваемый сигнал. Так что мое категорическое утверждение, вообще говоря, неверно. Без третьего провода RS485 работать, скорее всего, будет. Правда работать неустойчиво, вследствие непредсказуемых и неконтролируемых изменений утечек изоляции ситуация будет меняться совершенно непредсказуемо. Вполне вероятно, что проявится «генеральский эффект». Вроде все работало, но когда приехала комиссия с генералом (и к ее приезду помыли полы и повысилась влажность) – работать перестало. Обнаружить этот эффект по внешним проявлениям практически невозможно. Может быть, наоборот, в грозу или при сильных помехах перепады потенциалов двух приборов могут достаточно хаотично меняться, так что пакеты данных иногда будут проскакивать (пока перепад попал в диапазон -7..+12), и система будет более-менее работать. А когда помехи прекратятся (например, выключили большой высоковольтный трансформатор), наоборот, работа нарушится.
Так что мое утверждение таки верно – третий провод необходим, если вы хотите, чтобы система работала не «иногда», а всегда.
Особо следует отметить, что соединение приборов третьим проводом является весьма ответственным моментом. Вы соединяете две различные подсистемы, порой с подключенными к ним километрами шлейфов сигнализации, с различными собственными блоками питания. Упомянутые мной «утечки» могут оказаться очень большими, бывают ошибки монтажа, неисправности оборудования, пробитая изоляция. Отдельные приборы сами по себе при этом работают, но при попытке соединить между собой их «нули» - по третьему проводу потечет ток величиной в единицы или десятки ампер. Такое бывает редко, но чтобы не пострадать самому и не спалить дорогостоящее оборудование, можно воспользоваться следующим советом, широко известным среди старых специалистов: Сначала подключите шлейфы и питание к каждому из приборов, убедитесь, что они работают (насколько они могут работать без соединения по RS485 между собой), а затем сначала соедините третий провод – «нули» приборов – через достаточно мощный резистор номиналом в 1..10 кОм и померьте на нем падение напряжения (или померьте ток через него). Это суммарный, вызванный всеми утечками в обеих подсистемах. Если он не превышает миллиампера (а лучше – единиц микроампер), все в порядке, можно соединять устройства третьим проводом напрямую, подключать информационные провода А и В, и проверять взаимодействие приборов. Если же выравнивающий ток оказался неожиданно большим – ищите где-то замыкание или плохую изоляцию. Пока не найдете – нечего и думать о продолжении пусконаладки. Некоторые производители приборов рекомендуют оставлять небольшой резистор (примерно 100 Ом) и в дежурном режиме. Он может защитить от неприятностей при некоторых повреждениях в процессе эксплуатации и поможет найти проблему при выходе из строя системы. Некоторые производители даже включают этот резистор в состав прибора, поэтому клемма G (или «0») для подключения третьего провода RS485 в таких приборах может не быть напрямую соединена с минусовой клеммой питания.
Обратите внимание, что этот третий провод, хотя соответствующая клемма нередко называется GND или вроде того – не имеет ничего общего с заземлением. Всю сеть из многих приборов, с соединенными между собой точками «ноль», в принципе можно заземлить в одном месте, но ни в коем случае нельзя заземлять в нескольких местах, и уж точно нельзя полагаться на Землю (в смысле – «планета Земля»), как на третий проводник. Дескать, заземлили каждый из приборов, и нечего между ними тянуть третий провод – Земля и будет огромным третьим проводом. Увы, перепады напряжения между разными точками планеты Земля могут составлять десятки вольт. Даже если вы не пожадничали, провели третий провод, но заземлили оба конца этого провода – по нему потекут токи, вызванные уже не случайными утечками на изоляции, а вполне сознательно подключенными к Земле силовыми приборами. Четвертый провод трехфазной сети или второй в однофазной (тот, который «ноль»), согласно правилам (ПУЭ) ОБЯЗАН быть заземлен везде где это можно. Так что обратный ток таких потребителей, как трамваи, прокатные станы, или фрезерные станки вполне имеет право течь по Земле. И конечно не откажется частично протечь через ваш «третий провод», если вы его соединили с Землей (заземлили) с обеих сторон. Частично. Не все десять тысяч ампер, а совсем чуть-чуть. Ампер сто. Или хотя бы десять. Даже если сам провод не испарится, работать при этом система не будет – на проводе сопротивлением в 10..20 Ом предельная синфазная помеха возникнет уже при токе один ампер. И, главное, это совершенно не зависит от вас лично. На трамвайной линии отвалилась перемычка между рельсами, и весь ток потек через ваш третий провод. Вы, конечно, не виноваты, что у путейцев отвалилась перемычка. Но результат – обуглившиеся приборы – на вашей совести. Надо было изначально делать «как надо», а не успокаиваться, что сделали «как всегда» и вроде все работает.
Опять же, весьма вероятен генеральский эффект. Пока шла пусконаладка, вы и какие-нибудь ребята из отдела АСУ работали в разные смены (чтобы не мешать друг другу). А когда приехал генерал, все системы наконец включили одновременно, и что получилось? Кто сделал все честно, у того система все равно работает. А кто руководствовался не знаниями, а «обычаями» - у того вдруг отказ за отказом.
Итак, окончательная схема подключения по трем проводам – на рисунке.
Еще раз напомню про согласующие резисторы на концах линии – их должно быть только два и только на концах длинной линии. У очень многих производителей приборов такие резисторы уже стоят на плате и подключаются установкой перемычки. При отгрузке с завода перемычки установлены (чтобы не потерялись). Если вы не снимете лишние (а это частенько забывают сделать), окажется, что к линии подключено несколько десятков «лишних» резисторов, которые лишь убьют полезный сигнал, да еще и нарушат согласование. Повторю то, что уже говорил в первой части статьи: на практике я не встречал, чтобы RS485 не работал из-за отсутствия согласующих резисторов. Но вот из-за излишних резисторов он очень даже легко может не работать.
Приведенная схема с подключением по трем проводам называется, не удивляйтесь, 2-проводным (2-wire) вариантом RS485. Дело в том, что у некоторых производителей используется несколько другой вариант – так называемый «4-проводный» (4-wire). Рисунок ниже.
В этом случае одна пара проводов используется только для передачи от главного (master) к подчиненному (slave) прибору, а вторая пара проводов – для передачи информации обратно. При этом данные могут передаваться в обе стороны одновременно (как правило, не совсем одновременно, но, по крайней мере, слабее требования к тщательному разграничению когда кто из них передает). Поэтому такой вариант (4-wire) иногда также называют полнодуплексным (full-duplex) в отличие от полудуплексного (half-duplex) более распространенного 2-проводного варианта. Некоторые устройства могут работать в любой сети – у них 4 клеммы RxA, RxB, TxA, TxB, но если их надо соединить с 2-проводным прибором, достаточно подключить к проводу А и клемму RxA и клемму TxA, а к проводу В, соответственно, и RxB и TxB. Но вовсе не все приборы таковы. Некоторые 4-проводные приборы так работать не смогут.
И, конечно, надо понимать, что 4-проводный RS485 на самом деле требует прокладки 5 проводов. Соединять «нули» всех приборов все равно обязательно.
Нет счастья в жизни, нет правил без исключения. Соединять «нули» не всегда обязательно. Некоторые производители приборов позаботились о проблемах монтажников и пусконаладчиков (а главное, о помехозащищенности своего оборудования) и применили так называемую «гальваническую изоляцию». Иногда на плате установлены несколько раздельных микросхем – оптопара развязки, изолятор питания и собственно приемопередатчик, иногда это специальные микросхемы (см. рисунок ниже), в которых сразу собраны все необходимые компоненты.
В таких случаях допустимая синфазная помеха достигает сотен или даже нескольких тысяч вольт, а потому вполне допустимо каждое устройство просто заземлить. Такие перепады по поверхности земли бывают только кратковременно, при близком ударе молнии. Если устройство будет неточно передавать данные несколько раз по микросекунде в течение года, с этим вполне можно мириться. Кстати, такие устройства вполне будут работать и если вы их соедините между собой третьим проводом. Он не нужен (и ухудшает стойкость к электромагнитным помехам), но работать заведомо будет.
Вот мы плавно перешли к следующей проблеме. В стандарте описано два сигнальных провода, которые обозначаются А и В. Клеммы А всех устройств надо соединить между собой одним проводом, а клеммы В – другим между собой. То есть А – к А, а все В – к В.
Просто и понятно. Проблемы возникают, например, в 4-проводной версии. Иногда обозначения как у меня на картинке – А, В, Y, Z. Думаете, надо соединить все А, другим проводом все В, третьим – все Z и т.д.? Не факт. У меня на картинке приведен реальный пример от одного реального производителя. Надо четко понимать, который прибор в системе является «мастером», а который – «слэйв». Вопрос, надо сказать, не очень тривиальный, поскольку в некоторых системах один и тот же прибор может в зависимости от конфигурации системы быть «мастером», а может быть и одним из «слэйвов». Могу посоветовать лишь внимательно читать документацию. Кстати, даже в пределах одной системы изделия, разработанные в разное время (или даже разными разработчиками) могут иметь разные обозначения на клеммах. Так, тот же производитель, у которого я взял картинку, сейчас в документации использует термины RxA, RxB (приемник А и В) и TxA, TxB (передатчик А и В), как я и написал в тексте. Вы поняли, что я там имел в виду? Надеюсь, поняли, хотя это не очень важно. Такие сильно нестандартные варианты, как 4-проводный RS485 в любом случае надо подключать внимательно глядя на документацию производителя.
Хуже другое, даже в обычном (2-проводном, то есть работающем по трем проводам) варианте некоторые производители (особенно популярные в нашей стране китайские производители) предпочитают ставить на клеммах обозначения «+» и «-», а не стандартные «А» и «В». А использовать устройства разных производителей приходится часто. Например, вам нужно подключить сеть приборов к компьютеру. Плату с портом RS485 в компьютер вы купили, конечно, у стороннего производителя, ибо ни один разработчик охранных систем не станет выпускать платы под все возможные виды компьютеров. И вот уже вы обнаруживаете, что маркировка на одних приборах одна, а на других – совсем другая.
В большинстве случаев «-» означает «А», ну а «+» означает, соответственно, «В». Но не стоит на это сильно рассчитывать. Обратите внимание – на моих картинках про 2-х и 4-хпроводный интерфейс обозначения микросхем приемо-передатчиков взяты у производителей. Они все стабильно рисуют кружочки (которые по определению обозначают «инвертирующий» вход или выход) на линии В. Причина, почему в стандарте линия «А» в тексте называется инверсной, а микросхемщики считают линию «В» инвертирующей – в глубине веков и связана с тем, что связисты считают нормальным состоянием линии – наличие напряжения (как и охранники, чтобы легко обнаружить обрыв). А производители микросхем, как правило, считают нормальным состоянием «отсутствие напряжения», чтобы не расходовать электричество без необходимости.
Полезных советов в этом случае нет. Обозначения А и В – стандартные и должны одинаково пониматься всеми. Если же на устройстве нарисованы «+» и «–», постарайтесь выяснить у производителя, как они соотносятся со стандартными А и В. В крайнем случае может помочь реверс-инжиниринг. Внимательно рассмотрев плату очень часто можно увидеть, что эти линии идут (прямо или через защитные элементы) на восьминогую микросхему с обозначением типа ADM485 или MAX485.
Обозначения могут быть и совершенно другие, это первые специализированные микросхемы все называли именно «фирменныебуквы485», сейчас производители микросхем постоянно улучшают их характеристики и каждый год выпускают все новые и новые версии, и конечно называют новые версии иначе. Тем не менее, если у микросхемы 8 ног, в большинстве случаев ради совместимости производители используют одну и ту же цоколевку, нога 6 = А, а нога 7 = В. Ноги отсчитывать против часовой стрелки от угла, обозначенного точкой или иным маркером. Не обязательно запоминать номера ног – достаточно помнить, что они идут в алфавитном порядке – сначала А, а потом В.
Архив публикаций