Москва: проверенные б/у ноутбуки с гарантией и проверкой перед оплатой
+7 906 722-94-45

Главная → Статьи → Подключение промышленного оборудования к ноутбуку по RS-232 и RS-485 (Modbus RTU): выбор переходника FTDI / CH340, гальваническая развязка 2.5 кВ и ошибки COM-порта

Промышленные интерфейсы RS-232 и RS-485 на ноутбуке инженера КИПиА и наладчика: почему поддельный переходник сжигает материнскую плату и как настроить Modbus RTU

Практическое руководство для инженеров АСУ ТП, наладчиков ЧПУ, вентиляционщиков, весовщиков и энергетиков: почему в цеху и котельной категорически нельзя втыкать в ноутбук неизолированный свисток USB-RS485 за триста рублей, сравнение оригинальных чипов FTDI FT232RL / CH343 / CP2102, настройка COM-порта в Windows и Linux (`/dev/ttyUSB0`) и терминаторы 120 Ом.

Промышленные интерфейсы RS-232 и RS-485 на ноутбуке инженера КИПиА и наладчика: почему поддельный переходник сжигает материнскую плату и как настроить Modbus RTU

Каждый опытный инженер КИПиА хотя бы раз в жизни видел эту вспышку и чувствовал запах палёного текстолита в шкафу управления венткамерой или котельной: молодой наладчик включает свой дорогой ноутбук в розетку удлинителя в щитовой, вставляет в USB-порт копеечный прозрачный «свисток USB-RS485 за двести пятьдесят рублей без корпуса» и касается отвёрткой клемм A / B частотного преобразователя за 120 метрами кабеля в соседнем цеху.

Искра — и материнская плата ноутбука за сто тридцать тысяч рублей мгновенно умирает с пробитым насквозь процессорным хабом PCH!

Почему это произошло? Между защитным заземлением PE цеха № 1 и вашей щитовой гуляет уравнительная разность потенциалов 35–90 Вольт переменного тока, которая через экран импульсного блока питания вашего ноутбука напрямую пошла через неизолированный USB-свисток в 3,3-вольтовые линии данных южного моста процессора!

ЗОЛОТОЕ ПРАВИЛО ЖИЗНИ НОУТБУКА НАЛАДЧИКА № 1: ТОЛЬКО ПРОМЫШЛЕННЫЙ КОНВЕРТЕР С ПОЛНОЙ ГАЛЬВАНИЧЕСКОЙ РАЗВЯЗКОЙ 1500–2500 В (ОВЕН АС4-М, Болид USB-RS485 изол., Moxa UPort 1150I, Waveshare Industrial Isolated)!

