Показано с 1 по 5 из 5

Тема: Принудительная перезагрузка ПЛК и Modbus/TCP

  1. #1

    По умолчанию Принудительная перезагрузка ПЛК и Modbus/TCP

    Здравствуйте!

    Имеется ПЛК110-32 с прошивкой 2.10.5. Подключен по Ethernet.
    Захотелось сделать возможность принудительной перезагрузки ПЛК по записи (с компьютера) определенного значения в заданный регистр Modbus/TCP.

    Код типа:
    if rres=16#FEFE then
    while true do
    i:=i+1;
    end_while
    end_if

    При записи значения 0xFEFE плк благополучно уходит в бесконечный цикл, перезагружается по watchdog'у и рестартует.

    Вот только установить связь по modbus/tcp со стороны opc-сервера (lectus) уже не удается. Помогает только повторный резет с кнопки.
    При этом плк пингуется, Codesys нормально соединяется и все остальное вроде работает...

    Может кто подскажет, где грабли?

  2. #2

    По умолчанию

    Резет по Watchdog и по кнопке АБСОЛЮТНО одинаковы.

  3. #3

    По умолчанию

    Может, просто rres после сброса по сторожевому таймеру остаётся таким же, и опять сваливаемся в бесконечный цикл? Не может такого быть?

  4. #4

    По умолчанию

    может, в соседней теме поведали, что модбас-слейв изначально в ретейн..

  5. #5

    По умолчанию

    Если ьы ПЛК сваливался в бесконечный цикл - он бы перегружался. А Вы говорите, что связь с CoDeSys есть.
    Скорее всего мастер ModBusTCP не устанавливает связь. А при повторной перезагрузке таймаут больше и связь восстанавливается.

Ваши права

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