Как преобразовать rs232 в ethernet

Обновлено: 27.06.2024

Электронные устройства часто используют для связи с внешним миром последовательные интерфейсы RS232/422/485. Это связано с тем, что современные цифровые устройства основаны на микроконтроллерах. А каждый МК имеет интерфейс UART, который технологически просто реализуется. Для обеспечения интерфейсов RS232/422/485 достаточно к такому МК подключить микросхему приемо/передатчика, которые дешевы и доступны. Но последовательные интерфейсы не удовлетворяют современным требованиям по удаленному мониторингу и управлению. Для удаленной работы все чаще требуют использование локальных сетей с их возможностью передачи данных практически в любую точку мира через Интернет.

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

Во всем мире и в РФ в частности представлены несколько известных брендов в данном сегменте рынка. Но не все они обеспечивают качественную и удобную работу с преобразователями интерфейсов.

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


Подключение последовательных интерфейсов RS.

Для подключения сторонних устройств к локальной сети используются внешние преобразователи интерфейсов RS232/485 в Ethernet, промышленные преобразователи DS101x, платы. Конвертеры имеют разъем DB9, такой же, как на обычном ПК, т.е. устройства подключаются стандартным нуль-модемным кабелем (в случае интерфейса RS485 возможно подключение по 2-х и 4-х проводной схеме, используя специальный разъем-клемму для удобства подключения). Преобразователь позволяет полностью настроить режим передачи данных в соответствии с заданными параметрами – устанавливается скорость, четность, биты передачи данных, контроль направления потока, при необходимости сигналы DTR/DSR, RTS/CTS. Также в модуле предусмотрен режим on-the-fly, позволяющий модулю автоматически подстраивать режим работы модуля в соответствии с используемыми на оборудовании.

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


Подключение последовательного интерфейса UART.

Часто, производителю устройства требуется включить интерфейс Ethernet в собственное устройство, а не использовать внешние преобразователи. Тогда мы рекомендуем использовать встраиваемые модули Tibbo линейки EM. Модули имеют на борту до 4-х последовательных интерфейсов UART (КМОП уровень, ТТЛ совместимый). К данному интерфейсу можно напрямую подключить ножки микроконтроллера, а небольшие размеры и простота распайки не заставят вас глобально перестраивать схему устройства.

В некоторых случаях целесообразно использовать платы Tibbo. Платы уже имеют весь необходимый «обвес» и для подключения их к контроллеру, достаточно подать питание и шлейфом подключить нужные выводы к ножкам МК.

Иногда, корпусные законченные устройства, имеют выход UART. Такие изделия подключаются к сети с помощью системы TPS, которая позволяет подключить до 4-х UART устройств на один преобразователь. Все остальные характеристики работы остаются такими же, как и при подключении устройств по последовательным интерфейсам.

Виртуальный COM порт или сокет TCP/IP?

Как же получать данные на сервере или управляющем ПК? Предусмотрено два варианта:

  • Виртуальный COM порт. Драйвер виртуального COM порта получает сетевые данные и предоставляет их программам таким образом, будто они пришли по реальному, физически-существующему COM-порту. Ваше ПО не заметит никакой подмены, при этом мониторинг устройств можно осуществлять по интернету из любой точки мира. Драйверы написаны под 32-х и 64-х разрядные системы Windows и под Linux-подобные системы. Настройка драйвера осуществляется через графический, интуитивно понятный интерфейс. Также есть возможность настройки через командную строку. Для отладки приложений и анализа получаемых данных предусмотрен Port Monitor, позволяющий просматривать режим работы драйвера и передаваемые им данные.
  • Данные можно принимать, прослушивая заданные TCP/IP порты, а передавать устройству отсылая пакеты на IP-адрес преобразователя интерфейсов. Такой вариант подходит разработчикам собственного ПО. В этом случае клиенту не придется устанавливать никаких драйверов и вся работа будет происходить прозрачно, прямо по TCP/IP каналу.

Подключение к сети Ethernet, WiFi, GPRS.

