1. Обязательно представиться на русском языке кириллицей (заполнить поле "Имя").
  2. Фиктивные имена мы не приветствуем. Ивановых и Пупкиных здесь уже достаточно.
  3. Не писать свой вопрос в первую попавшуюся тему - вместо этого создать новую тему.
  4. За поиск, предложение и обсуждение пиратского ПО и средств взлома - бан без предупреждения.
  5. Рекламу и частные объявления "куплю/продам/есть халтура" мы не размещаем ни на каких условиях.
  6. Перед тем как что-то написать - читать здесь и здесь, а студентам - обязательно здесь.
  7. Не надо писать в ЛС администраторам свои технические вопросы. Администраторы форума отлично знают как работает форум, а не все-все контроллеры, о которых тут пишут.

Modbus RTU & MODBUS ASCII по одной линии

RS-485, ProfiBUS, 4-20 mA, Wi-Fi, GSM и так далее
Ответить

Автор темы
Gleb Frolov
здесь недавно
здесь недавно
Сообщения: 6
Зарегистрирован: 09 окт 2018, 13:29
Имя: Глеб

Modbus RTU & MODBUS ASCII по одной линии

Сообщение Gleb Frolov »

Коллеги, всем добрый вечер ! Нужна помощь, есть работающее оборудование, часть работает по протоколу Modbus RTU , другая часть оборудования по Modbus ASCII.
Это оборудование интерфеймом соединено последовательно по одной линии. Через преобразователь интерфейсов rs485 в rs232 и заведен в древний контроллер контроллер Octagon ( не суть важно) . В общем пытался я подлючаться через nport 5230 по rs 485 . И через opc server разложить эти два сигнала, но пока результатов это не дало. Есть какие ещё варианты? В общем задача и состоит в том , чтобы как то разделить два протокола идущие по одному интерфейсу и завести потом в свою scada. Через mgate( при выборе нужного протокола RTU или ASCII) эти устройства видны .
Аватара пользователя

Serex
эксперт
эксперт
Сообщения: 2092
Зарегистрирован: 15 авг 2011, 21:36
Имя: Пупков Сергей Викторович
Страна: Россия
город/регион: Москва
Благодарил (а): 135 раз
Поблагодарили: 174 раза

Modbus RTU & MODBUS ASCII по одной линии

Сообщение Serex »

А в чем вопрос то? Сами же написали разделить на две линии - то все работает. Или лишнего порта жалко?

Автор темы
Gleb Frolov
здесь недавно
здесь недавно
Сообщения: 6
Зарегистрирован: 09 окт 2018, 13:29
Имя: Глеб

Modbus RTU & MODBUS ASCII по одной линии

Сообщение Gleb Frolov »

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

Valerich
шаман
шаман
Сообщения: 984
Зарегистрирован: 27 июн 2013, 12:20
Имя: Валерич
Страна: СССР
Благодарил (а): 40 раз
Поблагодарили: 92 раза

Modbus RTU & MODBUS ASCII по одной линии

Сообщение Valerich »

Gleb Frolov писал(а): 20 сен 2022, 21:00 В общем пытался я подлючаться через nport 5230 по rs 485 . И через opc server разложить эти два сигнала, но пока результатов это не дало
Хоть какой-то результат есть?
Мастер остается тот-же(контроллер)?
По-отдельности RTU/ASCII пробовали? Если работает по-отдельности, то поставьте 2 преобразователя.

rwg
почётный участник форума
почётный участник форума
Сообщения: 1041
Зарегистрирован: 29 апр 2014, 09:57
Имя: Рыбкин Владимир Геннадьевич
Страна: Россия
город/регион: Тверь
Благодарил (а): 55 раз
Поблагодарили: 134 раза

Modbus RTU & MODBUS ASCII по одной линии

Сообщение rwg »

Gleb Frolov писал(а): 21 сен 2022, 13:15 как можно их разделить программно
Написать свой OPC-сервер, которая будет опрашивать оба устройства. Не знаю, как сейчас, а лет 10-15 назад отдельные программисты на Дельфи брались и легко решали эту задачу.
[/quote]
Valerich писал(а): 21 сен 2022, 13:43 поставьте 2 преобразователя
Если два преобразователя начнут одновременно по общей линии опрашивать свои устройства, может произойти всё, что угодно. Только или по очереди, или через общий преобразователь. А для этого опять нужен программист.
Аватара пользователя

Serex
эксперт
эксперт
Сообщения: 2092
Зарегистрирован: 15 авг 2011, 21:36
Имя: Пупков Сергей Викторович
Страна: Россия
город/регион: Москва
Благодарил (а): 135 раз
Поблагодарили: 174 раза

Modbus RTU & MODBUS ASCII по одной линии

Сообщение Serex »

Выходит, что некий контроллер опрашивает либо в Rtu, либо ASCII и является мастером. В этом мастере хитрый драйвер, который чередует запросы в разных форматах.

Остается только программно повторить данный драйвер.
Готовые решения мне не известны.

Автор темы
Gleb Frolov
здесь недавно
здесь недавно
Сообщения: 6
Зарегистрирован: 09 окт 2018, 13:29
Имя: Глеб

Modbus RTU & MODBUS ASCII по одной линии

Сообщение Gleb Frolov »

/quote]
Хоть какой-то результат есть?
Мастер остается тот-же(контроллер)?
По-отдельности RTU/ASCII пробовали? Если работает по-отдельности, то поставьте 2 преобразователя.
[/quote]

Ops сервер ( kep server) после добавления двух устройств с разными протоколами, выдает ошибку (см фото) . В общем, что Com порт не может обработать протоколы RTU и ASCII одновременно. Через mgate MB3480 опрашиал по отдельности сначала в режиме RTU , потом в режиме ASCII , устройства находятся. Мне кажется с двумя преобразователями тоже вылетит какая нибудь ошибка.

