Страница 1 из 2 12 ПоследняяПоследняя
Показано с 1 по 10 из 15

Тема: Тормозит обмен по Modbus

Комбинированный просмотр

Предыдущее сообщение Предыдущее сообщение   Следующее сообщение Следующее сообщение
  1. #1

    По умолчанию Тормозит обмен по Modbus

    Имею следующую конфигурацию:
    ПЛК63 - master
    МДВВ,
    МУ110,
    ИП320 - 36 регистров,
    СМИ1 - 4 регистра светим, 4 читаем, 1 регистр дискретные входа.
    В процессе наладки обнаружилось, что входы/выходы МДВВ и дискретные входы СМИ 1 срабатывают с большей задержкой, чем предполагалось теоретически. Как побороть эту проблему и с чем это может быть связано?
    Как правильно организовать обмен по сети с помощью библиотеки modbus.lib?
    PS: В отладчике ничего не видно, так как процессы скоростные.

  2. #2

    По умолчанию

    Задержка обусловлена тем, что если панель слэйв - в неё постоянно записывается вся карта ModBus.
    Когда панель мастер - она опрашивает только те переменные, которые отражаются на дисплее.

    ПЛК63 очень маленький. Стоит ли из него делать сетевой шлюз? Возможно стоило ПЛК150 взять?

  3. #3

    По умолчанию

    Что касается подключения и скорости обмена. Что такое интерфейс? Это главное устройство -мастер, и множество подчиненных - слейвы.
    Мастер не может в силу ограниченности интерфейса общаться одновременно со всеми устройствами. Все переменные которые вы в конфигурации задаете опрашиваются последовательно. Поэтому у вас опросятся все регистры всех модулей и только потом произойдет опрос панельки. В связи с этим может казаться, что панелька тормозит, что данные очень медленно передаются. Конечно можно настроить оптимальную конфигурацию, уменьшив опытным путем таймауты обмена.
    Но! все же рекомендуем вам панель подключать на отдельный интерфейс.
    Панелька будет адекватнее и скорость опроса модулей выше.

  4. #4

    По умолчанию

    То, что вывод на панель тормозит, не есть проблема! Более того для нее можно бы вообще приоритет обмена понизить, но.. интерфейс-то все равно один! То есть когда панель погонит свои данные будут те-же тормоза. Пробовал вызывать подпрограммы обмена с каждым устройством последовательно без временных задержек, искусственно формируемых в программе. Эти задержки и обусловили рассчетные 160 мс. Этого бы вполне хватило. Но без этих задердек библиотечные функции modbus вообще на работают - связи нет ни с одним устройством вообще! Понял так, что библиотечные функции выполняются далеко не за один и даже не два цикла ПЛК.

  5. #5

    По умолчанию

    Цитата Сообщение от Валенок Посмотреть сообщение
    У меня без всяких задержек все пучком. Логику проверяйте.
    И для вашего случая мое расчетное время (для 115200,RTU) - 70..100ms
    Если передавать/читать одним массивом то так и будет, в данном случае slave устройств 4 и для каждого надо передать и с каждого принять. Пробовал подряд - глючит.
    Цитата Сообщение от Валенок Посмотреть сообщение
    Ну и что ? Там для это флажок - Complete.
    только когда он 1 и err=0 при чтении - очень редкая ситуация. А если err не проверять в прочитанных данных - мура. Помехи не при чем - тоже самое происходит на столе в тепличных условиях с короткими кабелями сети.
    Цитата Сообщение от Валенок Посмотреть сообщение
    В правильном направлении идете, товарищ.
    ЗЫ
    Убейте приоритеты - у нас все равны
    Может быть. Кстати, можно узреть пример красиво работающего модбаса?
    Или это ноу-хау?

  6. #6
    Пользователь
    Регистрация
    18.08.2008
    Адрес
    Екатеринбург
    Сообщений
    983

    По умолчанию

    Возможно поможет чтение масок входов/выходов модулей, а также передача только Word в ИП320 , без Real?

  7. #7

    По умолчанию

    Цитата Сообщение от Валенок Посмотреть сообщение
    Это вообще побоку


    Значит неправильно пробовали


    Только в виде б-ки.
    Работа с пятком МДВВ и пятком МВА8 подойдет ?
    Конечно подойдет! Надо-же понять что я там не так напрограммил.

  8. #8

    По умолчанию

    Уважаемый Валенок!
    Не много-же меня продвинул Ваш пример.
    Можно-ли увидеть потроха библиотеки?
    Как понимать структуру МДВВ, здесь всего одно слово входов и одно выходов! Где счетчики, где ШИМ - выходы?
    Маловато будет...

  9. #9

    По умолчанию

    Мне было-бы интересно увидеть именно потроха, так как у меня работает моя процедура обмена, но есть несколько неприятных моментов по поводу тормозов. Например, я использую счетчик, который не только считает длину материала, но еще и вычисляет скорость его протяжки, ориентируясь все на тот-же результат счета, а поскольку он получается с задержкой по сети... далее, думаю объяснять не надо.
    Далее большой вопрос по поводу логики работы флага complete библиотечных функций и как его корректно обработать. Если будем обрабатывать как в примерах, при попытке чтения с отключенного устройства не сможем прочитать уже ничего, поэтому интересно поковыряться в чужих кодах, может натолкнет на интересную мысль.

  10. #10

    По умолчанию

    Именно для панели так и сделал, стало чуть лучше, но не панацея.
    Вы пишите, что задержка ответа от слейвов 0. Для МДВВ это можно поставить, а для ИП320 - нет. Че делать?
    Вообще огромное впечатление, что мозги в панели очень медленные и обработать даже небольшой массив она не могет нормально, а выеживать с номером экрана и т. п. дюже неудобно.
    Последний раз редактировалось Алексей Дмитриев; 05.04.2011 в 08:59.

Страница 1 из 2 12 ПоследняяПоследняя

Ваши права

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