# 振动信号的阶次分析

```load helidata vib = vib - mean(vib); % Remove the DC component subplot(2,1,1) plot(t,rpm) % Plot the engine rotational speed xlabel('Time (s)') ylabel('Engine Speed (RPM)') title('Engine speed') subplot(2,1,2) plot(t,vib) % Plot the vibration signal xlabel('Time (s)') ylabel('Voltage (mV)') title('Accelerometer Vibration Data')```

`rpmfreqmap(vib,fs,rpm)`

`rpmfreqmap` 生成的交互式图窗窗口包含 RPM-频率图、对应于该图的 RPM 对时间的曲线图，以及可用于量化振动分量的几个数值指示符。默认情况下，图的振幅是均方根 (RMS) 振幅。可使用可选参量指定其他振幅选项，包括峰值振幅和功率。瀑布图菜单按钮生成一个三维视图：

RPM-频率图中的许多轨迹具有随发动机速度增加和减少的频率。这表明轨迹是发动机旋转频率的阶次。RPM 峰值附近有高振幅分量，频率在 20 至 30 Hz 之间。可以将十字准线放在图上的此位置，以在 RPM 曲线图下方的指标框中查看频率、RPM 值、时间以及图振幅。

`rpmfreqmap(vib,fs,rpm,1)`

`rpmordermap(vib,fs,rpm,0.005)`

`[map,mapOrder,mapRPM,mapTime] = rpmordermap(vib,fs,rpm,0.005);`

```figure orderspectrum(map,mapOrder)```

```[spec,specOrder] = orderspectrum(map,mapOrder); [~,peakOrders] = findpeaks(spec,specOrder,'SortStr','descend','NPeaks',2); peakOrders = round(peakOrders,3)```
```peakOrders = 2×1 0.0520 0.0660 ```

`ordertrack(map,mapOrder,mapRPM,mapTime,peakOrders)`

```orderWaveforms = orderwaveform(vib,fs,rpm,peakOrders); helperPlotOrderWaveforms(t,orderWaveforms,vib)```

```mainRotorOrder = mainRotorEngineRatio; tailRotorOrder = tailRotorEngineRatio; ratioMain = peakOrders/mainRotorOrder```
```ratioMain = 2×1 4.0310 5.1163 ```
`ratioTail = peakOrders/tailRotorOrder`
```ratioTail = 2×1 0.7904 1.0032 ```

```load helidataAfter vib = vib - mean(vib); % Remove the DC component [mapAfter,mapOrderAfter] = rpmordermap(vib,fs,rpm,0.005); figure hold on orderspectrum(map,mapOrder) orderspectrum(mapAfter,mapOrderAfter) legend('Before Adjustment','After Adjustment')```

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