Изменить алгоритм контроля утечек

Поступило требование организовать контроль потребления горячей воды для административных зданий в ночные часы и в выходные дни. Логично реализовать этот контроль через диагностику утечек, однако текущий алгоритм имеет ряд ограничений.

Сейчас для определения утечек анализируются часовые архивы водопотребления с 2 до 5 часов ночи в сравнении с потреблением за полные сутки.

Не хватает опционально следующих возможностей:

  1. Добавлять контроль утечек в выходные дни.

  2. Для административных зданий сравнение ночного и среднесуточного потребления некорректно, так как ночью, обычно кроме охраны, в здании никого нет. В этом случае нужно контролировать факт отсутствия расхода или использовать подход, аналогичный требованиям РЭ:
    «Для исключения ложных срабатываний нештатная ситуация не создается, если расход меньше относительной погрешности измерения или среднечасовой расход в ночные часы не превышает 10 литров воды в час.»

Реализация этих параметров позволит повысить точность диагностики и адаптировать алгоритм для непроизводственных и административных объектов.

Я не совсем понимаю что тут требуется. Утечки в выходные дни точно так же контролируются, что надо сделать ещё?

Но эта цитата буквально и определяет как работает диагностика, а вы пишете, что нужно сделать как в РЭ. Или вы имеете в виду, что это условие не выполняется?

Только в выходные дни. Требования таковы, что для проверки работы учета воды нужны ососбые условия, которые есть тольк в выходные дни. В прочие дни много ложных срабатываний

Я не нашел диагностику, которая бы устанавливала факт отсутствия расхода в выходные дни. Текущий алгоритм позволяет установить предельное соотношение часового потребления ночного и суточного.
А нужно контролировать именно отсутствие расхода, например не более 10 литров воды в час

Такой алгоритм можно сделать с помощью пользовательской диагностики. В формулах есть функции, которые позволяют получить час и день архивной записи, чтобы использовать их в критериях. Точно так же можно проверить день недели - есть функция GetDayOfWeek.

Если нужно получать выходные дни из производственного календаря - это не проблема, так же можем добавить, это можно сделать быстро, а функция будет полезной.

Делать новый способ диагностики пока не вижу смысла, так как среди других пользователей, похоже, задача не слишком востребована, и её можно решить уже существующими способами в системе.

Ну хоть это сделайте, и то хлеб

Не готов с этим согласиться. Описанное требование относится к требованиям к системе при внедрении. Подобная диагностика была в старой системе, которую ранее использовал заказчик и которую сейчас хочет заменить, так как она устарела и неудобна в работе.​

При этом предложенный способ очень прост для понимания и использования при контроле работы расходомеров учёта воды, где измеряется только объём, на большинстве административных, торговых и бюджетных объектов. А на ГВС только объём измеряется почти по всей России, по моему опыту — массово практически по всему югу и в большинстве небольших городах, то есть речь идёт о диагностике для львиной доли узлов учёта ХВС и ГВС.​

Кроме того, эта диагностика точнее того, что реализовано сейчас в ЛЭРСе. Переносить её в пользовательскую диагностику, на мой взгляд, плохая идея: это позволит закрыть задачу только для конкретного клиента, но не приведёт к массовому использованию, и в итоге она действительно будет «не слишком востребована».