Конвертер rs-232 — rs-485 с автоматическим управлением приемом/передачей

Что такое Modbus

Modbus — протокол, работающий по принципу «клиент-сервер». Широко применяется в промышленности для межмашинного взаимодействия и не только. Протокол Modbus был разработан в 1979 году. Modbus может использоваться для передачи данных через последовательные линии связи RS-485, RS-422, RS-232, а также через сети TCP/IP. В данной статье мы рассмотрим его использование на примере линии RS-485. Достаточно подробно протокол Modbus описан в соответствующей статье Википедии. Также неплохое описание протокола Modbus есть в этом документе (уже не помню откуда его скачал но его автору отдельное спасибо).

Modbus RS-485 использует линию последовательной связи RS-485 для передачи данных. Modbus является программным (не аппаратным) протоколом и состоит из двух частей: Modbus Master (ведущий) и Modbus Slave (ведомый). В сети Modbus RS-485 может быть один ведущий и 127 ведомых устройств, каждое из которых имеет уникальный адрес от 1 до 127. Master адреса не имеет — он в сети может быть только один.

Modbus чаще всего используется в программируемых логических контроллерах (PLCs — Programmable Logic Controllers). Но также он широко применяется в медицине, транспорте, проектах автоматизации дома и т.п. Modbus имеет 255 функциональных кодов. Наиболее распространены 3 версии данного протокола:

  • MODBUS RTU;
  • MODBUS ASCII;
  • MODBUS/TCP.

Какая разница между протоколами Modbus ASCII и Modbus RTU? По сути, это практически одинаковые протоколы. Только в протоколе Modbus RTU данные передаются последовательно в двоичном коде, а в Modbus ASCII – в ASCII кодах. В этом проекте мы будем использовать Modbus RTU. Структура пакета в проколе Modbus RTU выглядит следующим образом:

Назначение элементов данного пакета рассмотрено далее в статье.

В данной статье мы будем использовать последовательную связь по протоколу Modbus RS-485 используя плату Arduino Uno в качестве ведомого устройства (Slave). Мы установим программное обеспечение Simply Modbus Master Software на компьютер и будем управлять двумя светодиодами и сервомотором, подключенными к ведомой плате Arduino. Управлять ими мы будем при помощи передачи специальных значений от Master Modbus Software.

Возможно, вам также будет интересно

Первые космические аппараты (КА) функционировали всего в течение года. В настоящее же время стоит задача обеспечения сроков активного существования КА в течение 10–15 лет. Причина в том, что космические технологии широко вошли в жизнь общества, которое все сильнее зависит от эффективной работы различных космических систем: это и прогноз погоды, и разведка полезных ископаемых, и мониторинг

В четвертой части статьи рассматриваются функциональные возможности
специализированного инструментального комплекта Spartan-6/OMAP
Co-Processing Development Kit, выпускаемого компанией Avnet.

IP-турникеты

IP-турникеты — комплексное, готовое к установке устройство, позволяющее организовать автоматическую проходную и осуществлять идентификацию проходящих людей с помощью бесконтактных карт. Вы можете не только предотвратить проникновение посторонних, но и настраивать различные режимы доступа для сотрудников, получать отчеты о проходах, организовать работу нескольких пользователей системы и много другое.Внедрение IP-турникета осуществляется максимально просто — работа по подключению контроллера и считывателей уже проделана на производстве, что помимо экономии времени решает и вопрос совместимости всего комплекса оборудования.Основные функции ПО в комплексе IP турникет:Заведение карточек сотрудников.Автоматический импорт информации о сотрудниках из таблицы Excel.Управление доступом в режиме свой/чужой.Контроль повторных проходов («antipassback»).Фотоидентификация (всплывающая фотография проходящих через турникет людей).Организация любого количества удаленных рабочих мест (мест получения отчетов, просмотра событий в режиме реального времени). В том числе удаленные места могут присоединяться к серверу через сеть Интернет.Управление правами операторов системы (пользователей удаленных рабочих мест).Многоязычность (в настоящее время ПО работает на русском и английском языках, другие языки будут добавляться в кооперации с партнерами в соответствующих странах).Получение отчетов и их выгрузка в Excel:–О сотрудниках–По проходам, совершенным «по карточке», «по кнопке» (санкционированным с пульта), по фактам запрета доступа.–По местонахождению сотрудников на текущий момент и на любую историческую дату.–По действиям операторов системы.