Настоящий промышленный преобразователь USB <-> RS-485 / RS-232 стоит всего три тысячи пятьсот — семь тысяч рублей` и имеет внутри:

  1. Полную оптическую/магнитную гальваническую развязку 2 500 В между USB-стороной вашего ноутбука и клеммной колодкой линии связи A / B / GND + изолированный DC-DC источник питания;
  2. Трёхступенчатую грозо- и импульсную защиту (TVS-супрессоры 600 Вт + самовосстанавливающиеся предохранители) — даже если монтажник по ошибке подаст фазу 220 В прямо на витую пару RS-485, сгорит максимум супрессор внутри коробочки за четыре тысячи рублей, а ваш ноутбук не получит НИ ОДНОЙ ЦАРАПИНЫ!
  3. При работе в сырой подвальной тепловой камере или на автомобильных весах элеватора — по возможности работайте на ноутбуке ОТ СОБСТВЕННОГО АККУМУЛЯТОРА, НЕ ВТЫКАЯ БЛОК ПИТАНИЯ В СОМНИТЕЛЬНУЮ ВРЕМЕННУЮ РОЗЕТКУ СТРОЙПЛОЩАДКИ!

Сравнение чипов мостов USB-UART и важнейшая скрытая настройка FTDI Latency Timer = 1 мс!

Чип внутри конвертера Надёжность на помехах в цеху Секретная тонкость настройки в Windows и Linux!
Оригинальный FTDI FT232RL / FT231X (Великобритания) Эталон 10/10! Никогда не зависает при искрении магнитных пускателей рядом с кабелем! ВАЖНЕЙШИЙ СЕКРЕТ БЫСТРОГО ОПРОСА MODBUS RTU: по умолчанию в драйвере Windows FTDI параметр Время ожидания (BM Options -> Latency Timer) выставлен в 16 мс! Из-за этого опрос 30 регистров ПЛК тормозит в 8 раз и рвёт межсимвольную паузу 3.5 char стандарта Modbus! Зайдите в Диспетчер устройств -> Порт COM -> Параметры порта -> Дополнительно и поменяйте 16 мс на 1 мс (а в Linux: echo 1 > /sys/bus/usb-serial/devices/ttyUSB0/latency_timer) — скорость обмена вырастает мгновенно в 6 раз! (Остерегайтесь поддельных клонов FTDI с нулевым серийником — покупайте конвертеры у официальных производителей автоматики!)
Silicon Labs CP2102N / CP2104 и современный WCH CH343G Твёрдые 9/10 Встроены в ядро всех современных Windows и Linux без скачивания драйверов; сохраняют фиксированный номер COM-порта благодаря уникальному серийному номеру чипа (в отличие от копеечного старого CH340G без серийника, который меняет COM3 -> COM7 -> COM11 при перетыкании в соседний USB-порт ноутбука — такая же проблема подробно разобрана в диагностике виртуальных COM-портов ККТ!)

Пять классических ошибок пусконаладки шины RS-485 Modbus RTU, из-за которых ноутбук пишет Timeout Error!

  1. Перепутана полярность A и B! Внимание: у разных производителей разная маркировка (Data+ / D+ = A у одних и Data+ = B у американских приборов!) — ничего не сгорит, просто поменяйте провода A и B местами на клеммнике конвертера!
  2. Не висит согласующий резистор (терминатор) 120 Ом на ДВУХ ФИЗИЧЕСКИХ КОНЦАХ длинной магистрали (или наоборот — монтажники по незнанию щёлкнули тумблер 120 Ом ON на всех 15 промежуточных приборах подряд, посадив сопротивление линии до 8 Ом!). Терминатор 120 Ом включается СТРОГО НА ПЕРВОМ (конвертер ноутбука) И НА ПОСЛЕДНЕМ ДАЛЬНЕМ ПРИБОРЕ В ЦЕПОЧКЕ (шлейфе Daisy Chain без «звёзд»!)!
  3. Не совпадает чётность (Parity)! По официальному стандарту Modbus over Serial Line Specification для режима 8-E-1 используется чётность Even (Чёт) (или 8-N-2 — 2 стоповых бита при None), тогда как большинство китайских датчиков и счётчиков коммерческого учёта электроэнергии с завода идут с 9600 8-N-1!
  4. Занят порт в фоне! На ноутбуке осталась свёрнутой в трей служба ОВЕН OPC Server или конфигуратор под WINE — COM-порт является монопольным ресурсом, закройте вторую программу!
  5. В Linux нет прав на /dev/ttyUSB0: выполните один раз sudo usermod -aG dialout $USER и удалите/отключите службу ModemManager (sudo systemctl mask ModemManager), которая в первые 15 секунд после втыкания USB-переходника шлёт в ваш ПЛК мусорные AT-команды поиска 3G-модема!

Чек-лист чемодана пусконаладчика

  • [ ] В сумке с ноутбуком лежат: изолированный конвертер USB <-> RS-485 + RS-232, горсть выводных резисторов 120 Ом 0,25 Вт, нуль-модемный переходник DB9 Female-Female (перекрёст TX 2 <-> RX 3, GND 5 <-> 5), часовая шлицевая отвёртка 2,5 мм с изолированным жалом 1000V VDE и карманный мультиметр!

Частые вопросы

Как подсмотреть на ноутбуке реальные сырые HEX-пакеты чужого неизвестного протокола в работающей линии RS-485 между контроллером и панелью оператора, НЕ РАЗРЫВАЯ линию? Включите ваш изолированный конвертер на ноутбуке параллельно на клеммы A и B с ОТКЛЮЧЁННЫМ терминатором (High-Z вход) и запустите бесплатный сниффер последовательного порта (RealTerm / IO Ninja / python pyserial в режиме HEX + Timestamp milliseconds): вы на 100 % пассивно, не посылая в шину ни одного бита, запишете весь живой обмен байт-в-байт (например, 01 03 00 0A 00 02 E4 09) с контрольными суммами CRC-16!