☰
振动信号相位测量全解析:从定义到误差排查与应用实践
2026/10/2 7:39:11 网站建设 项目流程

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, fs=fs, nperseg=min(len(sig1)//4, 4096)) # 计算自功率谱密度用于相干性分析 f1, Pxx = welch(sig1, fs=fs, nperseg=min(len(sig1)//4, 4096)) f2, Pyy = welch(sig2, fs=fs, nperseg=min(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(f"50Hz处相位差: {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度。因为振动传递路径上有轴承间隙、结构柔性、传感器安装位置等因素,相位响应并不是理想的刚体运动。这个偏差就告诉你:绝对相位可以用来判断不平衡的方向,但要做精确的动平衡计算,必须用影响系数法标定,而不是简单地把相位和偏心位置直接对应。

这个实验的原理很简单,但它能让人一下子理解相位测量的本质边界在哪里。很多时候我们不是不会测,而是不知道测出来的数值离真实物理量差了多少。搞清楚边界之后,你再去读相位读数,就能分辨出哪些变化是设备状态变了,哪些变化只是测量系统本身的漂移。

相位测量就是这样,入门容易精通难。希望这篇内容能帮你在自己的测试里少走一段弯路。

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询