Использование интерфейса RS-485 в Arduino

Для использования интерфейса RS-485 в плате Arduino мы будем использовать модуль 5V MAX485 TTL to RS485, в основе которого лежит микросхема Maxim MAX485. Модуль является двунаправленным и обеспечивает последовательную связь на расстояние до 1200 метров. В полудуплексном режиме он обеспечивает скорость передачи данных 2,5 Мбит/с.

Модуль 5V MAX485 TTL to RS485 использует питающее напряжение 5V и логический уровень напряжения также 5V, что позволяет без проблем подключать его к платам Arduino.

Данный модуль имеет следующие особенности:

  • работает с напряжениями 5V;
  • имеет в своем составе чип MAX485;
  • отличается низким энергопотреблением;
  • всеми его контактами можно управлять с помощью микроконтроллера;
  • размеры платы модуля: 44 x 14mm.

Внешний вид модуля RS-485 показан на следующем рисунке.

Назначение контактов (распиновка) модуля RS-485 приведена в следующей таблице.

Название контакта Назначение контакта
VCC 5V
A вход/выход линии RS-485
B вход/выход линии RS-485
GND GND (0V)
R0 выход приемника (RX pin)
RE разрешение работы приемника
DE разрешение работы передатчика
DI вход передатчика (TX pin)

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

Модуль преобразования USB в RS-485

На представленном рисунке показан внешний вид адаптера (модуля преобразования) USB в RS-485. Он способен работать в различных операционных системах и обеспечивает интерфейс RS-485 при помощи использования одного из COM портов компьютера. Этот модуль является устройством plug-and-play. Все, что передается через виртуальный COM порт, автоматически преобразуется данным модулем в RS-485, и наоборот. Модуль питается от порта USB – никакого дополнительного питания не требуется.

В компьютере он виден как последовательный/ COM порт и доступен для использования различными приложениями. Модуль обеспечивает полудуплексную связь с помощью интерфейса RS-485. Скорость передачи – от 75 до 115200 бод/с, максимальная – до 6 Мбит/с.

В сети интернет можно найти достаточно много программного обеспечения, способного работать с данным адаптером. Мы в этом проекте будем использовать программу Simply Modbus Master.

КОРОТКО О НАС

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

Несмотря на то, что RS может успешно осуществлять передачу с использованием различных типов передающей среды, он должен использоваться с проводкой, обычно называемой «витая пара». Подключение устройств Подключение шины RS к модулю WB-M1W2 Подключение шины RS к Wiren Board 5 Так как все устройства соединяются общей шиной, следите за качественным соединением всех узлов линии: при обрыве линии устройства за обрывом не будут работать при коротком замыкании не будут работать все устройства. Принимающее устройство отсчитывает время с момента последнего приема байта до следующего, и если эта пауза оказывается больше какой-то величины например, 1.

Защита, организованная на варисторах, супрессорах, газоразрядных трубках, способна выдерживать лишь кратковременные всплески напряжения. Они устанавливаются всегда на первом и последнем устройстве, подключенном к линии. Напряжение питания — 5В.

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

Основные отличия RS-232, RS-422 и RS-485

Разработаем распределенную систему аналогичную системе из предыдущего урока, только с использованием сети RS Помехи в линии связи зависят не только от длины, терминаторов и качества самой витой пары. Сигналы интерфейса RS передаются дифференциальными перепадами напряжения величиной 0,2…8 В, что обеспечивает высокую помехоустойчивость и общую длину линии связи до 1 км и более с использованием специальных устройств — повторителей.

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

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

Если требуется сопряжение системы и компьютера с Windows, такой протокол лучше не применять, так как у Windows могут быть проблемы с распознанием девятого бита в UART. Это означает, что уровни напряжений на сигнальных цепях А и В меняются в противофазе, как показано на приведенном ниже рисунке: Передатчик должен обеспечивать уровень сигнала 1,5 В при максимальной нагрузке 32 стандартных входа и 2 терминальных резистора и не более 6 В на холостом ходу. Но они все на уровне протоколов. На сегодняшний день, различные расширения стандарта RS охватывают широкое разнообразие приложений.

Управление состоянием передатчика происходит отдельным сигналом DE. С такой проблемой можно столкнуться в больших системах, в которых пульт и приборы расположены в разных зданиях и объединены интерфейсом RS
Интерфейс связи RS485. Использование в СКУД

