Интерактивный прототип мониторинга для распределённой генерации

Клиент: «Честная Генерация». Масштаб: система мониторинга электростанций.

#monitoring #ux #frontend

О клиенте и задаче

Компания «Честная Генерация» занимается мониторингом и управлением распределёнными электростанциями, включая дизель-генераторные установки (ДГУ). В условиях непрерывно растущей потребности в надежном и эффективном электроснабжении, заказчику необходима современная система диспетчерского мониторинга. Это должно быть решение, которое предоставит операторам и инженерам доступ к критически важным данным о состоянии оборудования в реальном времени.

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

Проблема

Сложности, с которыми столкнулся заказчик, были связаны с недостаточно продуманным пользовательским опытом уже существующей системы. Исходный API предоставлял данные, но не предлагал удобного UX. Это приводило к тому, что операторам было сложно быстро находить нужную информацию, особенно когда речь шла о множестве объектов на карте. Необходимость отображения более 4-х станций на одной карте вызывала дополнительные трудности, так как не было четкой связи между списком объектов и их маркерами на карте.

Сложности также возникали при просмотре параметров ДГУ с мобильных устройств. Операторам требовалось удобно получать доступ к данным о состоянии оборудования на месте, и для этого нужна была адаптация интерфейса под разные устройства — от смартфонов до планшетов диспетчеров.

Заключительным требованием было создание единого визуального языка бренда «Честная Генерация», который позволил бы пользователям без труда перемещаться от общего к частному — от карты объектов к детальной информации о каждом агрегате за 1–2 клика.

Решение

Десктоп: карта объектов мониторинга с KPI-балунами и списком станций
Карта Leaflet: пины с буквой станции, балуны с кВт, моточасами и t охл., связь hover с карточками справа
Десктоп: страница станции Сининда-1 с KPI и карточками ДГУ
Станция: нагрузка, моточасы, t охл. жидкости, карточки ДГУ с live-статусом
Десктоп: детальная карточка ДГУ с графиком и регистрами
ДГУ: вкладки график, регистры, уведомления; параметры Modbus и история
iPad: карта и список объектов в landscape-режиме
iPad landscape: карта слева, компактный список объектов и KPI
iPad: страница станции с карточками генераторов
iPad: станция Сининда-1, карточки ДГУ под touch-интерфейс
Mobile: карта объектов и нижняя навигация
Смартфон: полноэкранная карта, сводные KPI, таб-бар
Mobile: станция с карточками ДГУ
Смартфон: станция, компактные карточки агрегатов

Команда Rubtsov.pro приняла на себя ответственность за фронтенд-разработку и проектирование UI/UX системы. Мы создали интерактивный прототип на основе современных веб-технологий, используя Vanilla JavaScript. Это позволило нам избежать сложности, связанной с тяжёлыми фреймворками, обеспечив быстрый деплой и прозрачную интеграцию с API.

В рамках работы мы спроектировали пользовательские сценарии, визуальную иерархию, адаптивные макеты и реализовали интерфейс с интеграцией с REST API. Информационная архитектура прототипа была организована таким образом, чтобы пользователи могли легко перемещаться от карты к объекту, затем к ДГУ и далее к регистрационным данным, графикам и истории. Это обеспечивало простоту навигации и доступ к необходимой информации в несколько кликов.

Карта объектов была реализована с использованием Leaflet, что позволило создать кастомные маркеры для каждой станции. Мы заменили привычные координаты на балуны с KPI, отображающими ключевые показатели, такие как кВт, моточасы и температура охлаждающей жидкости. Двусторонняя подсветка маркера и карточки в списке при наведении улучшала визуальное восприятие и облегчала работу с интерфейсом.

Каждая станция и её ДГУ имели свои карточки с live-параметрами, которые обновлялись каждые 30 секунд. Это позволяло операторам в реальном времени следить за состоянием оборудования. Мы также внедрили механизм тихой авторизации через share-token и cookie viewer-сессии, что повышало безопасность и удобство использования приложения.

Адаптивные макеты были разработаны для трёх типов устройств: десктопы, планшеты и мобильные телефоны. Это обеспечивало пользователям возможность получать доступ к системе с любых устройств, будь то диспетчер за рабочим местом или оператор, находящийся на объекте.

Прототип был развернут на сервере и подключен к production API через nginx-прокси, что обеспечивало стабильную работу и высокую доступность системы.

Результаты

В результате работы над проектом был создан рабочий интерактивный прототип, доступный по адресу, который демонстрирует live-данные для четырёх объектов мониторинга. Оператор теперь может видеть сводку установленной мощности в 12+ МВт и среднюю нагрузку около 59% на карте. Это значительно упрощает процесс мониторинга и управления.

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

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

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

Как мы работали

  1. 1

    Аудит текущей системы

    Провели анализ существующего API и UX для выявления основных проблем.

  2. 2

    Проектирование пользовательских сценариев

    Разработали сценарии использования для различных типов пользователей.

  3. 3

    Создание прототипа

    Разработали интерактивный прототип на Vanilla JavaScript.

  4. 4

    Интеграция с API

    Подключили прототип к production API через nginx-прокси.

  5. 5

    Адаптация под разные устройства

    Создали адаптивные макеты для десктопа, планшетов и мобильных устройств.

  6. 6

    Тестирование и доработка

    Провели тестирование прототипа и внесли необходимые изменения.

Сомнения перед проектом

«Сложно ли будет обучать сотрудников?»

Интерфейс разработан с учетом простоты и интуитивности, что облегчит обучение.

«Как быстро мы увидим результаты?»

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

«Что если API не будет работать?»

Встроен механизм fallback на демо-данные для обеспечения стабильной работы системы.

Итог проекта

Проект по созданию прототипа мониторинга для «Честная Генерация» продемонстрировал, как современный подход к разработке интерфейсов может существенно повысить эффективность работы в сфере энергетики. В результате был создан единый прототип, который успешно интегрируется с live API, обеспечивая доступ к критически важной информации в реальном времени.

Нас часто спрашивают

Какой технологии была использована для разработки?
Мы использовали Vanilla JavaScript, что обеспечило легкость и скорость разработки.
Может ли система работать на мобильных устройствах?
Да, прототип адаптирован для работы на десктопах, планшетах и смартфонах.
Как осуществляется обновление данных?
Данные обновляются автоматически каждые 30 секунд для обеспечения актуальности информации.
Как обеспечивается безопасность данных?
Используется тихая авторизация через share-token и cookie viewer-сессий.
Какие показатели можно отслеживать?
Пользователи могут отслеживать параметры, такие как нагрузка, моточасы и температура охлаждающей жидкости.
Как скоро можно получить доступ к системе?
Рабочий прототип доступен уже в процессе разработки, что позволяет начать использовать его сразу.

Расскажите о вашей задаче

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

Выберите удобный способ связи