ARTICLE DETAIL

资讯详情

深耕网站视觉设计与运营推广的一线实战洞察。

MATLAB滚动轴承故障仿真:从机理建模到特征频率分析实战

MATLAB滚动轴承故障仿真:从机理建模到特征频率分析实战 做旋转机械故障诊断的人迟早都会面对同一个尴尬手里一个坏轴承都没有却要在开发文档里放一堆“轴承故障诊断算法验证”的结论。这个问题我前几年也撞上过当时正好在做一个滚动轴承振动信号分析的项目实测数据缺口大现场采集还得看设备脸色和设备运行状态后来干脆自己用MATLAB搭了一套轴承动力学模拟流程从故障机理建模到多故障类型模拟再到数值计算和数据分析报告把训练和验证用的故障数据自己“造”了出来。整套流程走下来比我想象中省事也比网上随手生成的模拟信号可靠得多。今天就把这套方法完整拆开把物理模型、参数设定、核心代码、结果分析和踩坑记录一次讲清楚给做故障诊断、状态监测、设备健康管理的同学一份能直接参考复现的实操经验。1. 滚动轴承故障机理建模为什么值得认真做1.1 数据缺口是诊断算法落地的第一道坎做设备状态监测的人应该都有体会故障数据比健康数据难拿得多。健康轴承你随便找台设备都能采一组振动信号但内圈故障、外圈故障、滚动体故障、保持架故障这四类典型损伤信号想凑齐一套完整且带标签的数据集往往得等设备真出问题或者靠历史故障档案东拼西凑。更麻烦的是很多故障信号存在的时间窗口极短现场还没等到你来分析设备可能已经停机拆修了。实验室里用人工注入缺陷的试验台能拿到一部分数据但试验台资源有限不可能把转速、负载、故障尺寸、噪声水平全部组合都跑一遍。这时候仿真模拟的价值就体现出来了只要把轴承的故障机理吃透就能在MATLAB里用数值计算的方式批量生成任意工况下带标签的振动信号。你可以设定转速从500转/分到3000转/分连续变化负载从轻载到重载逐渐增加外圈故障、内圈故障、滚动体故障、复合故障任意组合并且每个样本都知道确切的故障类型和故障程度。这种数据缺口解决方式在做算法验证、模型训练、故障特征提取方法比对时特别实用。1.2 机理建模背后的几条物理假设轴承动力学建模不是随便拿个正弦信号叠加点噪声就算完事。建模的核心是把滚动体经过缺陷部位时产生的机械冲击、系统共振响应、信号传递路径衰减这三件事用数学表达出来。这里有几个关键物理假设值得说清楚。第一滚动体经过内外圈滚道缺陷时会产生周期性冲击脉冲脉冲间隔对应故障特征频率这是整个信号建模的基础。第二冲击会激起轴承系统或者传感器安装结构的固有共振所以传感器采集到的信号不是理想脉冲而是带阻尼的高频衰减振荡这个振荡频率通常在1kHz到10kHz范围内。第三振动从故障点传到传感器表面的路径并不固定特别是在内圈故障和滚动体故障情况下载荷区位置、旋转位置都会改变振动传递的增益和衰减所以模拟信号里还得加入幅值调制效应。公式方面的基础假设也很多比如Hertz接触理论描述了滚动体与滚道接触时的局部弹性变形和应力分布这直接决定了故障冲击力的幅度和接触刚度。实际工程里我们往往没法把这些参数全部精确拿到所以在建模时会用经验值替代。这不是不严谨而是工程仿真里最常见的折中与其追求每一个应力点的精确值不如保证故障特征频率、调制关系和能量衰减趋势符合真实信号的主要特征。1.3 为什么选MATLAB而不是其他工具市面上能做数值计算的工具不少Python、LabVIEW、甚至C都行但我个人在轴承动力学模拟这类任务上还是推荐MATLAB原因有三个。一是信号处理工具箱太方便。做轴承振动分析离不开FFT、包络谱、功率谱密度、带通滤波、重采样这些手段MATLAB里都是现成函数而且针对不同数据长度和窗函数的表现经过大量用户验证比自己在别的语言里造轮子稳当。二是可视化和数据管理一体化。模拟出振动信号后时域波形、频域谱图、包络谱图、特征频率标记都能在同一套环境里快速出图写数据分析报告时直接导出图片就行不用来回切换工具。三是脚本可复用性极强。只要把轴承参数、故障类型、工况参数封装成函数后面要生成新数据集就是改几个参数的事。当然Python也可以做到这些而且免费开源但如果你的工作流本来就依赖MATLAB做信号处理再单独为模拟切去Python环境反而增加复杂度。我的建议是团队里已经有MATLAB工具链的就基于MATLAB扩展如果从零开始且预算受限Pythonnumpy/scipy同样能做但今天这篇内容就以MATLAB为主线展开。2. 多故障类型与特征频率先会算再会模拟2.1 四种典型故障的状态特征差异滚动轴承故障按照损伤部位通常分成外圈故障、内圈故障、滚动体故障、保持架故障四类。故障机理不同体现在振动信号上的特征差异也非常明显。外圈故障是最容易识别的。因为外圈通常是固定在轴承座里的位置相对静止滚动体每当经过缺陷时产生的冲击无论轴旋转到哪个角度冲击强度和传递路径都基本一致。所以外圈故障信号的冲击脉冲间隔非常规则包络谱里故障特征频率清晰尖锐。内圈故障就复杂一些。内圈随轴一起旋转缺陷所在位置在旋转过程中会周期性地进入和离开载荷区。当故障点进入载荷区时滚动体对缺陷的冲击力度大振动幅值高离开载荷区后冲击力小甚至检测不到明显冲击。这个效应在信号上就表现为内圈故障特征频率周围会看到明显的转频边带边带间隔等于轴的转频。滚动体故障又不一样。滚动体既绕着轴承中心公转又绕着自己的几何中心自转缺陷可能间歇性地与内外圈滚道接触。当故障点与内外圈发生接触时都会产生冲击但由于滚动体的自转频率通常相对较高冲击间隔很短而且冲击强度受到保持架相对位置和载荷变化的双重调制所以信号看起来更“碎”特征频率的分辨难度比外圈故障大得多。保持架故障在故障诊断里相对少见出现的原因通常是润滑不良、安装不当或者异常磨损。保持架损伤后滚动体之间的间距发生变化振动信号会出现以保持架故障特征频率为基频的低频冲击成分同时在实际信号中高频背景噪声往往会把低频特征淹没需要比较严格的前处理才能看得出来。2.2 特征频率计算公式与参数影响故障特征频率Fault Characteristic Frequency是轴承故障诊断里最核心的量化指标。如果你不知道故障特征频率就很难从包络谱里定位故障所在部位。所以建模的第一步就是把特征频率算准。计算特征频率需要的几何参数包括滚动体数量Z、滚动体直径d、节圆直径D、接触角α以及轴的转频fr。下面这四个公式是诊断圈子里的通用表达故障位置特征频率符号计算公式外圈故障BPFO(Z/2) × fr × (1 - d/D × cosα)内圈故障BPFI(Z/2) × fr × (1 d/D × cosα)滚动体故障BSF(D/(2d)) × fr × (1 - (d/D)^2 × cos²α)保持架故障FTF(1/2) × fr × (1 - d/D × cosα)这四个公式在轴承故障诊断的教材里到处都能找到不同资料可能字母符号略有差异但物理含义一致。注意滚动体故障特征频率这组公式有时会根据滚动体是滚珠还是滚柱做修正实际使用时要对照轴承手册确认。看公式可能感觉抽象我举一个具体例子。某型深沟球轴承滚动体数量Z9滚动体直径d8.4mm节圆直径D39.6mm接触角α0°轴转速为1500转/分即转频fr25Hz。代入公式后外圈故障特征频率BPFO约等于88.6Hz内圈故障特征频率BPFI约等于136.4Hz滚动体故障特征频率BSF约等于56.2Hz保持架故障特征频率FTF约等于9.8Hz这个结果跟我们实际在试验台上测到的包络谱峰值位置吻合得非常好。有一点必须强调故障特征频率不是固定的它跟转速成正比转速一变所有特征频率都会线性变化。所以仿真的时候转速设定多少就必须同步更新特征频率否则后面做包络谱分析时会把故障位置判错。这也是为什么我强烈建议在模拟程序里把特征频率写成转速的函数不要手工算好一个固定值往下传。2.3 调制效应内圈和滚动体故障的隐藏复杂度经常有人问对故障信号做谱分析时为什么除了特征频率那一根谱线旁边还有一堆小峰答案是调制效应。内圈故障信号本质上是一个频率为BPFI的周期性冲击序列被一个频率等于转频fr的慢变周期信号做了幅值调制。从频域上看就是围绕BPFI及其谐波两侧出现间距为fr的边带。外圈故障虽然调制效应弱但现场也会因为轴不对中、安装松动等原因引入低频调制所以不要以为外圈故障信号就绝对干净。滚动体故障的调制机制更特殊。由于滚动体自转频率大于保持架公转频率滚动体上的缺陷会间歇性地接触内外圈滚道接触瞬间产生的冲击间隔跟自转频率相关而冲击强度又受到保持架频率的调制。这个双重调制关系在频域中往往会产生很复杂的边带结构特征频率不一定是最高的那个谱峰容易误判。建模时如果忽略调制效应只生成一串等间隔脉冲那模拟出来的数据和真实轴承故障信号差距就太大了。所以在我的模拟方案里内圈故障信号会给冲击序列乘一个随时间变化的调幅系数(1 - cos(2π×fr×t))这个系数模拟缺陷点周期性进出载荷区的过程滚动体故障信号则乘上(1 - cos(2π×FTF×t))模拟保持架变化导致的冲击强度起伏。这样做出来的模拟信号无论做包络分析还是做时频分析特征结构和真实信号都非常接近。3. MATLAB数值计算与模拟实操从参数到数据报告3.1 参数初始化先定采样率和仿真时长开始写代码之前先把仿真参数想清楚。采样率、仿真时长、轴承几何参数、转速、故障类型、噪声水平这些参数之间是相互耦合的。采样率的设定原则是至少覆盖系统共振频率和故障特征频率的高次谐波。轴承振动信号的有效分析范围通常在10kHz以内工程上常用16kHz到32kHz采样率。如果担心共振频率较高或者想留出滤波余量我个人习惯设定20480Hz这样既能覆盖大部分轴承系统共振频段又不会让数据量爆炸。仿真时长则需要保证足够的频率分辨率频率分辨率等于采样率除以采样点数也就是1除以总时长。如果仿真时长只有0.5秒分辨率为2Hz那么对于保持架故障这种低频分量谱线精度就不够。通常我仿真2秒分辨率0.5Hz足够分辨绝大多数故障特征频率。轴承几何参数按照前面2.2小节的例子来。故障类型用变量区分把四类故障和健康状态合成五个类别。噪声水平用信噪比SNR控制实际采集到的信号不会是理想干净的冲击序列加上一定的白噪声模拟环境干扰对验证诊断算法更有价值。仿真代码里的基础参数初始化如下fs 20480; % 采样率 20480 Hz T 2; % 仿真时长 2 秒 t (0:1/fs:T-1/fs); % 时间矢量 N length(t); % 总采样点数 fr 25; % 转频 25 Hz对应1500 rpm Z 9; % 滚动体数量 d 8.4e-3; % 滚动体直径米 D 39.6e-3; % 节圆直径米 alpha_deg 0; % 接触角度 alpha alpha_deg * pi / 180; snr_set 30; % 信噪比单位dB fault_type outer; % outer,inner,ball,cage,health参数设置看起来简单但这里有几个容易踩坑的地方。第一d和D要统一单位我用米如果你习惯用毫米后续所有计算都必须保持毫米否则特征频率的比值会错得离谱。第二转频的单位是Hz不是转/分很多人直接在程序里写1500然后发现特征频率大了60倍这个问题几乎每个新手都会遇到。第三alpha要转成弧度再代入cos函数MATLAB三角函数默认使用弧度制直接用角度算出来完全不对。这些基础坑我在后面还会专门列一节。3.2 核心代码从冲击序列到振动响应核心代码逻辑分三步走先计算特征频率再生成单个冲击的衰减振荡波形最后按故障类型把冲击放到对应的时刻轴上。单个冲击的衰减振荡波形模拟的是轴承系统在脉冲激励下的共振响应。表达式是指数衰减的正弦波衰减系数由系统阻尼决定。共振频率可以设为轴承结构和传感器安装共同决定的某个高频段比如3000Hz到5000Hz。这一部分代码如下% 计算四个特征频率 BPFO Z/2 * fr * (1 - d/D*cos(alpha)); BPFI Z/2 * fr * (1 d/D*cos(alpha)); BSF D/(2*d) * fr * (1 - (d/D)^2 * (cos(alpha))^2); FTF 1/2 * fr * (1 - d/D*cos(alpha)); % 单个冲击响应波形 dur_imp 0.008; % 冲击响应持续时间 8ms tp (0:1/fs:dur_imp-1/fs); f_res 3400; % 系统共振频率 sigma_d 900; % 阻尼衰减系数 h_imp exp(-sigma_d .* tp) .* sin(2*pi*f_res .* tp);接下来生成外圈故障信号。外圈故障相对简单因为冲击间隔固定只要按BPFO算出冲击发生的时间点然后把h_imp叠加到信号里就行。内圈故障在这个基础上加调幅系数滚动体故障则用FTF做调制。生成外圈故障信号的代码如下period 1/BPFO; imp_idx (0:floor(T/period)) * period; imp_idx(imp_idx T) []; x_fault zeros(N, 1); for k 1:length(imp_idx) start_idx round(imp_idx(k) * fs) 1; end_idx min(start_idx length(h_imp) - 1, N); x_fault(start_idx:end_idx) x_fault(start_idx:end_idx) ... h_imp(1:end_idx-start_idx1); end % 加白噪声控制信噪比 x_clean x_fault; noise randn(N,1); x_signal x_clean 10^(-snr_set/20) * std(x_clean) * noise;这段代码后x_signal就是带噪声的外圈故障仿真信号。你直接对它做FFT或者包络谱分析就能在BPFO处看到明显的谱峰。内圈和滚动体故障的区别只在于叠加冲击时要不要乘以调制系数。比如内圈故障在for循环内部把当前冲击的幅值乘以(1 - cos(2pifr*imp_idx(k)))即可。这个操作模拟的就是缺陷点周期性进出载荷区的物理过程。3.3 多故障类型批量模拟矩阵化是效率关键模拟一个样本很简单但要生成上百个样本组成的训练数据集循环写不好就会非常慢。我有一个习惯先把核心生成逻辑封装成函数输入是故障类型、转速、信噪比、负载因子输出是振动信号和对应的特征参数。然后外部再写一层批量调用用parfor并行循环加速多工况样本生成。批量生成时负载的影响也要考虑进去。负载增大滚动体与滚道之间的接触应力增大故障冲击幅值会随之提高同时载荷区的宽度会变宽调制效应的深度也会变化。在仿真里我一般用一个负载系数乘以冲击幅值同时微调调制系数。不用做到完全精确的力学仿真因为我们的目标是生成特征可辨识的数据不是精确复现某台设备。批量示例fault_types {health,outer,inner,ball,cage}; speed_rpm [800, 1200, 1500, 1800, 2200, 2800]; snr_vals [15, 20, 25, 30]; for ft_id 1:length(fault_types) for sp_id 1:length(speed_rpm) for snr_id 1:length(snr_vals) x generate_bearing_signal(... fault_types{ft_id}, speed_rpm(sp_id)/60, snr_vals(snr_id), load_f); % 保存文件文件名带上标签 end end end这样生成的样本集既能覆盖不同故障类型又包含不同转速、噪声水平和工作负载后续无论做传统特征工程还是深度学习模型训练都是一个比较规范的数据资源。3.4 数据分析报告图表和指标怎么组织仿真数据生成之后要输出数据分析报告报告的价值不只是放几张波形图而是要把故障特征讲清楚让读到报告的人能一眼看出模拟参数和故障现象之间的关系。我通常按下面这个结构组织报告。第一部分是“仿真参数表”把轴承型号、几何参数、转速、负载、采样率、故障类型全部列出来确保结果可复现。第二部分是“时域波形图”展示原始信号和去噪后信号的冲击特征特别要标出冲击间隔让读者自己算出特征频率。第三部分是“频谱图和包络谱图”用光标标注BPFO、BPFI、BSF等特征频率位置同时把理论计算值放上去对照。第四部分是“统计指标表”包括峰值因子、峭度、RMS、脉冲因子、裕度因子等无量纲指标这些指标在故障诊断中经常用来做趋势判断。以峭度举例正常轴承振动信号的峭度接近3外圈故障时峭度可能升到5到8内圈故障由于调制效应峭度变化也很明显。这种数值化的指标对照比单纯一张波形图有说服力得多。报告的图表一律用MATLAB导出高分辨率图片配合标题、标签、单位排版出来直接就能放到项目交付文档里。这里推荐一个细节做包络谱标注时不要手动画箭头直接在程序中用xline函数在特征频率处画竖线用text函数标注名称这样批量生成报告时所有图表风格统一不容易出错。4. 常见问题与排查技巧采样、噪声、边带、效率4.1 采样率与频率分辨率如何配平模拟中最容易犯的错误之一就是采样率设好之后不管了结果FFT分析时频率分辨率不够相邻的两个特征峰粘在一起分不开。比如内圈故障特征频率136Hz转频25Hz两个边带间隔25Hz如果频率分辨率只有30Hz边带直接就没有了只剩一个被展宽的峰甚至会把故障特征频率估算偏。要避免这个问题记住一个公式频率分辨率 fs / N 1 / T。仿真时长T越长分辨率越高。如果你希望把1Hz以下的频率成分都分干净至少需要1秒仿真时长如果还要看保持架频率附近的细节建议仿真时间不要低于2秒。当然仿真时间长了数据量会增大如果你生成几百个样本每个样本2秒20.48kHz采样率下每个样本约4万个点总量不算大正常电脑没压力。4.2 频谱泄漏和边缘效应频谱分析时信号截断和傅里叶变换会带来泄漏模拟信号也不例外。很多人在仿真结束后直接对整个信号做FFT频谱上出现一大片杂散的旁瓣还以为是模型出错了其实是没加窗。解决方法是给信号加窗比如汉宁窗或汉明窗。不过加窗也有代价主瓣变宽频率分辨率下降。所以实际操作中我会先做一个不加窗的FFT看整体谱结构再用加窗版本做精细分析。对于包络分析先对原始信号带通滤波再取希尔伯特变换的模得到包络最后对包络做FFT。这个过程每一步都建议输出中间结果图方便定位问题出在滤波还是解调。边缘效应也是常见坑。仿真信号头尾两端一开始没有冲击突然来一个冲击后幅值可能跳变去直流或高通滤波时很容易产生Gibbs现象信号端点会出现异常振动。处理办法是丢弃仿真数据的前后各200ms只保留中间稳定的部分做分析。或者生成信号时给前后加衰减窗让数据边缘平滑过渡到零。这个细节虽然小但对后续特征提取的影响非常大。4.3 仿真计算太慢怎么办生成大量样本时很多人会在代码里写成下面这种双层循环外层遍历采样点内层遍历冲击次数一个2秒的信号跑下来要好几秒几十个样本就得等半天。我在项目里试过纯循环生成1000个样本跑了一晚上也没完。优化思路有四个。一是向量化用卷积函数conv替代for循环把冲击序列先做成脉冲位置处为1的稀疏脉冲序列然后和h_imp做卷积一步就能得到整个响应信号。二是用parfor并行处理不同故障类型和不同工况的样本MATLAB并行计算工具箱可以轻松利用多核CPU实测四核并行时速度提升接近三倍。三是最小化频率过高的中间绘图操作批量生成数据时先不画图全部生成完再选样本画图。四是关闭不必要的界面刷新和日志输出比如不输出每个样本的中间变量只记录文件名和标签。通过这些优化1000个样本的生成时间能压到几分钟以内完全满足日常使用。4.4 模拟结果和实测结果对不上的怎么办模拟数据和实测数据总会有偏差这是正常的。关键是怎么分析偏差判断是模型参数不准还是特征提取方法本身有问题。我最常遇到的情况是峰值位置对不上。解决办法是先回查特征频率用的是不是同一套几何参数。很多轴承型号参数在手册和网上下载的资料里有细微差别滚动体数量差一个特征频率就是质的变化。另一个高频来源是轴承实际接触角不等于名义接触角特别是承受轴向载荷时接触角会变大特征频率会偏移好几个百分点。这个因素在现场实测中也很常见所以模拟和实测差1%到3%完全正常。还有一种情况是谱峰出现了但旁边多出一堆不明边带。这时先看是不是仿真中调制频率设置错了比如内圈故障用了FTF而不是fr或者滚动体故障的调制频率设置成BPFI。还有一种可能是噪声太大边带被随机成分淹没后又经过加窗产生了伪边带。这种问题可以通过降低噪声水平复测如果低信噪比下边带消失说明调制没有做对如果低信噪比下边带还在那可能是真实的调制效应需要调整分析参数。4.5 一个值得保留的检查工具如果你不确定自己写的代码对不对建议在程序里预留一个“已知故障参数反推”的测试函数把生成的信号重新做一遍包络谱分析然后把检测到的峰值频率和理论特征频率做对比输出误差百分比。这个操作对我来说价值很大每次涉及新的轴承型号或新的故障类型都先跑一遍这个自检确认误差在1%以内再批量生成数据能避免后面数据分析全盘推翻返工。5. 从动力学模拟走向故障诊断应用还能怎样扩展5.1 复合故障与变转速工况扩展单一故障模拟只是基本功。现实中轴承出现问题往往不止一个位置比如外圈滚道已经出现疲劳剥落内圈同时存在早期裂纹这时候信号就是多源冲击的叠加包络谱上可能同时出现BPFO和BPFI的谱峰而且它们之间还会相互干扰。多故障类型模拟的优势在于可以在这个方向继续扩展只需在生成时对两类故障分别构造冲击序列再叠加即可。还要注意两类故障冲击的幅值可能不同要分别设置衰减系数和局部负载因子模拟不同故障的严重程度差异。变转速工况也是一个重要扩展方向。前面所有模拟都假设转速恒定但实际工程设备如风机、压缩机在启停和负载波动时转速会变化。转速变动会让特征频率随时间变化经典的包络谱分析方法失效此时需要引入阶比跟踪分析和时频分析。MATLAB里可以用rpmtrack或resample重新插值到角度域把非平稳信号转成角域平稳信号再分析。我在实际项目里遇到过类似需求模拟时通过给转频加入缓慢漂移项就能生成变转速信号再用阶比重采样处理特征频率的辨识效果明显优于直接FFT。5.2 对接包络分析和机器学习特征工程模拟数据最大的用武之地就是当训练集喂给机器学习模型。这几年用一维卷积神经网络做轴承故障诊断的论文很多但很多人的训练数据是从公开数据集下载的数据量小且工况单一。用MATLAB批量生成仿真数据可以扩充数量、丰富工况还能自由控制信噪比模拟传感器布置差异。特征工程也可以直接在仿真数据上开发。比如提取时域的峭度、峰值因子、RMS频域的重心频率、均方频率包络谱的故障特征比率等。因为我生成数据时知道真实故障类别所以特征筛选时可以直接比较不同特征在不同故障下的可分性用MATLAB的Classification Learner或者直接写分类器训练脚本都可以。注意一点用仿真数据训练的模型迁移到实测数据时通常会有分布偏移所以更稳妥的做法是“仿真数据预训练实测数据微调”不要指望纯仿真数据模型在实测场景上一步到位。5.3 用Simulink做更完整的动力学建模如果工作目标不只是生成信号还想研究轴承-转子系统的动力学响应特征可以把模型升级到Simulink环境。Simulink里可以搭建转子质量-弹簧-阻尼系统把故障冲击力作为外部输入用Simulink的连续时间求解器仿真系统的位移、速度和加速度响应。这种方式的好处是能考虑更多的动力学耦合比如轴的弯曲刚度、轴承座刚度、联轴器不对中带来的附加激励仿真信号会比单自由度响应的脉冲叠加更自然。在Simulink里做建模时我习惯把轴承的Hertz接触刚度设计成可调参数模拟不同预紧力和径向游隙的影响。故障冲击源可以用Pulse Generator加上自定义函数组合再串接一个传递函数模块模拟结构共振。这样建模虽然初期工作量比纯脚本大但好处是参数物理意义明确调整起来直观。如果以后要接硬件在环测试Simulink模型自动生成代码比手写脚本省事太多。不过还是要提醒一下Simulink建模的专业门槛和调试成本都更高如果你是刚开始接触这个方向先把脚本方案跑通再逐步升级不要一上来就搭复杂模型。写在最后的一点经验从最初为了补数据缺口动手写仿真到现在这套流程已经变成我日常做轴承故障诊断的标准工具。我最大的体会是仿真模拟的核心价值不是替代实测数据而是让我们有机会在完全可控的条件下反复验证自己的诊断思路把特征提取、频率计算、机器学习建模这些环节打磨稳定。如果你也是做故障诊断相关工作的建议先别急着堆数据量把动力学模型和特征频率计算吃透哪怕只生成几十个高质量样本也比草率生成几千个没有物理根据的信号有用得多。要是你按照文章里的思路搭建起了自己的模拟流程实际跑通一个轴承故障信号后你会明显感觉到对轴承故障现象的理解比以前靠看书、靠现有数据集分析要深入不少。
返回列表