Что выбрать RS-485 или Ethernet?

Казалось бы, если все работает, зачем изобретать что-то новое? Но развитие технологий не останавливается, задачи по обеспечению безопасности с каждым днем становятся все сложнее, развитие программного обеспечения для систем контроля и управления доступом начинает опережать аппаратную составляющую.И сразу же начинают возникать проблемы. Допустим, нам требуется управлять одной или несколькими проходными в реальном времени, используя сложные нестандартные правила.

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

Одновременный обмен данными уже с 15 контроллерами по шине RS-485 вызывает неприемлемые для пользователя задержки в работе системы — открытия турникета при поднесении карты приходится ждать по несколько секунд. Ускорить данный процесс техническими ухищрениями практически невозможно в связи с «идеологией» организации шины RS-485. Все устройства, подключенные к этой шине, опрашиваются последовательно, одно за другим, а если учесть маленькие скорости передачи данных шины RS-485, то легко сделать вывод, что большую систему контроля и управления доступом, использующую сложные методы идентификации на шине RS-485, построить практически невозможно.

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

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

Обобщив все вышеуказанные тезисы, можно легко сделать вывод, что единственная на данный момент времени технология передачи данных, удовлетворяющая всем перечисленным выше требованиям, — это сеть Ethernet.Ethernet — самая распространенная в мире сеть передачи данных. Оборудование и протоколы передачи данных, использующие эту сеть, непрерывно развиваются. Благодаря большой распространенности микроконтроллеры, поддерживающие сеть Ethernet, значительно подешевели и, соответственно, цена на контроллеры СКУД может быть невысокой. Также сети Ethernet уже имеются в каждом офисе и предприятии, соответственно при использовании данной сети не потребуются дополнительные затраты на прокладку проводов.

Как увидеть «С2000-Ethernet» в «UProg».

Для начала необходимо подключить «С2000-Ethernet» к компьютеру.

В руководстве по эксплуатации пишут:

Не знаю. Не заметил разницы как производятся настройки, пробуя два типа кабелей.

Для того, чтобы в «UProg» стало доступно конфигурирование «С2000-Ethernet» необходимо, чтобы совпало три фактора:

  • IP адрес компьютера — 3 первых сегмента.
  • IP адрес «С2000-Ethernet» — 3 первых сегмента.
  • IP адрес линии службы «Орион2-Интерфейс» в «UProg» — 3 первых сегмента.

В настройках по умолчанию IP адрес «С2000-Ethernet» такой:

Поэтому, чтобы увидеть «С2000-Ethernet» необходимо сменить IP адрес компьютера:

Затем сменить IP адрес линии службы «Орион2-Интерфейс» в «UProg»:

Потом создать линию службы «Орион2-Интерфейс»:

Параметры новой линии оставляем по умолчанию:

Должен появиться наш «С2000-Ethernet» и загореться зелененьким:

Теперь необходимо сменить IP-адрес «С2000-Ethernet» на нужный. И не забыть сразу же сменить IP-адрес удаленного устройства.

Лучше заранее узнать какие IP-адреса нужно будет установить «С2000-Ethernet».

В нашем случае IP-адреса «С2000-Ethernet» будут 10.20.35.10 и 10.20.35.11. Адрес компьютера тоже установим не 10.20.35.1, чтобы он мог впоследствии работать, будучи подключенным к сети предприятия, в котором будут применяться «С2000-Ethernet» — пусть будет 10.20.35.12.

После записи новой конфигурации «С2000-Ethernet» перестанет быть недоступным.

Чтобы он снова стал доступным, необходимо применить новые IP-адреса для всей цепочки устройств и служб: опять изменить IP-адрес компьютера, затем удалить линию, изменить IP-адрес службы «Орион2-Интерфейс» и опять добавить линию.

Чтобы не менять IP-адреса туда-сюда нужно сразу настраивать все «С2000-Ethernet».

Режимы работы.

Получилось заставить работать связку С2000M-Ethernet-Приборы только когда для «С2000-Ethernet» установлены режимы работы с сохранением (Master-Slave).

Из текста инструкции следует, что «С2000-Ethernet» может работать, как в прозрачном режиме, так и в режиме сохранения:

Я не увидел здесь информации, что в прозрачном режиме система со структурой C2000M-Ethernet-Приборы работать в прозрачном режиме не будет.

