485 интерфейс как подключить к компьютеру

Блог Евгения Крыжановского

Я научу вас ремонтировать свой компьютер!

RS-485: подключение и управление

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

Что собой представляет данный стандарт?

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

Дальность и скорость

С помощью представленного стандарта можно добиться транслирования информации на скорости до 10 Мбит/с. Стоит отметить, что при этом предельно возможная дальность непосредственно зависит от скорости транслирования данных. Стоит отметить, что для обеспечения предельной скорости информация способна передаваться не дальше 120 метров. В это же время при скорости 100 кбит/с данные транслируются более чем на 1200 метров.

Число объединяемых устройств

Количество устройств, которые способен объединять в себе интерфейс RS-485, непосредственно зависит от того, какие в них задействованы приемопередатчики. Каждый передатчик предусматривает определенное управление 32 стандартными приемниками. Правда, следует при этом знать, что существуют приемники с входным сопротивлением, которое на 50 %, 25 % или меньшей частью отличаются от стандартного. Если использовать данное оборудование, общее число устройств увеличивается соответственно.

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

Шнур RS-485 не способен нормировать какой-либо определенный формат информационных кадров или протокол обмена. Как правило, для трансляции применяются аналогичные фреймы, используемые RS-232. Другими словами, биты данных, стоповый и стартовый биты, а также бит паритета, если это необходимо. Что касается работы протоколов обмена, в большинстве современных систем она выполняется по принципу «ведущий-ведомый». Это означает, что определенное устройство в сети выступает ведущим и инициатором обмена посылкой запросов между подчиненными устройствами, которые различаются между собой по логическим адресам. Самым известным протоколом в настоящее время является Modbus RTU. Необходимо заметить, что кабель RS-485 не обладает определенным типом соединителей или распайки. Другими словами, встречаются клеммные соединители, DB9 и прочие.

Подключение

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

Полезные рекомендации

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

1. Оптимальная среда для транслирования сигнала – кабель, созданный на основе витой пары.
2. Концы шнура в обязательно следует заглушить с помощью специализированных терминальных резисторов.
3. Сеть, где применяется стандартный или USB RS-485, должна пролагаться без ответвлений по топологии шины.
4. Устройства должны подключаться к кабелю кабелями минимально возможной длины.

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

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

С помощью терминальных резисторов стандартный или USB RS-485 гарантирует полноценное согласование открытого конца шнура с последующей линией. При этом целиком исключается возможность отражения сигнала. Номинальное сопротивление резисторов, сопутствующее волновому сопротивлению кабеля и проводам, основанных на витой паре, как правило, составляет около 100-120 Ом. Например, известный в настоящее время кабель UTP-5, который зачастую используется в процессе прокладки Ethernet, обладает волновым сопротивлением 100 Ом.

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

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

Порт RS-485 применяет балансную схему передачи данных. Другими словами, уровни напряжения на сигнальных цепях А и В изменяются в противофазе. С помощью датчика обеспечивается уровень сигнала, составляющий 1.5 В, с учетом предельной нагрузки. Кроме того, предусмотрено не более 6 В в том случае, когда устройство функционирует на холостом ходу. Уровень напряжения замеряется дифференциально. В месте пребывания приемника минимальный уровень получаемого сигнала должен быть не меньше 200 мВ.

Смещение

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

READ  Как подключить тэн на плитку

Пример

Соответствуя требуемому смещению и напряжению источника питания, выполняется расчет номиналов резисторов. Например, если следует получить смещение, находящееся на уровне 250 мВ при задействовании терминальных резисторов, RT = 120 Ом. Стоит при этом отметить, что источник обладает напряжением 12 В. С учетом того, что в этом случае два резистора подключены параллельно друг другу и совершенно не принимают во внимание нагрузку со стороны приемника, ток смещения достигает 0.0042. В это же время общее сопротивление цепи смещения равняется 2857 Ом. Rсм при этом будет составлять около 1400 Ом. Таким образом, потребуется выбрать ближайший номинал. Примером будет взят резистор 1.5 кОм. Он необходим для смещения. Кроме того, используется внешний резистор на 12 вольт.

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

Неправильная разводка и искажения

Осуществление рекомендаций, указанных выше, дает возможность достичь корректной трансляции электрических сигналов в разные точки сети, когда в виде основы задействован протокол RS-485. Если хотя бы одно из требований не будет выполнено, возникает искажение сигнала. Самые заметные искажения появляются тогда, когда скорость обмена информацией выше 1 Мбит/с. Правда, даже при меньших скоростях не рекомендуется пренебрегать данными советами. Это правило действует и при нормальном функционировании сети.

Как программировать?

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

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

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

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

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

Конфигурация формата «шина»

Представленный интерфейс имеет возможность объединять устройства по формату «шина», когда все оборудование соединяется при использовании одной пары проводов. Это предусматривает то, что линия связи обязательно должна согласовываться оконечными резисторами двух концов. Чтобы это обеспечить, необходимо установить резисторы, которые характеризуются сопротивлением 620 Ом. Они монтируются всегда на первом и последнем устройстве, подсоединенном к линии.

