В этом примере показано, как использовать приложение Diagnostic Feature Designer, чтобы анализировать и выбрать функции, чтобы диагностировать отказы в тройном поршневом насосе.
Использование в качестве примера симулировало данные об отказе насоса, сгенерированные примером Мультиклассового обнаружения неисправностей с использованием смоделированных данных. Данные были предварительно обработаны, чтобы удалить переходные процессы запуска насоса.
Загрузите тройные данные об отказе насоса. Данные о насосе содержат 240 потоков и измерения давления для различных условий отказа. Существует три типа отказа (пропускающий цилиндр насоса, блокированное входное отверстие насоса, увеличенное трение подшипника насоса). Измерения покрывают условия, где ни один, один, или несколько отказов не присутствует. Данные собраны в таблице, где каждая строка является различным измерением.
load('savedPumpData')
pumpData
pumpData=240×3 table
flow pressure faultCode
__________________ __________________ _________
{1201x1 timetable} {1201x1 timetable} 0
{1201x1 timetable} {1201x1 timetable} 0
{1201x1 timetable} {1201x1 timetable} 100
{1201x1 timetable} {1201x1 timetable} 100
{1201x1 timetable} {1201x1 timetable} 100
{1201x1 timetable} {1201x1 timetable} 100
{1201x1 timetable} {1201x1 timetable} 100
{1201x1 timetable} {1201x1 timetable} 100
{1201x1 timetable} {1201x1 timetable} 100
{1201x1 timetable} {1201x1 timetable} 100
{1201x1 timetable} {1201x1 timetable} 100
{1201x1 timetable} {1201x1 timetable} 100
{1201x1 timetable} {1201x1 timetable} 0
{1201x1 timetable} {1201x1 timetable} 100
{1201x1 timetable} {1201x1 timetable} 100
{1201x1 timetable} {1201x1 timetable} 100
⋮
Откройте Diagnostic Feature Designer при помощи diagnosticFeatureDesigner
команда. Импортируйте данные о насосе в приложение. Данные организованы как мультичленский ансамбль, так используйте ту опцию в импорте.
Если мы задаем переменную, мы хотим импортировать как pumpData
, мы можем затем рассмотреть различные сигналы, которые мы импортируем. Убедитесь, что faultCode
переменная является условной переменной. Условные переменные обозначают присутствие или отсутствие отказа и используются приложением в группировке и классификации
Постройте сигнал потока путем выбора flow
от раздела Signals & Spectra браузера данных и нажатия Signal Trace в галерее графика. Постройте pressure
предупредите о том же пути.
Эти графики показывают давление и сигналы потока для всех 240 участников в наборе данных. Можно кликнуть по вкладке Signal Trace и выбрать группу кодом отказа, чтобы отобразить сигналы с тем же кодом отказа в том же цвете. Группировка сигналов таким образом может помочь вам быстро определить, существуют ли какие-либо четкие различия между сигналами различных типов отказа. В этом случае измеренные сигналы не показывают четких различий для различных кодов отказа.
Когда измеренные сигналы не показывают различий для различных условий отказа, следующий шаг должен извлечь функции временного интервала, такие как среднее и стандартное отклонение сигнала от сигнала. Чтобы открыть диалоговое окно, показанное здесь, выберите Time-Domain Features и затем Функции Сигнала. Выберите функции, которые требуется извлечь и нажать ОК. На данный момент снимите флажок результатов Графика. Мы построим результаты позже, чтобы видеть, помогают ли функции отличить различные условия отказа. Повторите этот процесс для сигнала давления путем изменения сигнала, выбранного наверху диалогового окна.
Поршневой насос использует карданный вал и цилиндры, чтобы накачать жидкость. Из-за механической конструкции насоса мы ожидаем там быть циклическими колебаниями потока насоса и давлением. Например, масштабируйте в раздел сигналов потока с помощью регулятора панорамы сигнала ниже графика трассировки сигнала.
Вычисление спектра частоты потока подсветит циклическую природу сигнала потока и могло дать лучшее понимание, как сигнал потока изменяется при различных условиях отказа. Оцените спектры частоты с помощью авторегрессивного метода. Этот метод подбирает авторегрессивную модель предписанного порядка к данным, и затем вычисляет спектр той предполагаемой модели. Этот подход уменьшает любой сверхподбор кривой к сигналу необработанных данных. В этом случае задайте порядок модели 20
.
Графический вывод вычисленных спектров в линейной шкале ясно показывает резонирующий peaks. Группировка кодом отказа подсвечивает, как спектры изменяются для различных условий отказа.
Выполните те же расчеты для сигнала давления, как результаты обеспечат дополнительные функции, чтобы помочь отличить различные условия отказа.
Мы можем теперь вычислить спектральные функции, такие как peaks, модальные коэффициенты и мощность полосы. Мы извлекаем эти функции в меньшей полосе частот между 25-250 Гц как peaks после того, как 250 Гц будут меньшими. Обратите внимание на то, что мы извлекаем 5 спектральных peaks для каждого сигнала. На данный момент снимите флажок результатов Графика. Мы построим результаты позже, чтобы видеть, помогают ли функции отличить различные условия отказа. Повторите этот процесс для сигнала давления путем изменения сигнала, выбранного наверху диалогового окна.
Все функции, которые мы извлекли, были собраны в таблице, показанной в Табличном браузере Функции. Чтобы просмотреть вычисленные данные о функции, выберите FeatureTable1
от браузера данных и нажимают Feature Table View в галерее графика. Код отказа также отображен в табличном представлении функции как крайний правый столбец в таблице. Когда больше функций вычисляется, больше столбцов добавлено к таблице.
Вы видите распределения значений функции для различных значений условной переменной, т.е. типы отказа, путем просмотра таблицы функции как гистограмму. Нажмите Histogram в галерее графика, чтобы создать график гистограммы. Используйте следующие и предыдущие кнопки, чтобы показать гистограммы для различных функций. Графики гистограммы, сгруппированные кодом отказа, могут помочь определить, являются ли определенными функциями сильные дифференциаторы между типами отказа. Если они будут сильными дифференциаторами, их распределения будут более удалены друг от друга. Для тройных данных о насосе распределения функции имеют тенденцию накладываться и нет никаких функций, которые могут ясно быть использованы, чтобы идентифицировать отказы. Следующие взгляды раздела на использование автоматизировали рейтинг, чтобы найти, какие функции более полезны для прогноза отказа.
От вкладки Feature Designer нажмите Rank Features и выберите FeatureTable1
. Приложение собирает все данные о функции и оценивает функции на основе метрики, такие как Дисперсионный Анализ. Функции затем перечислены в терминах важности на основе метрического значения. В этом случае мы видим, что значение RMS для сигнала потока и RMS и средних значений для сигнала давления является функциями, которые наиболее строго отличают различные типы отказа друг от друга.
После того, как мы оценили наши функции в терминах важности, следующий шаг должен экспортировать их так, чтобы мы могли обучить классификацию, основанную на модели на этих функциях. Нажмите Export, выберите Export to Classification Learner и выберите функции, которые вы хотите использовать для классификации. В этом случае мы экспортируем все функции, которые имеют One-way ANOVA
метрика> 1, т.е. все функции до и включая pressure_ps_spec/Data_Zeta1
. Функции затем отправляются в Classification Learner и могут быть использованы, чтобы спроектировать классификатор, чтобы идентифицировать различные отказы.
В Classification Learner выберите 5-fold cross validation
и запустите сеанс.
От Classification Learner обучите все доступные модели. RUSBoosted trees
метод имеет самую высокую точность классификации 81%. Следующий шаг мог быть должен выполнить итерации на функциях — особенно спектральных функциях — и возможно изменить спектральный метод расчета, изменить пропускную способность или использовать различный peaks частоты, чтобы улучшить точность классификации.
Этот пример показал, как использовать Diagnostic Feature Designer, чтобы анализировать и выбрать функции и создать классификатор, чтобы диагностировать отказы в тройном поршневом насосе.
Classification Learner | Diagnostic Feature Designer