Переходник rs 485 usb своими руками схема

УНИВЕРСАЛЬНЫЙ КОНВЕРТЕР USB

В основе предлагаемого для самостоятельного изготовления универсального конвертера лежит многим известная микросхема FT232R, компьютером определяемая, как обыкновенный COM порт, и два последовательных преобразователя – MAX232 и MAX485. Устройство можно использовать как RS-232, RS-485, или UART TTL конвертер. Параметры связи устанавливаются в операционной системе, как для обычного COM порта. Поддерживаемые скорости до 921600 бод.

Схема конвертера USB в RS-232, RS-485, UART

Конвертер USB-UART – сигналы линий TxD и RxD в стандарте TTL выведены на штыревой разъем на плате для подключения устройств, использующих асинхронную передачу с напряжением 0–5 В, таких как микроконтроллеры. Выход RxD соединен, также, и с выходом микросхемы MAX232. Эта микросхема не может переключаться в высокоимпедансное состояние, когда не используется (0 В на разъеме RS). Вместо этого, на этом выходе будет высокий уровень, что не даст возможности использовать его совместно с другими передающими устройствами. Самое простое решение – поставить резистор 10 кОм между этим выходом и линией чтения. Микросхема FT232R через резистор считывает данные корректно, а ток, необходимый для подтягивания линии к земле, не превышает 1 мА.

Конвертер USB-RS232 – Две микросхемы MAX232 используются для преобразования сигналов из стандарта TTL в V.24 и наоборот. Мы могли бы использовать специально предназначенную для этого микросхему MAX211, но она дорогая, и ее трудно найти в продаже, поэтому я решил использовать дешевую MAX232. Единственный недостаток такого решения в том, что не преобразуется сигнал RING, но он используется очень редко. Микросхема MAX232 имеет встроенный преобразователь напряжения +9 В –9 В, необходимый для соответствия сигналов стандарту V.24.

Конвертер USB-RS485 – Используется преобразователь на микросхеме SN75176. Его передатчик управляется сигналом TXDEN с вывода CBUS2 микросхемы FT232R. Передатчик включается автоматически, только при передаче данных. Приемник конфигурируется путем выбора соответствующей функции на выводе CBUS3 микросхемы FT232R. Конфигурирование производится с помощью утилиты MPROG. Если задана функция «TXDEN» – приемник будет активен все время, пока не производится передача данных, и приема эхо в этом режиме происходить не будет. При выборе функции «PWRON» приемник работает всегда, принимая также и эхо. Функция «I/O» полностью отключает приемник и устанавливает его выход RX в высокоимпедансное состояние. В этом режиме мы можем использовать другие интерфейсные разъемы на плате.

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

Originally posted 2019-04-30 10:31:57. Republished by Blog Post Promoter

Источник

Схема. Преобразователь USB RS232(RS485)

Автор: Radioelectronika-Ru · Опубликовано 15.02.2018 · Обновлено 16.03.2018

Данное устройство представляет из себя преобразователь интерфейса USB в интерфейс RS232 или RS485. Устройство может использоваться для связи компьютера и микроконтроллера, либо иного устройства, по выше описанным интерфейсам. Схема устройства приведена на рис. 3.

Схема устройства состоит из микросхемы преобразователя USB RS232 DD1 FT232 фирмы FTDI, микросхемы eeprom DD2 AT93C46 фирмы Atmel и преобразователя RS232 RS485 DD3 ADM485 фирмы Analog Devices.

Светодиод VD1 «PWR» служит для отображения подачи питания на устройство. Светодиоды VD2 и VD3 сигнализируют о направлении передачи данных, а именно, VD2 «TX»- передача данных от компьютера, VD3 «RX» — прием.

Микросхему памяти DD2 можно не устанавливать, если к компьютеру подключено одно устройство, реализованное на FT232. В ней хранятся идентификаторы изготовителя (VID) и персональный (PID), заводской номер изделия и другие данные.

Детали
Резисторы — smd типоразмера 0805.
Конденсатор С7 танталовый, можно заменить на электролитический с тем же номиналом и напряжением не менее 6,3 В. Остальные конденсаторы — smd типоразмера 0805.
Индуктивность L1 — smd типоразмера 1206 можно заменить на любую с тем же номиналом.
Защитные диоды VD4 и VD5 можно заменить на стабилитроны с напряжением стабилизации 5,1 В, например BZX55C5V1.
Светодиоды VD1-VD3 можно заменить на любые другие.
Микросхему DD2 можно заменить на AT93C56 или AT93C66.

