通过传感器采集到的周期脉冲信号来计算转轴、发动机或电机转速的基本算法

2018-11-02 21:48:36·  来源:公众号:信号分析应用及算法  作者:徐浩  
 
在振动噪音的测试分析过程中,获得准确的转轴、发动机或电机的转速是良好数据分析的基础。本文将介绍通过传感器采集到的周期脉冲信号来计算转轴、发动机或电机转
“在振动噪音的测试分析过程中,获得准确的转轴、发动机或电机的转速是良好数据分析的基础。本文将介绍通过传感器采集到的周期脉冲信号来计算转轴、发动机或电机转速的基本算法”
 
01
传感器采集的原始信号
图1是通过激光测速传感器测量转轴转速的示意图。转轴上蓝色部分代表在其上贴的反光纸,当激光探头照射到反光纸上时,探头接收到反射信号,从而产生一个高(或低)电平。
图1
图2是通过霍尔元件测量转轴转速(发动机凸轮轴)的示意图。靠近探头部分产生高电平,远离部分产生低电平。
图2
用传感器采集到类似图1或图2的信号后才能精确的进行转速计算。 可以看出,图 2信号较图1更为复杂(每4个方波信号才形成一个周期)。因为图1是图2的特殊形式,所以下面我们着重介绍图2信号计算转速的算法。
 
02
计算转速的重要参数
图3第一幅图是采集到的传感器信号总览,第二幅图是其中0~0.5s的细节图 。从图中可以看出每4个方波形成一个周期。
图3
基于传感器采集到的信号来计算转速,有两个很重要的参数:1)触发条件,包括触发值( Trig Level ),触发方向 (Up/Down)。2)skip数(不同的软件有不同的叫法,有的叫divider,有的叫skip等)。
图4第一幅图举了个例子:Trig Level=6, Up (上升沿)触发。具体算法是:遍历各点,当某个点<6, 紧接着下一个点>=6 时,该点(或紧接着的下一个点)即被标识出来(图中红色、蓝色、黑色、绿色圆圈处)。
如果是 Trig Level=6, Down (下降沿)触发。则算法是:遍历各点,当某个点>6, 紧接着下一个点<=6 时,该点(或紧接着的下一个点)即被标识出来。
图4
图5第一幅图被标识出来的点分别用不同的颜色显示是为了讲解方便,但实际的算法不会去标识颜色。
在算法上,计算机是这么数豆子的:
第0个 触发点( 记录 ), 第1个 触发点(忽略),第2个触发点(忽略), 第3个 触发点(忽略);
第4个触发点( 记录 ),第5个触发点(忽略),第6个触发点(忽略),第7个触发点(忽略);
第8个触发点( 记录 ),第9个触发点(忽略),第10个触发点(忽略),第11个触发点(忽略);
。。。
图5
所以设置 skip数=4 时,就可以在数据分析窗口时间内,跳过非等间距的高电平,从而准确计算转速,如图5第二幅图。
图5中的算例,一个转动周期的时间是:0.375s/3=0.125s,转动频率是1/0.125s=8Hz,则转速为:8 [round/s] * 60 [s/min.]=480 [RPM:Round Per Minute]。

03
总结
计算转速时,有以下几点需要注意:
1)传感器信号的采样频率Fs要根据被测的最高转速及skip数来制定。图6(高转速)中的采样频率较为合适。如果在高转速采样频率较低,会导致触发点识别的不准确,所以有些数采系统会单独用一路高采样率的通道来采集用来计算转速的传感器信号。
理论上: Fs>最高转速[RPM]/60*skip数*2; 
一般工程上:Fs>最高转速[RPM]/60*skip数*5;
对于发动机来说:如果采集齿轮信号(举例:缺2齿的60齿转速轮,最高转速时6000RPM), 那么Fs>6000/60*58*5=29000Hz;
图6
2)对于电机来说,和发动机不同(发动机启动转速约800 RPM),电机的启动转速时0 RPM。所以当转速很低时, 如果数据窗口长度取值较小 ,有可能取不到两个同样位置的触发点(如图7,整个时间窗口内没有两个 红色 触发点),即形成不了一个整周期,从而计算不出来转速,这一点需要注意。
图7
以上是基于传感器信号的转速计算算例。后续会介绍基于振动信号阶次切片的转速值反算。
另外,通过设置触发条件判断关键位置的算法在图像识别判断边界上也会经常用到,后续也会通过算例详细讲解。 
分享到:
 
反对 0 举报 0 收藏 0 评论 0
沪ICP备11026620号