Конвертер usb rs485 для чего нужен

от admin

Преобразователь интерфейсов USB-RS485

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

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

Преобразователь интерфейсов USB-RS485 как раз и является устройством, позволяющим осуществить переход с интерфейса USB на порт RS485. Преобразователь, подключаемый к USB-порту компьютера или ноутбука, осуществляет взаимное преобразование сигналов USB и RS485.

Устройство поддерживает автоматическое переключение с приема на передачу, и обеспечивает подключение контроллеров, измерительных устройств, систем сбора данных к компьютеру с использованием интерфейса USB.

Конструктивно преобразователь представляет собой устройство размером 66х18х10мм и сопоставим по габаритам с обычной «флэшкой». Для подключения проводов со стороны RS485 имеется винтовой клеммный блок, позволяющий быстро и надежно подключать провода типа «витая пара». Питание устройства осуществляется от USB-порта компьютера.

Устройство USB-RS485 работает в среде ОС Windows 2000, 2003, XP, Vista, 7, Server 2008, Server 2008 R2, Windows 8 (x86 и х64), 8.1, 10. Кроме того, устройство имеет индикацию прием/передачи данных. Драйвера, необходимые для подключения преобразователя к ПК можно скачать на сайте производителя.

Конвертер USB в RS-485

Интерфейс RS-485 является промышленным стандартом физического уровня связи.
Кому интересно, можно почитать например тут:
www.softelectro.ru/rs485.html
Как обычно, прислали конвертер в мягком мятом пакетике.
Корпус устройства оказался белым — хоть и есть несоответствие с фото продавца, на работу надеюсь не повлияет.


Клеммы подключения RS-485

Разбирается просто — корпус даже без защёлок


Экран USB разъёма к плате не припаян — необходимо обязательно пропаять, иначе он быстро будет оторван.

Как-то так

Терминатор на плате не установлен, но место под него есть (R6) и при необходимости можно его допаять (обычно 100-150 Ом).
A (D+) подтянут резистором 2,2к на +5V
B (D-) подтянут резистором 2,2к на общий.

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

По неписаным правилам, если гальванической развязки нет, надо добавить на разъём подключения RS-485 ещё третью клемму «Общий провод» — тут китайцы явно зря сэкономили.

Конвертер в начале преобразует USB в RS232 TTL (на CH340T), затем его преобразует в RS-485 (на MAX485)
На микросхеме CH340T маркировка отсутствует.
Микросхема MAX485
www.ddrservice.info/f0z/Integrated-circuits/M/max/max485.pdf
Поддерживает скорость до 2,5Mbit, но в данном устройстве скорость ограничена 128kbit.
Третья микросхема — мелкая логика со спиленной маркировкой. Скорее всего это что-то типа SN74HC00 — работает просто как инвертор сигнала для управления MAX485.

В системе конвертер видится как USB-SERIAL CH340
Работает под любой OS
Драйвер под Win подходит CH341SER
yadi.sk/d/EVgMWzmXd6Y3R

Достоинства:
— По сравнению с промышленными аналогами стоит в 15 раз меньше 🙂
— Малые габариты и вес, можно всегда с собой таскать
— Питание от USB порта
Недостатки:
— Отсутствие гальванической развязки
— Не работает на высоких скоростях и на длинных линиях

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

Как мы изобрели велосипед: адаптер USB–RS485 с выходом питания 12 В и защитой

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

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

А иногда мы делаем что-то простое, но по-своему — например, преобразователь интерфейсов WB-USB485. Вы узнаете о недостатках существующих адаптеров, как мы искали идеальное решение и про весь процесс: от идеи до запуска серийного производства.

Задача

Периферийные устройства Wiren Board работают по протоколу Modbus RTU, а значит, их можно использовать с любым контроллером или SCADA, если они поддерживают Modbus.

Но особенность в том, что наши устройства многое могут, поэтому перед использованием их надо как-то настроить. Например, в модуле WB-MR6C v.2 можно назначить управление любым выходом от любого входа — и всё это в разрезе четырёх типов нажатий. Ещё есть безопасные режимы и разные типы выключателей, подключаемых к входам.

