aim

Разработка онлайн сервиса АСКУЭ — инновационной системы учета электроэнергии

AWS Aurora
Docker
Наша компания занимается разработкой серверной инфраструктуры, созданием софта, мобильных и десктопных приложений, а также обычных сайтов. Участвуя в этом проекте, мы создали автоматизированную систему коммерческого учета электроэнергии, или сокращенно АСКУЭ.
Иланд Блэк
MQTT
Технический директор компании AIM
PHP и MySQL
Node.js
Заказчик
Разработчик аппаратных комплексов ООО «Терра».
Суть проекта
Нам предстояло создать всю программную часть и настроить серверы для взаимодействия с разрабатываемыми Заказчиком умными 3G и LORA модемами для счетчиков электроэнергии, отправляющих через интернет данные для хранения и обработки на наши облачные серверы. В этом партнерском проекте мы занимались разработкой и поддержкой серверной инфраструктуры и программной части продукта Заказчика.
Цели и задачи проекта
Главной целью проекта было обеспечить серверную и программную часть программно-аппаратного комплекса Заказчика для учета потребления электроэнергии.
Проектный продукт — это модем, который подключается к счетчикам электроэнергии, получает от них данные и отправляет на наши серверы. Серверная инфраструктура базируется на облачных сервисами Amazon.

Главная задача проекта: создание производительной, масштабируемой и надежной системы для хранения, передачи, анализа данных для оптимизации и контроля расхода электроэнергии и ее качества.
Специфические задачи
1. Предусмотреть возможность развертывания системы в других облаках на территории РФ: это дает возможность сотрудничать с госсектором.
2. Решить проблему веерных блокировок Роскомнадзора: наши серверы находятся в разных подсетях; мы также в кратчайшие сроки можем сменить IP-адреса на незаблокированные.

3. Предусмотреть возможность легкого развертывания боксовой версии сервиса на локальных серверах предприятий.
Главные сложности
Система предполагает подключение больших заводов и других предприятий по всей России. Это требует максимальной стабильности и возможности обрабатывать огромные объемы данных.
Данные в базах — это коммерческая информация, используемая для дальнейшей работы с энергосбытовыми компаниями. Нам надо было создать систему с высоким уровнем безопасности, надежности и целостности данных.
Заказчик
Решение
АСКУЭ — это программно-аппаратный продукт, который позволяет собирать, хранить, передавать и анализировать данные по энергопотреблению, с рядом отличительных черт.
Система собирает данные поминутно, в отличие от большинства существующих аналогов, которые ведут сбор информации раз в полчаса или час, что увеличивает нагрузку на сервер и объем информации в 60 раз, а также требует дополнительные решения для обеспечения непрерывности данных в условиях нестабильной связи.

Наши серверы хранят данные в течение года.

АСКУЭ прогнозирует энергопотребление на ближайший месяц и помогает разработать стратегию экономии электроэнергии по сравнению с прошлым периодом.

Конечный продукт отслеживает жизненно важные параметры: перерасход, стабильность поступающей энергии, насколько и как часто напряжение выходит за ГОСТы, хватает ли ресурса для нужд производства.

Хранящиеся у нас данные используются для удобного взаимодействия с энергосбытовыми компаниями.

Хостинг системы возможен на серверах клиента для полной независимости от внешнего мира.
Стек технологий
Серверы: Node.js MQTT
Бэкенд сайта: Производительный движкок собственной разработки на PHP
Базы данных: MySQL (Amazon Aurora)
Серверная инфраструктура: Amazon Elastic Compute Cloud (Amazon EC2), Ubuntu
Хранение исходников и контроль версий: Git
Развертывание серверов: Docker
Перспективы
По мере того как наше партнерство с Заказчиком продолжается, в систему уже добавлены счетчики тепловой энергии. В перспективе эта система подойдет и для учета газопотребления. В планах также разработка мобильного приложения.
Что мы сделали
  1. Разработали и настроили два кластера MQTT-серверов для приема данных.
  2. Разработали структуру базы данных и настроили производительный и отказоустойчивый MYSQL-сервер на основе AWS Aurora с возможностью предоставления клиентам доступа к таблицам с их данными для работы в решениях типа Microsoft PowerBI.
  3. Разработали адаптивный сайт для управления сервисом, визуализации и выгрузки данных.
  4. Разработали API для передачи данных в энергосбытовые компани
  5. Разработали фоновый сервис на отдельном сервере для слежения за стабильностью работы всего сервиса и качеством данных, а также для восстановления данных и автоматического управления модемами при сбоях.
  6. Разработали систему информирования и бота в Telegram для администраторов и клиентов, рассылающую информацию о работе сервиса, показаниях, проблемах с качеством электроэнергии на объектах клиентов итд.