Организация триггеров

Просмотр 15 сообщений - с 16 по 30 (из 30 всего)
  • Автор
    Сообщения
  • #4027
    manjey73
    Участник

    Что-то SET выдает ошибку в логе…

    Все работает, забыл номер канала указать….

    • Этот ответ был изменен 4 года, 6 месяцев назад от manjey73.
    #4029
    manjey73
    Участник

    CnlValSet(№ канала) работает только в режимах «Снять Взять», «Откл Вкл», и без указания вводом значений 0 и 1…

    #4032
    manjey73
    Участник

    При команде «Включить» в лог КП летит
    10 | 13.01.2017 12:37:26 | Команда ТУ: тип=Standard, КП=30, значение=0,000

    Почему значение НОЛЬ ?

    #4034
    MikhailMikhail
    Модератор

    При использовании CnlValSet команда вообще не должна доходить до КП, потому что формула возвращает NaN. Если это не так, то нужно разбираться.

    #4035
    MikhailMikhail
    Модератор

    CnlValSet позволяет задать любое числовое значение входному каналу. Дискретное или вещественное — зависит от того, установлено ли поле Значения команд для канала управления или поле пустое.

    #4036
    manjey73
    Участник

    Я вообще о принципе ввода Значения команд.
    Имеем — Отключить;Включить — 0;1
    А при записи ;Включить имеем на экране с одной кнопкой которая передает 0 вместо 1

    То есть ничего перед знаком ; должно быть нулем но без отрисовки клавиши, но значение то должно посылаться 1.

    Например запись ;Один;Два;Три — должно нарисовать 3 кнопки и посылать 1, 2 или 3
    А если написать Ноль;Один;Два;Три должно отриосвать 4 кнопки и посылать 0, 1, 2 или 3.

    #4037
    MikhailMikhail
    Модератор

    Тут лучше мыслить в другом порядке. Если Вам нужна одна кнопка — смотрите как введена команда Выполнить. Если нужно 2 кнопки — пишите их названия. Если нужно модифицировать значение при отправке — используйте формулы.
    Скорее всего, пустые значения между ; игнорируются, но это не важно, т.к. вводить пустые значения бессмысленно.

    #4038
    MikhailMikhail
    Модератор

    Хотя да, по той логике, как введены команды в базу по умолчанию, Вы правы. Но судя по всему, на самом деле работает иначе )

    Попробуйте обновить DLL https://yadi.sk/d/M33iECaY38moiM для SCADA-Сервера. Какой результат?

    • Этот ответ был изменен 4 года, 6 месяцев назад от MikhailMikhail.
    #4041
    MikhailMikhail
    Модератор

    Уточнение — DLL нужно обновлять не для Сервера, а для Вебстанции.

    #4042
    MikhailMikhail
    Модератор

    Появляется пустая кнопка. В общем всё взаимосвязано )

    #4043
    MikhailMikhail
    Модератор

    Исправление войдёт в следующую версию Вебстанции.

    #4044
    manjey73
    Участник

    а dll уже удалили ? хотел посмотреть 🙂

    #4049
    MikhailMikhail
    Модератор

    Удалил, потому что появляется пустая кнопка. Нужно исправлять одновременно несколько DLL.

    #4061
    manjey73
    Участник

    Gagarin, добавил в тему с формулами возможность снимать RS триггер на основе кода CnlValGet и CnlValSet из Web. Схем у меня пока нет, так что на кнопку пока не пробовал повесить.

    • Этот ответ был изменен 4 года, 6 месяцев назад от manjey73.
    #4074
    GagarinGagarin
    Участник

    Спасибо, формулы видел, даже пробовал экспериментировать, но видать не до конца разобрался. Не работает у триггера функция хранения и все тут. Делал так:
    Добавил формулы
    CnlValGet, CnlValSet, RStrig
    Добавил входные каналы — Res тип Дорасчетный ТИ и Alarm1 тип Дорасчетный ТС, прописал для них формулы
    Входные каналы
    Добавил канал управления RESET с формулой CnlValSet
    Каналы управления
    Проверяем, используем входной канал 601 как Set, изначальное состояние Set=0, Res=0
    Set=0 Res=0
    Устанавливает 601 канал в 1, т.е. Set=1, Res по прежнему в 0.
    Set=1, Res=0
    Как видно Alarm1 установился в 1.
    Устанавливаем 601 канал в 0, т.е. Set=0. По идее Alarm1 должен остаться в 1, а нет
    Set=0 Res=0
    Ладно, попробуем установить Res в 1
    Set=0 Res=1
    Устанавливает 601 канал в 1, т.е. Set=1, используем запрещенную комбинацию. Результат
    Set=1 Res=1
    Alarm1 вообще никак не отреагировал. Ну, вроде бы так и должно быть.
    Где я ошибся?

    Прошу прощения, не увидел отредактированной формулы RS-триггера. Все заработало!

    • Этот ответ был изменен 4 года, 6 месяцев назад от GagarinGagarin.
Просмотр 15 сообщений - с 16 по 30 (из 30 всего)
  • Вы должны авторизироваться для ответа в этой теме.