主要内容

tachorpm

从转速计脉冲提取转速信号

描述

rpm= tachorpm (x,fs)提取一个转速信号,rpm从一个测速脉冲信号向量,x,被采样的速度fs赫兹。

如果你没有一个转速表脉冲信号,使用rpmtrack提取rpm从振动信号。

(rpm,t,tp)= tachorpm (x,fs)还返回时间向量,t检测到的脉冲位置,tp

(___)= tachorpm (x,fs,名称,值)指定的选择使用名称,值对和任何以前的语法。

例子

tachorpm (___)没有输出参数块生成的转速信号和转速计检测到脉冲信号。

例子

全部折叠

在300赫兹负载模拟测速信号采样。

负载转速计

计算和可视化使用RPM信号tachorpm使用默认值。

tachorpm (Yn, fs)

增加合适点的数量来捕获RPM高峰。点太多了导致过度拟合。验证这个结果被放大在峰值附近区域。

tachorpm (Yn, fs,“FitPoints”,600)轴([0.47 - 0.65 1320 1570])

选择一个中等数量的点来获得一个更好的结果。

tachorpm (Yn, fs,“FitPoints”,100)

转速表添加高斯白噪声的信号。默认pulse-finding机制没有脉冲,并返回一个锯齿状的信号。验证这个结果放大两秒的时间间隔。

rng默认的wgn = randn(大小(Yn)) / 10;Yn = Yn + wgn;(rpm, t, tp) = tachorpm (Yn, fs,“FitPoints”,100);图绘制(t, Yn, tp,意味着(interp1 (t, Yn, tp)) *(大小(tp)),“+”)举行sl =考虑(Yn);情节(t, sl(1) *(大小(t)), t, sl(2) *(大小(t)))xlim (10 [9])

调整状态水平提高脉冲发现。

sl = 0.75 [0];(rpm, t, tp) = tachorpm (Yn, fs,“FitPoints”,100,“考虑”、sl);情节(t, Yn, tp,意味着(interp1 (t, Yn, tp)) *(大小(tp)),“+”)举行情节(t, sl(1) *(大小(t)), t, sl(2) *(大小(t)))xlim (10 [9])

输入参数

全部折叠

转速计脉冲信号,指定行或列向量。

例子:双(线性调频(1.1 (-1.5:1/2e2:1.5), 14日,8,“二次”)> 0.98)像一个转速表信号,采样三秒钟在200赫兹,和获得二次前/滑落测试。

采样率,指定为一个积极的标量用赫兹。

名称-值参数

指定可选的双参数作为Name1 = Value1,…,以=家,在那里的名字参数名称和吗价值相应的价值。名称-值参数必须出现在其他参数,但对的顺序无关紧要。

R2021a之前,用逗号来分隔每一个名称和值,并附上的名字在报价。

例子:“PulsesPerRev”3“OutputFs”, 1 e3指定有三个转速表每革命和返回的转速信号脉冲采样1 kHz。

每个革命的测速脉冲数量,指定为逗号分隔组成的“PulsesPerRev”和一个真正的标量。

用于识别脉冲状态水平,指定为逗号分隔组成的“考虑”和双元素的向量。向量的第一个元素对应于很低水平,第二个元素对应于高度的国家水平。选择国家水平,以便所有脉冲边横在他们两人的10%。如果没有指定此选项,那么tachorpm使用直方图方法,自动计算水平的考虑函数。

输出采样率,指定为逗号分隔组成的“OutputFs”和一个真正的标量。

拟合方法,指定为逗号分隔组成的“FitType”和一个的“顺利”“线性”

  • “顺利”——适合脉冲转速值的最小二乘b样条。

  • “线性”——插入线性脉冲转速值之间。

b样条断点,指定为逗号分隔组成的“FitPoints”和一个真正的标量。断点的数量之间的权衡曲线平滑,接近底层数据。选择太多的断点会导致过度拟合。这个论点被忽略“FitType”被设置为“线性”

输出参数

全部折叠

旋转速度,作为一个向量返回表示每分钟的转数。rpm一样的长度吗x

返回时间向量,向量的积极的价值观表现在秒。

脉冲位置,作为一个向量返回积极的价值观表现在秒。

算法

tachorpm函数执行这些步骤:

  1. 使用考虑确定低和高的转速表的信号。

  2. 使用上升时间falltime找到每个脉冲开始和结束的时间。然后平均每个脉冲的这些数据来定位时间。

  3. 使用diff确定脉冲之间的时间间隔中心和计算区间中点使用RPM的值RPM = 60 /Δt

  4. 如果“FitType”被指定为“顺利”使用样条函数,那么这个函数执行最小二乘拟合。如果“FitType”被指定为“线性”使用,那么函数执行线性插值interp1

引用

[1]布兰德,安德斯。噪音和振动分析:信号分析和实验过程。英国奇切斯特:约翰威利& Sons, 2011。

[2]Vold、哈佛和Jan Leuridan。“高分辨率订单跟踪极端使用卡尔曼跟踪滤波器杀率。”冲击和振动。2卷,1995年,页507 - 515。

扩展功能

C / c++代码生成
生成C和c++代码使用MATLAB®编码器™。

版本历史

介绍了R2016b