Подключение удаленного СОМ контроллера к USB порту компьютера через несогласованные линии

Схема подключения rs232 через usb. Переходник USB-COM своими руками: схема, устройство и рекомендации

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

Что делать в этом случае? Выход, конечно, есть. Вы можете сделать USB-COM-преобразователь самостоятельно. Как это сделать? В этой статье вы найдете ответы на свои вопросы.

Структура канала USB – RS-232 – плата Arduino UNO

Для обеспечения устойчивой связи удаленного СОМ устройства с компьютером через USB порт длина USB канала сведена к минимуму, на выходе USB линии поставлен USB – RS-232 преобразователь, который через длинную линию подключен к преобразователю уровней +15/-15В == 0/5В, находящегося вблизи контроллера Arduino и подключенного к его UART порту, как показано на Рисунок 5. Скорость обмена данными в этой структуре такая же как и при подключении Arduino к компьютеру через USB кабель, но частота сигнала в протяженной линии почти в 100 раз ниже — как 0,115200 Мбит/с и 12 Мбит/с.

image

Рисунок 5. Схема подключения контроллера Arduino UNO к компьютеру через USB порт и длинные несогласованные линии. Обозначение контактов GND, передатчика Tx и приемника Rx на стандартном разъеме DB-9 СОМ порта компьютера показано вверху слева. Со стороны устройства сигналы TxD и RxD на разъема DB-9 надо поменять местами.

Интерфейс RS-232 имеет следующие характеристики [7,8].
Способ передачи сигнала Однофазный
Максимальное количество приемников 1
Максимальная скорость передачи 460 кбит/c
Максимальная длина кабеля 15 м (для 460 кбит/c)
Синфазное напряжение на выходе ± 25В
Импеданс нагрузки 3 ..7 кОм
Допустимый диапазон сигналов на входе приемника ± 25В
Чувствительность приёмника ± 3В
Входное сопротивление приёмника 3 ..7 кОм
Ёмкость нагрузки не более 2500 пкФ*
______________________
* При использовании кабеля с малой емкостью связь может поддерживаться на расстояниях до 300 м [1].

Преобразователь RS232 уровней (Рисунок 5) не меняет последовательность бит. Он изменяет уровни сигнала 0/5 В в +12/-12 В и наоборот (Рисунок 6).

image

Рисунок 6. Временная диаграмма и уровни сигналов преобразователя RS232.

Для преобразования уровней сигналов RS232 могут использоваться микросхемы, например, MAX232 (компании Maxim Integrated Products), SP232 (Sipex), ADM232 (Analog Devices). Эти микросхемы имеют одинаковые характеристики и назначения выводов. Подключение преобразователя MAX232 показано на Рисунок 7 [6].

image

Рисунок 7. Схема подключения преобразователя уровней MAX232. Схема обеспечивает уровень выходного напряжения приблизительно ± 7.5 В соответствующий интерфейсу RS-232.

Рынок предлагает множество модулей преобразователей уровней построенных на базе перечисленных и других микросхем. Внешний вид одного из таких модулей показан на (Рисунок 5).

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

Вариант реализации макета линии COM устройство – USB порт компьютера без RS-232 линии показан на Рисунок 8.

image

Рисунок 8. Вариант подключения контроллера Arduino UNO к преобразователю USB-COM компьютера.

Для проверки работоспособности канала обмена данными между контроллером Arduino UNO и компьютером через длинную несогласованную линию был собран провод показанный на Рисунок 9 и Рисунок 10. Куски провода соединялись скруткой или удерживались в гнездах разъемов на трении.

image

Рисунок 9. Канал RS232 из составного кабеля 9,5 м.

image

Рисунок 10. Куски провода канала RS232 из составного кабеля 9,5 м.

Передача и прием данных через СОМ порт контроллера Arduino UNO контролировалась утилитой компьютера COM Port Toolkit.

Используемая для тестирования линии программа Arduino UNO, передающая в СОМ порт байты данных и переключающая светодиод контроллера по приходу внешних команд, показана ниже.

Осциллограммы сигналов, снятые на концах состоящей из кусков линии RS-232 показаны на Рисунке 11. Данные передаются на частоте 115200 бит/с.

image

Рисунок 11. Сигнал амплитудой +7.5/-8 В на концах RS-232 линии составного кабеля длиной 9,5 м. Частота передачи данных 115200 бит/с. Сигнал не имеет заметных искажений.

Работа через маршрутизатор.

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

«С2000-Ethernet» уже подключены к маршрутизаторам одной сети: каждый в своем месте.

В любом месте мы ставим на стол ноутбук, садимся на стул, и подключаемся к локальной сети — и теперь мы можем конфигурировать все С2000-Ethernet и подключенные к ним приборы, в том числе и заливать конфигурацию в С2000М (хотя это не пробовал).

Никаких тебе проводов с интерфейсом RS485.

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

Теперь смешно, когда колдовал с «С2000-Ethernet» на коленках под шкафом с маршрутизаторами.

Подключение удаленного СОМ контроллера к USB порту компьютера через несогласованные линии

Как подключить с2000м к компьютеру через usb?

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

Типовая схема подключения контроллера Arduino UNO к компьютеру через USB порт показана на Рисунок 1. Со стороны компьютера канал связи виден как стандартный СОМ порт. Но, на самом деле, это виртуальный СОМ порт с которым компьютер обменивается пакетами данных на частоте 12 МГц, а специализированный контроллер, расположенный на плате Arduino UNO, преобразует пакеты USB данных в последовательность бит в формате асинхронного интерфейса UART с уровнями 0/5В, которые и используются основным контроллером Arduino UNO (микросхема ATmega328P) для загрузки программ и обмена данными с компьютером в процессе выполнения программ.

Рисунок 1. Типовое подключение контроллера Arduino UNO к компьютеру через USB порт. Временная диаграмма последовательной передачи данных по правилам UART устройства с уровнем сигналов 0/5В показана на Рисунок 2. Данные передаются байтами. Помимо данных последовательность содержит стартовый и стоповый биты и может включать другие служебные биты, например, бит контроля четности, применение которого задается в настройках СОМ порта, там же устанавливается и одна из стандартных скоростей передачи.

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

СОМ порт не имеет сигналов синхронизации, временные интервалы формируются как передатчиком так и приемником с точностью тактирования не хуже 5%.
Рисунок 2. Временная диаграмма UART последовательной передачи данных (01001011) микросхемы ATmega328P контроллера Arduino UNO.

Контроллер Arduino UNO содержит специализированный контроллер для преобразования UART сигналов в USB последовательность и наоборот. Порт USB компьютера осуществляющий связь с виртуальным СОМ портом работает в режиме Full-speed на частоте 12 Мбит/с (Рисунок 3). Этот режим поддерживает как USB 1.0. так и USB 2.0.

Рисунок 3. Измеренный 4В сигнал на дифференциальной линии USB–COM контроллера Arduino. Длина USB кабеля 2м. Частота сигналов на USB линии 12 МГц. Для формирования сигналов использовалась запись данных в СОМ порт контроллера. Частота USB данных 12 МГц не изменялась при записи в СОМ порт как на скорости 9600 бит/c так и 115200 бит/c.

Данные по шине USB передаются пакетами (Рисунок 4). Размеры пакета зависят от типа выполняемой передачи. Каждый пакет в режиме Full-speed содержит 8 бит синхронизации тактов приемника и передатчика (Sync), 8 бит идентификатора пакета (PID) и 2 бита конца пакета (EOP). Блок данных может составлять от 0 до 1023 байт.

Рисунок 4. Пример передачи пакета по дифференциальной линии USB 1.1 в режиме Full-speed [2]. Изменение состояние дифференциального сигнала соответствует передаче нуля, сохранение уровней — соответствует передаче единицы. Для улучшения синхронизации на единичных последовательностях принудительно вставляют нуль на каждые 6 единиц подряд. Кроме пакета данных передаются и другие пакеты. Для выполнения всех передач по USB требуется, чтобы 2 или 3 пакета информации были переданы между хост-контроллером и приемником. Если передача оказалась успешной, пункт назначения возвращает пакет квитирования. При обнаружении ошибки во время передачи генерируется пакет отсутствия уведомления. Дифференциальные сигналы USB передаются по витой паре экранированного 4-проводного кабеля. По стандарту, сечение сигнальных проводников высокоскоростного кабеля USB 2.0 должно быть 28 AWG и от 20 до 28 AWG для жил питания, в зависимости от длины кабеля (см. Таблица 1). Таблица 1. Примерное соответствие длины и диаметра проводов USB2 кабеля. Размер провода [3] Для увеличения длины USB кабеля его снабжают встроенными усилителями сигнала.