При использовании контроллера Wiren Board устройства настраиваются через его веб-интерфейс, а если контроллера нет — настраивать надо с компьютера.

Настройка реле WB-MR6C v.2 из веб-интерфейса контроллера Wiren Board 7

Настройка реле WB-MR6C v.2 через Rilheva Modbus Poll на компьютере с Windows

Обычно настройка с компьютера делается через софт, эмулирующий modbus-мастер и преобразователь интерфейса USB <> RS485.

И если с софтом всё более или менее понятно, есть та же Rilheva Modbus Poll для Windows или консольный modbus_client для Linux, то с преобразователями не всё так хорошо.

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

Поиск решения

Сперва мы хотели решить задачу просто: привезти кучу хороших преобразователей интерфейса, растаможить, заплатить налоги и продавать с минимальной наценкой и гарантией, указав «Сделано в Китае».

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

Ещё для стабильной работы преобразователя на любых скоростях, трансивер должен явно переключаться на передачу и приём. Для этого микросхема USB-UART должна иметь специальную ножку, которая будет сигнализировать об окончании передачи.

Но таких микросхем мало, да и чаще всего производители просто ставят RC–цепочку и инвертор, а потом пытаются угадать направление по напряжению на TX. В итоге оно зависит от скорости передачи: может слишком поздно переключиться на приём и терять начало ответа, либо наоборот — включать приём в середине передачи пакета.

Осциллограммы передачи пакета без явного переключения направления передачи и с явным (в нормальном размере)

Преобразователи интерфейсов USB-RS485 с Алиэкспресса

Преобразователи интерфейсов USB-RS485 с Алиэкспресса

Поэтому мы вспомнили старую пословицу «Если хочешь, чтобы что-то было хорошо — сделай всё сам». Так началась работа над «Адаптером USB-RS485», который впоследствии получил имя WB-USB485, но обо всём по порядку.

Формулируем задание на разработку

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

Modbus-устройства Wiren Board работают в диапазоне напряжений от 9 до 28 В, а пиковая потребляемая мощность — 4 Вт. Поэтому в требованиях прописали выход 12.5 В с током до 400 мА.

Если есть питание, то хочется дать пользователю индикатор с простой логикой: горит — питание есть, не горит — что-то пошло не так, например, короткое замыкание на линии.

Устройство должно быть компактным и удобным в использовании, идеальный форм-фактор — флешка с клеммником под шину RS-485.

Обязательна работа без вендорских драйверов в Windows, Linux, MacOS и Android — для этого микросхема USB-UART должна относиться к классу CDC ACM (Communication Device, Abstract Control Model).

В итоге ТЗ на разработку выглядело так:

Сделать USB-RS485 переходник со степ-апом на 12 В / 400 мА, чтобы можно было подключать наши modbus-устройства без внешнего блока питания.

Индикатор питания на шине, он же индикатор короткого замыкания.

Работа в популярных ОС без установки дополнительных драйверов.

Стабильная работа при любых настройках во всём диапазоне скоростей вплоть до 115200 бит/с.

Умещаться устройство должно в компактный корпус, похожий на флешку.

Задача есть — делаем.

А где гальваническая развязка?

У нас были бурные дискуссии внутри разработки, были сторонники её
добавить несмотря ни на что, а были и противники. И у каждого были свои
аргументы от «А если на шине будет сетевое напряжение?» до «А если шина
будет на сотни метров да между разными зданиями?».

Но основное назначение WB-USB485 — настройка устройств на столе. Поэтому
сетевое напряжение на шине может оказаться только при питании
modbus-устройства от неизолированного блока питания 230 В. В этом случае
на A/B шины окажется 110 В сетевого напряжения, попавшие туда через
среднюю точку конденсаторов.

Тогда возможно два сценария развития событий:

с гальваноразвязкой — под сетевым напряжением останутся провода и клемма RS-485;

без гальваноразвязки — USB-разъём ноутбука обеспечит выравнивание земель через защитные диоды, но в теории может сгореть ноут.

И непонятно, что хуже — вероятность спалить технику или подвергнуть опасности человека. Конечно, люди важнее, чем техника.