Но так и не получилось заставить заработать в прозрачном режиме.

Смутные подозрения закрались при рассматривании таблицы индикации светодиода Ethernet в попытках выяснить: светодиод зажегся на 0.1 или все таки на 0.2 сек.

Заголовок этой таблицы вот какой:

И из него следует, что совместимость типа С2000-Ethernet (Авто) бывает лишь при работе в режиме master-slave, а при прозрачной работе возможны только экзотические совместимости С2000-Ethernet 1.X и С2000-Ethernet 2.X.

Или наоборот — прозрачная работа возможна только при совместимости С2000-Ethernet 1.X и С2000-Ethernet 2.X.

Как будет показано ниже, актуален только тип совместимости С2000-Ethernet (Авто).

А из заголовка таблицы следует, что и режим работы актуален только Master-Slave.

К сожалению, начал настройку именно с этого режима работы.

Может все заработало именно тогда, когда изменил настройки режимов работы на Master-Slave.

Не совсем понятно зачем нужны джамперы Master-Slave-Pass-Config.

Экспериментально выяснил, что работоспособность не зависит от этих джамперов, а зависит только от установок RS485/RS232:

.

Следует обратить внимание на то, что в режиме Slave работает тот «C2000-Ethernet», который находится в связке с «С2000М»

Свойства интерфейса стандарта RS-485

  1. Двунаправленная полудуплексная передача данных. Поток последовательных данных передаётся одновременно только в одну сторону, передача данных в другую сторону требует переключения приёмопередатчика. Приёмопередатчики принято называть «драйверами»(driver), это устройство или электрическая цепь, которая формирует физический сигнал на стороне передатчика.
  2. Симметричный канал связи. Для приёма/передачи данных используются два равнозначных сигнальных провода. Провода означаются латинскими буквами «А» и «В». По этим двум проводам идет последовательный обмен данными в обоих направлениях (поочередно). При использовании витой пары симметричный канал существенно повышает устойчивость сигнала к синфазной помехе и хорошо подавляет электромагнитные излучения создаваемые полезным сигналом.
  3. Дифференциальный (балансный способ передачи данных). При этом способе передачи данных на выходе приёмопередатчика изменяется разность потенциалов, при передаче «1» разность потенциалов между AB положительная при передаче «0» разность потенциалов между AB отрицательная. То есть, ток между контактами А и В, при передачи «0» и «1», течёт (балансирует) в противоположных направлениях.
  4. Многоточечность. Допускает множественное подключение приёмников и приёмопередатчиков к одной линии связи. При этом допускается подключение к линии только одного передатчика в данный момент времени, и множество приёмников, остальные передатчики должны ожидать освобождения линии связи для передачи данных.
  5. Низкоимпендансный выход передатчика. Буферный усилитель передатчика имеет низкоомный выход, что позволяет передавать сигнал ко многим приёмникам. Стандартная нагрузочная способность передатчика равна 32-м приёмникам на один передатчик. Кроме этого, токовый сигнал используется для работы «витой пары» (чем больше рабочий ток «витой пары», тем сильнее она подавляется синфазные помехи на линии связи).
  6. Зона нечувствительности. Если дифференциальный уровень сигнала между контактами АВ не превышает ±200мВ, то считается, что сигнал в линии отсутствует. Это увеличивает помехоустойчивость передачи данных.

Проблема стандарта

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

Хуже другое.
По закону, мы можем работать в двух частотных диапазонах. Помните, ограничение в 864-865 МГц? Не более 0,1 % времени в эфире? Это значит, что каждое отдельно взятое устройство может находиться в эфире, допустим, не дольше 3,6 секунд в час. Но за это время, на SF=12 мы даже три пакета не пропихнем.
Можно попробовать выжать максимум из каналов 868,7-869,2. Однако тут вступает в силу уже другое ограничение региональных стандартов спецификации LoRaWAN – не более 1 процента времени в эфире для каждого оконечного устройства (duty cycle). ОК, уже полегче, 36 секунд. Только толку все равно не особо.

В какой-то момент, мы можем сказать – да ну их, эти глупости! Буду сидеть в эфире столько, сколько нужно! Но тут появляется:

Глючность «UProg» при работе с» С2000-Ethernet».

Сразу же столкнулся с зависаниями «UProg».

Через раз UPrug не показывал, что «С2000-Ethernet» онлайн или не читал или не записывал конфигурацию.

