То есть 2 формулы в канале одном? Функция же одно значение возвращает, выход из нее будет сразу после первого TON. Думаю можно только с условием выполнения одного или другого таймера, возвращение двух вряд ли.
Мне же надо в CheckComm встроить два таймера. Сам CheckComm вызывается из входной формулы канала.
И таких примеров у меня был не один, когда нужны два таймера или таймеры должны быть вложенными.
Если для вычисления значения формулы используется номер канала, то потребуется переделать формулу так, чтобы она не зависела от номера канала. Какой-нибудь произвольный ключ для хранения связанных с формулой данных использовать.
да, использовался CnlNum, немного изменил подход, попробую протестировать сейчас.
В общем добавил таймеру переменную со значением по умолчанию 0 (типа индекс, номер таймера).
Ключ словаря изменил на string и просто ключ делаю $»{CnlNum}_{индекс}»
Судя по коду должно будет работать и можно будет использовать несколько таймеров не пересекаясь с другими каналами.
К номеру канала приходится привязываться, ибо таймеры могут располагаться в разных каналах и считать каждый своё. Просто надо ДВА 🙂
Blink можно организовать только двумя таймерами например.
Или в приведенном примере со Статусами мне нужны задержки как на Превышение, так и на Занижение.