机械振动信号15个时域统计指标
·
时域统计指标计算公式
振动信号原始统计特征分为两类:时域统计特征、频域统计特征。
信号的时域特征是通过统计分析信号的各种时域参数、指标的估计或计算得到的,如表所示,分为有量纲参数和无量纲参数两种,其中1-9为有量纲参数和10-15无量纲参数。
python程序
def get_time_domain_features(data):
'''data为一维振动信号'''
x_rms = 0
absXbar = 0
x_r = 0
S = 0
K = 0
k = 0
x_rms = 0
fea = []
len_ = len(data.iloc[0, :])
mean_ = data.mean(axis=1) # 1.均值
var_ = data.var(axis=1) # 2.方差
std_ = data.std(axis=1) # 3.标准差
max_ = data.max(axis=1) # 4.最大值
min_ = data.min(axis=1) # 5.最小值
x_p = max(abs(max_[0]), abs(min_[0])) # 6.峰值
for i in range(len_):
x_rms += data.iloc[0, i] ** 2
absXbar += abs(data.iloc[0, i])
x_r += math.sqrt(abs(data.iloc[0, i]))
S += (data.iloc[0, i] - mean_[0]) ** 3
K += (data.iloc[0, i] - mean_[0]) ** 4
x_rms = math.sqrt(x_rms / len_) # 7.均方根值
absXbar = absXbar / len_ # 8.绝对平均值
x_r = (x_r / len_) ** 2 # 9.方根幅值
W = x_rms / mean_[0] # 10.波形指标
C = x_p / x_rms # 11.峰值指标
I = x_p / mean_[0] # 12.脉冲指标
L = x_p / x_r # 13.裕度指标
S = S / ((len_ - 1) * std_[0] ** 3) # 14.偏斜度
K = K / ((len_ - 1) * std_[0] ** 4) # 15.峭度
fea = [mean_[0],absXbar,var_[0],std_[0],x_r,x_rms,x_p,max_[0],min_[0],W,C,I,L,S,K]
return fea
搜索这篇文章的应该都是同道中人,点个赞再走吧!
下一篇:机械振动信号13个频域指标
转载请注明:https://blog.csdn.net/baidu_38963740/article/details/110940823.
更多推荐
已为社区贡献5条内容
所有评论(0)