Просмотр полной версии : Наблюдение за выполнением цикла программы.
Всем доброго времени суток, прошу помощи.
Кто подскажет как организовать наблюдение за выполнением определенного куска кода (программы)?
Если будет превышено время выполнения этого кода, должно все остановится и выдать аварию.
Время выполнения задается в ручную к примеру от 0 до 1000 сек.
Филоненко Владислав
27.09.2018, 11:57
1. В Задачах можно включить и настроить watchdog
2. Как подсказал Валенок, смотреть время самостоятельно
P.S. Остановить всё и выдать аварию - решение не совсем верное. Правильнее запустить альтернативный, упрощённый алгоритм (управления или безопасного останова) и таки включить аварию :)
1. В Задачах можно включить и настроить watchdog
Мне надо в прцесе работы-наладке это время менять в широких пределах.
В watchdog возможно это?
Я имею виду изменять время не находу процесса отработки, а выставил время например 3сек. и запустил процес на отработку, если этот процесс за 3сек. не добрался до концевика окончания процесса прервать процесс или возвратится в исходную позицию, а если укладывается в эти 3сек. то продолжать дальше...
Это литьевая машина FR 110.
Пока читаю описание работы, там практический все рабочии циклы контролируются по времени исполнения..
Вот чо вижу, то и пою
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 сделать?
Powered by vBulletin® Version 4.2.3 Copyright © 2024 vBulletin Solutions, Inc. All rights reserved. Перевод: zCarot