📖 Руководство по панели

Мониторинг энергопотребления в реальном времени
📖 Введение

Здесь собраны возможности панели, которые неочевидны с первого взгляда: жесты на графиках, режимы просмотра, аналитика.

⚡ Живые показатели

Верхний ряд карточек обновляется в реальном времени через WebSocket — перезагружать страницу не нужно. Показатели: мощность, напряжение, ток, коэффициент мощности, потреблённая энергия и стоимость.

Индикатор живые показывает, что данные свежие. Реле отправляет их примерно раз в 60 секунд — это аппаратное ограничение его прошивки, а не задержка программы. Поэтому короткие паузы между обновлениями нормальны.

Под статусом соединения видно, сколько времени прошло с последнего измерения и когда ожидается следующее («обновлено 12 с назад · следующее ≈ через 48 с»), с тонкой полоской отсчёта. Пока на телефоне открыто приложение Tuya, реле шлёт данные каждые несколько секунд, и там написано «частые обновления»; опаздывающее измерение видно как «задерживается на … с».

ℹ Ноль в показателе мощности — это настоящий ноль, нагрузка выключена. Отсутствующие данные обозначаются прочерком, так что перепутать одно с другим невозможно. Когда реле отключено (контакты разомкнуты), карточки мощности, тока и коэффициента мощности показывают «Реле отключено с 18:03», а на графиках этих трёх величин это время заштриховано. Напряжение по-прежнему измеряется: реле видит сеть до своих контактов.
🔌 Управление реле

Если в настройках включено Управление реле с панели, под кнопками навигации появляется строка с замком и кнопкой реле.

Кнопка показывает состояние реле: Включено (зелёная), Отключено с 14:05 (красная), Нет связи (пунктирная рамка). После нажатия она мигает с надписью Отключение… или Включение…, пока устройство не подтвердит переключение. Переключение кнопкой на самом устройстве или в приложении Tuya / Smart Life тоже видно здесь.

Чтобы переключить реле, сначала откройте замок. Он закрывается сам через 30 с, после каждой команды и каждый раз, когда страницу открывают заново.

Отключение всегда просит подтверждения и показывает, сколько сейчас потребляется: всё за реле останется без питания. Включение срабатывает сразу. Исключение — когда реле отключили на самом устройстве или в приложении Tuya / Smart Life: тогда Power Trace предупредит, что, возможно, кто-то работает с проводкой.

Если устройство за 20 с не подтвердило команду, не на связи или отказало, кнопка на 6 с покажет Прибор не ответил, Прибор не на связи или Не удалось переключить реле.

📅 Периоды просмотра

Есть шесть режимов: Сегодня, Вчера, Месяц, Год, Произвольный и Осциллограф.

В режимах Месяц и Год рядом появляются стрелки — они листают периоды назад и вперёд. За пределы имеющихся данных или в будущее листание не пойдёт: кнопка просто ничего не сделает.

Текущие Сегодня, Месяц и Год, а также Произвольный период, который заканчивается сегодня, обновляются сами с каждым новым измерением. В полночь Вчера переходит на новые сутки, а текущие месяц или год — на новый, как только тот начнётся. Прошлый месяц или год, выбранный стрелками, остаётся на месте.

Осциллограф
Отдельный режим для наблюдения за текущим моментом: узкое окно последних минут или часов с максимальной детализацией. Удобно, когда включаете устройство и хотите сразу увидеть реакцию.
Произвольный
Позволяет задать любой диапазон дат. До двух суток график показывает каждое измерение; более длинные промежутки рисуются столбцами по суткам, а свыше 60 дней — по месяцу.
📈 Графики

Есть шесть вкладок: мощность, напряжение, ток, коэффициент мощности, энергия и счёт. Первые четыре — линейные графики, последние две — столбчатые, где каждый столбец это одни сутки.

Подробно и Почасово

В режимах Сегодня, Вчера и Произвольный до двух суток под вкладками четырёх линейных графиков есть переключатель Подробно / Почасово. Подробно рисует каждое измерение — целые сутки шире экрана и прокручиваются вбок. Вчера и Произвольный открываются с начала периода, Сегодня — на текущем времени; переключая вкладки мощности, напряжения, тока и КМ в пределах того же периода, вы остаётесь на том же моменте времени. Ось всегда охватывает весь выбранный период: целые сутки, а для «Сегодня» — до текущей минуты. Почасово рисует один столбец на час, так что весь период умещается на экране; столбец — это среднее, пик или минимум за час, как выбрано в Настройки → Агрегация, и заголовок графика это называет. Выбор запоминается. Выделение и порог мощности работают только в «Подробно»; в осциллографе и внутри зума переключателя нет.

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

Нет данных

Там, где измерений не было дольше Порога разрыва графика (Настройки → Панель), линия прерывается, а участок отмечает едва серая полоса на всю высоту с подписью «нет данных» и длительностью, когда она помещается. Так отмечаются и пустые края периода: если данные за сутки начались в 9:39, полоса идёт от 00:00, а сутки без единого измерения — одна полоса на весь график. От штриховки, которой отмечено выключенное реле, она отличается тем, что здесь данных нет вовсе. Пока с устройством нет связи, полоса в конце графика появляется сразу, вместе с прочерками на плитках, и показывает ту же длительность, что и баннер «Устройство недоступно». Наведите курсор на полосу или коснитесь её — подсказка покажет, с какого и до какого момента нет данных, с точностью до секунды, и сколько это длилось.

Приближение

Зажмите левую кнопку мыши и проведите по линейному графику — выделится диапазон, затем нажмите Применить. На телефоне сначала нажмите и удерживайте, потом ведите. Приближённый график можно приближать ещё, сколько угодно раз; чтобы вернуться, выберите режим вверху. Если довести курсор или палец до края видимой части графика, он сам прокручивается, так что выделить можно больше, чем помещается на экране.

✅ Значок ✥ справа над графиком означает, что выделение там работает, и заодно открывает короткую справку. На столбчатых графиках его нет — выделять нечего, ведь каждый столбец и так целый час или сутки.
🔌 Порог мощности

Эта возможность отвечает на вопрос «сколько в счёте приходится на мощные приборы, а сколько на фоновое потребление».

Как включить

Порог работает на графике мощности — теперь частично и в его столбчатом виде (Месяц или Произвольный, см. ниже) — на столбчатых графиках энергии и счёта его по-прежнему нет. Нажмите значок ≡ над графиком и задайте уровень в ваттах. На компьютере есть способ быстрее: щёлкните правой кнопкой мыши там, где должна пройти линия — уровень подставится сам. Щелчок правой кнопкой ниже оси сбрасывает порог. Заданный уровень запоминается в браузере и переживает перезагрузку страницы.

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

Что считается эпизодом

Эпизод начинается с точки, где мощность превысила порог, и заканчивается, когда она падает ниже уровня выхода, заданного как 80% расстояния между фоном и порогом, а не 80% самого порога. Когда фон низкий — обычный случай — результат получается почти тем же, что и раньше. Но если фон оказывается близко к порогу, уровень выхода подстраивается под этот фон, а не тонет в нём: старое правило с фиксированными 80% порога в этом случае могло никогда не опуститься ниже уровня выхода, из-за чего два независимых коротких включения сливались в один ложный длинный эпизод. Если фон оказывается на уровне порога или выше — зазора для расчёта нет — используется старая формула как запасной вариант: 80% порога. Разница между входом и выходом остаётся намеренной: без неё мощность, дрожащая возле линии (чайник в конце кипения), рассыпалась бы на пять отдельных эпизодов вместо одного.

Эпизод из одной точки по умолчанию по-прежнему отбрасывается по той же причине — это почти всегда пусковой ток компрессора холодильника или кондиционера, а не работа прибора. Но теперь есть исключение: если единственная точка превышает порог более чем в 3 раза, она всё равно засчитывается как эпизод. Причина исключения — короткие мощные приборы (чайник с малым объёмом воды, микроволновка, кофемашина) при 60-секундном цикле опроса реле иногда успевают оставить ровно один тик выше порога, и без этого исключения такие реальные короткие включения терялись бы точно так же, как настоящий шум компрессора. Множитель 3 — практическая граница, подобранная так, чтобы типичный пусковой ток компрессора (близкий к порогу) по-прежнему отсеивался, а короткие бытовые приборы (которые обычно дают заметно больший запас над порогом) — уже нет.

Разрыв в записях длиннее трёх минут (программа не работала, пропадало питание или Wi-Fi) разрывает эпизод: что происходило в это время, неизвестно, и дорисовывать туда площадь нельзя. Эти три минуты заданы в программе и не настраиваются — это граница, за которой восстановление потребления между двумя точками перестаёт быть оценкой и становится выдумкой. Отдельный параметр Порог разрыва графика в настройках отвечает лишь за то, когда визуально рвётся линия; если задать его меньше трёх минут, эпизоды будут рваться по нему.

Как считается энергия

Программа суммирует энергию сверх бытового фона, а не сверх самого порога.

Фон для каждого эпизода оценивается отдельно: берётся медиана до пяти точек слева и справа от него — тех, что лежат ниже порога. Если чистых соседей нет (эпизоды идут плотно друг за другом), используется запасной вариант — медиана всех точек за период, которые ниже порога.

ℹ Пример. Холодильник и роутер держат 130 Вт, сверху включается чайник на 2 кВт. Счётчик видит 2130 Вт, из которых прибору принадлежат 2000 — именно эти 2000 и попадут в итог. Поэтому сдвиг порога в широких пределах (скажем, с 500 на 800 Вт) почти не меняет цифру, пока он ловит тот же набор приборов. Это не ошибка, а следствие правильного расчёта.

Интегрирование захватывает по половине интервала до и после эпизода: прибор включается мгновенно, но между тиками мы его не видим, и трапеция на краевом сегменте — лучшая оценка «включился где-то посередине». По той же причине длительность считается от середины краевого интервала, а не от тика до тика, поэтому она может отличаться от разницы времени первой и последней точки.

В конце сумма эпизодов приводится к сверенному потреблению за период — тому самому числу, что показывает блок энергии. Благодаря этому сумма столбца кВт·ч в таблице всегда точно совпадает с числом в свёрнутой строке.

Строка сводки

Показывает: количество эпизодов · их суммарную длительность · оценку фона · суммарные кВт·ч и долю от общего потребления за период.

Сумма за весь период

На вкладке Мощность в виде Месяц или Произвольный с длительностью примерно от 2 до 60 дней, когда график рисует суточные столбцы, а порог задан, над графиком появляется ещё одна кликабельная строка — в том же стиле, что и обычная сводка. До клика в ней только приглашение посчитать. В Годе и более длинном Произвольном, где столбцы уже месячные, этой строки нет.

Клик запускает отдельный запрос на сервер за сырыми данными за весь видимый период и считает эпизоды тем же способом, что и для одного дня. Текст строки меняется на количество эпизодов, их суммарную длительность, суммарные кВт·ч и долю от общего потребления за период — те же форматы чисел, что и в обычной сводке, только за весь период вместо суток. Таблицы отдельных эпизодов здесь нет, как и столбца ΔU — только эти четыре числа. Результат остаётся, пока не изменится период или порог: тогда приглашение посчитать появляется снова, а сам расчёт заново не запускается автоматически при каждом открытии.

Разбивка день/ночь

Если в настройках включён двухзонный тариф (день/ночь), под строкой сводки появляются ещё две цветные строки — отдельно для дня и ночи, в том же формате, что и общий итог:

ℹ День: N эпизодов · длительность · кВт·ч (доля %)
Ночь: N эпизодов · длительность · кВт·ч (доля %)

Процент в скобках — доля от общего потребления за период, как и в строке сводки, так что день и ночь вместе дают его процент.

Если прибор работал, например, вечером и ещё немного ночью, его энергия корректно разделена по факту пересечения границы зоны, а не приписана целиком одной из них. Цвета строк совпадают с цветами день/ночь, которые уже используются на графиках Energy/Bill.

Разбивка работает и для одного дня (Сегодня/Вчера), и для суммы за период (после клика «Посчитать эпизоды за период»). Если двухзонный тариф не настроен, этих строк просто нет.

Таблица эпизодов
Столбец Что означает
ВремяНачало эпизода
Длит.Длительность
Пик/сред, ВтПиковая мощность и средний избыток над фоном
ΔU, ВПросадка напряжения: уровень непосредственно перед началом эпизода минус самое низкое напряжение, зафиксированное, пока он длился
кВт·чЭнергия эпизода сверх фона

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

Столбец ΔU, В показывает просадку напряжения, которую вызвал именно этот эпизод: напряжение в сети непосредственно перед тем, как включилась нагрузка, минус самое низкое напряжение, зафиксированное, пока он длился. Это локальный показатель самого эпизода, и зависит он в основном от сопротивления проводки и счётчика внутри дома, а не от общего состояния сети — это отдельно освещает раздел «Сеть» в другом месте на панели.

Почему строка подсвечивается оранжевым

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

Это предупреждение, а не ошибка. Причин обычно две:

Фон «уехал» вверх — рядом работал другой мощный прибор, и точки, которые программа приняла за фон, на самом деле содержали его. Избыток вычли слишком большой, кВт·ч в строке занижены.

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

Итоговая строка над графиком подсвеченные эпизоды не искажает: она приведена к сверенному потреблению за период. Но именно этим отдельным числам доверять стоит меньше, чем остальным.

Почему цифра ΔU подчёркивается

Напряжение «до» эпизода — это медиана до пяти предшествующих точек, так же как и фон. Если пригодных среди них меньше трёх — разрыв в данных или другой эпизод, идущий вплотную к этому, — цифра всё равно считается и показывается, но по слишком малому числу точек, чтобы доверять ей полностью. Такие ячейки подчёркиваются; наведите на ячейку или коснитесь её, чтобы увидеть, сколько точек вошло в оценку.

Почему ячейка «Пик/сред» подчёркивается

Столбец Пик/сред, Вт тоже может подсвечиваться оранжевым с пунктирным подчёркиванием — тот же визуальный язык, что и у ΔU. Это значит, что эпизод формально пересёк порог в основном потому, что фон в доме и так был высоким, а не потому, что сам прибор мощный.

ℹ Пример. Порог задан на уровне 305 Вт, вечером фон уже держится на 280 Вт. Любой мелкий прибор на 25 Вт и больше сверху формально «пересечёт» порог и попадёт в список, хотя собственный вклад — лишь эти 25 Вт.

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

Это предупреждение, а не фильтр: строка не скрывается и не удаляется из таблицы — решение остаётся за вами.

Точность

Прибор передаёт данные примерно раз в 60 секунд — это аппаратный предел его прошивки, а не задержка программы. На длинных эпизодах (бойлер, стиральная машина) это почти не сказывается. На коротких — включили чайник на три минуты — погрешность может достигать ±20%: всё, что произошло между двумя тиками, приходится восстанавливать трапецией.

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

🌓 День и ночь

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

📊 Оценённые данные

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

Такие столбцы рисуются приглушёнными — того же цвета, но полупрозрачными. Поэтому оценённые дни видны на графике сразу, без каких-либо сверок. Над графиком также появляется текстовое предупреждение, чтобы эти значения не принимали за точные измерения.

Столбцы мощности, напряжения, тока и коэффициента мощности — почасовые, за месяц и за год — приглушаются так же, когда столбец построен на неполных данных: программа молчала часть того часа или суток. Оценки здесь нет. Столбец — настоящее среднее (или пик, или минимум) имеющихся измерений, но о пропущенных минутах он не говорит ничего, и разрыв, который в режиме «Подробно» рвёт линию, в столбцах иначе исчез бы. Подсказка приглушённого столбца показывает покрытие, например 35 %. Покрытие — это время, а не количество измерений: время между двумя измерениями считается покрытым, если оно не длиннее «Порога разрыва графика» в Настройках — того же значения, что рвёт линию в «Подробно», — так что прибор, который отчитывается неравномерно, неполным не помечается. Порог тот же, а час или сутки, которые ещё идут, не приглушаются никогда, ведь они ещё изменятся. Но подсказка показывает и их покрытие, посчитанное от уже прошедшего времени: час, данные за который начались в 9:11, в 9:40 покажет неполное покрытие, а полный — 100 %.

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