Ещё довольно дорого сделать гальванически изолированный БП на 5 Ватт, и он точно не уместится в компактном корпусе.

В итоге мы решили гальваническую развязку не делать и в документации явно про это сказать, а ещё предупредить, чтобы не подключали к длинным линиям и к странным китайским устройствам с питанием от 230 В.

Первый блин

Трансиверы RS-485 у нас используются примерно везде, а вот хорошие преобразователи USB-UART пришлось долго и муторно искать.

В 2020 году WCH (WinChipHead) анонсировал новые чипы CH342 и CH343. Мы на всякий случай купили все образцы, какие смогли. Покупали не напрямую в WCH, так как они тогда шугались англоязычных клиентов, а через случайного китайского агента.

Когда проектировали наше устройство в первый раз, оказалось, что чипов CH342 и CH343 ещё нет в массовом производстве, поэтому в проект заложили другой чип от WCH. Но до производства дело так и не дошло — нагрянул кризис компонентов и стало не до новинок.

Вторая попытка

И вот мы неожиданно обнаружили, что чипы CH343G стали свободно доступны, есть у всех поставщиков и стоят недорого — мы реанимировали проект.

Дело было в апреле 2022 года, когда измотанный пандемией рынок электронных компонентов накрыла волна логистического ужаса и отмены поставок. Поэтому мы всей компанией пытались не допустить остановки производства: делали новые ревизии устройств с ещё доступными в продаже компонентами, подбирали аналоги, закупали компоненты впрок и т.п. Подробнее про то, как всё это происходило, читайте в нашем докладе Новости Wiren Board. Как мы теперь покупаем компоненты.

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

Наш склад компонентов

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

Проект поручили молодому инженеру-электронщику Даниилу Баркову, который на тот момент уже работал в компании пару месяцев и успел за это время разработать и собрать пару стендов для проверки реле на пусковые токи.

Один из стендов, собранных Даниилом для тестирования реле

Корпус

С корпусом определились быстро — мы как раз в прошлом году запустили производство сетевых адаптеров для холодильных контроллеров и там использовали корпус, похожий на флешку. Его и решили использовать в проекте, после небольшой доработки на фрезерном станке.

Будущий корпус устройства

Схема и плата

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

Обычно процесс выглядит так: инженер рисует схему в Eagle, обсуждает с коллегами, потом там же разводит плату и размещает заказ на 10-20 штук в Резонит.

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

Создание схемы в EAGLE

Плата

Прототип и неожиданная проблема

Через несколько дней мы получаем плату v2.0 (v1.0 была нарисована в 2020 году, но в производство не пошла), припаиваем компоненты и… у нас не работает управление полудуплексом. Да ещё и на двух образцах.

Проверка работы WB-USB485 на ноутбуке от Apple

Даниил долго ищет проблему: проверяет схему, разводку плат и монтаж и номиналы деталей, изучает сигналы с осциллографом и, с подачи коллеги, приходит к выводу — проблема в чипах CH343, которые мы купили для пробы в далёком 2020 году.

Читать:
Чем отличается v от w

Чтобы подтвердить гипотезу, надо было поставить чип из другой партии, а взять негде — от производителя чипы приедут только через два месяца, а в продуктах на рынке их ещё толком не было.

Но нам удалось найти какое-то устройство на ESP32 и с чипом CH343, которое мы и купили для опытов. Это помогло — после пересадки чипа с донора всё заработало.

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

Плата WB-USB485 и плата-донор чипа

Поиск идеального USB-коннектора

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

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

В итоге нашли то, что нужно. Купили, проверили — собирается в корпус. На радостях заказали 300 штук, а позже выяснилось, что эти коннекторы плохо контачат с потертыми USB-портами компьютера.

USB-коннекторы слева направо: ТНТ, дешёвый SMD, Molex и финальный вариант

Предположили, что так себя ведут дешевые коннекторы, поэтому купили самые дорогие в Компэле от Molex — работают идеально, но стоят недешево.

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

Защищаем вход компьютера

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

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

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

Решили сделать защиту. Максимальное напряжение питания наших устройств 28 В постоянного тока, поэтому сделали защиту до 30 В.

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

Кусочек схемы с защитой

Запуск производства

Как только появляется рабочий прототип и мы принимаем решение запускать устройство в серию, начинается самое интересное — запуск серийного производства.

Страница устройства в интернет-магазине

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

Почему нельзя просто собрать устройство и потом менять по гарантии, если оно не работает? На это есть сразу несколько причин:

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

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

Мы постоянно выпускаем новые ревизии устройств: улучшаем их, исправляем незначительные ошибки или просто меняем компоненты, потому, что старые больше нельзя купить.

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

Компоненты из новой партии могут оказаться бракованными.

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

Стенд тестирования WB-USB485 проверяет:

Тракт приема-передачи: передаём пакет на скорости 115200 бит/с, принимаем его контроллером и отправляем назад.

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

Монтажнику на производстве достаточно воткнуть устройство в USB-порт стенда, подключить клеммник RS-485 и нажать большую красную кнопку — остальное происходит автоматически.

Стенд выходного тестирования WB-USB485 на производстве

Нейминг и наклейки

Нейминг моделей у нас нехитрый:

префикс WB — это сокращение от Wiren Board;

Буквы MB в modbus-устройствах — это сокращение от MODBUS;

а дальше уже идёт какая-то характеристика устройства: количество выходов, протокол, тип сигнала и т.п.

Это устройство мы назвали также просто — WB-USB485, он лишь преобразователь интерфейсов и не ограничен только Modbus.

Типография у нас своя — это позволяет оперативно печатать нужное количество наклеек и оперативно вносить изменения, если сменилась версия устройства, появилась новая функция или закралась ошибка.

Первые образцы наклеек с ошибкой — это преобразователь интерфейсов, а не Modbus-адаптер

Плоттер Graphtec CE7000-40

Первые серийные экземпляры

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

Партия не настолько большая, чтобы отправлять её на контрактный монтаж, поэтому мы смонтировали SMD компоненты у себя на производстве с помощью установщика SMD-Taxi. Выводные компоненты паяли, как обычно, вручную.

Установщик компонентов SMD-Taxi, используем для небольших партий плат до 30 000 точек пайки

Панель с платами WB-USB485 v2.2, партия A

WB-USB485 v.2.2 в сборе

А комплект?

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

Решение казалось очевидным: взять кусок витой пары, обжать концы в НШВИ и закрутить их в ответные части клеммников. Получилось удобно и функционально: USB-свисток и пара кабелей в комплекте. В таком виде их и получили первые покупатели.

С кабелями тут мы здорово ошиблись, но об этом чуть ниже.

Первый вариант комплектации WB-USB485 v.2.2

Фидбэк

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

Красный индикатор питания в версии 2.2 и жёсткий кабель для подключения устройств

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

красный статусный индикатор пугает пользователя;

комплектные кабели получились жёсткие и некрасивые;

не хватает индикаторов RX/TX — нельзя понять, есть ли обмен на шине;

клеммная колодка шины RS485 сделана такой же, как в устройствах WB-M1W2/WB-MSW, что не позволяет откинуть в инсталляции от шины контроллер и подключить вместо него WB-USB485;

колпачок оказался жутко неудобным и его тяжело снимать;

на разъёме RS-485 не хватает цветовой маркировки — надо всматриваться в буквы на плате при использовании кабелей не из комплекта.

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

Работа над ошибками

Даниил перерисовывает схему и плату, где меняет цвет светодиода питания на зелёный и добавляет ещё два: оранжевый TX и синий RX.

Инженерные образцы, сверху вниз: v2.0, v2.2 с напаянными на трансивер индикаторами RX/TX, v2.3

Пока едет новая плата, думаем, что делать с комплектными кабелями.

В первом варианте мы использовали кабель ParLan Patch U/UTP Cat5e PVC 2х2х0.35 мм кв., у которого всего 2 витых пары, но довольно упругая изоляция и пластиковая жилка внутри.

Решили, что станет лучше, если мы удалим изоляцию и всё лишнее, оставив только провода. А чтобы они не разваливались, мы их скрутим в жгут.

Попытка сделать гибкий кабель без изоляции

Вышло, честно сказать, плохо. Решили заказать обычный тоненький четырёхпроводной кабель без витых пар 26awg Black 4 Cores — кабели короткие, поэтому в витой паре нет совершенно никакой необходимости. Зато результат получится классным: тоненький гибкий проводок чёрного цвета.

Слева — первая версия кабеля, справа — вторая

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

К моменту прихода большой партии WB-USB485 v2.3, модули v2.2 уже разлетелась и следующие пользователи получили уже по-настоящему классные устройства: в комплекте с удобными кабелями, индикаторами обмена на шине и питания, а также в компактной коробке.

Две версии WB-USB485: слева v2.2, справа — v2.3

Что в итоге

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

В комплекте с устройствами два кабеля, подходящие ко всем нашим устройствам. Не нужно ставить драйвера на Windows, Linux, MacOS и Android.

Судя по отзывам и продажам, пользователям тоже понравилось.

Настройка реле с измерением мощности WB-MRWM2 через WB-USB485

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

Мы немного облегчили их труд шаблонами под Rilheva Modbus Poll, но это всё не то. Однажды мы сделаем удобный конфигуратор наших устройств, который будет использовать шаблоны от нашего драйвера.

Так сейчас выглядит настройка диммера Wiren Board в Rilheva Modbus Poll с использованием наших шаблонов

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

Если вы просто интересуетесь автоматизацией, производством электроники и чем-то таким — приходите 21 и 22 апреля 2023 г. на нашу конференцию и выставку WBCE 2023. Там мы с партнёрами покажем новинки, расскажем много интересного и обязательно организуем для вас живую экскурсию по нашему офису и производству.

Преобразователь интерфейсов USB / RS-485.

Модуль конвертера USB / RS485

Короткий обзор модуля преобразователя интерфейса USB в RS-485.

Удобный, миниатюрный модуль, позволяющий подключать компьютер непосредственно к сети RS-485. На Али Экспресс стоит всего 52 руб.

Интерфейс RS-485 один из самых распространенных стандартов для организации малых сетей. Я описывал его подробно в одном из уроков Ардуино.

В сетях RS-485 используется дифференциальный способ передачи данных. Подключение сети к модулю происходит через клеммную колодку с двумя дифференциальными сигналами A (D+) и B (D-).

Конвертер USB / RS485

Сам модуль подключается к компьютеру через стандартный USB порт.

Модуль преобразователя USB / RS-485 состоит из двух узлов:

  • конвертер интерфейсов USB / UART CH340;
  • приемопередатчик (драйвер) RS-485 MAX485.

Вот принципиальная схема модуля USB / RS-485.

Схема модуль конвертера USB / RS485

При организации сетей RS-485 одна из главных проблем – управление передатчиком. У передатчика есть сигнал DE, который разрешает его работу. Всегда в сети должен быть активным только один передатчик. Иначе произойдет замыкание выходных сигналов.

Обычно коммутация сигналов при обмене происходит следующим образом.

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

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

Разработчики модуля USB / RS-485 решили проблему просто. Передатчик включается только при активном (низком) уровне выходного сигнала UART. Сигнал с выхода TxD инвертируется на транзисторном ключе Q1 и поступает на вход управления передатчиком DE.

При высоком уровне на выходе TxD передатчик отключен. Состояние дифференциальных сигналов сети в этот момент (логическая 1) поддерживается за счет резисторов R3 и R5.

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

Вот как выглядит модуль со снятой крышкой.

Модуль преобразователя интерфейсов USB / RS485

Резистор-теминатор R7 на плате не установлен.

Модуль эмулирует работу стандартного COM-порта. На компьютер устанавливается драйвер конвертера интерфейсов CH340. При каждом подключении модуля USB / RS-485 к порту компьютера в системе появляется виртуальный COM-порт, через который можно передавать и принимать данные.

Подробно о принципе работы преобразователя интерфейсов CH340 и об установке его драйвера можно посмотреть по этой ссылке. Вся информации верна и для модуля USB / RS-485.

На мой взгляд, модуль сделан удачно. У меня самые хорошие отзывы о работе с ним.

Похожие публикации