Тема / Topic: Блок FBD nWRK _возможно_ с багом (произвольно обнуляется)
Dmitry A. E.
Junior Member / Новичок
Участник № / Member № 1477
отправлено / posted
Есть проект, в котором используется ФБД блок nWRK. nWRK используется в виде таймера, каждую секуду увеличивающего значение выхода на единицу. Значение выхода иногда (не больше суток. один раз через 7 часов) ИЗМЕНЯЕТСЯ. Скорее всего обнуляется. Момент небыл пойман, хотя старались 4 раза его засечь. Подскажите плиз, как бороться с такой проблемой или чем заменить блок, дающий возможность таймера (таймер можно "паузить" и "отпаузивать") и на выходе которого имеется количество секунд.
Сообщения / Posts 9 | Из / From: Россия
| IP / IP: IP адрес / IP address |
отправлено / posted
Сам FBD сбрасывать свое состояние не может, многие пользователи работают с данным блоком, и пока небыло еще обращени по поводу самопроизвольных сбросов. Причины может быть две: 1) Сам алгоритм FBD 2) Если выход блока - аргумент, то это может быть канал, который к нему привязан
Теперь немного подробнее по 2-му пункту: Дело в том, что привязки аргументов FBD к атрибутам каналов мэпированы. Поэтому, посылая значение в атрибут канала, который привязан к аргументу FBD, вы тем самым можете изменить значение аргумета FBD. Поэтому - наиболее вероятная причина - это сброс значения выхода FBD nWRK через атрибут канала.
Сообщения / Posts 17317 | Из / From: Россия
| IP / IP: IP адрес / IP address |
Dmitry A. E.
Junior Member / Новичок
Участник № / Member № 1477
отправлено / posted
Входы ФБД блока не менялись. Это было отслежено через отчёт тревог и СПАД. Выход ФБД блока привязан к входу другого блока. Поэтому пункт номер 2 я отсекаю, точно так же как и пункт 1. -------- на rst посылается 0x30 - режим работы в секундах а на sts посылается 1. Выход tf увеличивается на 1 каждую секунду. В какой-то момент происходит сброс выхода tf в 0:duno: !
Dmitry A. E.
Junior Member / Новичок
Участник № / Member № 1477
отправлено / posted
Проблема была решена!!! Выход блока TF имел тип hex. Следовательно, его максимальное значение может быть лишь 65536. Это в секундах. Если перевести в нормальное время, то получается 18 часов 12 минут 16 секунд. Именно через такой интервал времени сбрасывался выход TF. Изменение типа на float отчасти решает эту проблему. Если Вам это где-то пригодится, то поимейте в виду эту ситуацию. Спасибо за поддержку!
Сообщения / Posts 9 | Из / From: Россия
| IP / IP: IP адрес / IP address |