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

Тема: Наблюдение за выполнением цикла программы.

  1. #1

    По умолчанию Наблюдение за выполнением цикла программы.

    Всем доброго времени суток, прошу помощи.
    Кто подскажет как организовать наблюдение за выполнением определенного куска кода (программы)?
    Если будет превышено время выполнения этого кода, должно все остановится и выдать аварию.
    Время выполнения задается в ручную к примеру от 0 до 1000 сек.

  2. #2

    По умолчанию

    1. В Задачах можно включить и настроить watchdog
    2. Как подсказал Валенок, смотреть время самостоятельно

    P.S. Остановить всё и выдать аварию - решение не совсем верное. Правильнее запустить альтернативный, упрощённый алгоритм (управления или безопасного останова) и таки включить аварию
    Тролль-наседка, добрый, нежный и ласковый

  3. #3

    По умолчанию

    Цитата Сообщение от Филоненко Владислав Посмотреть сообщение
    1. В Задачах можно включить и настроить watchdog
    Мне надо в прцесе работы-наладке это время менять в широких пределах.
    В watchdog возможно это?

  4. #4

    По умолчанию

    Я имею виду изменять время не находу процесса отработки, а выставил время например 3сек. и запустил процес на отработку, если этот процесс за 3сек. не добрался до концевика окончания процесса прервать процесс или возвратится в исходную позицию, а если укладывается в эти 3сек. то продолжать дальше...

  5. #5

    По умолчанию

    Это литьевая машина FR 110.
    Пока читаю описание работы, там практический все рабочии циклы контролируются по времени исполнения..
    Изображения Изображения

  6. #6

    По умолчанию

    Цитата Сообщение от Валенок Посмотреть сообщение
    Вот чо вижу, то и пою
    Код:
    var
    	циклы :  (исходная_позиция, отработка, продолжать_дальше, прервать_процесс ...);
     	t : time; 
    	время_например  : time := t#3s;
    	определися_таки : bool;
    -------------
    case циклы of
    	исходная_позиция:
        		if запустил_процес_на_отработку then
          			t := time();	
          			циклы := отработка;
    		end_if
    	отработка :
    		if концевик then
    			циклы := продолжать_дальше;
    		elsif time() - t > время_например  then
    			циклы := sel(определися_таки, исходная_позиция, прервать_процесс);
    		end_if
    	продолжать_дальше:
    		... ;
    	прервать_процесс:
    		... ;
    end_case
    А нельзя ли это все в LD или FB сделать?

Похожие темы

  1. Еще раз про время цикла ПЛК
    от Партизан в разделе ПЛК1хх
    Ответов: 3
    Последнее сообщение: 06.04.2011, 12:38
  2. Ответов: 4
    Последнее сообщение: 14.03.2011, 10:30
  3. Ответов: 1
    Последнее сообщение: 20.05.2010, 11:16
  4. Ответов: 3
    Последнее сообщение: 27.05.2009, 11:50

Ваши права

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