Этот пример показывает, как анализировать сигналы вибрации от коробки передач с помощью синхронных по времени средних и огибающих спектра. Эти функции особенно полезны в прогнозирующем обслуживании коробок передач, которые содержат несколько вращающихся компонентов: передачи, валы и подшипники.
Этот пример генерирует и анализирует данные о вибрации для коробки передач, валы которой вращаются с фиксированной скоростью. Синхронное среднее используется, чтобы изолировать компоненты вибрации, сопоставленные с определенным валом или передачей, и усреднить все другие компоненты. Огибающие спектра особенно полезны при идентификации локализованных отказов подшипника, которые вызывают высокочастотные влияния.
Рассмотрим идеализированную коробку передач, которая состоит из 13-зубчатой шестерни, зацепляющей 35-зубчатую передачу. Шестерня соединена с входным валом, соединенным с первичным двигателем. Шестерня соединяется с выходом валом. Валы поддерживаются роликовыми подшипниками на корпусе коробки передач. Два акселерометра, и , размещаются на корпусах подшипника и коробки передач, соответственно. Акселерометры работают со скоростью дискретизации 20 кГц.
Шестерня вращается со скоростью = 22,5 Гц или 1350 об/мин. Скорость вращения передачи и выходного вала,
.
Частота зубчатой сети, также называемая частотой зубчатой сети, является частотой, с которой зубья зубчатой передачи и шестерни периодически зацепляются:
.
fs = 20E3; % Sample Rate (Hz) Np = 13; % Number of teeth on pinion Ng = 35; % Number of teeth on gear fPin = 22.5; % Pinion (Input) shaft frequency (Hz) fGear = fPin*Np/Ng; % Gear (Output) shaft frequency (Hz) fMesh = fPin*Np; % Gear Mesh frequency (Hz)
Сгенерируйте формы колебаний для шестерни и шестерни. Моделируйте вибрации как синусоиды, происходящие на частотах первичного зубчатого mesh вала. Анализ 20 секунд данных о вибрации.
Форма волны зубчатой сети отвечает за передачу нагрузки и, таким образом, обладает самой высокой амплитудой вибрации. регистрирует вибрационные вклады от двух валов и зубчатой сети. Для этого эксперимента вклады элементов качения подшипника в сигналы вибрации, записанные считаются незначительными. Визуализируйте секцию сигнала вибрации без шума.
t = 0:1/fs:20-1/fs; vfIn = 0.4*sin(2*pi*fPin*t); % Pinion waveform vfOut = 0.2*sin(2*pi*fGear*t); % Gear waveform vMesh = sin(2*pi*fMesh*t); % Gear-mesh waveform plot(t, vfIn + vfOut + vMesh) xlim([0 0.25]) xlabel('Time (s)') ylabel('Acceleration')
Предположим, что один из зубьев передачи страдает от локального отказа, такого как сполл. Это приводит к высокочастотному влиянию, возникающему один раз за вращение передачи.
Локальный отказ вызывает влияние, которое имеет длительность короче, чем длительность зубного mesh. Вмятина на поверхности зуба шестерни генерирует высокочастотные колебания на протяжении длительности влияния. Частота влияния зависит от свойств компонентов коробки передач и ее собственных частот. В этом примере произвольно принято, что влияние вызывает сигнал вибрации 2 кГц и происходит в течение примерно 8% 1/fMesh
, или 0,25 миллисекунд. Это влияние повторяется один раз за вращение передачи.
ipf = fGear; fImpact = 2000; tImpact = 0:1/fs:2.5e-4-1/fs; xImpact = sin(2*pi*fImpact*tImpact)/3;
Сделать влияние периодическим путем свертки его с помощью функции гребня.
xComb = zeros(size(t));
Ind = (0.25*fs/fMesh):(fs/ipf):length(t);
Ind = round(Ind);
xComb(Ind) = 1;
xPer = 2*conv(xComb,xImpact,'same');
Добавьте сигнал отказа xPer
к сигналу вала. Добавьте белый Гауссов шум к выходным сигналам как для безаварийной, так и для неисправной передачи, чтобы смоделировать выход из .
vNoFault = vfIn + vfOut + vMesh; vFault = vNoFault + xPer; vNoFaultNoisy = vNoFault + randn(size(t))/5; vFaultNoisy = vFault + randn(size(t))/5;
Визуализируйте сегмент временной истории. Места влияния обозначены на графике для неисправной передачи перевернутыми красными треугольниками. Они почти неотличимы.
subplot(2,1,1) plot(t,vNoFaultNoisy) xlabel('Time (s)') ylabel('Acceleration') xlim([0.0 0.3]) ylim([-2.5 2.5]) title('Noisy Signal for Healthy Gear') subplot(2,1,2) plot(t,vFaultNoisy) xlabel('Time (s)') ylabel('Acceleration') xlim([0.0 0.3]) ylim([-2.5 2.5]) title('Noisy Signal for Faulty Gear') hold on MarkX = t(Ind(1:3)); MarkY = 2.5; plot(MarkX,MarkY,'rv','MarkerFaceColor','red') hold off
Локализованные зубчатые полоски приводят к появлению распределенных боковых полос по соседству с частотой mesh:
Вычислите спектр исправных и неисправных передач. Укажите частотную область значений, который включает частоты вала на 8,35 Гц и 22,5 Гц и частоту зубчатой сети на 292,5 Гц.
[Spect,f] = pspectrum([vFaultNoisy' vNoFaultNoisy'],fs,'FrequencyResolution',0.2,'FrequencyLimits',[0 500]);
Постройте график спектров. Поскольку отказ находится на шестерне, а не на шестерне, боковые полосы, как ожидается, появятся на и разнесенные отдельно от спектров. Спектры показывают ожидаемый peaks в fGear
, fPin
, и fMesh
. Однако наличие шума в сигнале делает боковую полосу пиковой неразличимо.
figure plot(f,10*log10(Spect(:,1)),f,10*log10(Spect(:,2)),':') xlabel('Frequency (Hz)') ylabel('Power Spectrum (dB)') hold on plot(fGear,0,'rv','MarkerFaceColor','red') plot(fPin,0,'gv','MarkerFaceColor','green') plot(fMesh,0,'bv','MarkerFaceColor','blue') hold off legend('Faulty','Healthy','f_{Gear}','f_{Pinion}','f_{Mesh}')
Изменение масштаба окрестности частоты зубчатой сети. Создайте сетку зубчатых и шестеренчатых боковых полос и .
figure p1 = plot(f,10*log10(Spect(:,1))); xlabel('Frequency (Hz)') ylabel('Power Spectrum (dB)') xlim([250 340]) ylim([-70 -40]) hold on p2 = plot(f,10*log10(Spect(:,2))); harmonics = -5:5; SBandsGear = (fMesh+fGear.*harmonics); [X1,Y1] = meshgrid(SBandsGear,ylim); SBandsPinion = (fMesh+fPin.*harmonics); [X2,Y2] = meshgrid(SBandsPinion,ylim); p3 = plot(X1,Y1,':r'); p4 = plot(X2,Y2,':k'); hold off legend([p1 p2 p3(1) p4(1)],{'Faulty Gear';'Healthy Gear';'f_{sideband,Gear}';'f_{sideband,Pinion}'})
Непонятно, выровняются ли peaks с боковыми полосами передач .
Обратите внимание, что трудно разделить peaks на боковых полосах передач, , и шестерни боковые, . Предыдущий раздел продемонстрировал трудности с разделением peaks и определением, затронута ли шестерня или шестерня отказами. Синхронное среднее вычисляет среднее с нулем случайного шума и любые формы волны, не связанные с частотами конкретного вала. Это облегчает процесс обнаружения отказов.
Используйте функцию tsa
для формирования синхронизированных по времени сигналов как для шестерни, так и для передачи.
Задайте синхронизированные по времени импульсы для шестерни. Вычислите синхронное среднее значение для 10 оборотов шестерни.
tPulseIn = 0:1/fPin:max(t);
taPin = tsa(vFaultNoisy,fs,tPulseIn,'NumRotations',10);
Задайте синхронизированные по времени импульсы для передачи. Вычислите синхронное среднее значение для 10 оборотов передачи.
tPulseOut = 0:1/fGear:max(t);
taGear = tsa(vFaultNoisy,fs,tPulseOut,'NumRotations',10);
Визуализируйте синхронизированные по времени сигналы для одного вращения. Влияние сравнительно легче увидеть на синхронном усредненном сигнале для передачи, в то время как оно усредняется для вала шестерни. Расположение влияния, обозначенное на графике маркером, имеет более высокую амплитуду, чем соседний peaks зубчатой сети.
The tsa
функция без выходных аргументов строит график синхронного среднего сигнала и сигналов временной области, соответствующих каждому сегменту сигнала на текущей фигуре.
figure subplot(2,1,1) tsa(vFaultNoisy,fs,tPulseIn,'NumRotations',10) xlim([0.5 1.5]) ylim([-2 2]) title('TSA Signal for Pinion') subplot(2,1,2) tsa(vFaultNoisy,fs,tPulseOut,'NumRotations',10) xlim([0.5 1.5]) ylim([-2 2]) title('TSA Signal for Gear') hold on plot(1.006,2,'rv','MarkerFaceColor','red') hold off
Вычислите степень спектр синхронного усредненного сигнала передачи. Задайте частотную область значений, который охватывает 15 зубчатых боковых полос с каждой стороны частоты зубчатого mesh 292,5 Гц. Заметьте peaks в .
figure pspectrum(taGear,fs,'FrequencyResolution',2.2,'FrequencyLimits',[200 400]) harmonics = -15:15; SBandsGear=(fMesh+fGear.*harmonics); [X1,Y1] = meshgrid(SBandsGear,ylim); [XM,YM] = meshgrid(fMesh,ylim); hold on plot(XM,YM,'--k',X1,Y1,':r') legend('Power Spectra','Gear-Mesh Frequency','f_{sideband,Gear}') hold off title('TSA Gear (Output Shaft)')
Визуализируйте спектры степени синхронного усредненного сигнала шестерни в той же частотной области значений. На этот раз постройте графики линий сетки частотные местоположения.
figure pspectrum(taPin,fs,'FrequencyResolution',5.8,'FrequencyLimits',[200 400]) SBandsPinion = (fMesh+fPin.*harmonics); [X2,Y2] = meshgrid(SBandsPinion,ylim); [XM,YM] = meshgrid(fMesh,ylim); hold on plot(XM,YM,'--b',X2,Y2,':k') legend('Power Spectra','Gear-Mesh Frequency','f_{sideband,Pinion}') hold off title('TSA Pinion (Input Shaft)')
Заметьте отсутствие заметного peaks в на графике.
Спектры степени исходного сигнала содержат формы сигналов от двух разных валов, а также шум. Трудно различить гармонику боковой полосы. Однако наблюдайте заметный peaks в местах боковой полосы на спектре синхронного усредненного зубчатого сигнала. Также наблюдайте неоднородность величин боковой полосы, которые являются индикатором локализованных отказов на передаче. С другой стороны, peaks боковой полосы отсутствуют в спектре синхронного усредненного сигнала шестерни. Это помогает нам сделать вывод, что шестерня потенциально здорова.
Путем усреднения формы волны, которые не релевантны, tsa
функция помогает идентифицировать неисправную передачу, рассматривая гармоники боковой полосы. Эта функциональность особенно полезна, когда желательно извлечь сигнал вибрации, соответствующий одному валу, из коробки передач с несколькими валами и шестернями.
Отказ распределенной передачи, такой как эксцентриситет или расхождение передач [1], вызывает боковые полосы более высокого уровня, которые узко сгруппированы вокруг целочисленных кратных частот зубчатой сети.
Чтобы симулировать распределенный отказ, введите три боковых компонента уменьшающейся амплитуды с каждой стороны частоты зубчатой сети.
SideBands = -3:3; SideBandAmp = [0.02 0.1 0.4 0 0.4 0.1 0.02]; % Sideband amplitudes SideBandFreq = fMesh + SideBands*fPin; % Sideband frequencies vSideBands = SideBandAmp*sin(2*pi*SideBandFreq'.*t);
Добавьте сигналы боковой полосы в сигнал вибрации. Это приводит к амплитудной модуляции.
vPinFaultNoisy = vFaultNoisy + vSideBands;
Визуализируйте раздел истории времени коробки передач, на которую влияет распределенный отказ.
plot(t,vPinFaultNoisy) xlim([0.6 0.85]) xlabel('Time (s)') ylabel('Acceleration') title('Effects of Sideband Modulation')
Пересчитайте синхронный усредненный сигнал для шестерни и передачи.
taPin = tsa(vPinFaultNoisy,fs,tPulseIn,'NumRotations',10); taGear = tsa(vFaultNoisy,fs,tPulseOut,'NumRotations',10);
Визуализируйте степень спектр синхронного усредненного сигнала. Три боковые полосы в синхронном усредненном сигнале шестерни более выражены, что указывает на наличие распределенных отказов. Однако спектр синхронного усредненного зубчатого сигнала остается неизменным.
subplot(2,1,1) pspectrum(taPin,fs,'FrequencyResolution',5.8,'FrequencyLimits',[200 400]) hold on plot(X2,Y2,':k') legend('Power Spectrum','f_{sideband,Pinion}','Location','south') hold off title ('TSA Pinion (Input Shaft)') subplot(2,1,2) pspectrum(taGear,fs,'FrequencyResolution',2.2,'FrequencyLimits',[200 400]) hold on plot(X1,Y1,':r') legend('Power Spectrum','f_{sideband,Gear}') hold off title ('TSA Gear (Output Shaft)')
В заключение, tsa
функция помогает извлечь вклад шестерни и шестерни от общего сигнала вибрации. Это, в свою очередь, помогает идентифицировать конкретные компоненты, на которые влияют локализованные и распределенные отказы.
Локализованные дефекты в подшипнике качения могут происходить во внешнем кольце, внутреннем кольце, клетке или элементе качения. Каждый из этих отказов характеризуется собственной частотой, которая обычно указывается производителем или вычисляется из спецификаций подшипника. Влияние с локализованным отказом генерирует высокочастотные вибрации в конструкции коробки передач между подшипником и преобразователем [2] отклика. Предположим, что передачи в коробке передач исправны и что на один из подшипников, поддерживающих вал, влияет локализованный отказ во внутреннем кольце. Пренебрегите эффектами радиальной нагрузки в анализе.
Подшипник, тангаж диаметром 12 см, имеет восемь элементы качения. Каждый элемент качения имеет диаметр 2 см. Угол контакта является . Обычной практикой является размещение акселерометра на подшипнике-корпусе при анализе вибрации подшипника. Измерения ускорения регистрируются, акселерометр, расположенный на неисправном корпусе подшипника.
Определите параметры для подшипника.
n = 8; % Number of rolling element bearings d = 0.02; % Diameter of rolling elements p = 0.12; % Pitch diameter of bearing thetaDeg = 15; % Contact angle in degrees
Влияния происходят всякий раз, когда элемент качения проходит локализованный отказ на внутреннем кольце. Скорость, с которой это происходит, является внутренней гонкой с частотой прохода мяча (BPFI). BPFI может быть вычислен с помощью
.
bpfi = n*fPin/2*(1 + d/p*cosd(thetaDeg))
bpfi = 104.4889
Моделируйте каждое влияние как синусоиду с частотой 3 кГц, оконную с помощью окна Кайзера. Дефект вызывает серию 5-миллисекундных влияний по подшипнику. Импульсы на ранних стадиях приямков и отливов охватывают широкую область значений примерно до 100 кГц [2].
fImpact = 3000; tImpact = 0:1/fs:5e-3-1/fs; xImpact = sin(2*pi*fImpact*tImpact).*kaiser(length(tImpact),40)';
Сделать влияние периодическим путем свертки его с помощью функции гребня. С тех пор ближе к подшипнику, отрегулируйте амплитуду влияния так, чтобы она была заметна относительно сигнала вибрации коробки передач, записанного .
xComb = zeros(size(t));
xComb(1:round(fs/bpfi):end) = 1;
xBper = 0.33*conv(xComb,xImpact,'same');
Визуализируйте сигнал влияния.
figure plot(t,xBper) xlim([0 0.05]) xlabel('Time (s)') ylabel('Acceleration') title('Impacts Due to Local Fault on the Inner Race of the Bearing')
Добавьте периодический отказ подшипника в сигнал вибрации от здоровой коробки передач.
vNoBFaultNoisy = vNoFault + randn(size(t))/5; vBFaultNoisy = xBper + vNoFault + randn(size(t))/5;
Вычислите спектры сигналов. Визуализируйте спектр на более низких частотах. Создайте сетку первых десяти гармоник BPFI.
pspectrum([vBFaultNoisy' vNoBFaultNoisy' ],fs,'FrequencyResolution',1,'FrequencyLimits',[0 10*bpfi]) legend('Damaged','Healthy') title('Bearing Vibration Spectra') grid off harmImpact = (0:10)*bpfi; [X,Y] = meshgrid(harmImpact,ylim); hold on plot(X/1000,Y,':k') legend('Healthy','Damaged','BPFI harmonics') xlim([0 10*bpfi]/1000) hold off
На нижнем конце спектра частоты вала и сетки и их порядки затеняют другие функции. Спектр исправного подшипника и спектр поврежденного подшипника неразличимы. Этот недостаток подчеркивает необходимость подхода, который может изолировать отказы подшипника.
BPFI зависит от коэффициента и косинус контактного угла . Иррациональное выражение для BPFI подразумевает, что влияния подшипника не синхронны с целым числом вращений вала. The tsa
функция не полезна в этом случае, потому что она усредняет влияния. Эти влияния не находятся в одном и том же месте в каждом усредненном сегменте.
Функция envspectrum
(огибающая спектра) выполняет амплитудную демодуляцию и полезен при извлечении информации о высокочастотных влияниях.
Вычислите и постройте график огибающих сигналов и их спектров. Сравните огибающие спектра для сигналов с отказом подшипника и без него. Визуализируйте спектр на более низких частотах. Создайте сетку первых десяти гармоник BPFI.
figure envspectrum([vNoBFaultNoisy' vBFaultNoisy'],fs) xlim([0 10*bpfi]/1000) [X,Y] = meshgrid(harmImpact,ylim); hold on plot(X/1000,Y,':k') legend('Healthy','Damaged','BPFI harmonics') xlim([0 10*bpfi]/1000) hold off
Обратите внимание, что peaks BPFI не являются заметными в огибающую спектра, потому что сигнал загрязнен шумом. Напомним, что выполняющие tsa
для среднего значения шума не используется для анализа отказа подшипника, потому что он также усредняет сигналы влияния.
The envspectrum
функция предлагает встроенный фильтр, который может использоваться, чтобы удалить шум за пределами полосы интереса. Применить полосно-пропускной фильтр порядка 200 с центром 3,125 кГц и шириной 4,167 кГц.
Fc = 3125; BW = 4167; envspectrum([vNoBFaultNoisy' vBFaultNoisy'],fs,'Method','hilbert','FilterOrder',200,'Band',[Fc-BW/2 Fc+BW/2]) harmImpact = (0:10)*bpfi; [X,Y] = meshgrid(harmImpact,ylim); hold on plot(X/1000,Y,':k') legend('Healthy','Damaged','BPFI harmonics') xlim([0 10*bpfi]/1000) hold off
Эта огибающая спектра эффективно приводит содержимое полосы пропускания к основной полосе частот, и поэтому показывает наличие заметного peaks в гармониках BPFI ниже 1 кГц. Это помогает сделать вывод, что внутреннее кольцо подшипника потенциально повреждено.
В этом случае частотный спектр неисправного подшипника четко показывает гармоники BPFI, модулированные частотой влияния. Визуализируйте это явление в спектрах, близких к частоте влияния 3 кГц.
figure pspectrum([vBFaultNoisy' vNoBFaultNoisy'],fs,'FrequencyResolution',1,'FrequencyLimits',(bpfi*[-10 10]+fImpact)) legend('Damaged','Healthy') title('Bearing Vibration Spectra')
Обратите внимание, что разделение по частоте между peaks равно BPFI.
Этот пример использовал синхронное среднее для разделения сигналов вибрации, сопоставленных как с шестерней, так и с шестерней. В сложение, tsa
также ослабленный случайный шум. В случаях колебания скорости (и нагрузки [2]) отслеживание порядка может использоваться в качестве предшественника tsa
для повторной выборки сигнала с точки зрения угла поворота вала. Синхронное среднее также используется в экспериментальных условиях, чтобы ослабить эффекты небольших изменений скорости вала.
Широкополосный частотный анализ может использоваться в качестве хорошей начальной точки при анализе отказа подшипников [3]. Однако его полезность ограничена, когда спектры в районе частот влияния подшипника содержат вклады от других компонентов, таких как более высокие гармоники частот зубчатой сети в коробке передач. При таких обстоятельствах полезен огибающий анализ. Функция envspectrum
может использоваться для извлечения огибающих сигналов и спектров для неисправных подшипников, как индикатор износа и повреждения подшипника.
Шеффер, Корнелиус и Паеш Гирдхар. Практический анализ вибрации машин и прогнозирующее обслуживание. Амстердам: Elsevier, 2004.
Рэндалл, Роберт Бонд. Мониторинг условия на основе вибрации: Промышленные, аэрокосмические и автомобильные приложения. Chichester, UK: John Wiley and Sons, 2011.
Лейси, С. Дж. Обзор анализа вибрации подшипника. (Из: http://www.maintenanceonline.co.uk/maintenanceonline/content_images/p32-42%20Lacey%20paper%20M&AM.pdf)
Брандт, Андерс. Анализ шума и вибрации: анализ сигналов и экспериментальные процедуры. Chichester, UK: John Wiley and Sons, 2011.
envspectrum
| pspectrum
| tsa