Развертывание алгоритмов прогнозирующего обслуживания

Развертывание или интегрирование прогнозирующего алгоритма обслуживания обычно является завершающим этапом разработки алгоритмов рабочего процесса. Как вы в конечном счете развертываете алгоритм, может также быть фактор на более ранних стадиях проекта алгоритма. Для примера, является ли алгоритм запусков на встроенном оборудовании, в качестве независимого исполняемого файла или в качестве веб-приложения, может иметь влияние на требования и другие аспекты полной разработки системы прогнозирующего обслуживания. MathWorks® продукты поддерживают несколько фаз процесса разработки, развертывания и проверки прогнозирующих алгоритмов обслуживания.

design-V, концептуальная схема, часто используемая в контексте Модельно-ориентированное Проектирование, также актуальна при рассмотрении проекта и развертывания прогнозирующего алгоритма обслуживания. В проекте-V описываются ключевые фазы развертывания и реализации:

Спецификации и требования

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

  • Память и вычислительная степень.

  • Режим работы. Например, алгоритм может быть пакетным процессом, который запускается в некотором фиксированном временном интервале, например, один раз в день. Или это может быть потоковый процесс, который запускается каждый раз, когда новые данные доступны.

  • Обслуживание или обновление алгоритма. Например, развернутый алгоритм может быть исправлен, изменяя только изменения через периодические обновления. Или можно разработать алгоритм, который адаптируется и автоматически обновляется по мере доступности новых данных.

  • Где запускается алгоритм, например, должен ли алгоритм запускаться в облаке или предлагаться как веб-сервис.

Проект и прототип

Эта фаза проекта-V включает в себя управление данными, проект предварительной обработки данных, идентификацию индикаторов состояния и обучение классификационной модели для обнаружения отказа или модели для оценки оставшегося срока полезного использования. (См. «Разработка алгоритмов для мониторинга условий и прогнозирующего обслуживания», который предоставляет обзор процесса разработки алгоритмов.) На фазе проекта вы часто используете исторические или синтезированные данные для тестирования и настройки разработанного алгоритма.

Реализация и развертывание

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

MATLAB Compiler

Использование MATLAB® Compiler™ создать автономные приложения или общие библиотеки для выполнения алгоритмов, разработанных с помощью Predictive Maintenance Toolbox™. Можно использовать MATLAB Compiler, чтобы развернуть код MATLAB многими способами, в том числе как автономную Windows® приложение, общая библиотека, Excel® надстройка, Microsoft® Сборка .NET или типовой COM- компонента. Такие приложения или библиотеки работают вне окружения MATLAB с помощью среды MATLAB Runtime, которая свободно распространяется. MATLAB Runtime можно упаковать и установить с помощью вашего приложения или загрузить в процессе установки. Для получения дополнительной информации о развертывании с помощью MATLAB Compiler, смотрите Запуск с MATLAB Compiler (MATLAB Compiler).

MATLAB Production Server

Используйте MATLAB Production Server™, чтобы интегрировать алгоритмы в веб-приложения, базы данных и корпоративные приложения. MATLAB Production Server использует MATLAB Compiler для запуска приложений на выделенных серверах или облаке. Можно упаковать алгоритмы прогнозирующего обслуживания с помощью MATLAB Compiler SDK™, который расширяет функциональность MATLAB Compiler, позволяя создавать общие библиотеки C/C + +, сборки Microsoft .NET, Java® классы, или Python® пакеты из программ MATLAB. Затем можно развернуть сгенерированные библиотеки на MATLAB Production Server без перекодировки или создания пользовательской инфраструктуры.

ThingSpeak

Сервис аналитической платформы ThingSpeak™ Internet of Things (IoT) позволяет вам агрегировать, визуализировать и анализировать живые потоки данных в облаке. Для диагностики и прогнозирования алгоритмов, которые выполняются в интервалы 5 минут или дольше, можно использовать платформу ThingSpeak IoT, чтобы визуализировать результаты и контролировать условие вашей системы. Можно также использовать ThingSpeak как платформу быстрого и простого прототипирования перед развертыванием с помощью MATLAB Production Server. Можно передать диагностические данные с помощью веб-сервисов ThingSpeak и использовать его инструменты построения графиков для создания панелей мониторинга прогресса и генерации аварийных сигналов отказа. ThingSpeak может напрямую общаться с настольными MATLAB или кодами MATLAB, встроенными в целевые устройства.

MATLAB CODER и Simulink Coder

В некоторых случаях можно использовать MATLAB Coder™ и Simulink® Кодер для генерации кода C/C + + из MATLAB или Simulink. Для примера:

Более полный список функциональности MathWorks с поддержкой генерации кода см. в разделах Функции и Объекты, поддерживаемые для генерации кода C/C + + (MATLAB Coder).

Куда развертывать

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

Реализация облака может быть полезной, когда вы собираете и храните большие объемы данных в облаке. Устранение необходимости передачи данных между облаком и локальными машинами, на которых работает алгоритм прогнозирования и мониторинга состояния, делает процесс обслуживания более эффективным. Результаты, рассчитанные в облаке, могут быть доступны через твиты, уведомления по электронной почте, веб- приложения и панели мониторинга. Для облачных реализаций можно использовать ThingSpeak или MATLAB Production Server.

В качестве альтернативы алгоритм может запускаться на встраиваемых устройствах, которые ближе к фактическому оборудованию. Основными преимуществами этого являются то, что объем отправляемой информации уменьшается, когда данные передаются только при необходимости, и обновления и уведомления о работоспособности оборудования немедленно доступны без каких-либо задержек. Для встраиваемых реализаций можно использовать MATLAB Compiler, MATLAB Coder или Simulink Coder, чтобы сгенерировать код, который запускается на локальной машине.

Третья опция - использовать комбинацию двух. Части алгоритма предварительной обработки и редукции данных могут запускаться на встраиваемых устройствах, в то время как прогнозирующая модель может запускаться на облаке и генерировать уведомления по мере необходимости. В таких системах, как масляные сверла и авиационные двигатели, которые работают постоянно и генерируют огромное количество данных, хранение всех данных на борту или передача их не всегда жизнеспособно из-за сотовой полосы пропускания и ограничений затрат. Использование алгоритма, который работает с потоковыми данными или с пакетами данных, позволяет хранить и отправлять данные только при необходимости.

Программное обеспечение и системное Интегрирование

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

Производство

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

Похожие темы