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

Тема: Хочу знать, какое именно устройство в сети modbus отвалилось.

  1. #1

    По умолчанию Хочу знать, какое именно устройство в сети modbus отвалилось.

    Вот такой код работает на уже многих объектах.
    Контроллеры - ПЛК110 в основном.
    Код:
    al[last_address] := last_error <> 0;
    
    TONF1 (in := al[5], tp := time_wait, q => ALARM_stratos5);
    TONF2 (in := al[6], tp := time_wait, q => ALARM_stratos6);
    TONF3 (in := al[16], tp := time_wait, q => ALARM_mv110_16);
    TONF4 (in := al[32], tp := time_wait, q => ALARM_mv110_32);
    TONF-ы - это экземпляры FB, в которых in идёт на вход TON, TON.q идёт на вход TOF, а TOF.q отдаётся в TONF*.q
    al: ARRAY[5..32] OF BOOL;
    time_wait равен 5 секундам.
    slave-устройства объявлены через конфигурацию ПЛК, last_address и last_error тоже взяты оттуда.

    Вроде всё было хорошо, но на очередном объекте случилось так, что затянули с включением насосов в сеть, работают себе независимо от контроллера пока.
    Видимо раз в 3-4 часа случается перехлёст успешного обмена с мв110 на время обмена с насосами и не на один-два цикла, а аж на больше чем 5 секунд.
    Может кто-нибудь подсказать, как это можно обойти?

  2. #2

    По умолчанию

    В основном это не страшно, но идут СМС с этого объекта о том, что насос появился в сети и тут же о том, что пропал опять. Примерно раз в 3 - 4 часа, случайный из двух насосов.
    Сейчас жду очередного такого случая чтобы замерить время, на которое насос "появляется" в сети и увеличить соответственно time_wait.
    Но хочется всё же разобраться, как так получается, как вообще возможно, чтобы это время было больше 5 секунд. Время цикла ПЛК держится около 30 мс +- 5 мс.
    Последний раз редактировалось Lode Runner; 04.12.2013 в 08:33.

  3. #3

    По умолчанию

    Разрешилось.
    Оказывается, когда контроллер переходит к опросу следующего устройства в конфигурации, он может ровно на один цикл last_address переключить на адрес следующего устройства, а last_error ещё не обновить.
    Выяснил когда обвешал всё что только можно флагами и таймерами и посмотрел точно по времени что именно происходит при "появлении в сети" несуществующего устройства.
    Вот так раньше выглядел ФБ TONF:
    before.png
    TON вырубал вход TOF-у и 50/50, в зависимости от времени цикла, успевал или нет врубить обратно прежде чем возникнет авария. Устройство "появлялось в сети" ровно на один цикл.
    Сейчас сделал так:
    after.png
    То есть просто добавил TOF секунду времени.
    После этого СМС стали вести себя так, как и ожидалось.

Похожие темы

  1. Ответов: 2
    Последнее сообщение: 07.03.2012, 13:17
  2. Топология сети RS-485/Modbus
    от Nick.Rodionov в разделе ПЛК1хх
    Ответов: 5
    Последнее сообщение: 26.10.2011, 23:22
  3. Два modbus rtu в одной сети
    от gr_vl в разделе Сетевые технологии
    Ответов: 2
    Последнее сообщение: 03.04.2011, 09:55
  4. Нужно знать
    от urfin в разделе Эксплуатация
    Ответов: 3
    Последнее сообщение: 09.12.2008, 13:20

Ваши права

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