信号的小波包能量谱计算(以轴承振动信号为例,Python环境)

小波分析是近30年来发展起来的数学分支,是Fourier分析划时代发展的结果,由法国工程师Morlet首先提出,后广泛应用于信号处理、图像处理与分析、地震勘探、故障诊断、自动控制等领域,小波就是小的波形,所谓“小”是指它具有衰减性,“波”则是指它的波动性,其振幅为正负相间的振荡形式。小波分析的基本思想依然沿承了Fourier变换,就是将信号在一系列基函数张成的空间上进行投影。

Fourier变换选择无限长的三角函数作为基函数,这个三角函数会伸缩、平移:当基函数收缩时对应信号的高频部分,伸张时对应信号的低频部分。某些尺度下,基函数会与信号相乘得到一个很大的值,表示二者有高度的相关性,这一相关性就体现了信号包含该频率的成分的多少。但是,对于非平稳过程,Fourier变换有局限性。它只能获取一段信号总体上包含哪些频率的成分,但无法确定各成分出现的时刻,即Fourier变换在时域上无任何分辨能力。而平稳信号大多是人为制造出来的,自然界中的大量信号基本都是非平稳的,因此,小波变换应运而生。

小波变换将无限长的三角函数换成了有限长的、具有衰减性的小波基函数,这样既能够获取频域信息,也可以获取时域信息。优于Fourier分析的是,它在时域和频域同时具有良好的局部化性质。小波分析是一个时间和频率的局域变换,因而能有效地从信号中提取信息,通过伸缩和平移等运算功能对信号进行多尺度细化分析。工程设备或结构运行中难免会发生损伤,当损伤发生时将导致结构响应表现出非平稳和非线性的特征,而这些特征又与结构损伤状态密切相关。小波分析在结构损伤识别中的应用比较常见的有:(1)基于小波系数的损伤识别;(2)基于小波频带能量的损伤识别;(3)小波方法与其他方法联合应用。

在一个机械系统中,利用频率成分复杂的信号作为激励信号作用于机械系统时,这些复杂的频率成分的输出表现,会因为机械系统的损伤而发生变 化。一般情况下,机械损伤部分会对某些频率产生抑制作用,同样会对某些频率发挥增强作用。所以, 激励信号作用于有损伤机械系统的输出与作用于正常机械系统的输出相比,其相同频带内含有的能量是有区别的,这种区别表现为它会使一些频带内的信号能量或减少或增强,因此,可以通过分析信号的能量变化而判断机械系统损伤情况,其他的系统都与此类似。

首先导入相关模块(需要提前安装pywt模块,pip install pywt)

import scipy.io as scio  #导入scio包
import numpy as np
import matplotlib.pyplot as plt
import os
from sklearn import preprocessing
import pywt
import pywt.data
import pandas as pd

读取数据函数

def DataAcquision(file_Path):data = scio.loadmat(file_path)  data_key_list = list(data.keys()) accl_key = data_key_list[3]  accl_data = data[accl_key].flatten()  return accl_datafile_path = '1730_12k_0.007-InnerRace.mat'  #文件夹路径
data_arr = DataAcquision(file_path)  # 加载数据
#选取db1小波,扩展模式选择symmetric,最大分解层数为3
wp = pywt.WaveletPacket(data=data_arr, wavelet='db1',mode='symmetric',maxlevel=3) 

绘制轴承内圈故障时域波形

plt.figure(figsize=(12,3))
plt.plot(data_arr)

绘制轴承内圈故障振动信号每一层小波分解时域图

绘制轴承正常工况振动信号每一层小波分解时域图

绘制轴承内圈故障振动信号小波包分解能量谱

绘制轴承正常工况振动信号小波包分解能量谱

完整代码:信号的小波包能量谱计算(以轴承振动信号为例,Python环境)

擅长领域:现代信号处理,机器学习,深度学习,数字孪生,时间序列分析,设备缺陷检测、设备异常检测、设备智能故障诊断与健康管理PHM等。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/766851.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

QT文件读写操作和内容提取

访问IO设备,需要先调用open()来设置正确的OpenMode(例如ReadOnly或ReadWrite) 打开设备后后,使用write() 或putChar() 写入数据到文件和设备,并通过调用read(),readLine() 或readAll() 进行读取;使用完设备后&#xf…

3、Jenkins持续集成-Jenkins安装和插件管理

文章目录 一、Jenkins安装1. 安装JDK2. 获取jenkins安装包3. 安装包上传到服务器,进行安装4. 修改Jenkins配置(1)低版本Jenkins的rpm包(2)高版本Jenkins的rpm包 5. 启动Jenkins6. 打开浏览器访问7. 获取并输入admin账户…

【漏洞复现】netgear路由器 boarddataww 存在RCE漏洞

免责声明:文章来源互联网收集整理,请勿利用文章内的相关技术从事非法测试,由于传播、利用此文所提供的信息或者工具而造成的任何直接或者间接的后果及损失,均由使用者本人负责,所产生的一切不良后果与文章作者无关。该…

FDM3D打印系列——美纹纸遮挡喷漆

大家好,我是阿赵。   自从上次尝试了水补土和喷漆,发现效果不错之后,我就接着进行第二次的尝试了。   这次打印的模型是这个拳皇里面的卢卡尔,别看拍照好像很高大,其实这个模型很小的,只有10cm左右的高…

PySide6-YOLO8目标检测、追踪可视化界面

目录 项目地址实现效果DetectTrack 项目地址 https://github.com/zhengjie9510/pyside-yolo 实现效果 Detect Track

windows安装ssh

一、下载ssh https://github.com/PowerShell/Win32-OpenSSH/releases/download/v8.1.0.0p1-Beta/OpenSSH-Win64.zip 二、安装ssh 解压到C:\Program Files\OpenSSH-Win64 配置环境变量 把 C:\Program Files\OpenSSH-Win64 加到path环境变量里面 C:\Program Files\OpenSSH-Win64&…

Arcgis 导入经纬度坐标、导出经纬度坐标

目录 一、导入经纬度坐标 1、在excel中准备好经纬度坐标的数据表 2、将数据放入Acrgis的工作路径 3、在arcgis中添加数据 4、显示经纬度坐标点 5、导出为shp矢量文件 二、根据shp的经纬度坐标点导出成经纬度坐标 1、右键选择打开属性表 2、在属性表的菜单下拉栏里找到…

三、阅读器的开发--1、项目准备

1、项目准备 1.1、项目搭建 我用的脚手架是vue cli 5.0的,通过vue create 项目名称来创建的项目 上下箭头选的是最后那个,是指手动配置,然后回车 空格选中下面这些,然后回车 下图最后那个指我们所有的配置在哪里配置&#xff0…

百度智能云+SpringBoot=AI对话【人工智能】

百度智能云SpringBootAI对话【人工智能】 前言版权推荐百度智能云SpringBootAI对话【人工智能】效果演示登录AI对话 项目结构后端开发pom和propertiessql_table和entitydao和mapperservice和implconfig和utilLoginController和ChatController 前端开发css和jslogin.html和chat.…

MySQL 8.0-索引- 不可见索引(invisible indexes)

概述 MySQL 8.0引入了不可见索引(invisible index),这个在实际工作用还是用的到的,我觉得可以了解下。 在介绍不可见索引之前,我先来看下invisible index是个什么或者定义。 我们依然使用拆开来看,然后再把拆出来的词放到MySQL…

kali安装docker(亲测有效)

第一步:添加Docker官方的GPG密钥 curl -fsSL https://download.docker.com/linux/debian/gpg | sudo apt-key add - 第二步: 第二步更新源 echo deb https://download.docker.com/linux/debian stretch stable> /etc/apt/sources.list.d/docker.list…

数据结构——树与二叉树

目录 树与二叉树 1.树的定义 2.树的有关术语 3.二叉树(BinaryTree) 二叉树的性质: 特殊的二叉树 满二叉树: 完全二叉树 二叉树的存储结构 顺序存储结构 链式存储结构 二叉树以及对应接口的实现 1.二叉树架构搭建 2…

关于 Microsoft Visual Studio

关于 Microsoft Visual Studio References References [1] Yongqiang Cheng, https://yongqiang.blog.csdn.net/

【机器学习300问】47、如何计算AUC?

一、AUC是什么? (1)文绉绉的定义 AUCArea Under the Curve中文直译叫“曲线下面积”,AUC名字里面的Curve曲线指的就是ROC曲线,关于ROC曲线的相关知识我已经在之前的文章中详细说过了,有需要的友友可以点击…

CI/CI实战-jenkis结合gitlab 4

实时触发 安装gitlab插件 配置项目触发器 生成令牌并保存 配置gitlab 测试推送 gitlab的实时触发 添加jenkins节点 在jenkins节点上安装docker-ce 新建节点server3 安装git和jdx 在jenkins配置管理中添加节点并配置从节点 关闭master节点的构建任务数

革新水库大坝监测:传统软件与云平台之比较

在水库大坝的监测管理领域,传统监测软件虽然曾发挥了重要作用,但在多方面显示出了其局限性。传统解决方案通常伴随着高昂的运维成本,需要大量的硬件支持和人员维护,且软件整合和升级困难,限制了其灵活性和扩展性。 点击…

Neo4j桌面版导入CVS文件

之后会出来一个提示框,而且会跳出相关文件夹: 然后我们将CSV文件放在此目录下: 我们的relation.csv是这样的 参见: NEO4J的基本使用以及桌面版NEO4J Desktop导入CSV文件_neo4j desktop使用-CSDN博客

C++11:左值与右值|移动构造|移动赋值

​ 🎬慕斯主页:修仙—别有洞天 ♈️今日夜电波:マイノリティ脈絡—ずっと真夜中でいいのに。 0:24━━━━━━️💟──────── 4:02 🔄 …

MySQL表内容的增删查改

在前面几章的内容中我们学习了数据库的增删查改,表的增删查改,这一篇我们来学习一下对表中的内容做增删查改。 CRUD : Create(创建), Retrieve(读取),Update(更新),Delete(删除) 1.创建Create 我们先创建…

Zabbix Web界面中文汉化

要想达到上图的效果,第一步先查看 /usr/share/zabbix/assets/fonts/ [rootservice yum.repos.d]# ll /usr/share/zabbix/assets/fonts/ 总用量 0 lrwxrwxrwx. 1 root root 33 3月 23 16:58 graphfont.ttf -> /etc/alternatives/zabbix-web-font 继续查看graph…