Страница 2 из 2 ПерваяПервая 12
Показано с 11 по 20 из 20

Тема: Подскажите программу логгер/сниффер Modbus

  1. #11

    По умолчанию

    А что за модули такие?
    Овеновские МВ110 можно читать намного быстрее

  2. #12

    По умолчанию

    Цитата Сообщение от kondor3000 Посмотреть сообщение
    А что за модули такие?
    Овеновские МВ110 можно читать намного быстрее
    Эти ---------->
    Цитата Сообщение от FPavel Посмотреть сообщение
    Модули RealLab NLS-8TI на 8 каналов термодатчиков, в данном случае термопар. https://www.reallab.ru/Support/download/

  3. #13

    По умолчанию

    Цитата Сообщение от FPavel Посмотреть сообщение
    Эти ---------->
    Понятно, видел но не пользовал, цена и исполнение (в плане опроса как оказалось) не адекватные.
    Последний раз редактировалось kondor3000; 02.08.2026 в 19:32.

  4. #14

    По умолчанию

    На самом деле - исполнение очень адекватное - в узком модуле 8 каналов AI - очень плотно. Ко всему - исполнение Ex - искробезопасное.

    Как объяснял проектировщик, альтернативы ему нет - по проекту нужно обязательно исполнение Ex и 18 модулей разместить во взрывобезопасном шкафу - это толстостенная конструкция с тяжёлым круглым люком на резьбе (диаметр люка около 500 мм) - в нём едва уместились эти модули.

    Вернее, альтернатива, конечно, существует, но несоизмеримо дороже и габаритнее - эту альтернативу и вынуждены были применить.

    Но эти решения уже за пределами моей компетенции, не всё понимаю и доверяю проектировщику на слово.

  5. #15
    Пользователь
    Регистрация
    23.09.2008
    Адрес
    Центророссийск
    Сообщений
    3,192

    По умолчанию

    Все решения приняты и ок

    Просто не совсем понял это
    Сама проблема оказалась в модулях ввода - для одного модуля опрос значений измерений показаний 8 термопар занимал 15 мс (одним запросом), а опрос достоверности измерений (обрывов) 8 термопар занимал 8х200мс=1600мс (8 запросов - одним запросом невозможно согласно РЭ на модуль и по результатам эксперимента).
    Таким образом, для 8 модулей ввода оказалось, что период обновления показаний составляет 8х1600мс=12800мс=12,8с и это не удовлетворяет требованиям ТЗ.
    8 модулей ввода-вывода, для опроса каждого требуется сделать по 9 запросов (1 для восьми измеренных значений и ещё 8 для восьми регистров качества измерений)
    8 x (1 + 8) это 72. 12800/72 это 178мс на 1 запрос. А почему так много? Или я что-то не понял?
    Почему нужно опрашивать по схеме "1 + 8"? Это строго конфигурация? Другие варианты невозможны?
    Здесь "8х1600мс=12800мс=12,8с" - подразумевается что обновления на самих модулях как взаимосвязано. А как если они независимые?


    Пока понял что есть некие 8 измерений которые можно получить 1 запросом. И у них обновления в модуле - 15мс.
    И есть некие 8 статусов к измерениям которые нельзя получить 1 запросом. И их обновление в модуле 200мс и последовательное по 8 каналам.
    И таких 8 модулей
    Последний раз редактировалось Валенок; 02.08.2026 в 20:58.

  6. #16

    По умолчанию

    Тема создавалась для получения совета по выбору программ анализа обмена Modbus.
    В ходе работ такие программы нашёл и поделился их названиями и ссылками, способами использования - может быть кому-то пригодятся.

    Цитата Сообщение от Валенок Посмотреть сообщение
    Все решения приняты и ок

    Просто не совсем понял это
    Исходная наблюдаемая проблема заключалась в том, что при ошибке обмена с модулем это состояние ошибки длилось по ~12 секунд. Причины были непонятны, т.к. время полного опроса одного модуля оценивалось в 0,100-0,150 секунд, а всех модулей ~1,5 секунд.
    На протяжении этих 12 секунд измерения 8 температур от модуля признавались недостоверными, что приводило к останову установки.

    Выяснилось, что эта длительность связана с длительностью периода опроса всех модулей ввода - если возникала ошибка обмена, то до следующего успешного обмена статус устанавливался в "ошибку", т.е. получалось 12 секунд недостоверности измерений 8 датчиков.

    Уменьшить период опроса не удалось, т.к. каждый модуль ввода аналоговых сигналов от термопар не позволял выполнить опрос 8 каналов и 8 состояний обрыва термопар менее, чем за 1600 мс - при любой скорости обмена. Пришлось менять модули ввода.

    Опрос одного модуля состоит из опроса значений 8 температур и 8 состояний обрывов термопар. Значения температур опрашивались почти мгновенно одним запросом - за 15 мс. А статусы обрыва приходилось опрашивать по одному (так модуль устроен) и после запроса ответ приходил через 200 мс, наверное, состояние обрыва мониторилось не постоянно, а по запросу и требовало от модуля проведения дополнительных действий (это я такое предполагаю). Таким образом, опрос статусов обрыва занимал 1600 мс и на его фоне можно пренебречь временем опроса температур.

    Да, и таких модулей 8 шт на одной линии Modbus. Присутствуют ещё модули других типов, опрос которых сопоставим с 5-15 мс и временем на их опрос тоже можно пренебречь.
    Была мысль выделить по линии Modbus на каждый модуль ввода, тогда период опроса сократился бы с 12 с до 1,6 с, но даже это время почти в 10 раз превышает требование технологов из ТЗ.
    Т.е. технологи возмутились столь редкому опросу по сравнению с требованиями получать новые измерения не реже, чем через 0,100 секунд.

    При помощи HTerm были получены логи обмена с отметками времени, по которым и стали видны длительности различных запросов. При помощи HEX-редактора выполнял навигацию (поиск) каждого последующего опроса канала измерения для получения временных интервалов.
    По правде, есть инструмент лучше, но он платный (хотя и недорого), но сейчас недоступный из России. Пользовался им когда-то давно, пока он был бесплатным, а позже - триальной версией (хватало 20 минут для поиска ошибок).

  7. #17
    Пользователь
    Регистрация
    23.09.2008
    Адрес
    Центророссийск
    Сообщений
    3,192

    По умолчанию

    что при ошибке обмена с модулем это состояние ошибки длилось по ~12 секун
    Где это состояние было - в коде/конфигураторе/ответе модуля/... ?

    Тупой вопрос:
    Если после очередного запроса 8 значений (сразу) и НЕобнаружении нигде изменений более чем на сколько-то там - так ли нужен запрос статуса? Т.е. можно ли каждый конкретный статус опрашивать только если отклонение соотв. значения больше чего-то там (ну может + не реже чем какой-то вменяемый период)
    Можно ли программно шедулировать запросы статусов отдельно от значений если они (статусы) такие тупые (200мс)?


    --
    Я собсно просто хочу понять тамошние возможности. Если выше - возможно, то не вижу проблем с 12сек, хотя
    Т.е. технологи возмутились столь редкому опросу по сравнению с требованиями получать новые измерения не реже, чем через 0,100 секунд.
    Опросить вообще всё? Ну так это полюбасу не реально в данных условиях (хотелка иметь прям завсегда статусы).
    А вот если как-то можно не завсегда, допустить иногда 200мс тишины [+ учесть что есть, насколько понял, еще интерфейсы] - то можно и поговорить про "почти всегда 0.100...0.150мс - всё"

    и вообще
    ... не реже, чем через 0,100 секунд.
    А возможности самих термопар - какие?


    Но!
    Я не оспариваю ваших решений там - это ваша тема и ваши деньги.
    Последний раз редактировалось Валенок; 03.08.2026 в 00:10.

  8. #18
    Пользователь
    Регистрация
    27.11.2011
    Адрес
    Краснодар
    Сообщений
    13,504

    По умолчанию

    А не пробовали выполнять опрос с пачкой ненужных регистров? Иногда приборы это позволяют.
    Исходная наблюдаемая проблема заключалась в том, что при ошибке обмена с модулем это состояние ошибки длилось по ~12 секунд.
    ну так пока целый круг опроса пройдет по всем модулям, почему удивляют эти 12 секунд ?
    Последний раз редактировалось melky; 03.08.2026 в 08:59.

  9. #19

    По умолчанию

    Решения не мои - есть опытный руководитель работ, который аргументированно потребовал обязательный опрос состояний. Поэтому от заманчивого критерия отсутствия обрыва "изменение значения измерения температуры" пришлось отказаться.

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

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

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

  10. #20
    Пользователь
    Регистрация
    23.09.2008
    Адрес
    Центророссийск
    Сообщений
    3,192

    По умолчанию

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

    Здесь вопрос решён - и ок. Я всё. Снифер не предлагаю)

Страница 2 из 2 ПерваяПервая 12

Похожие темы

  1. Подскажите по выбору электросчетчика с ModBus RTU
    от Harp в разделе Трёп (Курилка)
    Ответов: 20
    Последнее сообщение: 08.04.2026, 16:26
  2. Ответов: 28
    Последнее сообщение: 20.01.2017, 18:38
  3. PCLogger - универсальный логгер для CDS v3
    от Mikhail Shvetsov в разделе ПЛК3xx (архив)
    Ответов: 0
    Последнее сообщение: 23.11.2012, 13:39
  4. Ответов: 2
    Последнее сообщение: 30.06.2011, 09:45
  5. Подскажите ссылочку на спецификацию modbus?
    от Gosha в разделе Помощь Разработчикам
    Ответов: 0
    Последнее сообщение: 29.03.2010, 07:39

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •