Изменения

Перейти к навигации Перейти к поиску

KPI

5817 байт добавлено, 05:41, 26 января 2022
'''Расчетный показатель''' - временной ряд показателей или результирующий показатель, вычисляемый, в соответствии с функцией, включающей в себя операторы, имена базовых показателей и/или имена других расчетных показателей
 
'''Срез данных''' - это инструмент разукрупнения агрегирующих расчетных показателей по выбранному признаку (смена, изделие, простой, тип простоя) для упрощения сопоставления данных.
Список базовых показателей, актуальный для данной версии системы вы можете увидеть в окне добавления KPI, на вкладке “Базовые показатели”, пояснения, раскрывающие суть данного БП вы можете увидеть во всплывающей подсказке. Подробнее процесс создания БП описан ниже.
|}
= Базовые и расчетные показатели =
 
Контекст расчета KPI определяется набором рабочих центров (РЦ), базовых и расчетных показателей (БП и РП).
 
БП представляет собой временной ряд, т.е. совокупность последовательных интервалов времени и значений на этих интервалах. При запуске контекста, БП загружаются микросервисом KPI из родительской системы, с момента времени, указанного в поле «Дата начала» в настройках контекста. В дальнейшем повторные запросы для получения новых данных производятся для каждого БП в соответствие с настройкой «Период опроса». БП загружаются для каждого РЦ контекста по очереди.
 
Для каждого БП необходимо задать имя переменной и тип. Имя переменной необходимо для указания данного БП в формулах расчета РП. Имя переменной должно начинаться с буквы, не содержать спецсимволов и пробелов.
 
БП могут быть следующих видов:
*унифицированный базовый показатель;
*индикатор.
 
Унифицированный базовый показатель имеет общие настройки для всех РЦ. Список доступных в системе БП приведен в таблице.
 