Читайте также:  Постройка дома шалаша своими руками

Установка и настройка

Пример настройки рассмотрен для операционной системы Windows XP 32bit. Если у Вас стоит другая операционная система, то информацию по установке и необходимые драйверы можно скачать с сайта производителя www.ftdichip.com

Распакуйте архив драйвера 12_30_00__16_03_2010.rar в отдельную папку. Подключите устройство к компьютеру. Заметив новое устройство, операционная система попросит указать папку с драйвером, укажите на распакованную папку. Следующим шагом заходим в распакованную папку и запускаем программу FTD2XXST.EXE, позволяющую запрограммировать микросхему eeprom. При первом запуске программы будет выведено следующее окно:

RS232(RS485)» src=»https://radioelectronika.ru/cxemi/10/12_29_35__16_03_2010.png» alt=»Преобразователь USB RS232(RS485)»/>
Рис. 4 — Окно программы

Необходимо будет заполнить следующие поля:
Manufacturer (производитель): FTDI.
Manufacturer ID (идентификатор производителя): FT.
Vendor ID (идентификатор поставщика): 0403.
Product ID (идентификатор продукта): 6001.
Description (описание): USB Serial Converter.

RS232(RS485)» src=»https://radioelectronika.ru/cxemi/10/12_29_42__16_03_2010.png» alt=»Преобразователь USB RS232(RS485)»/>
Рис. 5

По умолчанию должны быть установлены флаги Plug and Play (автоматическое определение устройства) и Remote Wakeup (выход из режима пониженного энергопотребления).

Установка флага Fixed Serial Number позволяет присвоить устройству постоянный серийный номер, но при этом следует помнить что устройства с одинаковыми номерами подключать к компьютеру нельзя.
Флаг Self Powered оставляем не установленным, так как устройство питается не от своего источника, а от шины USB .

В окне Max Power (mA) (максимальный ток, потребляемый устройством) пропишите значение 100 мА.

Возвращаемся в основное окно и ставим галочку в строке FT232BM/FT245BM. Появятся дополнительно несколько строк, в которых необходимо поставить флаги Enable Serial Number и Int Pull-Down Enable

RS232(RS485)» src=»https://radioelectronika.ru/cxemi/10/12_29_48__16_03_2010.png» alt=»Преобразователь USB RS232(RS485)»/>
Рис. 6 — Окно программы

Нажимаем на кнопку Save для сохранения настроек, после чего нажимаем на кнопку Program, чтобы записать введенные данные в eeprom преобразователя. Осталось перезагрузить операционную систему компьютера.

Источник

Переходник USB — RS-485 своими руками

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

Итак, перед нами стоит задача:

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

Для этих целей используются микросхемы FT232 и MAX485 (или аналог SP481). Первая микросхема используется для подключения устройств к компьютеру через USB, на выходе у неё ТТЛ-сигнал, вторая — для преобразования уровней (из ТТЛ в RS-485), этот сигнал и нужен устройствам, с которыми будет работать компьютер.

Схема подключения этих микросхем есть на официальном сайте производителя FT232: здесь. Вот, как выглядит схема подключения:

Не кисло, а? На самом деле, всё очень просто, прочитайте документацию, там есть объяснение, каким образом FT232 знает, что нужно конфигурировать MAX485 на вход или выход. Микросхемка умная. Размещаю все компоненты в Протеусе:

Там же в Протеусе можно сразу посмотреть в 3d, как будет выглядеть платка:

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

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

Переходник USB — MAX485 не работает!Оказывается, схема, приведенная в даташите микросхемы FT232 не работает. Исправляем баги.

Подключил осциллограф — оказывается на пине управления приёмом MAX’а (пин RE) не тот сигнал, что нужно (он постоянно в нуле, что значит постоянный прием). Пришлось разрезать дорожку, идущую от FT232 ко входу RE, и закоротить RE с DE (это классическая схема подключения микросхемы MAX485). Теперь при отправке и приеме данных на ножках управления приёмом/передачей правильные сигналы, а именно: при отправке сообщений и на DE и на RE — лог. единица, при приеме на них — логический ноль. Проблема решена: в компьютере при передаче данных эхо отсутствует.

