Виртуальная подстанция ⚡

Cимулятор подстанции в виртуальной реальности на базе Unreal Engine 4

Цель: Создать реалистичный симулятор электрической подстанции

О проекте

Данный проект посвящён разработке симулятора электрической подстанции (ПС) в виртуальной реальности (ВР). На меня была возложена задача разработать симулятор подстанции на базе Unreal Engine 4.

Подстанция в виртуальной реальности - общий вид
Общий вид на виртуальную подстанцию

Что такое подстанция?

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

Современные подстанции автоматизированы и могут управляться дистанционно. Тем не менее, есть ситуации, когда определённые переключения на подстанции персонал должен сделать вручную. К сожалению, в ряде случаев неправильные действия персонала приводят к смертельному исходу. Это происходит не только с молодыми работниками (по неопытности), но и с более опытными (из-за излишней уверенности в своих действиях).

Подстанция в виртуальной реальности - Закрытое Распределительное Устройство (ЗРУ) 10кВ
Закрытое Распределительное Устройство (ЗРУ) 10кВ

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

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

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

Подстанция в виртуальной реальности - Приборные панели
Приборные панели

Разработка подстанции в виртуальной реальности

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

Взяв эту идею за основу, я совместно с компанией OmniRoad начал воплощать проект в жизнь. Компания занялась разработкой всенаправленной беговой дорожки и 3D-моделированием объектов, а я занимался программным обеспечением проекта.

Подстанция в виртуальной реальности - Трансформатор
Трансформатор

В качестве игрового движка для симулятора был выбран Unreal Engine 4, что, в отличие от Unity, позволяет добиться более реалистичной картинки (это весьма субъективно, но на момент начала работы над проектом это было скорее правдой). На виртуальной подстанции, как и на настоящей, установлено огромное количество оборудования, логику работы которого я реализовал практически с нуля на графическом языке Blueprint, используемом в UE4. Все движимые элементы, такие как разъединители, переключатели, кнопки и тумблеры я снабдил процедурной анимацией.

В качестве шлема виртуальной реальности использовался Oculus Rift - в основном потому, что на момент начала проекта другие ВР-решения ещё не были доступны на рынке, и даже Oculus Rift Consumer Version ещё не появился в продаже.

Подстанция в виртуальной реальности - общий вид
Подстанция

Расчёт режима подстанции

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

“Модус” предоставил нам API для синхронизации данных, и я написал модуль на C++, которые позволяет синхронизировать состояния всех элементов между их “плоским” симулятором и нашим трёхмерным виртуальным. Этот модуль также отвечат за проброс всех параметров в Blueprint, чтобы при изменении состояния схемы можно было запускать процедурные анимации.

Подстанция в виртуальной реальности

Благодаря этому все элементы схемы удалось оживить и сделать работу в симуляторе максимально приближенными к реальности.


Если вам понравилось моё портфолио и вы хотите пригласить меня в свой проект, свяжитесь со мной.