{| class="wikitable"
! scope="col"| имя api
! scope="col"| название
! scope="col"| описание
! scope="col"| значения
! scope="col"| источник
|-
| actualOperation
| фактическое время операции
| интервалы выполнения задания по данным оператора, исключая простои
| 1/0
| данные оператора
|-
| actualOperationDowntime
| фактическое время простоя
| интервалы простоя, указанные оператором
| 1/0
| данные оператора
|-
| plannedOperation
| плановое время операции
| интервал времени, на котором запланировано задание
| 1/0
| задания
|-
| actualGoodProgress
| производительность по качественным
| скорость изготовления качественных изделий, рассчитанная по отметкам выпуска оператора, с учетом простоев
| изделий в час
| данные оператора
|-
| actualRejectedProgress
| производительность по браку
| скорость изготовления брака, рассчитанная по отметкам выпуска оператора, с учетом простоев
| изделий в час
| данные оператора
|-
| actualUndefinedProgress
| производительность по условно годным
| скорость изготовления условно годных изделий, рассчитанная по отметкам выпуска оператора, с учетом простоев
| изделий в час
| данные оператора
|-
| actualTotalProgress
| производительность общая
| скорость изготовления изделий, рассчитанная по отметкам оператора, с учетом простоев
| изделий в час
| данные оператора
|-
| plannedQuantity
| плановая производительность
| плановая скорость изготовления, равная отношению числа изделий в задании к длительности задания. значение определено на интервалах фактического времени операции (actualOperation=1)
| изделий в час
| задания и данные оператора
|-
| shiftWorkingTime
| рабочее время
| время смен по расписанию
| 1/0
| настройки системы
|-
| productionTime
| время операций на рабочем центре
| автоматический режим работы станка
| 1/0
| машинные данные
|}
Для БП типа индикатор необходимо указать конкретный индикатор для каждого РЦ, поскольку РЦ могут иметь различный набор индикаторов и разные наименования для них. При этом в дальнейших расчетах БП указывается общим именем переменной, определенном в его настройках.
|}
В Для расчета логических выражений в системе поддерживаются отсутствующие (неопределенные) значения. Такие используется соглашение, что значения не учитываются при расчете итогов, и для большинства операций применимо правилобольше нуля соответствуют значению «истина», если какойа меньше -либо аргумент не определен«ложь», результат также является неопределенным. Исключением является оператор ??и наоборот, предназначенный для установки неопределенных значений в левой части логические операции и операции сравнения возвращают 1 в качестве значения по умолчанию в правой«истина» и 0 – «ложь». И наоборот, оператор ? позволяет получить неопределенные значения, в случае невыполнения заданного критерия в левой части, либо вернут значение справа, если критерий истинныйНекоторые примеры вычислений для логических операций и операций сравнения приведены ниже. Например:
{| class="wikitable"
|}
В выражениях доступны таблице ниже приведены математические функции минимума и максимума с произвольным количеством аргументов – min, max, а также функция модуля abs.: 
{| class="wikitable"
| <b>Название</b>| <b>Описание</b>| <b>Примеры</b>|-| min| минимум из нескольких значений| min(1,2,3)= 1|-|max| максимум из нескольких значений|max(1,2) =2|-| abs| значение по модулю| abs(-2) = 2 abs(1,2) – неверная формула|-| round | математическое округление| round(2.5) = 3 round(2.2) = 2 round(-2.5) = -3
|-
| maxfloor| округление к меньшему целому| floor (2.5) = 2floor (1,2.7)= 2 | floor (-2.5) = -3
|-
| absceil| округление к большему целому| ceil (2.3) = 3 ceil (2.7) = 3 ceil (-2.5) = -2|}  В выражениях для итоговых РП можно использовать 3агрегирующие функции: *sum – сумма (интеграл) значений на интервале; *dur – длительность интервала, на котором значение известно и определено; *avg – среднее значение на интервале, выражение avg(РП) эквивалентно выражению sum(РП)/dur(РП).   Для уменьшения избыточности хранимых данных и ускорения запросов, для агрегирующих функций, могут быть использованы оконные функции. Окно – набор строк, в рамках которого происходит вычисление. У оконной функции необходимо указать 2 параметра – выражение для временного ряда и период вычисления в минутах. Можно понижать размерность исходных данных, сохраняя точность запросов в пределах размера окна, поскольку значения агрегирующих функций одинаковы как для исходного ряда, так и для прореженного. Вычисление среднего в окне avgWin. За каждый полный период с начала текущих суток в хранилище будет записан один интервал значений, равный среднему значению временного ряда, для которого функция рассчитывается. На примере видно, что применение оконной функции не виляет на точность результата.  {| class="wikitable"| 3| время, мин|||||| avg| sum
|-
| abs(|0)| 01|2|3|4|5||
|-
| absorigin (исходный ряд)|3)|1|2|6|5|4| 3.5|21
|-
| absavgWin(origin,3) (прореженный ряд)| 2 =(3+1,+2)/3|||5 =(6+5+4)/3||| 3.5=(2*3+5*3)/6| неверная формула21=(2*3+5*3)
|}
В выражениях для итоговых РП можно использовать 3 агрегирующие функции:
* sum – сумма (интеграл) значений на интервале;
* dur – длительность интервала, на котором значение известно и определено;
* avg – среднее значение на интервале, выражение avg(РП) эквивалентно выражению sum(РП)/dur(РП).
Аргументом агрегирующей Рассмотрим пример, «xload» – базовый показатель, индикатор нагрузки на ось, с периодом дискретизации до 1 измерения в секунду. Требуется определить суммарное время повышенной нагрузки на ось (>95) с точностью до 10 минут. Решение: Контекст без применения оконной функции может быть только БП реализован следующим образом [[File:Win_1.png | 700px]] Зададим расчетный показатель «xloadWindow», вычисляемый по функции «avgWin(xload>95, 10)» и основной расчетный показатель «overload2», вычисляемый по функции «sum(xloadWindow)». Объем хранимых данных и время запросов для overload уменьшаются в 600 раз по сравнению с исходным контекстом. [[File:Win_2.png | 700px]] Подробнее процесс создания РП описан ниже = Создание и редактирование KPI =  Для работы с модулем KPI перейдите: Главное меню [[File:Menu.png | 20px]] -> KPI [[File:Kpi 1.png ‎ | 30px]]   [[File:Kpi 2.png ‎ | 1000px]]  Нажмите кнопку “Добавить”. В открывшемся диалоговом окне укажите наименование KPI.  [[File:Wc 1.png ‎ | 700px]]  На вкладке “Рабочий центр” добавьте один или несколько рабочих центров. Через стандартное окно выбора РЦ.  [[File:Wc 2.png ‎ | 700px]]  На вкладке “Базовые показатели” добавьте индикаторы и/или базовые показатели.  [[File:Bp creation 1.png ‎ | 700px]]  [[File:Bp creation 2.png ‎ | 700px]]  Вы можете использовать индекс сортировки и цветовую индикацию для наглядности.  [[File:Bp creation 3.png ‎ | 700px]]  Обратите внимание что часть базовых показателей могут быть конкретизированы за счет дополнительных полей (например, смена или пользовательская причина простоя). Поле становится доступно после того как вы выберите тот или иной показатель.  [[File:Bp creation 5.png ‎ | 700px]]  На вкладке “Расчетные показатели” опишите функции, в соответствии с желаемой логикой. Важно корректно выбрать тип данных (десятичная дробь, время в часах или процент) и учитывать тип данных переменных при составлении функций.  [[File:Cp 1.png ‎ | 700px]] Если вы пропустили какое-то обязательное поле или ошиблись в имени переменной при сохранении валидатор сообщит об этом.  [[File:Cp 2.png ‎ | 700px]]  Для снижения вероятности возникновения ошибки рекомендуем вводить формулы не вручную, а с использованием подсказок. [[File:Cp 2 1.png ‎ | 700px]]  Если РП должен быть доступен на аналитиках необходимо активировать флаг “Основной”. Цвета РП временного рядаиспользуются для отображения на диаграммах аналитик.  [[File:Cp 3.png ‎ | 700px]]  Если вы хотите добавить “Срез данных”, на соответствующей вкладке нажмите кнопку “Добавить” и выберите один из стандартных срезов, затем нажмите “Сохранить”. Вычисляемые выражения Важно чтобы добавляемый срез был логически связан с расчетным показателем, в качестве аргумента противном случае вы не поддерживаютсяполучите желаемого эффекта, добавление среза - опциональный шаг.  [[File:Cp 2 2.png ‎ | 700px]]   После завершения редактирования контекста активируйте флаг “Контекст включен” и нажмите “Сохранить”. Например   [[File:Cp 4.png ‎ | 700px]]   Если функции расчетного показателя для разных рабочих центров должны отличаться, выражение avg(БПдобавьте поле для ввода функции с помощью кнопки "+РП) является некорректным" и укажите для каких рабочих центров она актуальна. Удалить формулу можно с помощью кнопки "-". Для рабочих центров не учтенных в дополнительных формулах вычисления будут произведены по основной формуле.<b>Примечание</b>: Дополнительные формулы не могут быть использованы в расчетах итоговых значений, т. к. расчет общего значения для всех РЦ в контексте для разных формул в большинстве случаев невозможен или некорректен. Возможное решение – задать дополнительные формулы для временных рядов до расчета итогов. В таком случае нужно сначала определить РП2 как БП+РП Пример: для РЦ разного типа необходимо задать разные критические значения нагрузки на шпиндель - задаём дополнительные формулы для каждого типа РЦ с соответствующим уровнем порога (axisLoad>95 для четырех РЦ, axisLoad>85 для двух и использовать выражение вида avgaxisLoad>80 для РЦ Siemens). Для РЦ не указанных в дополнительных формулах будет произведен расчет функцией по умолчанию (РП2axisLoad>90). Тогда РП2  [[File:AddCP.png ‎ | 700px]]  По истечению времени KPI будет рассчитан предварительноотображаться на аналитиках 30 или 30.1 в зависимости от типа. В нашем примере мы работаем с временным рядом  [[File:Visualization.png ‎ | 700px]]  При необходимости могут быть внесены изменения в контекст, но все правки приведут к необходимости перезапуска контекста. Подробнее ограничения описаны в “Правила редактирования и перезапуска контекстов”, по мере поступления данных БП для контекстов KPI доступны стандартные функции: “Редактировать”, “Клонировать” и расчета РП“Удалить”, а итог будет рассчитан в момент обработки запросатакже кнопка “Перезапустить контекст”.  Окно редактирования полностью идентично окну создания. После внесения правок система сама предложит “Перезапустить контекст”. = Использование InflaxDB 2.X =
РП в контексте могут быть определены в любом порядкеРеляционные базы данных (особенно Express-версии) не являются оптимальным выбором для хранения баз данных KPI, но их формулы не должны содержать неизвестных переменныхони быстро разрастаются и медленнее предоставляют данные для визуализации, а также циклических зависимостейвыполняют пересчеты. Например, следующие контексты являются некорректными Мы рекомендуем рассмотреть возможность использовать [https:* РП2 – не определен//docs.influxdata.com/influxdb/v2.1/install/?t=Windows InflaxDB 2.X]
РП1Обратите внимание, что при первичной установке InflaxDB 2.X запросит данные регистрации, их необходимо запомнить (вы всегда сможете посмотреть их в интерфейсе Inflax): РП2 + БП1* РП1 зависит от РП2, который зависит от РП3, определенный через РП1 – циклическая зависимостьОрганизация*Сегмент данных (Bucket)*Имя пользователя*Пароль
РП1[[File: РП2 Inflax3.png.PNG | 700px]] ИЛИ вы можете взять данные DPA по умолчанию, тогда при добавлении хранилища вам не придется указывать их вручную. [[File:Inflax11.png | 1000px]] После установки перейдите на вкладку "Хранилища данных" модуля KPI, выберите добавить, в выпадающем списке выберите Inflax, заполните поле "Наименование" нажмите "Сохранить". После того как хранилище добавлено необходимо перенести в него контексты (их копии). Для этого скопируйте (откройте на редактировании контекст), затем перейдите на вкладку "Хранилище" и выберите из выпадающего списка ранее созданное хранилище, сохраните и запустите контекст.  [[File:Inflax2.png | 1000px]] = Правила редактирования и перезапуска контекста =  Реализация системы накладывает некоторые технические ограничения на возможности редактирования контекстов, которые уже запускались ранее. Если в базе уже есть какие-либо данные, относящиеся к данному контексту, при изменении контекста эти данные не будут автоматически пересчитаны. Поэтому:* изменение даты начала контекста игнорируется – для ранее запущенного контекста данные запрашиваются и рассчитываются от последней временной отметки данных, зафиксированных в базе* изменение формул РП временных рядов влияет только на новые данные – данные уже записанные в базу останутся прежними, поэтому математически значимое изменение формул может приводить к некорректным результатам.
РП2Допустимо: РП3* добавлять новые РП в контекст;* добавлять новые БП в контекст;* удалять РП и БП, не используемые в расчетах;* изменять названия и формулы итоговых РП;* удалять и добавлять РЦ.
РП3Допустимо, но не рекомендуется: РП1* согласованно изменять названия БП и РП временных рядов (то есть одновременно в определении и во всех формулах)* изменять формулы на математически эквивалентные (например, a+b на b+a).
= Примеры контекстов =Во всех случаях редактирования РП временных рядов необходим перезапуск контекста. Итоговые РП можно редактировать без каких-либо ограничений, т.к. их расчет производится по запросу.
== Контекст для расчета ОЕЕ по машинным данным =Примеры KPI =
Базовые показатели:
| production
| базовый показатель
| productionTimeРабочее время по состоянию РЦ
| интервалы производства по машинным данным
|}
|}
== Контекст для расчета OEE по данным оператора, исключая интервалы времени без запланированных заданий ==2
Базовые показатели:
| operation
| базовый показатель
| actualOperationФактическое время операции
| интервалы операций
|-
| downtime
| базовый показатель
| actualOperationDowntimeФактическое время простоя
| интервалы простоев
|-
| planned
| базовый показатель
| plannedQuantityПлановое количество
| плановая производительность
|-
| good
| базовый показатель
| actualGoodProgressПроизведено качественных
| фактическая производительность по качественным изделиям
|-
| total
| базовый показатель
| actualTotalProgressПроизведено всего
| фактическая производительность по всем изделиям
|}
Данный пример отличается от предыдущего тем, что в нем доступность рассчитывается без учета интервалов времени, на которые задания не были назначены. То есть первый вариант определяет ОЕЕ с учетом эффективности планирования, а второй показывает именно эффективность выполнения заданий оператором. Таким образом, гибкая настройка системы позволяет получать расчет OEE в разных разрезах для получения информативных значений в каждом практическом случае.
 
= Редактирование контекстов =
 
Реализация системы накладывает некоторые технические ограничения на возможности редактирования контекстов, которые уже запускались ранее. Если в базе уже есть какие-либо данные, относящиеся к данному контексту, при изменении контекста эти данные не будут автоматически пересчитаны. Поэтому:
* изменение даты начала контекста игнорируется – для ранее запущенного контекста данные запрашиваются и рассчитываются от последней временной отметки данных, зафиксированных в базе
* изменение формул РП временных рядов влияет только на новые данные – данные уже записанные в базу останутся прежними, поэтому математически значимое изменение формул может приводить к некорректным результатам.
 
Допустимо:
* добавлять новые РП в контекст;
* добавлять новые БП в контекст;
* удалять РП и БП, не используемые в расчетах;
* изменять названия и формулы итоговых РП;
* удалять и добавлять РЦ.
 
Допустимо, но не рекомендуется:
* согласованно изменять названия БП и РП временных рядов (то есть одновременно в определении и во всех формулах)
* изменять формулы на математически эквивалентные (например, a+b на b+a).
 
Во всех случаях редактирования РП временных рядов необходим перезапуск контекста. Итоговые РП можно редактировать без каких-либо ограничений, т.к. их расчет производится по запросу.
968

правок

Навигация