Преобразователи подключаются к локальной сети стандартным кабелем витой пары. Подключать можно как напрямую к ПК, так и к свитчам или маршрутизаторам вашей сети. Преобразователь для сети является самым обычным хостом. Вся настройка конвертеров осуществляется через локальную сеть с помощью специальной утилиты (входит в комплект поставки), которая автоматически обнаруживает устройство. Конвертеру назначается ip адрес, устанавливается протокол ( TCP, UDP), режим работы (сервер, клиент), указываются шлюз и маска при необходимости и задаются другие параметры.

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

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

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

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

Размеры:
50mm x 30mm x 12mm

В общем, замечательная штука!
Заказал, оплатил (стоит эта радость порядка 28 баксов), дождался, получил. Чтобы сэкономить лишних 140 долларов, я решил не покупать демоплату, а спаять ее самому, благо схема была и ничего изобретать там не пришлось. Для сборки отладочной платы потребуется микросхема MAX3232, стабилизатор напряжения LM11173.3, логика 74HC14 ну и немного рассыпухи. В итоге получается полный аналог WIZ100SR-EVB стоящий на пару порядков дешевле оригинала.

Проблемы:
Нулевой проблемой стала колодка для подключения. PLS гнезда с шагом 2мм не было в радиусе пятиста километров, поэтому я тупо просверлил дырки в плате и впаял напрямую

wizBOTm.jpg

Второй проблемой стало отсутствие у меня джампера для перевода модуля в режим отладки (уже исправлено в последней ревизии платы) по RS232. В этом режиме невозможен обмен по Ethernet, зато можно изменить настройки модуля через UART. Все что надо для перехода в режим отладки- посадить вывод Status (колодка JP1 контакт 12) на GND. После чего модуль начинает принимать управляющие команды по RS232.

Третьей проблемой стала невозможность работы программы для настройки под Windows 2000 SP4. Может это глюк конкретного экземпляра винды, может глюк программы, не знаю. Под Windows XP работает без проблем.

Когда проблемы были решены я подключился через Telnet (просто указав в настройках модуля адрес и порт) к серверу towel.blinkenlights.nl и посмотрел четвертый эпизод звездных войн в ASCII графике. Коннект модуль держит железно, без ошибок было прокачано более двух мегабайт. Потом я просто вырубил систему.

Файлы к модулю WIZ100SR:

Спасибо. Вы потрясающие! Всего за месяц мы собрали нужную сумму в 500000 на хоккейную коробку для детского дома Аистенок. Из которых 125000+ было от вас, читателей EasyElectronics. Были даже переводы на 25000+ и просто поток платежей на 251 рубль. Это невероятно круто. Сейчас идет заключение договора и подготовка к строительству!

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

33 thoughts on “Модуль Ethernet-RS232 WIZ100SR”

Форум тут не причем :) У меня сейчас идет ударная работа над одним заказом и поэтому времени на строгание очередного креатива совсем нет. А на форуме я раз в день отвечаю на некоторые темы и особо времени не трачу.

1 Существующие аналоги преобразователя UART в Ethernet

Аналогичные устройства создаются различными фирмами. Так, например, серверы последовательных портов выпускает фирма MOXA. Выглядят такие устройства так:

Преобразователь интерфейсов MOXA NPort 5250A

Преобразователь интерфейсов MOXA NPort 5250A

У данного производителя имеются и другие вариации, которые отличаются количеством COM-портов, поддерживаемыми интерфейсами (RS-232, RS-485, RS-422 и другие), способом подключения (Ethernet, USB и другие) и так далее. Также эти устройства имеют удобный веб-интерфейс для настройки, поддерживают удалённое управление с использованием стандартного языка SCPI и другие «навороты». Как правило, такие устройства применяются в промышленности, а значит, их стоимость для обычного пользователя заоблачная.

Нам же для создания аналогичного устройства (хоть и не столь навороченного), понадобится:

    или иная совместимая плата; ; с разъёмом DB9; ;
  • персональный компьютер со средой разработки Arduino IDE.

2 Схема соединений и скетч преобразователя UART в Ethernet

Если мы воспользуемся готовым Ethernet шилдом, то подключений будет минимум. Прежде всего необходимо установить Ethernet шилд. Он устанавливается сверху на плату Arduino как «мезонинная» плата.

