События — различия между версиями

Материал из WebHMI Wiki
Перейти к: навигация, поиск
Строка 1: Строка 1:
 
<p>События представляют собой механизм, позволяющий регистрировать данные только по наступлению неких условий, когда началась определенная технологическая операция, либо например, определенный параметр процесса вышел за допустимые границы,  и необходимо получить отдельный набор данных, связанный с этим моментом, таких как время начала, окончания, значения или изменения других параметров (влияющих на процесс или зависимых от него ) в этот момент, либо на протяжения данного события, что позволяет эффективно анализировать такие ситуации. </p>
 
<p>События представляют собой механизм, позволяющий регистрировать данные только по наступлению неких условий, когда началась определенная технологическая операция, либо например, определенный параметр процесса вышел за допустимые границы,  и необходимо получить отдельный набор данных, связанный с этим моментом, таких как время начала, окончания, значения или изменения других параметров (влияющих на процесс или зависимых от него ) в этот момент, либо на протяжения данного события, что позволяет эффективно анализировать такие ситуации. </p>
 
Таким образом, события позволяют удобно отфильтровать необходимые данные по каждому из таких условий их наступления, и получить отдельные структурированные отчеты по каждому событию в отдельности. В отличие от построения необходимых протоколов по "срезу" информации в базе данных (логах), событийные отчеты формируются "на лету" т.е. в темпе с процессом мониторинга. После создания события, его данные становятся доступными в виде отчетов в меню '''Reports''', а также имеется возможность представлять данные на временно оси ("ленте"), доступной в меню '''Reports/Timeline'''(после выбора опции Show on timeline для одного из событий).
 
Таким образом, события позволяют удобно отфильтровать необходимые данные по каждому из таких условий их наступления, и получить отдельные структурированные отчеты по каждому событию в отдельности. В отличие от построения необходимых протоколов по "срезу" информации в базе данных (логах), событийные отчеты формируются "на лету" т.е. в темпе с процессом мониторинга. После создания события, его данные становятся доступными в виде отчетов в меню '''Reports''', а также имеется возможность представлять данные на временно оси ("ленте"), доступной в меню '''Reports/Timeline'''(после выбора опции Show on timeline для одного из событий).
<p>Рассмотрим в качестве примера работы событийного отчета задачу определения интервала времени, когда некоторый параметр вышел за определенные границы, и дополнительные данные связанные с этим событием - время начала и окончания этого интервала, среднее значение параметра в этом интервале, минимальное и максимальное. В качестве источника сигнала будем использовать данные регистра интервал 20 сек., меняющего свои значение от 0 до 19 в течении 20 сек.<p>
+
<p>Рассмотрим в качестве примера работы событийного отчета задачу определения интервала времени, когда некоторый параметр вышел за определенные границы, и дополнительные данные связанные с этим событием - время начала и окончания этого интервала, среднее значение параметра в этом интервале, минимальное и максимальное. В качестве источника сигнала будем использовать данные регистра "интервал 20 сек."(''I20''), меняющего свои значение от 0 до 19 в течении 20 сек.</p>
Для создание событий выбираем п. меню '''Setup/Events''', затем '''+Add new event'''. Назначение базовых настроек показано на рисунке. <br> <br>
+
Для создание событий выбираем п. меню '''Setup/Events''', затем '''+Add new event'''. Назначение базовых настроек показано на рисунке. Поскольку событие длящееся, необходимо не забыть указать соотвествующую опцию. <br> <br>
 
[[Файл:Edit event basic.png|750px]] <br><br>
 
[[Файл:Edit event basic.png|750px]] <br><br>
 
Вкладка '''Condition''' служит для собственно формирования условия выполнения события:<br>
 
Вкладка '''Condition''' служит для собственно формирования условия выполнения события:<br>
Строка 18: Строка 18:
 
*Last update time - время последнего обновления, фактической регистрации события  
 
*Last update time - время последнего обновления, фактической регистрации события  
 
*Произвольный регистр из списка объявленных в меню Registers - при этом в третьей колонке настроек отчета можно будет дополнительно выбрать обработку этого регистра -взять минимальное(Min), максимальное значение(Max), первое значение при старте события(First Value) или последнее при его окончании(Last Value), среднее значение (Average Value).
 
*Произвольный регистр из списка объявленных в меню Registers - при этом в третьей колонке настроек отчета можно будет дополнительно выбрать обработку этого регистра -взять минимальное(Min), максимальное значение(Max), первое значение при старте события(First Value) или последнее при его окончании(Last Value), среднее значение (Average Value).
<p>Настройки для регистров условий в и используемом нами примере приведены на предыдущем рисунке. Название столбцов отчета могут изменены. Для регистров содержащих время, используется строка задания формата принятая в PHP.
+
<p>Настройки для регистров условий в и используемом нами примере приведены на предыдущем рисунке. Название столбцов отчета могут изменены. Для регистров E2.0, E2.1, содержащих время, используется строка задания формата, принятая в PHP.
 +
