Показано с 1 по 5 из 5

Тема: Квитирование в контроллере

  1. #1

    По умолчанию Квитирование в контроллере

    На сайте производителя есть пример C# реализации в MasterScada 3.10 квитирования в контроллере, но хотелось бы выяснить некоторые моменты.
    С битом аларма проблем нет, реализуется с помощью штатного средства "событие" и в журналах всё корректно отображается.
    А вот на бит квитирования штатного средства нет - квитирование мы сделали с помощью скриптов.
    После реализации возникли сомнения по поводу оптимальности решения в плане производительности и стабильности среды исполнения.
    Опишу подробнее.
    Есть около 70 типов объектов, для которых есть по одному и более аларму.
    Рассматривалось два пути организации алармов в ПЛК:
    - в ПЛК объекту соответствует регистр словосотояния, в котором на каждый аларм отводится два бита - бит аларма и бит квитирования.
    - в ПЛК выделяются отдельные регистры для алармов и регистры для квитирования, без ориентации на объекты.
    Реализовали по первому пути.
    В каждом объекте выполняется скрипт С#, который:
    - квитирует аларм в журнале, если взводится бит квитирования в слове состояния,
    - взводит бит квитирования, если оператор квитировал аларм в журнале.
    Итого получаем 70 скриптов, большинство из которых однотипых.
    В каждом скрипте фильтруется список сообщений, перебираются в цикле, проверяются атрибуты на квитирование и т.д.
    Недостатки - затраты времени на разработку и падение производительности (нужно все время сканировать журналы на квитирование).
    Второй путь кажется более производительным (обработка одним скрипом), но нет объектного подхода.
    Подскажите, как оптимально реализовать данную задачу.
    Не планируется штатное средство для решения этой задачи?

  2. #2

    По умолчанию

    А как вы себе представляете штатное средство для этого?
    По поводу производительности - нужно попробовать. 70 скриптов - это не много, особенно если сообщения не возникают часто.
    Спасибо.

  3. #3

    По умолчанию

    А как вы себе представляете штатное средство для этого?
    Штатное средство представляю в виде возможности использовать для аларма событие, в котором можно задать переменную (значение, расчет, событие, выход ФБ или команду формата беззнаковый целый) и номер бита, по которому срабатывает событие.
    Если в проекте много алармов, будет быстрее и удобней, чем работать с формулой или распаковками. Понятно, что формула также нужна.
    Для квитирования в ПЛК в этом же событии должно быть поле для выбора переменной и номера бита в ней.
    При квитировании оператором в журнале, устанавливаем этот бит, а при появлении этого бита со стороны ПЛК аларм квитируется в журнале.
    Стандартный механизм. Это мы реализовали с помощью скриптов.
    Если развития функционала для алармов не планируется, просто сообщите об этом.

  4. #4

    По умолчанию

    Уточню по количеству исполняемых скриптов.
    В проекте 70 объектов с типизацией. Всего почти 900 экземпляров, в которых выполняются скрипты квитирования. 1500 тэгов IO. Объект сдан недавно.
    Сейчас на АРМе наблюдается постепенное (по словам персонала) падение производительности в течении недели, что выражается в замедлении реакции на действия оператора и перерисовке окон. После перезагрузки АРМа все ок и в течении недели происходит то же самое, почти до зависания скады. Кроме квитирования в проекте скриптов больше нет, поэтому есть сомнения в их корректности.
    Сейчас персонал сменил версию с 3.9 на 3.10, посмотрим на результат и попробуем заменить АРМ. Подключиться удаленно пока возможности нет. Дальше путь в техподдержку.
    На данный момент мы хотели узнать рекомендации разработчика Masterscada:
    1. Рекомендации по устранению описанной выше проблемы.
    2. По особенностям реализации механизма квитирования в ПЛК, который неплохо было бы иметь в штатном функционале (рассматриваем MasterSCADA для следующего проекта).

  5. #5

    По умолчанию

    Цитата Сообщение от barton72 Посмотреть сообщение
    Если развития функционала для алармов не планируется, просто сообщите об этом.
    В этом направлении точно не планируется.
    Вышлите на support(собка)insat.ru отчет об ошибках с вашим проектом.
    Для того чтобы сформировать отчет об ошибках:
    В Режиме Исполнения (RT):
    "Сервис"->"Отчет об ошибках" или
    Alt+F10 ->"Отчет об ошибках"
    Поставьте галочку "Включая конфигурацию текущего проекта". Сформированную папку заархивируйте и вышлите нам. Если размер архива превышает 5 мб, то выложите его на файлообменник (например Yandex.Disk, Google Drive), а нам пришлите ссылку.
    Спасибо.

Похожие темы

  1. СП270. Квитирование в хронологии событий
    от Роман Журавлев в разделе Панели оператора (HMI)
    Ответов: 6
    Последнее сообщение: 08.10.2020, 13:58
  2. Квитирование
    от a_gricaj в разделе Master SCADA 3
    Ответов: 13
    Последнее сообщение: 05.04.2017, 12:35
  3. Квитирование сообщений в журнале
    от Dima1991 в разделе Master SCADA 3
    Ответов: 5
    Последнее сообщение: 23.05.2016, 15:07
  4. Квитирование
    от a_gricaj в разделе Master SCADA 3
    Ответов: 0
    Последнее сообщение: 06.06.2015, 10:54
  5. ип320 и квитирование аварий
    от jjj в разделе ПЛК1хх
    Ответов: 8
    Последнее сообщение: 15.12.2010, 18:42

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •