В этом примере показано, как использовать приложение 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
команда. Инициируйте новый сеанс путем нажатия на New Session, который открывает диалоговое окно для того, чтобы импортировать данные.
В Выборе больше панели переменных выберите pumpData
как ваш источник данных. В Итоговой панели подтвердите, что имена переменных совпадают с теми, которых вы просмотрели в командной строке. flow
и pressure
оба сигналы. faultCode
условная переменная. Условные переменные обозначают присутствие или отсутствие отказа и используются приложением для группировки и классификации.
Нажмите Import, чтобы импортировать данные о насосе в приложение.
Постройте сигнал потока путем выбора flow
от раздела Signals & Spectra браузера данных и нажатия Signal Trace в галерее графика. Постройте pressure
предупредите о том же пути.
Эти графики показывают давление и сигналы потока для всех 240 членов в наборе данных. Можно кликнуть по вкладке Signal Trace и выбрать Group "faultCode", чтобы отобразить сигналы с тем же кодом отказа в том же цвете. Группировка сигналов таким образом может помочь вам быстро определить, существуют ли какие-либо четкие различия между сигналами различных типов отказа. В этом случае измеренные сигналы не показывают четких различий для различных кодов отказа.
Сгруппировать все будущие графики faultCode
, используйте Опции Графика. Нажатие на Plot Options открывает диалоговое окно, которое позволяет вам установить настройки для сеанса.
Когда измеренные сигналы не показывают различий для различных условий отказа, следующий шаг должен извлечь функции временного интервала, такие как среднее и стандартное отклонение сигнала от сигнала. Во-первых, выберите flow/Data
в браузере данных. Затем выберите Time-Domain Features и затем Функции Сигнала.
Две новых вкладки открытые, Функции Сигнала и Функции Временного интервала. В Функциях Сигнала выберите функции, требуется извлечь и нажать Apply. На данный момент снимите флажок результатов Графика. Вы построите результаты позже, чтобы видеть, помогают ли функции отличить различные условия отказа. Повторите этот процесс для сигнала давления путем изменения сигнала, выбранного наверху диалогового окна.
Поршневой насос использует карданный вал и цилиндры, чтобы накачать жидкость. Из-за механической конструкции насоса, вероятно, будут циклические колебания потока насоса и давление. Например, масштабируйте в раздел сигналов потока с помощью регулятора панорамы сигнала ниже графика трассировки сигнала.
Вычисление спектра частоты потока подсветит циклическую природу сигнала потока и могло дать лучшее понимание, как сигнал потока изменяется при различных условиях отказа. Оцените спектры частоты с помощью авторегрессивного метода.
Этот метод подбирает авторегрессивную модель предписанного порядка к данным, и затем вычисляет спектр той предполагаемой модели. Этот подход уменьшает любой сверхподбор кривой к сигналу необработанных данных. В этом случае задайте порядок модели 20
. Также установите сетку частоты иметь минимум 0
и максимум 500
.
Графический вывод вычисленных спектров в линейной шкале ясно показывает резонирующий peaks. Группировка кодом отказа подсвечивает, как спектры изменяются для различных условий отказа.
Выполните те же расчеты для сигнала давления, как результаты обеспечат дополнительные функции, чтобы помочь отличить различные условия отказа.
Можно теперь вычислить спектральные функции, такие как peaks, модальные коэффициенты и мощность полосы.
Извлеките эти функции в меньшей полосе частот между 23-250 Гц как peaks после того, как 250 Гц будут меньшими. Для каждого сигнала извлеките пять спектральных peaks. На данный момент снимите флажок результатов Графика. Вы построите результаты позже, чтобы видеть, помогают ли функции отличить различные условия отказа. Повторите этот процесс для сигнала давления путем изменения сигнала, выбранного наверху диалогового окна.
Все функции, которые мы извлекли, были собраны в таблице, показанной в Табличном браузере Функции. Чтобы просмотреть вычисленные данные о функции, выберите FeatureTable1
от браузера данных и нажимают Feature Table View в галерее графика. Код отказа также отображен в табличном представлении функции как крайний правый столбец в таблице. Когда больше функций вычисляется, больше столбцов добавлено к таблице.
Вы видите распределения значений функции для различных значений условной переменной, в этом случае, типов отказа, путем просмотра таблицы функции как гистограмму. Выберите FeatureTable1
и затем, нажмите Histogram в галерее графика, чтобы создать набор графиков гистограммы. Используйте следующие и предыдущие кнопки, чтобы показать гистограммы для различных функций. Графики гистограммы, сгруппированные кодом отказа, могут помочь определить, являются ли определенными функциями сильные дифференциаторы между типами отказа. Если они будут сильными дифференциаторами, их распределения будут более удалены друг от друга. Для тройных данных о насосе распределения функции имеют тенденцию перекрываться и нет никаких функций, которые могут ясно быть использованы, чтобы идентифицировать отказы. Следующие взгляды раздела на использование автоматизировали рейтинг, чтобы найти, какие функции более полезны для предсказания отказа.
От вкладки Feature Designer нажмите Rank Features и выберите FeatureTable1
. Приложение собирает все данные о функции и ранжирует признаки на основе метрики, такие как Дисперсионный Анализ. Списки приложений функции в порядке важности на основе метрического значения. В этом случае значение RMS для сигнала потока и RMS и средних значений для сигнала давления является функциями, которые наиболее строго отличают различные типы отказа друг от друга.
После того, как вы отранжировали свои признаки в терминах важности, следующий шаг должен экспортировать их так, чтобы можно было обучить классификацию, основанную на модели на этих функциях. Нажмите Export, выберите, экспортируют признаки к Classification Learner и выбирают функции, которые вы хотите использовать для классификации. В этом случае экспортируйте лучшие 15 признаков. Приложение затем отправляет эти функции в Classification Learner, где они могут использоваться, чтобы спроектировать классификатор, чтобы идентифицировать различные отказы.
В диалоговом окне New Session from File, которое открывает Classification Learner, подтвердите 5-кратную перекрестную проверку и запустите сеанс.
Classification Learner отображает график рассеивания для одной модели.
В разделе Model Type вкладки Classification Learner выберите все типы модели для обучения. Затем нажмите Train.
Когда обучение завершено, Classification Learner перечисляет каждую модель в порядке номера модели, наряду с точностью модели, и отображает матрицу беспорядка для первой модели. Измените порядок сортировки в точность модели.
Метод SVM имеет самую высокую точность классификации приблизительно 78%. Соответствующая матрица беспорядка иллюстрирует, как хорошо этот метод классифицирует модели для каждого типа отказа. Записи на диагонали представляют количество типов отказа, которые правильно классифицируются. Недиагональные записи представляют типы отказа, для которых предсказанные и истинные классы различные. Чтобы улучшить точность, можно попытаться увеличить число функций. В качестве альтернативы можно выполнить итерации на существующих функциях. Другой шаг должен был бы выполнить итерации на существующих функциях — особенно спектральных функциях — и возможно изменить спектральный метод расчета, изменить полосу пропускания или использовать различный peaks частоты, чтобы улучшить точность классификации.
Этот пример показал, как использовать Diagnostic Feature Designer, чтобы анализировать и выбрать функции и создать классификатор, чтобы диагностировать отказы в тройном поршневом насосе.
Diagnostic Feature Designer | Classification Learner