Шилд – в мире Arduino-разработки это печатная плата с разъёмами и микросхемами, обладающая какой-либо готовой функциональностью. Например, Ethernet-шилд позволяет подключать Arduino к локальной сети посредством кабеля c коннектором RJ-45; SD-шилд позволяет подключать к Arduino SD или mini/micro SD карты, и т.д. Шилды очень просто подключаются к Arduino, а также обеспечивают лёгкое подключение к ним самим (при необходимости).

К Arduino можно подключать устройства с UART, которые работают на напряжении 5 В, т.к. цифровые выводы Arduino работают именно с таким напряжением (максимум допустимо подавать 5.5 В). Стандартный COM-порт компьютера и другие устройства с UART работают на напряжении 12 В, и подключать их к нашему устройству напрямую нельзя. Необходимо использовать преобразователь 12-вольтового UART в 5-вольтовый на микросхеме MAX3232. Предлагаемый модуль выполнен на небольшой платке, имеет стандартный разъём DB9 и удобные отверстия для крепления, которые соосны с отверстиями в плате Arduino UNO и Ethernet шилда.

Преобразователь Ethernet в UART на Arduino UNO

Преобразователь Ethernet в UART на Arduino UNO

Для фиксации преобразователя можно воспользоваться винтами с гайками, как на фотографии. Линию RX модуля преобразователя достаточно подключить к линии TX Arduino, TX – к RX, питание модуля к 5 В Arduino, землю модуля – к земле Arduino.

Преобразователь Ethernet в UART на Arduino UNO

Преобразователь Ethernet в UART на Arduino UNO

Если предполагается работа с устройствами, которые используют 5-вольтовый UART, то модуль преобразования напряжения не нужен. Если нужно подключаться к компьютеру, который не имеет COM-порта, можно использовать 5-вольтовый преобразователь USB в UART.

Преобразователь Ethernet в UART подключён к ПК через USB-UART преобразователь

Преобразователь Ethernet в UART подключён к ПК через USB-UART преобразователь

Теперь напишем такой скетч для нашего устройства.

Скетч преобразователя UART в Ethernet (разворачивается)

Преобразователь Ethernet-UART на Arduino подключён к COM-порту компьютера и локальной сети

Преобразователь Ethernet-UART на Arduino подключён к COM-порту компьютера и локальной сети

Подключимся какой-либо терминалкой к нашему серверу на Arduino, а другой терминалкой – к COM-порту компьютера, к которому подключён преобразователь. Отправим через терминалку команду по сети. Она должна появиться в мониторе последовательного порта Arduino. Если отправим команду из монитора – она появится в терминалке COM-порта. Преобразователь работает!

Кто-нибудь пробрасывал rs232 через ethernet на linux? Мне нужно удаленный ups прикрутить к мониторингу, а в нем только com-порт.


Для этого есть готовые девайсы. В чём проблема?

пью чай. положил клубничное варенье вместо сахара. не очень-то и вкусно. а с вишнёвым вкусно.

Есть серверная, есть удаленный узел со свитчем и ups с com портом. Как привязать этот ups к Nut в серверной?



google: rs232 ethernet adapter или converter



Мне нужно удаленный ups прикрутить к мониторингу

Moxa NPort, как тут уже писали. Я использовал. Но надо драйвер под ядро собирать. Соответственно, могут быть определённые неудобства.

af5 ★★★★★ ( 24.07.17 11:10:28 )
Последнее исправление: af5 24.07.17 11:10:47 (всего исправлений: 1)


Есть и через RJ, есть и через FC, а бывают медиаконверторы и ethernet.

Есть и через RJ, есть и через FC

У автора? Откуда инфа?

af5 ★★★★★ ( 25.07.17 09:40:27 )
Последнее исправление: af5 25.07.17 09:41:34 (всего исправлений: 1)

некоторые неудобства. Под 4 ядро драйверов так и нет.

что обслуживает ups?


google: rs232 ethernet adapter или converter

Ради одного порта это всегда очень overpriced.


Если б это была задача прокинуть информацию, бегающую по компорту, то хоть и громоздкое, но было б решением. Но, для не smart-UPS, где сигналы идут не по данным, а тупо по сигнальным линиям, это решение не годится. В прочем, как и многие другие предложенные тут.


Не у автора, а вообще. Автору надо через эзернет. Какой-нибудь nport, modbus, у моха есть на все случаи жизни.