По требованию спецификации USB 2.0 для режима High-speed (до 480 Мбит/с) задержка распространения сигнала в кабеле не должна превышать 5,2 нс/м и быть не более 26 нс, что и определяет максимальную длину кабеля 5 м.

Задержка на метр длины в коаксиальном кабеле обратно пропорциональна скорости распространения волны в м/c, которая вычисляется как

где с – скорость света 3*108 м/с; е — диэлектрическая проницаемость материала внутреннего изолятора; u — магнитная проницаемость изолятора. Для полиэтилена с u= 1 и е= 2,2 фазовая скорость равна 2*108 м/с и, соответственно, задержка 5 нс/м.

Для уменьшения потерь сигнала важно обеспечить однородность волнового сопротивления (в.с.) сигнальной линии. Изменение в.с. может быть связано с некачественной заделкой кабеля, плохим согласованием элементов линии, низким качеством разъёма и др.

Волновое сопротивление кабеля определяется его конструкцией. В.с. коаксиального кабеля в области высоких частот (30 кГц и выше) вычисляется по следующей формуле. где L – продольная индуктивность закороченного кабеля, Гн; C – поперечная ёмкость разомкнутого кабеля, Ф; e — диэлектрическая проницаемость изолятора; D — диаметр изолятора; d – диаметр проводника. Величина в.с. не зависит от длины кабеля. Диэлектрическая проницаемость изоляторов лежит в диапазоне 1… 7: 1 – воздух, вакуум; 1.3… 2.4 – полиэтилен; 2.5..6 — резина; 5..7 – фарфор; 6..7 – слюда; 7 — стекло. Величина в.с. витой пары USB 2.0.кабеля составляет 90 ± 15% Ом [5]. Расчет в.с. экранированной витой пары должен учитывать и взаимное расположение проводников. В согласованном кабеле у которого нагрузка по концам, имеет сопротивление, равное в.с., вся передаваемая электромагнитная энергия полностью поглощается приемником без отражения. В неоднородных линиях и при несогласованных нагрузках в местах электрической несогласованности возникают отраженные волны и часть энергии возвращается к началу линии. Коэффициент отражения волн в кабеле равен отношению

где rH — сопротивление нагрузки; Z – в.с. кабеля. Включении несогласованных элементов в USB линию может значительно исказить сигнал. Например, линия оказывается неработоспособной при включение в неё эектровводов из силового кабеля с волновым сопротивлением 10… 40 Ом.

Структура канала USB – RS-232 – плата Arduino UNO

Для обеспечения устойчивой связи удаленного СОМ устройства с компьютером через USB порт длина USB канала сведена к минимуму, на выходе USB линии поставлен USB – RS-232 преобразователь, который через длинную линию подключен к преобразователю уровней +15/-15В == 0/5В, находящегося вблизи контроллера Arduino и подключенного к его UART порту, как показано на Рисунок 5.

Скорость обмена данными в этой структуре такая же как и при подключении Arduino к компьютеру через USB кабель, но частота сигнала в протяженной линии почти в 100 раз ниже — как 0,115200 Мбит/с и 12 Мбит/с.
Рисунок 5. Схема подключения контроллера Arduino UNO к компьютеру через USB порт и длинные несогласованные линии. Обозначение контактов GND, передатчика Tx и приемника Rx на стандартном разъеме DB-9 СОМ порта компьютера показано вверху слева.

Со стороны устройства сигналы TxD и RxD на разъема DB-9 надо поменять местами. Интерфейс RS-232 имеет следующие характеристики [7,8]. Способ передачи сигнала Однофазный Максимальное количество приемников 1 Максимальная скорость передачи 460 кбит/c Максимальная длина кабеля 15 м (для 460 кбит/c) Синфазное напряжение на выходе ± 25В Импеданс нагрузки 3 ..7 кОм Допустимый диапазон сигналов на входе приемника ± 25В Чувствительность приёмника ± 3В Входное сопротивление приёмника 3 ..

7 кОм Ёмкость нагрузки не более 2500 пкФ* ______________________

* При использовании кабеля с малой емкостью связь может поддерживаться на расстояниях до 300 м [1].

Преобразователь RS232 уровней (Рисунок 5) не меняет последовательность бит. Он изменяет уровни сигнала 0/5 В в +12/-12 В и наоборот (Рисунок 6).
Рисунок 6. Временная диаграмма и уровни сигналов преобразователя RS232. Для преобразования уровней сигналов RS232 могут использоваться микросхемы, например, MAX232 (компании Maxim Integrated Products), SP232 (Sipex), ADM232 (Analog Devices). Эти микросхемы имеют одинаковые характеристики и назначения выводов. Подключение преобразователя MAX232 показано на Рисунок 7 [6].
Рисунок 7. Схема подключения преобразователя уровней MAX232. Схема обеспечивает уровень выходного напряжения приблизительно ± 7.5 В соответствующий интерфейсу RS-232.
Рынок предлагает множество модулей преобразователей уровней построенных на базе перечисленных и других микросхем. Внешний вид одного из таких модулей показан на (Рисунок 5). К компьютеру устройство можно подключить через стандартный COM порт, если он есть, или использовать преобразователь USB-RS232 (другие названия: USB-COM конвертеры, переходники или адаптеры), связанный с USB портом напрямую или через собственный USB кабель. Внешний вид USB преобразователей показан на Рисунок 5. Вариант реализации макета линии COM устройство – USB порт компьютера без RS-232 линии показан на Рисунок 8.
Рисунок 8. Вариант подключения контроллера Arduino UNO к преобразователю USB-COM компьютера. Для проверки работоспособности канала обмена данными между контроллером Arduino UNO и компьютером через длинную несогласованную линию был собран провод показанный на Рисунок 9 и Рисунок 10. Куски провода соединялись скруткой или удерживались в гнездах разъемов на трении.
Рисунок 9. Канал RS232 из составного кабеля 9,5 м.
Рисунок 10. Куски провода канала RS232 из составного кабеля 9,5 м. Передача и прием данных через СОМ порт контроллера Arduino UNO контролировалась утилитой компьютера COM Port Toolkit. Используемая для тестирования линии программа Arduino UNO, передающая в СОМ порт байты данных и переключающая светодиод контроллера по приходу внешних команд, показана ниже. void setup() < pinMode(LED_BUILTIN, OUTPUT); Serial.begin(115200); // запуск последовательного порта, 9600,115200>void loop()< if (Serial.available() >0) < mode = Serial.read(); // read byte switch (mode) < case 1: digitalWrite(LED_BUILTIN, HIGH); // turn the LED on break; case 2: digitalWrite(LED_BUILTIN, LOW); // turn the LED off break; >> Serial.print(5); // 6 or 9> Осциллограммы сигналов, снятые на концах состоящей из кусков линии RS-232 показаны на Рисунке 11. Данные передаются на частоте 115200 бит/с.
Рисунок 11. Сигнал амплитудой +7.5/-8 В на концах RS-232 линии составного кабеля длиной 9,5 м. Частота передачи данных 115200 бит/с. Сигнал не имеет заметных искажений.

Прошивка контроллера Arduino UNO

Загрузка программ в контроллер Arduino выполняется при помощи его внутреннего загрузчика, который запускается сразу после включения питания контроллера, или после нажатия на кнопку reset платы, или когда компьютер через линию USB выдаёт сигнал сброса. При подключении платы Arduino через канал RS-232 с двумя сигнальными линиями Tx и Rx при отсутствии линии сигнала сброса загрузка выполнялась в следующем порядке. 1. Запускалась среда разработки Arduino (как и в режиме загрузки через USB). 2. Загружалась программа (как и в режиме загрузки через USB).

3. Прошивка программы запускалась командой Ctrl+U или через кнопку (как и в режиме загрузки через USB)

4. Дополнительно, после запуска прошивки и заполнения прогресс индикатора нажималась кнопка Reset на плате контроллера Arduino приблизительно на 0,5 секунды. Успешная прошивка завершается сообщением

Прошивка выполнялась успешно и при кратковременном отключении питания контроллера, вместо нажатия на кнопку Reset. Запуск загрузчика контроллера Arduino можно выполнять и в автоматическом режиме от компьютера, без нажатия на кнопку Reset или кратковременного отключения питания. Для этого необходимо, например, канал RS-232 с Tx, Rx, и GND дополнить линией RTS и подключить ее через преобразователь уровней ко входу RESET контроллера Arduino.

Заключение

  1. Передача СОМ данных через протяженную USB линию осуществляется пакетами на более высоких частотах (12 МГц) и требует согласованной линии.

Литература