Для регистров E2.2, E2.3 заданы мин и макс. значения соответственно.Е2.4 - усредненное значение регистра на протяжеиии события. </p>
 +
Результатом настройки данного события станет появление в меню Reports отчетов такого вида:<br><br>
 +
[[Файл:Event report example copy.png|750px]]<br>
 +
Поскольку при создании события была также указана опция "Show on timeline", все события будут сохранены и здесь также. Выноской с точкой на оси отмечается начало события, либо однократное событие. Удерживая нажатой основную кнопку мыши, можно сдвинуть график по горизонтали, "прокруткой" колеса мыши изменяется масштаб. <br>
 +
[[Файл:Time line.png|750px]]

Версия 21:11, 25 января 2015

События представляют собой механизм, позволяющий регистрировать данные только по наступлению неких условий, когда началась определенная технологическая операция, либо например, определенный параметр процесса вышел за допустимые границы, и необходимо получить отдельный набор данных, связанный с этим моментом, таких как время начала, окончания, значения или изменения других параметров (влияющих на процесс или зависимых от него ) в этот момент, либо на протяжения данного события, что позволяет эффективно анализировать такие ситуации.

Таким образом, события позволяют удобно отфильтровать необходимые данные по каждому из таких условий их наступления, и получить отдельные структурированные отчеты по каждому событию в отдельности. В отличие от построения необходимых протоколов по "срезу" информации в базе данных (логах), событийные отчеты формируются "на лету" т.е. в темпе с процессом мониторинга. После создания события, его данные становятся доступными в виде отчетов в меню Reports, а также имеется возможность представлять данные на временно оси ("ленте"), доступной в меню Reports/Timeline(после выбора опции Show on timeline для одного из событий).

Рассмотрим в качестве примера работы событийного отчета задачу определения интервала времени, когда некоторый параметр вышел за определенные границы, и дополнительные данные связанные с этим событием - время начала и окончания этого интервала, среднее значение параметра в этом интервале, минимальное и максимальное. В качестве источника сигнала будем использовать данные регистра "интервал 20 сек."(I20), меняющего свои значение от 0 до 19 в течении 20 сек.

Для создание событий выбираем п. меню Setup/Events, затем +Add new event. Назначение базовых настроек показано на рисунке. Поскольку событие длящееся, необходимо не забыть указать соотвествующую опцию.

Edit event basic.png

Вкладка Condition служит для собственно формирования условия выполнения события:
Condition.png

Визуальный редактор позволяет "склеивать" логические выражения в цепочки условий, в т.ч. с несколькими уровнями вложенности. Доступны следующие блоки:

Logic - логические операторы "НЕ", "И", "ИЛИ", и сравнения - "равенство", "неравенство", "больше", "меньше", "больше или равно", "меньше или равно";
Math - арифметические блоки - константа, либо операция сложения,вычитания,умножение, деление;
Registers - блоки выбора регистра для включения в логические или арифметические выражения;


Вкладка Action настройки событий определяет что, как, и когда записывается в структуру данных отчета событий.
Action .png

При выборе опции "Save to log" появится возможность задания регистров условия вида Ey.x.(полное описание см здесь). Регистры условий нумеруются от 0 и далее по возрастанию (х - это индекс), y - идентификатор события, который присваивается ему при создании и отображается в списке событий. В качестве параметра записываемого в регистр условий может быть 4 варианта:

  • Start time - время начала события
  • End time - время окончания события
  • Last update time - время последнего обновления, фактической регистрации события
  • Произвольный регистр из списка объявленных в меню Registers - при этом в третьей колонке настроек отчета можно будет дополнительно выбрать обработку этого регистра -взять минимальное(Min), максимальное значение(Max), первое значение при старте события(First Value) или последнее при его окончании(Last Value), среднее значение (Average Value).

Настройки для регистров условий в и используемом нами примере приведены на предыдущем рисунке. Название столбцов отчета могут изменены. Для регистров E2.0, E2.1, содержащих время, используется строка задания формата, принятая в PHP. Для регистров E2.2, E2.3 заданы мин и макс. значения соответственно.Е2.4 - усредненное значение регистра на протяжеиии события.

Результатом настройки данного события станет появление в меню Reports отчетов такого вида:

Event report example copy.png
Поскольку при создании события была также указана опция "Show on timeline", все события будут сохранены и здесь также. Выноской с точкой на оси отмечается начало события, либо однократное событие. Удерживая нажатой основную кнопку мыши, можно сдвинуть график по горизонтали, "прокруткой" колеса мыши изменяется масштаб.
Time line.png