Страница 1 из 3 123 ПоследняяПоследняя
Показано с 1 по 10 из 21

Тема: ПЧВ1 в сети RS-485 по ModBus

  1. #1

    По умолчанию ПЧВ1 в сети RS-485 по ModBus

    Заметил следующую особенность работы ПЧВ1. Он может произвольно остановиться если подключен к сети RS-485.
    ПЧВ выключается (двигатель соответственно останавливается) даже если с самим ПЧВ обмена данными нет (подключен к сети, по которой опрашивается МВА, МДВВ, МЭ110-3М). Выключается, независимо от того запущен в ручном режиме или командным словом по RS-485. При этом, если был запущен в ручном режиме - переходит в режим дистанционного управления.

    Если обмен данными только с ПЧВ (ничто больше по RS-485 не опрашивается), то проблем нет.

    После тестов на тему что конкретно вызывает останов ПЧВ выяснилось, что проблема в длинных блоках данных. Я пытался одним запросом считать сразу все входы МВА (считывал 45 регистров с 3-го по 47-й). Сам МВА работал нормально, а вот ПЧВ выключался. Это было сделано с целью уменьшения времени обмена. Даже несмотря на то что в этих 45 регистрах есть лишняя информация, такой опрос занимает гораздо меньше времени, чем опрос каждого канала в отдельности.

    Сейчас переделываю обмен с МВА так, чтобы входы опрашивались двумя запросами по 4 входа(регистры с 3 по 23 и с 27 по 47). Так вроде все работает стабильно. Но так, обмен длиться дольше.

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

    Вот такие вот дела.

  2. #2

    По умолчанию

    А кто Master сети ?

  3. #3

    По умолчанию

    ПЛК100. Но опрашиваю не конфигуратором, а библиотекой owen_modbus.

  4. #4

    По умолчанию

    Цитата Сообщение от izwerg Посмотреть сообщение
    ПЛК100. Но опрашиваю не конфигуратором, а библиотекой owen_modbus.
    У ПЧВ в настройках есть параметр, который устанавливает слежение за наличием связи с Master. Если Master долго (время ожидания можно задать) не обращается к ПЧВ, то привод останавливает двигатель. Этот параметр можно заблокировать.
    Последний раз редактировалось Вольд; 07.12.2014 в 13:41.

  5. #5

    По умолчанию

    Точно причина не в этом. Во-первых, этот параметр не используется. Во-вторых, двигатель выключается даже, если запущен в ручном режиме(вообще без связи с мастером работает). В-третьих, ПЧВ выключается, если обмен идет только с ним и МВА. Мастер посылает запрос ПЧВ минимум 2 раза в секунду.
    Не знаю какой размер входного буфера у ПЧВ, но вероятно он меньше, чем ~100 байт, которые он получает от МВА (когда МВА отвечает мастеру). Что при этом происходит - трудно предположить. Возможно, ноль оказывается там, где должен быть адрес устройства (в сообщении от МВА много нулей) и ПЧВ пытается это сообщение выполнить.
    Но это все только мои догадки. Остается только факт, что невозможно за раз считать 45 регистров в сети, где есть ПЧВ.

  6. #6

    По умолчанию

    Почему ПЧВ должен читать то, что предназначено МВА, если у них разные адреса в сети ? Попробуй поменять сетевой адрес ПЧВ. Также можно попробовать увеличить время тайм-аута у ПЧВ.
    Последний раз редактировалось Вольд; 07.12.2014 в 13:43.

  7. #7

    По умолчанию

    Он и не должен. Вот только сообщение, которое МВА посылает мастеру до него все равно доходит. И если это сообщение длинной 100 байт, а входной буфер ПЧВ - 50, то ХЗ что окажется в той ячейке памяти, где должен быть адрес. И если там ноль, то ПЧВ пытается это сообщение обработать как широковещательное.
    Менять адрес и увеличивать таймаут пробовал. Более того, в любой конфигурации все работает правильно, если не считывать так много регистров за раз, и ошибка возникает только при увеличении числа регистров в одном запросе.
    Если есть возможность то попробуй соединить в сеть ПЧВ, МВА и считать из МВА 45 регистров. ПЧВ должен работать на тех же настройках порта, естественно иметь другой сетевой адрес, но обмен данными с ним можно и не делать.

  8. #8

    По умолчанию

    Широковещательный режим (0 в поле адреса) может задать только Master сети. Slave сети в пакете-отклике в поле адреса не может установить 0. 0 в поле адреса в пакете-отклике может появиться только в случае искажения поля адреса при передаче пакета. Задай адрес для МВА 55Hex, а для привода AAHex.
    Последний раз редактировалось Вольд; 08.12.2014 в 13:56.

  9. #9

    По умолчанию

    Конечно не может. Широковещательных запросов у меня вообще нет.

  10. #10

    По умолчанию

    Цитата Сообщение от izwerg Посмотреть сообщение
    Широковещательных запросов у меня вообще нет.
    Зачем тогда про него писал в посте #7 ?

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

Похожие темы

  1. Золотые правила организации сети RS-485. Управление трмами по RS-485.
    от МихаилЯр в разделе Сетевые технологии
    Ответов: 80
    Последнее сообщение: 05.03.2024, 11:39
  2. Нужна помощь. Настройка сети modbus-RTU, RS-485
    от Игоррр в разделе ПЛК1хх
    Ответов: 11
    Последнее сообщение: 15.03.2012, 22:07
  3. Топология сети RS-485/Modbus #2
    от Nick.Rodionov в разделе ПЛК3хх
    Ответов: 6
    Последнее сообщение: 27.10.2011, 12:42
  4. Топология сети RS-485/Modbus
    от Nick.Rodionov в разделе ПЛК1хх
    Ответов: 5
    Последнее сообщение: 26.10.2011, 23:22
  5. задержка ответа по сети Rs-485
    от light_finder в разделе Помощь Разработчикам
    Ответов: 34
    Последнее сообщение: 01.06.2010, 10:32

Ваши права

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