Как правило, современные устройства имеют встроенное согласующее сопротивление. Если возникнет необходимость, его можно подключить в линию при помощи установки специальной перемычки на плату прибора. Стоит отметить, что состояние поставки перемычки сначала установлены, поэтому требуется снять их со всех устройств, кроме первого и последнего. Необходимо также заметить, что в преобразователях-повторителях модели С2000-ПИ для отдельного выхода согласующее сопротивление активируется с применением переключателя. Что касается устройств С2000-КС и С2000-К, которые характеризуются встроенным согласующим сопротивлением, перемычки, требуемой для его подключения, не существует. Чтобы обеспечить длинную линию связи, желательно использовать специализированные повторители-ретрансляторы, которые предварительно оснащены полностью автоматическими переключениями направления передачи.

Конфигурация формата «звезда»

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

READ  Как подключить магнитолу в машине если нет фишки

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

Что следует учитывать?

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

Таким образом, необходимо исключить возможность заземления цепи 0 В или же заземлять эту цепь в определенной точке. Кроме того, следует принимать во внимание возможность взаимосвязи между 0 В и цепью защитного заземления, которая присутствует оборудовании, используемом в системе ОПС. Стоит отметить, что на объектах, где характерна относительно тяжелая электромагнитная обстановка, существует возможность подключиться этой сети путем использования кабеля «экранированная витая пара». Остается подчеркнуть, что в данной ситуации может существовать меньшая предельная дальность, потому что емкость провода считается более высокой.

Запись опубликована 12.10.2015 автором katrinas11 в рубрике Моя жизнь. Отблагодари меня, поделись ссылкой с друзьями в социальных сетях:

Источник

RS-485, мультиклиентная проводная передача данных

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

● Назначение и принцип работы

● Технические характеристики и принцип работы

● Подключение к Ардуино

Назначение и принцип работы

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

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

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

Технические характеристики и принцип работы

● скорость передачи данных сильно зависит от расстояния, от 62 кбит/с при 1200 м, до 10000 кбит/с при 10м,

● количество трансиверов на шине до 32 (другие представители семейства поддерживают до 256),

Пользоваться устройством крайне просто: микросхема одним концом присоединяется к аппаратному или программному порту UART контроллера, а другим к шине передачи данных, по которой информация передается в другой микросхеме. Таким образом, с точки зрения конечного устройства, передача данных ничем не отличается от привычной UART.


Соединение нескольких устройств:


Шина данных представляет собой два провода, присоединяемых к одноименным точкам трансивера А или В. Суть технологии в том, что на два этих провода сигналы подаются синхронно но с инверсией, то есть когда на одном 1, на другом 0 и наоборот. Таким нехитрым образом обеспечивается увеличение разности потенциалов и высокая устойчивость к синхфазным помехам, которые воздействуют на оба провода одновременно, при этом не меняя разность потенциалов. Чтобы помехи были как можно более одновременными, провода следует размещать максимально близко друг к другу, то есть свивать в жгут.

Сама микросхема для работы требует несложной обвязки, состоящей из нескольких резисторов, кроме того, конечные трансмиттеры должны содержать гасящий отражения терминальный резистор 120 Ом, в народе известный также как “терминатор”. Для упрощения жизни DIY-мастеров китайские друзья заботливо придумали готовый модуль связи на базе MAX485, он уже содержит все необходимое и готов к работе как есть.

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

Подключение к Ардуино

Со стороны устройства на модуле имеются следующие пины:

Со стороны шины данных:

A и B, каналы на шину данных.

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

READ  Как подключить wii fit plus

Рекомендации по разводке сети:

● чем меньше расстояния, тем лучше,

● топология сети, преимущественно, должна быть линейной,

● в качестве проводов рекомендуются витые пары,

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

Пример использования

Создадим простейшую рабочую сеть из трех элементов. Роль главного, на правах более внушительных размеров, достается UNO, роли остальных двух равноценных сателлитов исполнят NANO. У каждого из ведомых по одной кнопке и одному светодиоду, у главного две кнопки и два светодиода.

Задача: нажимая на кнопки главного устройства мы должны дистанционно активировать включение светодиодов на соответствующих ведомых. Нажимая же кнопки на ведомых, зажигаем соответствующий светодиод на главном. Логические связи можно изобразить так:

На физическом уровне связи между компонентами выглядят чуть запутаннее, но тоже очень логично.

Три контроллера с тремя модулями RS-485, соединёнными в простейшую сеть.

В реальной жизни схема, собранная мной на макетке, выглядит примерно так:

Заливаем программу в главный:

Основные моменты работы программ описаны в комментариях. Сюжет описан выше, технические подробности построчно.

Заливаем на второй ведомый:

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

Включаем, смотрим результат.

Замечательно, как и задумывалось! Посмотрим как выглядит сигнал со стороны UNO.

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

Выводы

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

2. Как быть, если потребуется связать более 32 устройств?

3. Какую максимальную скорость передачи данных можно устанавливать в сети RS-485?

Стандартные рекомендации таковы:

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

● 375 кбит/с 500 м (одна витая пара),

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

Однако подобрать оптимальные значения и убедиться в устойчивости связи можно лишь опытным путем в каждом конкретном проекте.

4. Аппаратный или программный UART предпочтительней использовать?

Аппаратный использовать предпочтительней всегда, но если такой возможности нет, подключайте к программному. Но помните, что у него есть ограничения по максимальной скорости.

5. “Голая” микросхема MAX485 или модуль на ее основе?

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

6. Можно ли “перепрошивать” контроллер при помощи RS-485?

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

Источник

Поделиться с друзьями
Как подключить и установить...
Adblock
detector