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

Тема: ПЛК 150. Как поймать ошибку связи с приборами modbus slave?

  1. #1

    По умолчанию ПЛК 150. Как поймать ошибку связи с приборами modbus slave?

    Приветствую!
    В модуле Modbus Master есть 2 переменные:
    Last address и Last Error
    Кто знает, какие у этих переменных временные диаграммы?
    Имею ввиду: при отключенном приборе (ну... МК110) эти переменные изменятся одновременно или сначала изменится Last address, а через некоторое время Last Error?
    Может ли получиться неопределённость в данной ситуации?

  2. #2

    По умолчанию

    Цитата Сообщение от Yury Evgenev Посмотреть сообщение
    Приветствую!
    В модуле Modbus Master есть 2 переменные:
    Last address и Last Error
    Кто знает, какие у этих переменных временные диаграммы?
    Имею ввиду: при отключенном приборе (ну... МК110) эти переменные изменятся одновременно или сначала изменится Last address, а через некоторое время Last Error?
    Может ли получиться неопределённость в данной ситуации?
    Добрый день!

    При изменении переменной Last address значение Last Error первым делом обнуляется.

    Если мы говорим об ошибке обрыва связи (81), то Last Error покажет ошибку только после тайм-аута. При этом Last address не изменяется, а "ожидает" завершения работы по определению значения Last Error.

    Время ожидания восстановления связи устанавливается в настройках (см. скрин ниже)

    Таким образом, никакой неопределенности здесь нет.

    Image 2.png

  3. #3

    По умолчанию

    Спасибо за отклик.
    То есть получается некоторая неопределённость: при срабатывании ошибки по обрыву связи на следующий цикл опроса эта ошибка обнулится.
    Пытаюсь придумать алгоритм контроля сети:
    Код:
    (* если адрес тестируемого прибора опрошен*)
    IF "Last address" = deviceAddr THEN
    	(* связь восстановлена / соединение есть *)
    	IF Last Error = 0 THEN
    		deviceConnection:=TRUE;
    	ELSE
    	(* если опрос прошёл с ошибкой *)
    		deviceConnection:=FALSE;
    	END_IF;
    END_IF;
    Подскажите, как можно сделать так, чтобы переменная deviceConnection обнулялась при обрыве связи и становилась TRUE только после появления (удачного соединения)?

    UPD
    Цитата Сообщение от Зинько Владислав
    При этом Last address не изменяется, а "ожидает" завершения работы по определению значения Last Error.
    Вроде бы понял. То есть сначала измениться Last Address и только потом Last Error. То есть изменение происходит при переключении опроса на следующий прибор.
    Если так, то всё должно работать. Попробую проверить.
    Последний раз редактировалось Yury Evgenev; 22.05.2018 в 08:46.

Похожие темы

  1. Как реализовать ошибку связи по Modbus?
    от Lyohin в разделе СПК2хх
    Ответов: 5
    Последнее сообщение: 09.04.2015, 16:15
  2. Потеря связи по ModBus сразу со всеми приборами
    от Aleksandr_Sorokin в разделе Сетевые технологии
    Ответов: 2
    Последнее сообщение: 02.10.2013, 22:57
  3. ПЛК(Slave) < СП270(Master) > ПЛК(Slave). Хождение по экранам при потере связи.
    от masterfloMaster в разделе Панели оператора (HMI)
    Ответов: 3
    Последнее сообщение: 12.04.2011, 18:41
  4. Контроль связи с приборами
    от KIA в разделе ПЛК1хх
    Ответов: 14
    Последнее сообщение: 31.07.2009, 12:54
  5. Длина линий связи датчиков с приборами ОВЕН
    от mar154 в разделе Подбор Оборудования
    Ответов: 4
    Последнее сообщение: 08.05.2008, 16:04

Ваши права

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