KPI: различия между версиями
User (обсуждение | вклад) |
User (обсуждение | вклад) |
||
Строка 116: | Строка 116: | ||
| ? ?? | | ? ?? | ||
| операции с отсутствующими значениями | | операции с отсутствующими значениями | ||
+ | |} | ||
+ | |||
+ | Для расчета логических выражений в системе используется соглашение, что значения больше нуля соответствуют значению «истина», а меньше - «ложь», и наоборот, логические операции и операции сравнения возвращают 1 в качестве значения «истина» и 0 – «ложь». Некоторые примеры вычислений для логических операций и операций сравнения приведены в таблице | ||
+ | |||
+ | {| class="wikitable" | ||
+ | ! scope="col"| a | ||
+ | ! scope="col"| b | ||
+ | ! scope="col"| a <nowiki>|</nowiki> b | ||
+ | ! scope="col"| a & b | ||
+ | ! scope="col"| a < b | ||
+ | ! scope="col"| a <= b | ||
+ | ! scope="col"| a ==b | ||
+ | ! scope="col"| a != b | ||
|- | |- | ||
+ | | 0 | 0 | 0 | 0 | 0 | 1 | 1 | 0 | ||
+ | |- | ||
+ | | 1 | 1 | 1 | 1 | 0 | 1 | 1 | 0 | ||
+ | |- | ||
+ | | 0 | 1 | 1 | 0 | 1 | 1 | 0 | 1 | ||
+ | |- | ||
+ | | -10 | 10 | 1 | 0 | 1 | 1 | 0 | 1 | ||
|} | |} |
Версия 22:25, 22 июля 2020
Контекст расчета KPI определяется набором рабочих центров (РЦ), базовых и расчетных показателей (БП и РП).
БП представляет собой временной ряд, т.е. совокупность последовательных интервалов времени и значений на этих интервалах. При запуске контекста, БП загружаются микросервисом KPI из родительской системы, с момента времени, указанного в поле «Дата начала» в настройках контекста. В дальнейшем повторные запросы для получения новых данных производятся для каждого БП в соответствие с настройкой «Период опроса». БП загружаются для каждого РЦ контекста по очереди.
Для каждого БП необходимо задать имя переменной и тип. Имя переменной необходимо для указания данного БП в формулах расчета РП. Имя переменной должно начинаться с буквы, не содержать спецсимволов и пробелов.
БП могут быть следующих видов:
- унифицированный базовый показатель;
- индикатор.
Унифицированный базовый показатель имеет общие настройки для всех РЦ. Список доступных в системе БП приведен в таблице.
имя api | название | описание | значения | источник |
---|---|---|---|---|
actualOperation | фактическое время операции | интервалы выполнения задания по данным оператора, исключая простои | 1/0 | данные оператора |
actualOperationDowntime | фактическое время простоя | интервалы простоя, указанные оператором | 1/0 | данные оператора |
plannedOperation | плановое время операции | интервал времени, на котором запланировано задание | 1/0 | задания |
actualGoodProgress | производительность по качественным | скорость изготовления качественных изделий, рассчитанная по отметкам выпуска оператора, с учетом простоев | изделий в час | данные оператора |
actualRejectedProgress | производительность по браку | скорость изготовления брака, рассчитанная по отметкам выпуска оператора, с учетом простоев | изделий в час | данные оператора |
actualUndefinedProgress | производительность по условно годным | скорость изготовления условно годных изделий, рассчитанная по отметкам выпуска оператора, с учетом простоев | изделий в час | данные оператора |
actualTotalProgress | производительность общая | скорость изготовления изделий, рассчитанная по отметкам оператора, с учетом простоев | изделий в час | данные оператора |
plannedQuantity | плановая производительность | плановая скорость изготовления, равная отношению числа изделий в задании к длительности задания. значение определено на интервалах фактического времени операции (actualOperation=1) | изделий в час | задания и данные оператора |
shiftWorkingTime | рабочее время | время смен по расписанию | 1/0 | настройки системы |
productionTime | время операций на рабочем центре | автоматический режим работы станка | 1/0 | машинные данные |
Для БП типа индикатор необходимо указать конкретный индикатор для каждого РЦ, поскольку РЦ могут иметь различный набор индикаторов и разные наименования для них. При этом в дальнейших расчетах БП указывается общим именем переменной, определенном в его настройках.
Для РП необходимо определить наименование и функцию для его вычисления. Также РП, которые необходимо отображать в аналитике, нужно указать, как основные.
Формулы РП могут включать имена БП или РП, константы, бинарные операторы, скобки, математические функции, а также функции расчета итогов (агрегирующие функции).
Константы задаются в числовом виде, с точкой, в качестве разделителя дробной части. Допустима также экспоненциальная форма записи. Например: 1.3, 1.7e3 (эквивалентно 1700), 1E-3 (эквивалентно 0.001).
Имена переменных БП и РП должны начинаться с буквы (латиницы или кириллицы), могут также содержать цифры и символ _. Буквы верхнего и нижнего регистра считаются различными, поэтому, например, названия «Индикатор» и «индикатор» будут интерпретированы, как разные переменные.
РП может быть определен двумя способами: как временной ряд или как итоговый показатель. Формула РП временного ряда должна включать хотя бы один РП временного ряда, либо БП. Такие РП вычисляются по мере поступления данных в микросервис, и полученные значения сохраняются в базе данных. Для каждого РЦ сохраняется отдельный ряд РП.
Итоговый РП представляет собой одно значение, рассчитываемое для некоторого заданного интервала времени. Такой РП вычисляется непосредственно при запросе к микросервису, например, из аналитик. Формула итогового РП может содержать другие итоговые РП, а также агрегирующие функции, примененные к БП или РП временного ряда. Итоговый РП может быть получен для каждого РЦ контекста в отдельности, и как общий для всех РЦ, заданных в запросе.
Для обоих видов РП доступен одинаковый набор бинарных операторов. В таблице приведены доступные операторы, в соответствие с их математическим приоритетом.
^ | возведение в степень |
* / | умножение, деление |
+ - | сложение, вычитание |
> < >= <= == != | операции сравнения (больше, меньше, больше или равно, меньше или равно, равенство, неравенство) |
& | логическое И |
| | логическое ИЛИ |
? ?? | операции с отсутствующими значениями |
Для расчета логических выражений в системе используется соглашение, что значения больше нуля соответствуют значению «истина», а меньше - «ложь», и наоборот, логические операции и операции сравнения возвращают 1 в качестве значения «истина» и 0 – «ложь». Некоторые примеры вычислений для логических операций и операций сравнения приведены в таблице
a | b | a | b | a & b | a < b | a <= b | a ==b | a != b |
---|---|---|---|---|---|---|---|
0 | 0 | 0 | 0 | 1 | 1 | 0 | |||||||
1 | 1 | 1 | 0 | 1 | 1 | 0 | |||||||
1 | 1 | 0 | 1 | 1 | 0 | 1 | |||||||
10 | 1 | 0 | 1 | 1 | 0 | 1 |