1. WikipediA. The Free Encyclopedia.
2. WikipediA. The Free Encyclopedia.
3. WikipediA. The Free Encyclopedia.
4. Способы передачи по витым парам.
5. USB2.0 А вилка B вилка мультимедийный кабель.
6. +5V-Powered, Multichannel RS-232 Drivers/Receivers.
7. Dr. Bob Davidov. Преобразователь интерфейса порта последовательной передачи данных.
8. Dr. Bob Davidov.

  • USB-COM
  • RS-232
  • волновое сопротивление
  • согласованные линии
  • Анализ и проектирование систем

Где взять номер порта?

Для этого ОБЯЗАТЕЛЬНО сначала подключите преобразователь интерфейсов USB-RS485 к компьютеру.

«ПУСК» -> «НАСТРОЙКА» -> «ПАНЕЛЬ УПРАВЛЕНИЯ» -> «СИСТЕМА» -> «ОБОРУДОВАНИЕ» -> «ДИСПЕТЧЕР УСТРОЙСТВ»

Найдите пункт «Порты (LPT и COM)». Один из пунктов выглядит, как «USB-RS485(COM#)». В скобках стоит нужный порт.

33

Распиновки кабелей RS-232

Рассмотрим стандартные и не очень распиновки кабелей.

Условные обозначения:

  • F — «мама»;
  • M — «папа»;
  • «-» — соединение;
  • «х» — нет соединения;
  • «+» — линии объединяются.

Применяется для соединения таких устройств как компьютер и модем.

Соединение прямое:

DTE 9 F DTE 9 F (Null-modem 9)

Применяется для соединения таких устройств как компьютер и компьютер.

DTE 25 F DCE 9 M

Применяется для соединения таких устройств как компьютер (25-пиновый разъем) и 9-пиновая мышь (или модем).

DTE 9 F DCE 25 M

Применяется для соединения таких устройств как компьютер (9-пиновый разъем) и 25-пиновая мышь (или модем).

DTE 25 F DCE 25 M

Применяется для соединения таких устройств как компьютер (25-пиновый разъем) и 25-пиновая мышь (или модем).

Соединение прямое:

DTE 25 F DTE 25 F (Null-modem Универсальный 25)

Применяется для соединения таких устройств как компьютер (25-пиновый разъем) и компьютер (25-пиновый разъем).

Заглушка на COM-порт 9 pin F

Применяется для тестирования коммуникационных приложений.

Заглушка на COM-порт 25 pin F

Применяется для тестирования коммуникационных приложений.

Подключение с2000м к компьютеру через rs232

redbet, этот резистор называется терминатором и включаются они на самых дальних узлах, для улучшения помехозащиты, также еще могут подключатся подтягивающие резисторы порядка 5к от + к B и от — к А. А схему приведенную Вами выше, где проверяли? Лично для меня вообще остается загадкой, как она может работать, ведь там деффренциальный метод кодирования. И подключаются устройства параленльно, а не как у Вас на схеме паралельно. Для 485 есть еще нюанс, это определение направления передачи, люди для этого целые устроства разрабатывают, куда сложнее Вашего, в общем в работоспособость мне верится с трудом, уж простите. Помимо направления еще и скорость учитывать тоже надо. Я считаю, что необходимо взять промышленный образец преобразователя и проверить работоспообность, например ПИ-232 от Элемер или подобный от Advantech, можно еще что либо поискать, таких вещей просто пруд пруди.
Да, и полярность линий, как Вы правильно заметили, тоже должа соблюдатся.

DSerge, а где Вы собрались настраивать параметры порта, я только что слил новую версию программы, но там кроме выбора номера порта ничего нет. Вот ссылка http://www.bolid.ru/news/2007/08/03/news_211.html

____________________________________________
Internet Explorer — это такая программа, с помощью которой можно зайти на сайт http://opera.com и скачать себе браузер.

Меню пользователя Nikopol
Посмотреть профиль
Отправить личное сообщение для Nikopol
Найти ещё сообщения от Nikopol

Параметры COM-порта настраиваются в «Диспетчере устройства» в свойствах COM-порта.
Нельзя ли повторить схемку с лучшим качеством (не могу посмотреть).
Может вилку для СОМ неправильно распаял (перемычки, сигнал управления адаптером).
Не имею возможности в ближайшее время приобрести промышленный адаптер, да и сам процесс интересен.

Меню пользователя DSerge
Посмотреть профиль
Отправить личное сообщение для DSerge
Найти ещё сообщения от DSerge

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

Оцените статью
Fobosworld.ru
Добавить комментарий

Adblock
detector