Запись настроек происходила не понятно: то ли запись произошла — то-ли нет.

Чтобы увидеть актуальные настройки из «С2000-Ethernet», необходимо прочитать их.

Но после перезапуска «Uprog» или изменении конфигурации устройства были не онлайн — не горят зеленые кружочки и не активны кнопки чтения/записи (см. скриншот выше), и мы не видим именно текущую конфигурацию «С2000-Ethernet»:

Мы можем видеть текущие настройки конфигурации из кэша, а не из самих «С2000-Ethernet» и эти настройки могут оказаться «левыми».

К слову, UProg информирует о том, что настройки взяты из кэша:

Способ работы при глюках был найден: необходимо было удалить, а затем вновь добавить линию.

Чуть что — удалять/добавлять линию и перезапускать перезапускать «UProg».

Какой-то из следующих шагов привел к стабильной работе «UProg» с «С2000-Ethernet» почти без глюков и зависаний.

Согласование на диодах Шотки

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

Цепь согласования на диодах Шотки впустую рассеивает незначительную энергию, поскольку проводимость проявляется только при наличии положительных и отрицательных выбросов. С другой стороны, стандартное резистивное согласование (как с резисторами защитного смещения, так и без оных) приводит к постоянному рассеиванию мощности. Рисунок 6 иллюстрирует использование диодов Шотки для борьбы с отражениями. Диоды не обеспечивают отказоустойчивую работу, однако уровни порогового напряжения, выбранные в приемопередатчиках MAX308X и MAX3471, дают возможность реализовать отказоустойчивую работу и с этим типом согласования.

Рис. 6

Диод Шотки, являющийся наилучшим доступным приближением к идеальному диоду (нулевое прямое напряжение Vf, нулевое время включения tON и нулевое время обратного восстановления trr), представляет большой интерес в качестве замены энергоемких согласующих резисторов. Недостаток такого согласования в системах на основе RS-485/RS-422 заключается в том, что диоды Шотки не могут подавлять все отражения. Как только отраженный сигнал угаснет ниже прямого напряжения диода Шотки, его энергия останется незатронутой согласующими диодами и сохранится до тех пор, пока не будет рассеяна кабелем.


Рис. 7

Главный недостаток Шотки-терминатора — его стоимость. Одна точка согласования требует двух диодов. Поскольку шина RS-485/RS-422 является дифференциальной, это число умножается на два (рис. 6). Использование на шине множественных Шотки-терминаторов не является необычным.Терминаторы на диодах Шотки дают много преимуществ для систем на основе RS-485/RS-422, и экономия энергии — главное из них (рис. 7). Не нужно ничего вычислять, поскольку специфицированные ограничения для длины кабеля и скорости передачи данных будут достигнуты раньше, чем какие- либо ограничения Шотки-терминатора. Другое преимущество заключается в том, что множественные Шотки-терминаторы в различных ответвлениях и на входах приемников улучшают качество сигнала без загрузки коммуникационной шины.

Записки IoT-провайдера. LoRaWAN и RS-485 +9

  • 15.06.18 05:51


Interfer

#414159

Хабрахабр

4300

IT-инфраструктура, IT-стандарты, Беспроводные технологии, Интернет вещей
Рекомендация: подборка платных и бесплатных курсов создания сайтов — https://katalog-kursov.ru/

Здравствуйте, уважаемые любители Интернета Вещей. Продолжаю свой цикл статей.

Первая частьВторая частьТретья частьЧетвертая частьПятая часть

Итак, мы научились работать с импульсным выходом счетчиков и освоили шифрование. Какой шаг следующий? Ответ очевиден. RS-485.
Чуть-чуть теории. RS-485 (Recommended Standard) – это асинхронный интерфейс физического уровня. Получил огромную популярность в Промышленном Интернете, начиная от ЖКХ и заканчивая различными заводами и предприятиями.

В принципе, почти любой счетчик, который хочет передать нам не один, а несколько параметров, скорее всего, будет снабжен RS-485. Реже RS-232 или M-Bus, но их пока оставим в стороне и разберем самый показательный пример. Точнее проблемы в работе с ним.

