Компания FESCOM разрабатывает Цифровую платформу, одно из назначений которой – это интеграция устройств интернета вещей (IoT) и интернета энергии (IoE), что на практике означает, что Цифровая платформа FESCOM позволяет подключать, наблюдать и управлять в режиме реального времени множеством распределённых электротехнических устройств, датчиков, сенсоров, контрольно-измерительных приборов и технологического оборудования.
При этом центральная задача заключается в необходимости обрабатывать и анализировать данные с минимальными задержками, обеспечивая при этом их эффективную и безопасную обработку. Традиционные облачные решения не всегда удовлетворяют этим требованиям из-за ограничений пропускной способности сети и опасений по поводу конфиденциальности и безопасности данных. Граничные вычисления предлагают привлекательную альтернативу, позволяя обрабатывать и анализировать данные ближе к источнику, тем самым сводя к минимуму задержку и использование полосы пропускания при одновременном повышении безопасности и конфиденциальности данных.
Для решения задачи граничных вычислений команда FESCOM разработала собственный контроллер, FESCOM EDGE и операционную систему на базе ядра Linux, которую мы назвали FESCOM EDGE OS.
При разработке FESCOM EDGE OS, команда FESCOM использовала все преимущества стека Elixir / Nerves.
Nerves — это платформа с открытым исходным кодом, которая объединяет виртуальную машину Erlang и экосистему Elixir для создания и развертывания встроенных систем.
Elixir помог нам выполнить требования по созданию надёжного и масштабируемого программного обеспечения, ведь преимуществами Elixir является то, что он использует возможности виртуальной машины Erlang и OTP Framework, которые были разработаны для создания распределенных, отказоустойчивых систем мягкого реального времени.
Платформа Nerves обеспечила целую экосистему для встраиваемой разработки со множеством преимуществ. Например, она предоставляет инструменты для локальной разработки и перехода к развертыванию на устройствах, также обеспечивается детальный контроль загрузки системы, поэтому упрощается обработка сценарии, когда определенные части встроенного программного обеспечения не запускаются.
Достигнутые результаты
Использование стека Elixir и Nerves дало множество преимуществ для FESCOM EDGE OS. Использование Elixir как в облачном, так во встроенном пространстве обеспечило унифицированную модель разработки, которая привела команду к созданию более производительной и надежной среды с меньшей сложностью и меньшим количеством модулей.
Кроме того, возможность контролировать все соединения от объектового контроллера до серверного ПО привела к сокращению использования канала связи и повышению отказоустойчивости. Это соответствует основным требованиям, учитывая разнообразие условий и местоположений, в которых может быть использован контроллер FESCOM EDGE. Новая операционная система также допускает более частые обновления, позволяя FESCOM быстро реагировать на запросы бизнеса.
Особое внимание было уделено вопросам информационной безопасности, включая шифрование данных и возможности крипто-аутентификации. При разработке FESCOM EDGE OS команда руководствовалась рекомендациям ФСТЭК, NIST, ISO и IoT Device Security Specification 1.0 от Connectivity Standards Alliance.
Используя собственную операционную систему контроллера, поддерживаемую стеком Elixir / Nerves, команда FESCOM продемонстрировала свою способность предоставлять надежные и масштабируемые решения. Технологический стек Цифровой платформы FESCOM продолжает развиваться и в этом процессе команда FESCOM остается на переднем крае, разрабатывая и внедряя лучшие практики.