Начали тестировать полученный переходник USB-RS485 с нашей микроконтроллерной системой и. снова не работает. Посмотрел осциллографом на линии A и B — а там шум. А это ведь и понятно — обе микросхемы MAX485 (на нашем переходнике и с другой стороны провода, на устройстве) сконфигурированы на вход. Вот всё и шумит. При отправке с компьютера данных получается, что FT232 сама конфигурирует микросхему MAX485 на передачу, мгновенно отправляет данные и снова переводит её в режим приема. Видимо, из-за шума приёмник кроме необходимых данных принимает и мусор. Подумал, что неплохо бы линии A и B через резисторы повесить к земле и питанию. Загуглил и действительно народ так и делает, при чем удивляется, почему в даташите об этом ничего не сказано.

Читайте также:  Осб по лагам своими руками полы

Итак, повесил линию A через резистор номиналом в 3,9 кОм на питание, а линию B через такой же резистор на землю (резисторы можно взять и поменьше). Шум на линии значительно уменьшился, но при передаче периодически выскакивали неправильные байты. Уменьшили скорость передачи данных до 1200 бод, всё работает прекрасно, никакого мусора, только валидные данные.

Еще нюанс — если провод очень длинный, могут появляться сбои в работе, поэтому с обоих концов линии передачи (между проводами A и B) вешают так называемые резисторы-терминаторы. Они погашают стоячую волну в линии и это здорово.

Итого, после недолгих мытарств получена рабочая схема переходника USB-RS485:

Переходник USB MAX485 спаян готов к использованию! Если у вас есть вопросы по работе данного переходника — пишите в комментарии!

Источник

Переходник rs 485 usb своими руками схема

Мне внезапно понадобился переходник из USB в RS485. На мое удивление, на местном радиорынке найти его я не смог, поэтому решил ваять свое. По ходу выяснилось несколько подробностей.

Сначала я думал просто взять готовый переходник USB->RS232 и прицепить к нему платку с преобразователем уровней в RS485. Не тут то было – посмотрите, с какой задержкой компьютер переключает сигнал RTS (а именно он обычно используется для переключения прием-передача):

голубой – данные, желтый – RTS.

Естественно, это никуда не годиться – почти 100мс, в то время как задержка между приемом и передачей Modbus – 2мс.

Покопавшись в интернете, нашел очень интересный способ автопереключения приема и передачи для RS485:

Используется 555 таймер в режиме ждущего мультивибратора. Когда сигнал на входе становится низким (стартовый бит), таймер запускается и переключает драйвер RS485 на передачу. Если в течении 40мкс не появится нового низкого уровня, таймер переключит драйвер на прием. А как быть с длинной передачей единиц? Все очень просто – на выходе драйвера RS485 стоят подтягивающие резисторы, которые по умолчанию держат линию в единичном состоянии.

Так к чему это я… Ах, да – в итоге я нашел оочень простое включение всеми любимой, но вечно дорогой FT232. Оказывается, у нее есть ножка которая переключается в момент фактической передачи. Работает это на отлично:

голубой – сигнал с ножки передачи, желтый – данные.

Вот – итоговая схема, перемычками P2 подключается терминатор:

Если кто захочет повторить – вот схема и плата, плата делается двусторонней, вторая сторона полностью играет роль земли:

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

Был у меня один раз такой глюк, программил софт, опрос промышленного модуля по rs-485. Адаптер к компу тоже был готовый, купленный. Долго пытался понять, почему у меня ответы от устройства приходят с запоротым последним байтом. Как потом выяснил, модуль ввода отпускал линию в конце передачи, если там шли единичные биты, рассчитывая на подтяжку линии, которой не было ни в нём, ни в usb-адаптере. Добавил подтяжку, всё стало хорошо, но как-то это не аккуратненько.

А помоему — аккуратно. Вообще, без подтяжки шина работать не обязана.
По спецификации драйверов rs485, поведение в диапазоне диф. сигнала +-200мВ не определено. Тоесть, шина без подтяжки шиной называться не может. Конечно я понимаю, что сейчас появились драйвреа со «смещенным центром тяжести», но ровняться всеравно приходится на старые спецификации.

Читайте также:  Коробочка украшенная лентами своими руками

Да, про 200мВ вполне верно. Также из спецификации берём: до 32 устройств, каждое по 12 кОм, параллельно. Итого 375 Ом в худшем случае. Ещё два раза по 120 Ом терминальных резисторов с каждой стороны. И подтягивающие резисторы по 560 Ом отклоняют линию уже и не так сильно, не намного то больше этих самых 200мВ. А ещё бывает и подтягивающие резисторы поменьше ставят.

Дак, отклонение на 200мВ уже хватает чтобы зафиксировать лог 1. Так-что, если стоит по 560ом, то все нормально даже при 32 устройствах.

Друге дело, как это монтажникам объяснить ))

У меня вопрос, какой софт юзается?

для работы с модбас, просто гипертерминал?

Не, хаченный modbus poll, ну, и терминал.

Ни как не получаешься подобрать масштаб для распечатки пдф, тот что в файле не соответствует размеру элементов. (((

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

Огромное спасибо, то что надо))

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

У меня нет длинной линии. Для моих целей такого переходника более, чем достаточно.

Вместо Max485 поставить ADM2582E/ADM2587E — вот вам гальваноразвязка

Спаял переходник по этой схеме. Тока микруха max485 в дип корпусе, и линию RX притянул к питанию. В териминале на компе посылаю символ — возвращается эхо 0x00. Терминирующие джампера надеты. Это нормально? Другого утройства на rs-485 пока нету, проверить неначем.

Эхо исчезнет, когда я подключу другие устройства к линии 485? или эхо отсекать програмно?

Пожди, какую именно линию RX ты притянул?

https://clip2net.com/s/1yTWg вот тут резистор R3. Подтянул RX линию микрухи ft232rl. И еще в своей схеме не использовал напругу 3.3 вольт для питанию I/O пинов этой микрухи. У вас с какой целью это было сделано?

>Подтянул RX линию микрухи ft232r
Похоже, макс при переключении в режим передатчика, выдает ноль на Rx.

>У вас с какой целью это было сделано?
Да просто скопировал кусок схемы из другого проекта.

у вас тоже ноль приходит при передаче? воткнул для интереса max481, аналогично приходит ноль.

спасибо за ответы.

У меня сейчас нет этого переходника, проверить не могу.

Для чего TxD подтянут к питанию, а CBUS2 к земле?

Для того, чтобы после включения питания и до инициализации микросхемы, выходы вели себя как вход, выдающий логическую 1 — это состояние покоя UART’а

Доброго времени суток.

Есть вопрос практического плана. Собрал преобразователь на FT232 — UART TTL. При подключении комп пишет — устройство неизвестное… Но! Если отключить и тут же воткнуть — все пашет нормально. Я так понимаю проблема с питанием, но схема передрана с даташита 1 к 1. Да и собирал уже подобное устройство. Навеса который бы потреблял что-нибудь еще кроме FT232 нет… Не сталкивался с подобным явлением? Электролит на 22 мкФ и керамика по питанию стоят.

Электролит пробовал отпаивать, ставить и больше и меньше — результаты не изменились… грешу на паленую микру…

Нет, с таким не встречался. FTDI всегда отлично работали.

Вечер добрый))
Давно тут не появлялся. Рад, что ресурс живёт и развивается))))

Как-то делал переходник из USB в RS485/RS422 на FT232RL и ADM2483. Если интересно, могу выложить схему.

Схема с гальванической развязкой.

Привет, конечно интересует. Можешь даже статью написать по этому поводу 🙂 Мои контакты тут: https://bsvi.ru/about/

Написал «статью» (даже 2). Отправил на мыло. Не знаю как получилось, но я старался)))))

L1 — какова величина индуктивности?

Всем доброго времени. Недавно начал делать этот переходник, столкнулся с проблемой.
Подскажите пожалуйста что такое на схеме L1, и его номинал.
И еще вопросик, нужно ли в данном переходнике, что то прошивать ?
Заранее спасибо!

Создать новую ветку комментариев

Вы должны войти или зарегистрироваться чтобы оставить комментарий.

Источник

Оцените статью
Своими руками