Исключение согласования

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

  1. Для рассматриваемого кабеля необходимо найти скорость одностороннего прохождения сигнала, обычно предоставляемую производителем кабеля как процентное отношение к скорости света в свободном пространстве. Типовое значение для стандартного кабеля в поливинилхлоридной изоляции, состоящего их витой пары #24 AWG, составляет 20,3 мм/нс.
  2. Из спецификации приемопередатчика RS-485 находится его минимальное время нарастания (tr min). Например, для MAX3471 оно равно 750 нс.
  3. Это минимальное время нарастания делится на 4. Для MAX3471 получается tr min/4 = 750/4 = 187,5 нс.
  4. На последнем этапе вычисляется максимальная протяженность кабеля, для которой не требуется согласование. Для MAX3471 она равна 187,5 нс (230 мм/нс) = 38 м.

Таким образом, MAX3471 может обеспечить приличное качество сигнала без согласующих резисторов при передаче и приеме на скорости 64 Кбит/с по 38-метровому кабелю. Рисунок 4 демонстрирует, сколь сильно снижается потребление MAX3471 при работе на тридцатиметровый кабель без согласующих резисторов по сравнению с работой на трехсотметровый кабель и согласующие резисторы.

Рис. 4

2.3.8. Расширение предельных возможностей

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

В некоторых случаях требуется соединить устройства на расстоянии более 1200 м или подключить к одной сети более 32 устройств. Это можно сделать с помощью повторителей (репитеров, ретрансляторов) интерфейса. Повторитель устанавливается между двумя сегментами линии передачи, принимает сигнал одного сегмента, восстанавливает фронты импульсов и передает его с помощью стандартного передатчика во второй сегмент (). Такие повторители обычно являются двунаправленными и имеют гальваническую изоляцию. Примером может служить повторитель NL-485C фирмы RealLab!. Каждый повторитель позволяет добавить к линии 31 стандартное устройство и увеличить длину линии на 1200 м.

Распространенным методом увеличения числа нагрузок линии является использование приемников с более высокоомным входом, чем предусмотрено стандартом EIA/TIA-485 (12 кОм). Например, при входном сопротивлении приемника 24 кОм к стандартному передатчику можно подключить 64 приемника. Уже выпускаются микросхемы трансиверов для интерфейса RS-485 с возможностью подключения 64, 128 и 256 приемников в одном сегменте сети (www.analog.com/RS485). Отметим, что увеличение количества нагрузок путем увеличения входного сопротивления приемников приводит к уменьшению мощности передаваемого по линии сигнала, и, как следствие, к снижению помехоустойчивости.

Способы уменьшения энергопотребления

Как было показано в табл. 2, приемопередатчики сильно различаются значениями их токов покоя. Таким образом, первым шагом в деле сохранения энергии должен стать выбор малопотребляющего устройства, такого как MAX3471 (2,8 мкА при отключенном драйвере, при скорости до 64 Кбит/с). Поскольку потребление энергии существенно возрастает при передаче данных, другой целью является минимизация времени работы драйверов за счет передачи коротких телеграмм (блоков данных. — Примеч. перев.) с длительными периодами ожидания между ними. В табл. 3 представлена структура типовой телеграммы последовательной передачи.

Таблица 3. Телеграмма последовательной передачи

Биты управления Адресные биты Биты данных Контрольные биты Биты управления

Система на основе RS-485, использующая приемники в одну единичную нагрузку (до 32 адресуемых устройств), может, например, иметь следующие биты: 5 бит адреса, 8 бит данных, стартовые биты (все кадры), стоповые биты (все кадры), биты четности (необязательные) и биты CRC (необязательные). Минимальная длина телеграммы для такой конфигурации — 20 бит. Для безопасных передач вы должны отправить дополнительную информацию, такую как размер данных, адрес отправителя и направление, которая увеличит длину телеграммы до 255 байт (2040 бит).

Подобное изменение длины телеграммы со структурой, определяемой такими стандартами, как X.25, обеспечивает надежность данных за счет увеличения времени использования шины и потребляемой мощности. Например, передача 20 бит при 200 Кбит/с потребует 100 мкс. При использовании MAX1483 для ежесекундной отправки данных на скорости 200 Кбит/с средний ток составит 25,3 мкА.

Когда приемопередатчик находится в неактивном режиме (idle mode), его драйвер должен быть отключен для минимизации потребляемой мощности. В табл. 4 демонстрируется влияние длины телеграммы на потребляемую мощность одиночного драйвера MAX1483, который работает с определенными перерывами между передачами. Использование режима отключения (shutdown mode) может еще больше снизить потребляемую мощность в системе, использующей технологию опроса через фиксированные промежутки времени или детерминированные перерывы между передачами.

Таблица 4. Соотношение между длиной телеграммы и потребляемым током при использовании драйвера MAX1483

Телеграмма Ежесекундно, мкА Каждые 10 секунд, мкА Ежеминутно, мкА
20-битовая 25,3 20,5 20,1
100-битовая 61,1 24,1 20,7
255-битовая 560,4 74,0 29,0


Рис. 3

Кроме того, аппаратные средства предлагают множество вариантов снижения энергопотребления. На рис. 3 сравниваются токи, потребляемые различными трансиверами при передаче сигнала прямоугольной формы по 300-метровому кабелю с активными драйверами и приемниками. 75ALS176 и MAX1483 используют стандартную согласующую цепь 560 Ом/120 Ом/560 Ом на обоих концах линии связи, в то время, как «истинно безотказные» («true failsafe») устройства MAX3088 и MAX3471 имеют лишь 120-омные согласующие резисторы на обоих концах шины. При скорости 20 Кбит/с токи потребления лежат в диапазоне от 12,2 мА (MAX3471 с напряжением питания VCC = 3,3 В) до 70 мА (75ALS176). Таким образом, значительное сокращение потребления возникает немедленно, как только вы выбираете малопотребляющее устройство со свойством «истиной безотказности», которое, кроме того, исключает необходимость установки резисторов защитного смещения (на землю и на линию питания VCC). Убедитесь, что приемник выбранного вами приемопередатчика RS-485 выдает на выход правильные логические уровни для условий как замкнутой, так и разомкнутой цепи.

Подключение и настройка

RS-485 (Troyka-модуль) общается с управляющей платой по протоколу UART через сигнальные пины и . Cигнальный пин служит для переключения модуля из режима приёмника в режим передатчика.

Для работы с модулем подойдёт Troyka Shield.

Если хотите оставить минимум проводов —
возьмите Troyka Slot Shield.

SoftwareSerial

Некоторые платы Arduino прошиваются через пины 0 и 1 (Uno, Mega 2560, ADK и Iskra Mini). Перед прошивкой таких плат отключите модуль от пинов RX и TX. Если необходимо одновременно работать с RS485 и подключать контроллер к компьютеру, подключите пины TX и RX к другим контактам управляющей платы.

Для примера подключим управляющие пины RS485-модуля и — на и пин Arduino через Troyka Shield.

Основы протокола RS-232

RS-232 (Рекомендуемый стандарт-232) был представлен в 1960-х годах, и после нескольких пересмотров он был назван TIA/EIA -232-F в 1977 году. За это отвечают Ассоциация электронной промышленности (EIA) и Ассоциация индустрии телекоммуникаций (TIA).

Стандарт RS-232 был разработан для обеспечения совместимой связи между различными поставщиками небольших интерфейсов последовательной передачи данных. Он определяет имена и электрические характеристики сигналов в интерфейсах, а также механические атрибуты используемых интерфейсов. Любой интерфейс RS-232 используется только для подключения двух устройств. Одним из них является оконечное оборудование данных (DTE), а другим – оборудование передачи данных (DCE). Интерфейсы RS-232 обычно используются для подключения периферийных устройств к ПК, поэтому обычно DTE может быть ПК, а DCE может быть принтером. Связь между двумя устройствами увеличена до 50 футов, а скорость передачи данных – до 20 Кбит/с.

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

С точки зрения электрических характеристик передаваемых сигналов логический уровень 0 определяется как равный или более положительный, чем +3 В, а логический уровень 1 определяется как равный или более отрицательный, чем -3 В. Сигналы используют отрицательную логику. В протоколах также указано, что входные сигналы между -3 В и + 3 В не определены.

Другая особенность заключается в том, что RS-232 — это протокол асинхронной связи точка-точка. Термин «асинхронный» говорит нам, что не используется общее тактирование для синхронизации передатчика и приемника. Они работают по своим тактам. Синхронизированная передача данных между ними происходит, потому что данные передаются в форме известного формата данных протокола.

Рейтинг
( Пока оценок нет )
Editor
Editor/ автор статьи

Давно интересуюсь темой. Мне нравится писать о том, в чём разбираюсь.

Понравилась статья? Поделиться с друзьями:
Союз-Маркет
Добавить комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: