
1. 相位测量的价值远被低估先讲一段亲身经历做振动信号分析这些年我见过太多人只盯着频谱里的幅值看。轴承坏了看峰值升高不平衡看一倍频分量变大齿轮故障看边频带冒出来——这些操作当然没错但只靠幅值判断故障经常会陷入幅值不高但设备已经快不行了和幅值很高但拆开一看啥事没有的尴尬局面。我印象最深的是前几年做的一台离心风机故障诊断。频谱里一倍频分量明显偏高幅值达到了历史均值的4倍以上按常规经验第一判断就是转子不平衡。但现场做动平衡时麻烦来了配重加了几轮振动反而越来越大。后来我们用相位数据重新分析发现一倍频的相位和轴心轨迹方向完全对不上再做低速盘车测试才发现问题根本不在转子而是联轴器角向不对中叠加了轴承座刚度异常。如果当时只看幅值这台设备大概率会被反复拆装好几次。从那以后我在任何振动测试中都把相位放在和幅值同等重要的位置。振动信号的相位测量说白了就是回答三个问题振动的波峰在什么时刻出现相对于转子的某个固定位置超前还是滞后多个测点之间的振动变化谁先谁后这三个问题直接对应着故障定位、动平衡计算、传递路径分析这些核心场景。这篇内容适合谁我觉得是三类人刚接触状态监测、手里有采集设备但不知道怎么用相位做诊断的工程师正在搭建电机、风机等旋转机械振动测试方案需要在数据集里记录相位信息的研发人员以及做动平衡和现场故障排除的运维老手想系统梳理一下相位测量里的坑。需要注意的是相位测量在原理上并不复杂真正的门槛在工程实现。传感器安装方式不同相位会偏采样时钟不一致相位会漂转速不稳定相位会糊。这篇文章我就按我实际工作的脉络来写先从定义讲清楚相位到底是什么再沿着信号采集链路拆解每个环节对相位的影响接着用现场案例说明误差从哪来最后结合目前很多人都在做的电机振动数据集说说相位信息怎么验证、怎么用。2. 先把相位的定义掰扯清楚三种相位别搞混2.1 绝对相位以键相脉冲为起跑线在旋转机械振动测量里绝对相位指的是振动信号相对于转子上某个固定标记点的角度位置。这个标记点通常由键相传感器提供比如在转轴上贴一片反光贴纸光电传感器每转一圈输出一个脉冲这个脉冲就是整圈测量的起跑线。具体来说键相脉冲上升沿对应的轴转角定义为0度振动信号从这一点开始算到下一个振动周期波峰出现之间的角度就是绝对相位。举个例子转速为3000 r/min时一转是20毫秒对应360度如果键相脉冲上升沿之后2.5毫秒处出现了振动波峰那绝对相位就是2.5/20乘360等于45度。这里有个容易踩的坑键相传感器安装位置不同测出来的绝对相位本身就不同。同一个振动信号键相传感器装在0度位置和装在90度位置测得的绝对相位会差90度。所以绝对相位并不是一个只由机器状态决定的物理量它和传感器布置强相关。在做动平衡计算时计算软件里会有一个键相传感器安装角度的参数就是为了把这个安装影响修正掉。2.2 相对相位多测点之间的时间关系相对相位更常出现在多通道同步采集的场景中。它指的是同一时刻下两个不同测点的振动信号在同一个频率分量上的相位差。比如电机驱动端轴承座水平方向和垂直方向各装一个加速度传感器在1倍频上测得水平方向相位是120度垂直方向是30度那两者的相对相位就是90度。这个数值直接反映轴心轨迹的形状是圆还是椭圆以及转子在轴承座里的运动方向。相对相位最大的价值在于它是自参考的不需要键相脉冲只要保证多通道同步采样相位差就只取决于各测点到振源之间的传递路径差异。所以在做故障定位、振源溯源的时候相对相位往往是比绝对相位更直接的工具。2.3 相位差频谱分析中隐藏的宝藏第三种相位差来自频谱分析即同一信号在两次不同状态下、或者两个不同测点在某个频率处的相位之差。这个和上面讲的相对相位有点相似但应用场景不同。举个例子我们在做电机振动数据集采集时经常会在空载和满载两种工况下分别采集振动信号然后对比轴承故障特征频率处的相位变化。如果相位在两种工况下发生了剧烈跳变往往意味着转子的受力状态发生了本质变化这比单纯看幅值变化更敏感。还有一种常见的做法是计算互功率谱密度。两个测点信号的互功率谱其幅值反映两个信号在该频率上的共同能量其相位反映两者在该频率上的时间延迟。用这个相位值除以角频率可以得到信号从一个测点传播到另一个测点的传播时间。我在分析电机振动传递路径时常用这个方法比如判断振动是从轴承座传到外壳表面还是从机脚直接传到底座。为了让大家看得更清楚我把三种相位的区别整理成一个表相位类型参考基准典型用途常见误区绝对相位键相脉冲轴转角动平衡配重计算忽略键相传感器安装角度的影响相对相位另一个测点信号轴心轨迹、故障定位直接用不同采样时刻的数据计算相位差相位差同一信号的不同状态/频率传递路径分析、工况敏感性判断混淆频谱分析中的相位和时域信号相位2.4 相位换算关系里必须先搞定的90度问题讲完三种定义还必须提一个很容易让人栽跟头的问题积分和微分带来的90度相移。振动测量中最常用的传感器是加速度传感器但很多诊断标准比如ISO 20816给出的振动限值都是速度有效值而轴心轨迹和转子动平衡计算需要的是位移信号。从加速度到速度再到位移每做一次积分相位就滞后90度反过来从位移求导到速度每求导一次相位就超前90度。所以当你用加速度传感器测振动软件里显示的是积分后的速度波形时这个速度和真实的速度波形在相位上已经差了90度。如果这时候你直接用这个相位数据去做动平衡计算结果肯定是错的。正确做法是在采集软件里明确设置积分算法并在计算结果中补偿这90度的相移或者干脆用速度传感器直接测速度信号避免积分环节带来的相位误差。3. 相位失真从哪来沿采集链路逐段排查3.1 传感器选型决定相位基准振动测量里常用的传感器有三种加速度传感器压电式/压阻式、速度传感器磁电式/压电式积分、电涡流位移传感器。三者在相位特性上差异很大。压电加速度传感器在谐振频率以下工作输出信号与加速度成正比相位偏差在出厂标定时通常控制在5度以内是三种传感器里相位特性最好的。但它的低频响应有限一般从0.5 Hz或1 Hz开始如果被测设备转速很低比如水轮机盘车转速只有每分钟几转加速度传感器就不合适了。磁电式速度传感器靠线圈在磁场中运动产生电动势输出与速度成正比天生自带一个90度的相位超前。而且它的幅频特性和相频特性受阻尼比影响很大品质因数不同的传感器相位响应差别很明显。用这种传感器时一定要拿到厂家给出的频响曲线确认在工作频率范围内的相移是稳定的否则校准都不知道怎么校准。电涡流位移传感器测量的是转子相对于传感器的间隙变化输出与位移成正比。它的特点是低频特性好可以测到0 Hz的静态位移所以特别适合测量轴心轨迹。但电涡流传感器的相位标定必须考虑被测轴的材料、传感器端部到被测面的距离、前置器的灵敏度设置任何一项变了相位特性都会变。在选择传感器时我的建议是根据你要算的物理量来定算动平衡用位移信号最方便算轴承故障用加速度信号信息最丰富算振动烈度用速度信号最贴合标准。同时要尽量选择同一个厂家、同一批次、同一灵敏度的传感器这样多测点之间的相位一致性才有保障。3.2 抗混叠滤波器和采集卡的相位畸变这是我在实测中遇到的最隐蔽的问题来源。现在的数据采集系统无论是便携式采集仪还是在线监测系统ADC采样之前一定会有一个抗混叠滤波器通常是低通滤波器用来滤除高于奈奎斯特频率的成分。这个滤波器看起来只是幅值上有衰减但实际它在截止频率附近会造成明显的相位延迟而且是频率越高延迟越大。举个具体的例子某采集系统的抗混叠滤波器在1000 Hz处的相移是18度在5000 Hz处的相移是47度。如果你分析的是低频段的1倍频比如电机1500转对应25 Hz那滤波器造成的相位误差很小可以忽略但如果你分析的是轴承外圈故障特征频率可能是几千赫兹那这47度的相位误差足以让整个诊断结论反转。怎么排查这个问题我的做法是在采集系统正式使用之前做一次直通测试用信号发生器输出一个正弦信号频率从10 Hz扫到采集系统通带上限同时用示波器和采集卡并行采集这个信号对比每个频率下采集系统输出相对标准输入的相位偏移。把这个相位偏移曲线记录下来作为系统的相位误差底账在后续的精确诊断中对测量值做补偿。另外提一下采样时钟的问题。多通道同步采集时如果各个通道的ADC芯片共用一个时钟通道间的采样时刻完全一致相对相位测量是准的。但如果用的是多台采集设备分别采集不同测点又没有一个统一的外部时钟源那两台设备之间的采样时刻会有随机偏差。这个偏差哪怕只有几十微秒在几千赫兹频率下的相位误差也会达到几十度。所以做多测点相位分析必须要用多通道同步采集设备或者给多台设备接同一个GPS/IRIG-B授时信号。3.3 键相传感器安装与触发逻辑细节键相是绝对相位测量的关键一环但很多人对它的重视程度远远不够。键相信号通常来自光电传感器或者电涡流传感器。光电传感器需要在转轴上贴反光标记反光贴纸的大小和粘贴位置都有讲究。贴纸越大脉冲越宽触发沿的一致性越差贴纸位置偏离转轴半径方向越远触发时刻对应的轴转角误差越大。电涡流传感器做键相则是靠轴上开的键槽或者凸键每转一圈产生一个脉冲脉冲的边沿位置对应键槽的边沿。在采集软件的触发设置里要特别注意触发的边沿方向上升沿还是下降沿和触发电平。如果触发电平设置不当比如设置在一个噪声毛刺上那每次采集的触发时刻就会跳动测出来的绝对相位也会跟着跳动。我在实际工作中遇到过一台设备相位在-180度和180度附近来回跳变排查了很久才发现是键相信号里叠加了一个工频干扰导致信号幅值偶尔超过触发门槛产生了误触发。解决方法是加一个简单的带通滤波或者施密特触发器做整形确保键相信号是干净、陡峭、边沿确定的脉冲。同时在采集设置里可以启用每转一个脉冲的等角度采样模式阶比跟踪这样不管转速怎么变化每一转内的采样点数都是固定的相位计算就不会受转速波动影响。4. 现场相位测量误差的主要来源与排除手段4.1 测点位置不一致导致的相位假象这是最常见但最难排查的误差源。两台同样的设备A设备传感器装在轴承座正上方B设备传感器装在轴承座45度方向你对比两者的振动相位发现相差很大。这个相位差到底是设备状态的差异还是传感器安装位置的差异如果不把安装位置的因素排除掉根本说不清楚。我有一套固定的做法在同一个测点位置画出传感器安装记号每次测量都严格按照记号安装更换传感器或者拆装后重新测量时记录传感器的安装角度在诊断报告中每个测点都附带安装位置的描述和参考方向。如果现场条件不允许传感器一直固定安装那就必须用磁性底座或者螺纹胶把传感器底座固定好确保每次测量的传感器朝向一致。还有一个容易被忽视的细节传感器的电缆走向。压电加速度传感器的电缆在高湿环境下容易产生摩擦电荷电缆晃动时会产生低频噪声这个噪声叠加到信号上会让相位测量结果变得不稳定。测量时要把电缆固定好远离转动部件和强干扰源。4.2 转速波动对相位稳定性的影响旋转机械的振动信号其频率和转速是强相关的。转速波动会导致振动信号不是一个标准的周期信号时域波形会被拉伸或压缩直接做FFT得到的相位值也会受到影响。这里举一个经典的例子一台电机从空载到满载转速从1498 r/min降到1485 r/min转速变化率大约是0.87%。在50 Hz附近做FFT传统等时间采样FFT的频率分辨率假设信号是平稳的转速波动会让频谱主峰变宽主峰对应的相位值也会在多次测量中不稳定。解决这个问题有三个思路。一是控制工况在测试时尽量让设备转速稳定比如等设备充分热机后再开始采集避免启动和停机阶段的数据。二是用阶比跟踪通过键相信号计算实时转速让采样过程跟着转速走每一转固定采集N个点这样转速波动的影响就被消除了。三是在后处理中用重采样算法把等时间采样数据转换为等角度采样数据。在电机振动数据集的建设中我强烈建议每段数据都同时记录转速信号。没有转速信息的振动数据相位分析的可靠性会大打折扣。4.3 传感器频响和温度漂移带来的相位误差传感器频响的问题前面提过但温度漂移的问题更隐蔽。压电传感器内部的核心元件是压电晶体它的压电系数会随温度变化。温度升高时传感器的灵敏度会改变相位特性也会略有偏移。对普通的工业监测来说这种偏移通常在可接受范围内但在温差大的户外设备或者刚停机还带着余热的设备上测量时就要特别注意。我的做法是在传感器通电后至少预热10到15分钟再开始正式采集让传感器内部的温度稳定下来。如果测试环境温度变化大建议用恒温箱或者保温材料对传感器做简单保护并在测试前后分别做一次信号发生器校准对比校准值的相位变化评估温度对测量结果的影响。另外传感器线缆的长度和材质也会影响相位。长电缆的分布电容会与传感器输出阻抗形成低通滤波效应电缆越长、频率越高相位延迟越大。所以传感器到采集设备之间的电缆长度要尽可能短而且每个通道的电缆长度尽量一致避免通道间因为电缆长度不同而产生额外的相位差。4.4 一次相位乱跳问题的完整排查链路最后分享一段我前阵子调试电机振动测试系统时遇到的真实问题。现象是这样的在2500 r/min的电机轴承座上测振动1倍频处的相位值每次采集都不一样一会儿在60度附近一会儿跳到-120度附近看起来完全没有规律。幅值倒是一直很稳定波形也没有明显的异常。我的排查过程是这样的第一步我先排除键相信号。用示波器看了键相传感器的输出波形发现脉冲信号确实存在但脉冲边沿附近有一小段阻尼振荡。这个振荡的幅度刚好触发了采集卡的触发电平导致每次采集的触发点相对轴转角的位置不固定。我调整了触发电平并增加了施密特整形但问题依旧。第二步检查转速稳定性。用转速表对轴速进行了长时间记录转速波动范围在2480到2520 r/min之间约1.6%。对于2500 r/min的电机来说这个转速波动不算异常但换算到相位上触发脉冲的周期波动会带来约5到10度的相位跳动远达不到我看到的180度跳变那么夸张。第三步重新检查所有测量链路。我把传感器拆下来用信号发生器直接向采集卡注入50 Hz正弦信号和键相信号同步采集连续测试10次相位值稳定在设定值上。这排除了采集卡本身的问题。第四步把传感器装回去但这次我在传感器和轴承座之间加了一层薄薄的绝缘垫片结果相位跳变消失了。查了资料才知道电机轴承座在某些工况下会存在轴电流轴电流通过传感器外壳流入大地时产生了共模干扰这个干扰叠加到信号里导致ADC的触发电平和信号电平产生了非线性扰动。加了绝缘垫片后共模干扰被阻断相位测量立即恢复正常。这个案例给我的教训是相位跳变不一定是算法和软件的问题硬件层面的共模干扰、接地环路、传感器安装方式都可能造成同样现象。排查时要按键相信号—转速稳定性—采集通道标定—传感器安装—接地与干扰这个顺序逐步收紧范围切忌一上来就怀疑数据处理代码。5. 电机振动数据集中的相位应用与验证技巧5.1 电机故障模式中常见的相位特征最近不少人都在做电机振动数据集的采集和公开我也参与过类似项目。采集了包括正常、轴承内圈故障、外圈故障、滚动体故障、转子断条、气隙偏心等工况积累下来相位信息在几个场景中非常有用。轴承故障的特征频率通常在数百赫兹到数千赫兹这个频段内各测点之间的相位关系相对复杂因为轴承座的振动响应既取决于故障激励方向也取决于测点位置和结构模态。在做轴承故障诊断时我一般会同时观察径向水平、径向垂直和轴向三个方向的相对相位如果三个方向的相位比较接近故障激励更可能是圆周对称的比如滚动体故障如果水平方向和垂直方向相位差接近90度则可能是转子动力特性主导的问题。转子断条和气隙偏心都是电机特有的故障模式。转子断条的特征频率包含电源频率附近的边频带气隙偏心则会引起2倍电源频率的振动。在这类故障中相位测量比幅值分析更可靠因为边频带的幅值受负载波动影响很大但边频带与主频之间的相位差在稳定工况下是可重复的。另外电机启动过程中的振动相位变化也很有意思。在启动阶段电机转速从0升到额定转速振动信号的瞬时频率不断变化用短时傅里叶变换配合相位分析可以观察到转子条通过定子齿时的周期性冲击对判断转子条断裂有很好的指示作用。5.2 用互功率谱提取两测点相位差的Python实现这里给一段我常用的代码用来从两个同步采集的振动信号中提取指定频率处的相位差。import numpy as np import matplotlib.pyplot as plt from scipy.signal import welch, csd def extract_phase_diff(sig1, sig2, fs, target_freq): 提取两个信号在目标频率处的相位差。 参数: sig1, sig2: 两个同步采集的时域信号 fs: 采样率 (Hz) target_freq: 需要分析的目标频率 (Hz) 返回: phase_diff_deg: 相位差 (度), sig1相对sig2的相位 coherence: 该频率处的相干系数 # 计算互功率谱密度 f, Pxy csd(sig1, sig2, fsfs, npersegmin(len(sig1)//4, 4096)) # 计算自功率谱密度用于相干性分析 f1, Pxx welch(sig1, fsfs, npersegmin(len(sig1)//4, 4096)) f2, Pyy welch(sig2, fsfs, npersegmin(len(sig2)//4, 4096)) # 找到目标频率对应的索引 idx np.argmin(np.abs(f - target_freq)) # 提取相位差 phase_rad np.angle(Pxy[idx]) phase_deg np.degrees(phase_rad) # 计算相干系数 coh np.abs(Pxy[idx])**2 / (Pxx[idx] * Pyy[idx]) return phase_deg, coh # 示例构造两路带已知相位差的正弦信号 fs 25600 # 采样率 25.6 kHz t np.arange(0, 2, 1/fs) # 2秒数据 # 基频 50Hz 的信号sig2 相对 sig1 滞后 30 度 freq 50.0 sig1 np.sin(2 * np.pi * freq * t) 0.1 * np.random.randn(len(t)) sig2 np.sin(2 * np.pi * freq * t - np.deg2rad(30)) 0.1 * np.random.randn(len(t)) phase, coh extract_phase_diff(sig1, sig2, fs, freq) print(f50Hz处相位差: {phase:.2f} 度) # 预期接近 -30 度 print(f相干系数: {coh:.4f}) # 接近 1 说明两信号高度相关实际使用时的几个注意点第一nperseg参数决定频谱分析的频率分辨率和平均次数。设置太小会造成频率分辨率过差、相位噪声大设置太大会导致平均次数少、结果不够稳定。我一般取总数据长度的1/4到1/2但不要超过4096点否则计算量太大且失去平均意义。第二直接对互功率谱取角度得到的相位差范围是-180到180度。如果相位差本来就接近180度那正负号的细微变化会造成很大的数值跳变。这种情况下建议先做相位展开或者把相位差表示成-180到180度范围内的连续值。第三相干系数是相位数据可靠性的一个晴雨表。如果相干系数低于0.6说明两个信号在这个频率上的共同能量占比低相位差的统计意义就差。在看门狗式的在线监测系统里我会设定一个相干系数阈值低于阈值的相位数据直接标记为无效不打进诊断结论。5.3 验证振动数据集相位质量的方法数据集建设到了最后阶段很多人会检查幅值是否合理、波形是否正常但很少有人系统性检查相位质量。其实相位一致性是衡量数据集可用性的一个重要指标。我推荐三个小测试分量都不大但很有效一是重复性测试在完全相同的工况条件下间隔一段时间重复采集同一个测点的振动信号分析各特征频率处的相位是否保持稳定。正常情况下1倍频处的相位重复误差应该在正负5度以内。如果超过10度就要检查传感器安装是否松动、转速是否波动、或者环境干扰是否过大。二是互易性测试把两个传感器互换测点位置再测一次两个通道之间的相对相位应该接近原来的负值。这个测试能发现传感器通道本身是否存在额外的相位偏置。三是撞击测试用一个小力锤敲击电机壳体同时采集各测点的振动响应对比各测点的相位关系是否和理论传递路径一致。这个测试对结构传递路径分析非常有效能直观地看出振动从撞击点到各测点的传播时间差异。另外在公开电机振动数据集时一定要把键相传感器的安装方式、传感器型号、采样率、抗混叠滤波器的截止频率、安装位置说明都记录下来。这些元数据对后续使用者的价值不亚于振动数据本身。没有这些信息别人拿到数据集也只能看看幅值做不了深入的相位分析。6. 写在最后一个让我印象深刻的相位校准实验收尾之前我想再分享一个我在实验室里常做的小实验也是给新入行的同事培训时必演示的项目。准备一个带刻度的转盘转盘上贴一个反光标记用光电传感器做键相转盘边缘贴一个小的偏心质量块用加速度传感器测量转盘座的水平振动。分别记录转速为600、1200、1800 r/min几个工况下的键相信号和振动信号计算每个转速下的1倍频绝对相位然后把偏心质量块的位置改到与原位置成90度角的位置再测一次。你会发现一个很有意思的规律偏心块位置变化90度1倍频绝对相位大致也变化90度但并不是精确等于90度。因为振动传递路径上有轴承间隙、结构柔性、传感器安装位置等因素相位响应并不是理想的刚体运动。这个偏差就告诉你绝对相位可以用来判断不平衡的方向但要做精确的动平衡计算必须用影响系数法标定而不是简单地把相位和偏心位置直接对应。这个实验的原理很简单但它能让人一下子理解相位测量的本质边界在哪里。很多时候我们不是不会测而是不知道测出来的数值离真实物理量差了多少。搞清楚边界之后你再去读相位读数就能分辨出哪些变化是设备状态变了哪些变化只是测量系统本身的漂移。相位测量就是这样入门容易精通难。希望这篇内容能帮你在自己的测试里少走一段弯路。