去年8月我在一家火电厂蹲点,跟检修班的王师傅巡了一趟输煤栈桥。三千多米长的皮带,他走到一半突然停下来说:"三号滚筒不对,轴承有点沙沙声,半个月内得换。"我拿手机录音听了一分钟,什么也没听出来。
他跟我说这活儿他干了二十六年,眼睛看皮带跑偏,耳朵听轴承异响,鼻子还能闻电机糊味。厂长一直头疼的就是:王师傅明年退休,这一耳朵的本事怎么传?
这就是我们做皮带机AI巡检的起点。说实话,这个项目比我想象中难,也比想象中值。
为什么皮带机是最适合"机器听诊"的设备
皮带输送机的结构其实很简单:电机、减速机、滚筒、托辊、皮带本体。故障类型高度集中在轴承、托辊和皮带撕裂这几类,而这些问题在完全失效之前,几乎都会发出可识别的声音特征变化------轴承点蚀是周期性的"嗒嗒"声,托辊卡死是持续的摩擦啸叫。
更关键的是,皮带机沿线几十上百个托辊,人工点检一个班次根本走不完全部,只能抽检。而托辊恰恰是数量最多、最容易坏的部件。我们统计过那家电厂一年的备件记录,托辊更换占了皮带机相关检修量的六成以上。
所以声音监测在皮带机上的ROI特别直接:捡住托辊和轴承的早期劣化,一次就能避免停线。
系统怎么做:分布式拾音加边缘识别
我们的架构分三层。采集层用的是自研的拾音终端,成本压到了每台不到800块------一个工业级MEMS麦克风阵列(两麦克风波束成形)、一块树莓派CM4、一个外壳。沿栈桥每60米装一个,重点覆盖滚筒和驱动站。
计算上有个不能偷懒的细节:声音特征必须分频段看。轴承故障频率一般在2-6kHz,皮带摩擦噪声集中在500Hz以下,环境里的风噪和卸料撞击又是另一码事。我们一开始做宽带梅尔频谱图直接喂模型,结果雨天的误报率飙升到30%------雨点打在皮盖上,跟轴承点蚀的频谱长得贼像。
后来改成两步走:先用一个轻量的环境分类器(二分类,天气/工况过滤,准确率99%够用)把降雨、卸料时段的数据筛掉,再上主模型。主模型架构很简单,ResNet-18改了第一层输入,输入是32×256的梅尔谱图,PyTorch 2.1训练,在3060上一晚上收敛。
python
# 推理端的自适应增益,这段代码救了我们的命:
## 白天和夜里的背景噪声差10dB以上,固定增益必翻车
def adaptive_gain(audio, noise_floor):
snr = audio.max() - noise_floor
if snr < 20: # 信噪比太低,宁可漏报不硬判
return None, 'low_snr'
gain = np.clip(60 / snr, 1.0, 8.0)
return audio * gain, 'ok'
踩坑提醒:置信度低的片段千万别硬归类,标记成"待复核"丢给人工。系统刚上线那两周,我们硬判的结果是值班员被三倍误报搞到直接不信任系统,这种信任一旦丢了,后面恢复要花两个月。
和老师傅的"师徒结对"
技术之外有个软性的做法我觉得特别值得说:我们花了整整一周录音,让王师傅听标注。他把每段录音标注成"正常/沙沙/咔嗒/啸叫/说不清",再结合拆检结果确认标签。三个月下来攒了两千多段有效标注。
这个过程意外地成了双向的:王师傅也学会了看系统的频谱图,他说原来沙沙声在图上是"这一块亮的带子"。老师傅的经验没有消失,是换了种形式存在了。这个事儿让我对"AI替代老师傅"的说法越来越不感冒------至少在设备诊断这个领域,AI是放大器,不是替代品。
反过来说个泼冷水的话:如果你的皮带机是室内短距离的、托辊不到五十个,别上这套系统,人工点检加红外测温枪更划算。声音巡检适合的是长距离、无人化、巡检人员不足的场景,比如矿山、电厂、港口。
落地效果和没解决的事
到今年6月,系统在那家电厂跑了十个月。托辊早期故障检出37起,提前预警平均9天,误报稳定在每周1-2次。有一次提前11天预警了驱动滚筒轴承劣化,检修窗口正好安排在小修期,避免了非停。
没解决的事也得说:皮带纵向撕裂这个最致命的故障,声音特征太不显著,我们至今只能靠红外+视频辅助,识别率不理想。这条线还在攻关。
写在最后:这个项目给我最大的启发是,做工业AI别急着上大模型,先把老师傅的耳朵变成数据,把数据变成规则和模型,一步步来。王师傅现在退休了,他的"耳朵"还在线上跑着,我觉得这事儿挺浪漫的。