Статусы каналов и архивы

Стартовая страница Форумы Понять, как работает ПО Статусы каналов и архивы

Просмотр 7 сообщений - с 1 по 7 (из 7 всего)
  • Автор
    Записи
  • #30316
    saprin8
    Участник

    Добрый день, возникла проблема (старая как оказалось) с расчетным статусом канала.
    Есть 2 переменные с режимом клапана bAuto и bManual, тип канала входной у них.
    Создал скрипт StatusSA:
    public int StatusSA(double avt, dobule mu)
    {
    int status = 3;

    if (avt == 1 & mu == 0)
    {
    status = 1; //АВТО
    }
    else if (avt == 0 & mu == 1)
    {
    status = 2; //МУ
    }
    else if (avt == 0 & mu == 0)
    {
    status = 3; //ОТКЛ
    }
    return status;
    }

    Добавил в статусы каналов цвет 201-limegreen, 202-yellow, 203-darkgray.

    Также создал формат «-;АВТ;МУ;О» с кодом String и перечислением.

    Добавил формулу в расчетный канал StatusSA(Val(avt), Val(mu)); Cnl + 200

    Слинковал на динамический текст адрес расчетного канала, установив цвет текста Status, и вывод размерности.

    В итоге у меня желтым цветом отображается «АВТ».

    При этом если входной канал со статусом 0-МУ, а 1-АВТ, в формуле канала (входном) Cnl;Cnl+204, где 204 это yellow, а 205 это limegreen, то все работает и передает правильно и цвет и текст (в форматах соответственно МУ;АВТ).

    Такое ощущение, что передает дорасчетное изначальное значение канала 0 и он в формуле статус Cnl + 200 прибавляет дорасчетное значение. А так как 200 это yellow в статусах канала, то он желтым и выделяет его.
    В 5 версии все работало нормально.

    И немного не по теме вопросы:
    1. Куда пропал генератор из 5 версии? удобно было тестировать формулки и отображение на мнемосхеме.
    2. Как теперь смотреть архивы? Мне подсказали про утилиты, но какие?
    3. Зачем добавлена кнопка «Закрыть» во всплывающие окна?

    #30317
    Mikhail
    Модератор

    Добрый день!
    Проверьте фактический статус канала с помощью утилиты ScadaTestClient, которую можно скачать здесь.

    Генератор внутри проекта был не совсем уместным. Нужно перенести его внутрь веб-приложения. Но пока этого не сделано используйте ScadaTestClient.
    Архивы можно смотреть не только утилитами, но и с помощью стандартных отчетов. Архивы в 6-й версии могут использовать разные источники данных, поэтому интерфейс для их просмотра тоже должен быть через веб.

    Зачем добавлена кнопка «Закрыть» во всплывающие окна?

    Заведите, пожалуйста, отдельную тему, добавив скриншоты как было и как стало.

    #30318
    saprin8
    Участник

    Запустил TestClient, как я и писал выше — статус 200 (0+200 соответственно). Попробовал скопировать формулу StatusSA в статус и прибавить 200, вроде заработало.

    #30320
    Mikhail
    Модератор

    В 6-й версии формула может возвращать структуру CnlData, которая содержит значение и статус вместе. Это удобно, когда одновременно рассчитываются и значение, и статус.
    Например, return NewData(1.23, 1);

    #30333
    mr_smit
    Участник

    А что такое вообще статус канала?

    В сообщениях есть: по изменению статуса, по изменению значения. В чем разница?

    #30334
    a80808
    Участник

    Значение канала — это данные, которые в канал записаны.
    Статус канала — это состояние. Например статус = 0 — данные недостоверны.
    Полный перечень в таблице «Типы событий» (и5) и «Статусы каналов» (в6). Можно задавать свой статус (напрмер чтобы в свой любимый цвет покрасить )) формулой SetStat() и также свой статус занести в таблицу и покрасить в нужный цвет

    #30337
    Mikhail
    Модератор

    Посмотрите таблицу Статусы каналов, там все статусы описаны.

Просмотр 7 сообщений - с 1 по 7 (из 7 всего)
  • Для ответа в этой теме необходимо авторизоваться.