Отправлено спустя 3 минуты 4 секунды:
Serex писал(а): 21 сен 2022, 14:13 Выходит, что некий контроллер опрашивает либо в Rtu, либо ASCII и является мастером. В этом мастере хитрый драйвер, который чередует запросы в разных форматах.

Остается только программно повторить данный драйвер.
Готовые решения мне не известны.
Да все верно, на каком именно новом железе это можно реализовать это вопрос.
У вас нет необходимых прав для просмотра вложений в этом сообщении.

rwg
почётный участник форума
почётный участник форума
Сообщения: 1041
Зарегистрирован: 29 апр 2014, 09:57
Имя: Рыбкин Владимир Геннадьевич
Страна: Россия
город/регион: Тверь
Благодарил (а): 55 раз
Поблагодарили: 134 раза

Modbus RTU & MODBUS ASCII по одной линии

Сообщение rwg »

Gleb Frolov писал(а): 21 сен 2022, 14:48 В общем, что Com порт не может обработать протоколы RTU и ASCII одновременно
СОМ- порту безразлично, по какому протоколу вы работаете. Одновременно (точнее поочерёдно) их не может обработать OPC-сервер. Общепринято, что одна линия - один протокол, лично я не знаю такого сервера, который позволяет менять протокол во время работы. И никто не гарантирует, что датчики с разными протоколами на одной линии смогут работать одновременно, не будут мешать друг другу. Вам скорее всего придётся работать на свои страх и риск с нестандартным программным обеспечением и с риском конфликтов между датчиками.
Аватара пользователя

Valerich
шаман
шаман
Сообщения: 984
Зарегистрирован: 27 июн 2013, 12:20
Имя: Валерич
Страна: СССР
Благодарил (а): 40 раз
Поблагодарили: 92 раза

Modbus RTU & MODBUS ASCII по одной линии

Сообщение Valerich »

Так и не ответили: мастером останется старый контроллер а OPC будет слушать или контроллер уберется и мастером станет OPC сервер?
Аватара пользователя

M3f
не первый раз у нас
не первый раз у нас
Сообщения: 378
Зарегистрирован: 31 янв 2017, 11:08
Имя: Николай
Благодарил (а): 8 раз
Поблагодарили: 116 раз

Modbus RTU & MODBUS ASCII по одной линии

Сообщение M3f »

Gleb Frolov писал(а): 21 сен 2022, 14:48
Serex писал(а): 21 сен 2022, 14:13 Выходит, что некий контроллер опрашивает либо в Rtu, либо ASCII и является мастером. В этом мастере хитрый драйвер, который чередует запросы в разных форматах.

Остается только программно повторить данный драйвер.
Готовые решения мне не известны.
Да все верно, на каком именно новом железе это можно реализовать это вопрос.
Я реализовывал похожую задачу на Siemens-e (S7-315-2PN/DP + CP341, но можно и на более дешевой серии, например S7-1200 или вообще на другом PLC который поддерживает "free protocol"). У меня было на одной линии несколько устройств с Modbus RTU и ряд задвижек со своим собственным протоколом (на базе Modbus ASCII).
Для реализации необходимо хорошее понимание самих протоколов и PLC на котором будет реализация, так как структуру и очередность запросов необходимо писать самому.
EPLAN Electric P8 Professional+ 2.7 HF1 11496 | TIA Portal Professional V17 Upd1 | Creo Parametric 4.0 M070

Prosto_chel
здесь недавно
здесь недавно
Сообщения: 85
Зарегистрирован: 21 июл 2009, 12:18
Имя: Алексей Юрьевич
Страна: Россия
Поблагодарили: 9 раз

Modbus RTU & MODBUS ASCII по одной линии

Сообщение Prosto_chel »

Можно использовать шлюзы типа Anybus AB7010.
Выбираешь режим "нестандартный протокол" и вручную прописываешь команды: для одних узлов Modbus ASCII, для других - RTU. Все полученные данные будут лежать в регистрах памяти шлюза и будут доступны по протоколу Modbus RTU (шлюз с этой стороны будет стандартным Modbus RTU Slave). Единственное, потом надо будет разбирать - какие данные в ASCII, а какие нет

Ryzhij
почётный участник форума
почётный участник форума
Сообщения: 5639
Зарегистрирован: 07 окт 2011, 09:12
Имя: Гаско Вячеслав Эриевич
Страна: Россия
город/регион: Рязань
Благодарил (а): 602 раза
Поблагодарили: 760 раз

Modbus RTU & MODBUS ASCII по одной линии

Сообщение Ryzhij »

Gleb Frolov писал(а): 21 сен 2022, 14:48 Да все верно, на каком именно новом железе это можно реализовать это вопрос.
Всё зависит от задачи.
Если точек опроса немного, то в качестве шлюза с общим количеством самых разношерстных собираемых параметров до 64, можно использовать и ОВЕН МСД200. Он может собирать данные даже по трём протоколам (RTU, ASCII и OWEN), но с одним и тем же битрейтом. Эти данные можно забирать с модуля по другому порту по RTU пакетами (от 1 до 40 параметров за раз) с информацией о состоянии связи с конечным прибором, о формате данных и прочем.
---------------------------------------------------
«У человека в душе дыра размером с Бога, и каждый заполняет её как может.» (Жан-Поль Сартр)
"Ту пустоту, которая остаётся в душе, когда в ней нет Бога, и весь мир не может заполнить." (святитель Николай Сербский)
Ответить

Вернуться в «Интерфейсы, протоколы, связь»