Инфа про медиаконвертеры? Приходилось работать с этими железками. Например делать двумя rs232-FC гальваническую развязку для фискальных принтеров. Иначе в контроллерах порты выгорали. Потом делали такую же развязку через rs232-RJ c оптотронной развязкой. Или например подключать комп к экрану в нескольких километрах через оптоволокно. Там использовался VGA-FC.


Про то, что есть у автора. По-моему вопрос сформулирован так, что напрашивается RJ45-COM-USB адаптер в сервер и UTP до UPS'a

af5 ★★★★★ ( 25.07.17 11:58:49 )
Последнее исправление: af5 25.07.17 12:01:32 (всего исправлений: 1)


Откуда ты знаешь, что надо автору? Ты телепат?
На мой взгляд вопрос сформулирован так, что надо из RS-232 в медиаконвертер, медиаконвертер в коммутатор, который и воткнут в этот самый ИБП. И ИБП может быть сильно дальше ста метров.


По сравнению с бесплатной программной эмуляцией - это всё равно бесконечно дорого. :) Тем более, что если это УПС, то воткнуть в ближайший сервер явно не помешает, а потом уже шарить управление питания даже без эмуляции, а правильным образом.


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

RS232 через ethernet (комментарий)
Есть серверная, есть удаленный узел со свитчем и ups с com портом. Как привязать этот ups к Nut в серверной?

PS: но я б просто заменил ИБП на модель с ethernet. Им и управлять можно и логи забирать удобнее и в случае отсутствия связи с ним логи никуда не денутся.

imul ★★★★★ ( 25.07.17 12:12:21 )
Последнее исправление: imul 25.07.17 12:14:05 (всего исправлений: 1)

Типичный вопрос нуба забаненого в гугле, иначе была бы дополнительная информация (например, почему надо именно over-ethernet, а не over-ip)

af5 ★★★★★ ( 25.07.17 12:17:38 )
Последнее исправление: af5 25.07.17 12:20:46 (всего исправлений: 1)


Ближайший сервер может быть за сотню километров.

И таки да, если это Симметра на 100 кВт и за 30 метров от ближайшего сервера, как у нас, то там вы и компорт то не найдёте. Хоть за модули snmp eth и дерут бешенные деньги, на фоне стоимости УПСа оно выглядит бесплатно.


Задачи не было. Тут бы правильно распарсить что автору темы хочется.


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


Смотри в сторону железок Wiznet - дешево и сердито


Задачи не было. Тут бы правильно распарсить что автору темы хочется.

Блин, а два коротких предложения ТСа слабо прочитать?


Я собственно почему в курсе решения, так как я его сделал, у меня полтыщи клиентов так работали, псевдомодем по tcp/ip, а уже через него сертифицированный vpn с версией только через GRE, потому не могущий у всех клиентов работать непосредственно. Объяснять сотням клиентам как открывать GRE или что-то покупать - весьма неумно.


Штучное решение vs. конвейер тоже роль на цену играют. ;)


Автор задал простой вопрос, решение которого очевидно. К чему весь этот флуд?
NUT (Network UPS Tools) никто не использует что-ли?

  • Подключаешь UPS к локальной машине с linux по com порту
  • Устанавливаешь на нее NUT и настраиваешь в режиме

Понятное дело, что надо еще настроить драйвер ups и есть ли он для конкретной модели - не известно.
Я прикручивал только SmartUPS от APC (разные мождели) по com и по usb.
По NUT манов очень много в интернетах.
Я прикрутил еще smssend + GSM мопед для отправки смс в особо критических случаях.
Если нет компа рядом с UPS, варианта 2:

  • Поставить его ))) (всяко дешевле старенький десктоп, чем решения от Moxa или Aten).
  • KVM Com over IP от вышеуказанных производителей.

Я использую 16-ти портовый Aten SN0116. Технология такая: Подключаешь его к локалке и все UPS-ки по com портам.
На удаленной linux машине устанавливаешь драйвер от Aten (как модуль ядра, правда максимум 3.11 поддерживается).
Потом с помощью этого драйвера создаются виртуальные девайсы - /dev/ttya00X и мапятся к IP:port данной железяки.
NUT-у скармливаются данные девайсы как локальные UPS-ки.

Читайте также: