Esta página aún no se ha traducido para esta versión. Puede ver la versión más reciente de esta página en inglés.

rpmfreqmap

Mapa de frecuencia-RPM para el análisis de pedidos

Descripción

ejemplo

map = rpmfreqmap(x,fs,rpm) devuelve la matriz de mapas frequency-RPM, , que resulta de realizar análisis de frecuencia en el vector de entrada, . se mide a un conjunto de velocidades de rotación expresadas en revoluciones por minuto. es la frecuencia de muestreo en Hz.mapxxrpmfs Cada columna de contiene estimaciones de amplitud de la media de la raíz (RMS) del contenido espectral presente en cada valor de . utiliza la transformación de Fourier de corto tiempo para analizar el contenido espectral de .maprpmrpmfreqmapx

ejemplo

map = rpmfreqmap(x,fs,rpm,res) especifica el ancho de banda de resolución del mapa en Hz.

ejemplo

map = rpmfreqmap(___,Name,Value) especifica las opciones mediante pares además de los argumentos de entrada en sintaxis anteriores.Name,Value

[map,freq,rpm,time,res] = rpmfreqmap(___) devuelve vectores con las frecuencias, velocidades de rotación e instantes de tiempo en los que se calcula el mapa de frecuencias. También devuelve el ancho de banda de resolución utilizado.

ejemplo

rpmfreqmap(___) sin argumentos de salida traza el mapa de frecuencias en función de la velocidad y el tiempo de rotación en una figura interactiva. La trama también se conoce como un archivo .Diagrama de Campbell

Ejemplos

contraer todo

Cree una señal simulada muestreada a 600 Hz durante 5 segundos. El sistema que se está probando aumenta su velocidad de rotación de 10 a 40 revoluciones por segundo durante el período de observación.

Genere las lecturas del tacómetro.

fs = 600; t1 = 5; t = 0:1/fs:t1;  f0 = 10; f1 = 40; rpm = 60*linspace(f0,f1,length(t));

La señal consta de cuatro chirridos relacionados armónicamente con las órdenes 1, 0.5, 4 y 6. El chirp order-4 tiene el doble de amplitud que los demás. Para generar los chirridos, utilice la regla trapezoidal para expresar la fase como la integral de la velocidad de rotación.

o1 = 1; o2 = 0.5; o3 = 4; o4 = 6;  ph = 2*pi*cumtrapz(rpm/60)/fs;  x = [1 1 2 1]*cos([o1 o2 o3 o4]'*ph);

Visualice el mapa de frecuencia-RPM de la señal.

rpmfreqmap(x,fs,rpm)

Analizar datos simulados de un acelerómetro colocado en la cabina de un helicóptero.

Cargue los datos del helicóptero. Las mediciones vibratorias, , se muestrean a una velocidad de 500 Hz durante 10 segundos.vib La inspección de los datos revela que tiene una tendencia lineal. Elimine la tendencia para evitar que degrade la calidad de la estimación de frecuencia.

load('helidata.mat')  vib = detrend(vib);

Trazar el perfil de RPM no lineal. El rotor sube hasta alcanzar una velocidad de rotación máxima de unas 27.600 revoluciones por minuto y luego baja la costa.

plot(t,rpm) xlabel('Time (s)') ylabel('RPM')

Calcular el mapa de frecuencia-RPM. Especifique un ancho de banda de resolución de 2,5 Hz.

[map,freq,rpmOut,time] = rpmfreqmap(vib,fs,rpm,2.5);

Visualice el mapa.

imagesc(time,freq,map) ax = gca; ax.YDir = 'normal'; xlabel('Time (s)') ylabel('Frequency (Hz)')

Repita el cálculo utilizando un ancho de banda de resolución más fino. Trazar el mapa utilizando la funcionalidad integrada de .rpmfreqmap La ganancia en la resolución de frecuencia viene a expensas de la resolución de tiempo.

rpmfreqmap(vib,fs,rpm,1.5);

Generar una señal que consta de dos chirridos lineales y un chirrido cuadrático, todos muestreados a 600 Hz durante 15 segundos. El sistema que produce la señal aumenta su velocidad de rotación de 10 a 40 revoluciones por segundo durante el período de prueba.

Genere las lecturas del tacómetro.

fs = 600; t1 = 15; t = 0:1/fs:t1;  f0 = 10; f1 = 40; rpm = 60*linspace(f0,f1,length(t));

Los chirridos lineales tienen órdenes 1 y 2.5. El componente con la orden 1 tiene la mitad de la amplitud del otro. El chirrido cuadrático comienza en la orden 6 y vuelve a esta orden al final de la medición. Su amplitud es de 0,8. Cree la señal usando esta información.

o1 = 1; o2 = 2.5; o6 = 6;  x = 0.5*chirp(t,o1*f0,t1,o1*f1)+chirp(t,o2*f0,t1,o2*f1) + ...     0.8*chirp(t,o6*f0,t1,o6*f1,'quadratic');

Calcular el mapa de frecuencia-RPM de la señal. Utilice la amplitud máxima en cada celda de medición. Especifique una resolución de 6 Hz. Ventana de los datos con una ventana superior plana.

[map,fr,rp] = rpmfreqmap(x,fs,rpm,6, ...     'Amplitude','peak','Window','flattopwin');

Dibuje el mapa de frecuencia-RPM como un trazado de cascada.

[FR,RP] = meshgrid(fr,rp); waterfall(FR,RP,map')  view(-6,60) xlabel('Frequency (Hz)') ylabel('RPM') zlabel('Amplitude')

Trazar un mapa de frecuencia-RPM interactivo llamando sin argumentos de salida.rpmfreqmap

Cargue un archivo que contenga datos vibratorios simulados de un acelerómetro colocado en la cabina de un helicóptero. Los datos se muestrean a una velocidad de 500 Hz durante 10 segundos. Elimine la tendencia lineal de los datos. Llamada para generar una gráfica interactiva del mapa de frecuencia-RPM.rpmfreqmap Especifique una resolución de frecuencia de 2 Hz.

load helidata.mat rpmfreqmap(detrend(vib),fs,rpm,2)

Mueva los cursores en cruz de la figura para determinar las RPM y la amplitud RMS a una frecuencia de 25 Hz después de 5 segundos.

Haga clic en el botónZoom Xen la barra de herramientas para ampliar la región de tiempo entre 2 y 4 segundos. Aparece un panoramizador en el trazado inferior.

Haga clic en el botónWaterfall Ploten la barra de herramientas para mostrar el mapa de frecuencia-RPM como un trazado de cascada. Para mejorar la visibilidad, gire el trazado en el sentido de las agujas del reloj con el botónRotate Lefttres veces. Mueva el panoramizador al intervalo entre 4 y 6 segundos.

Argumentos de entrada

contraer todo

Señal de entrada, especificada como vector de fila o columna.

Ejemplo: especifica un sinusoides incrustado en el ruido gaussiano blanco.cos(pi/4*(0:159))+randn(1,160)

Tipos de datos: double | single

Frecuencia de muestreo, especificada como un escalar positivo expresado en Hz.

Tipos de datos: double | single

Velocidades de rotación, especificadas como un vector de valores positivos expresados en revoluciones por minuto. debe tener la misma longitud que .rpmx

  • Si tiene una señal de pulso de tacómetro, úsela para extraer directamente.tachorpmrpm

  • Si no tiene una señal de pulso de tacómetro, úselo para extraer de una señal de vibración.rpmtrackrpm

Ejemplo: especifica que un sistema gira inicialmente a 100 revoluciones por minuto y ejecuta hasta 3000 revoluciones por minuto en incrementos de 10.100:10:3000

Tipos de datos: double | single

Ancho de banda de resolución del mapa de frecuencia-RPM, especificado como escalar positivo. Si no se especifica, se establece en la frecuencia de muestreo dividida por 128.resrpmfreqmap Si la señal no es lo suficientemente larga, la función utiliza toda la longitud de la señal para calcular una sola estimación de frecuencia.

Tipos de datos: single | double

Argumentos de par nombre-valor

Especifique pares opcionales separados por comas de argumentos. es el nombre del argumento y es el valor correspondiente. deben aparecer entre comillas.Name,ValueNameValueName Puede especificar varios argumentos de par de nombre y valor en cualquier orden como .Name1,Value1,...,NameN,ValueN

Ejemplo: especifica que las estimaciones del mapa de frecuencia se escalarán en decibelios y se determinarán mediante una ventana Hann.'Scale','dB','Window','hann'

Amplitudes de mapa de frecuencia-RPM, especificadas como el par separado por comas que consta de y uno de , , o .'Amplitude''rms''peak''power'

  • — Devuelve la amplitud de la media de la raíz para cada frecuencia estimada.'rms'

  • — Devuelve la amplitud máxima para cada frecuencia estimada.'peak'

  • — Devuelve el nivel de potencia para cada frecuencia estimada.'power'

Porcentaje de superposición entre segmentos adyacentes, especificado como el par separado por comas que consta de y un escalar de 0 a 100.'OverlapPercent' Un valor de 0 significa que los segmentos adyacentes no se superponen. Un valor de 100 significa que los segmentos adyacentes se desplazan por una muestra. Un porcentaje de superposición mayor produce un mapa más suave, pero aumenta el tiempo de cálculo. Consulte para obtener más información.rpmordermap

Tipos de datos: double | single

Escalado de mapa de frecuencia-RPM, especificado como el par separado por comas que consta de y uno o .'Scale''linear''dB'

  • : devuelve un mapa de escala lineal.'linear'

  • : devuelve un mapa logarítmico con valores expresados en decibelios.'dB'

Ventana de análisis, especificada como el par separado por comas que consta de y uno de estos valores:'Window'

  • especifica una ventana Hann.'hann' Consulte para obtener más detalles.hann

  • especifica una ventana Chebyshev.'chebwin' Utilice una matriz de celdas para especificar una atenuación del lóbulo lateral en decibelios. La atenuación del lóbulo lateral debe ser superior a 45 dB. Si no se especifica, el valor predeterminado es 100 dB. Consulte para obtener más detalles.chebwin

  • especifica una ventana superior plana.'flattopwin' Consulte para obtener más detalles.flattopwin

  • especifica una ventana Hamming.'hamming' Consulte para obtener más detalles.hamming

  • especifica una ventana Kaiser.'kaiser' Utilice una matriz de celdas para especificar un parámetro shape, .β El parámetro shape debe ser un escalar positivo. Si no se especifica, el valor predeterminado es 0,5. Consulte para obtener más detalles.kaiser

  • especifica una ventana rectangular.'rectwin' Consulte para obtener más detalles.rectwin

Ejemplo: especifica una ventana de Chebyshev con una atenuación de lóbulo lateral de 100 dB.'Window','chebwin'

Ejemplo: especifica una ventana de Chebyshev con una atenuación de lóbulo lateral de 60 dB.'Window',{'chebwin',60}

Ejemplo: especifica una ventana Kaiser con un parámetro de forma de 0,5.'Window','kaiser'

Ejemplo: especifica una ventana Kaiser con un parámetro de forma de 1.'Window',{'kaiser',1}

Tipos de datos: char | string | cell

Argumentos de salida

contraer todo

Mapa de frecuencia-RPM, devuelto como matriz.

Frecuencias, devueltas como vector.

Velocidades de rotación, devueltas como vector.

Instantáneas de tiempo, devueltas como vector.

Ancho de banda de resolución, devuelto como escalar.

Referencias

[1] Brandt, Anders. Noise and Vibration Analysis: Signal Analysis and Experimental Procedures. Chichester, UK: John Wiley & Sons, 2011.

Introducido en R2015b