当前位置: 首页 > news >正文

使用超声波麦克风阵列预测数控机床刀具磨损

     预测性维护是使用传感器数据来推断机器状态,并从这些传感器数据中检测出在故障发生之前存在的缺陷或故障的过程。预测性维护在所有工业领域都是一种日益增长的趋势,包括轴承故障检测、齿轮磨损检测或往复式机器中的活塞磨损等许多其他例子。在预测性维护领域,应用了大量传感器,包括声学、振动、热传感器、电流传感器以及几乎可以想象的任何其他传感模式。

     在数控车床中,工件被安装在一个主轴上,然后主轴旋转,而切削则通过一个静止的切削工具来执行。切削工具的几何形状和材料种类繁多,其中硬质合金是制造这些切削工具的主要使用材料。尽管在几何形状和材料类型上有很大的变化,但这些工具的一个反复出现且重要的特性是锋利度。确实,切削工具的锋利度直接与工件的最终质量相关

为了应对数控加工中固有的刀具磨损问题,已经设计了各种自动刀具磨损估计技术,如消耗的轴功率/电流、振动测量、多普勒雷达和声学等。在本文中,我们将重点关注使用0 kHz至60 kHz范围内的超声波声学信号,使用超声波麦克风阵列传感器。该传感器基于eRTIS超声波传感器,它允许通过波束形成实现宽带空间滤波器的实现。在如CNC操作这样的高噪声场景中使用波束形成过滤掉不需要的噪声源来提高信号的信噪比然后,使用卷积神经网络来执行切削工具的剩余使用寿命(RUL)预测

1 方法

1.1 数据采集

  • 超声波麦克风阵列: 使用多个超声波麦克风组成的阵列,采集加工过程中刀具与工件相互作用产生的声波信号。
  • 信号同步: 确保不同麦克风采集的信号时间同步,以便进行后续的信号处理。
  • 其他传感器: 可以根据需要,采集其他传感器数据,例如振动传感器、电流传感器等,用于辅助刀具磨损预测。

1.2 信号处理

  • 波束形成: 利用波束形成技术,将多个麦克风采集的信号进行加权求和,增强来自刀具方向的声音信号,抑制其他方向的噪声,提高信噪比。
  • 滤波:对波束形成后的信号进行滤波,例如带通滤波,去除低频噪声和高频噪声,保留与刀具磨损相关的频率成分。
  • 时频分析: 对滤波后的信号进行时频分析,例如短时傅里叶变换(STFT),将信号分解为不同时间和频率的成分,得到时频谱图。
  • 特征提取: 从时频谱图中提取与刀具磨损相关的特征,例如能量、频率、熵等。

1.3 模型构建

  • 卷积神经网络(CNN): 使用CNN模型对提取的特征进行学习,建立特征与刀具磨损状态之间的关系。
  • 模型结构: CNN模型可以包含卷积层、池化层、全连接层等,可以根据具体问题进行调整。
  • 损失函数: 选择合适的损失函数,例如均方误差(MSE)或交叉熵等,用于评估模型预测结果与真实值之间的差异。

1.4 模型训练

  • 数据集划分: 将采集到的数据划分为训练集、验证集和测试集。
  • 数据增强: 对训练数据进行增强,例如添加噪声、改变采样率等,提高模型的鲁棒性。
  • 优化器: 选择合适的优化器,例如Adam、SGD等,用于更新模型参数。
  • 超参数调整: 调整模型的各种超参数,例如学习率、批大小等,以获得更好的模型性能。

1.5 模型评估

  • 预测精度: 使用测试集评估模型的预测精度,例如计算均方误差、平均绝对误差等指标。
  • 泛化能力: 评估模型在不同工况下的泛化能力,例如使用不同材料、不同刀具、不同加工参数等数据进行测试。
  • 可解释性: 研究如何解释CNN模型的预测结果,例如可视化CNN模型的特征图,帮助理解模型的决策过程。

2 实验

2.1 硬件设置

  • 图面板a)两个eRTIS超声波传感器,带有32个麦克风的超声波麦克风阵列传感器,采样率为450 kHz。一个eRTIS传感器被放置在车床内部,另一个放置在操作员站立位置的外部。eRTIS传感器以10 Hz的速率测量了40毫秒的声学数据块(即信号是间歇性采样的)
  • 图面板b)使用了一台工业级数控车床(Mazak QT10N)
  • 图面c):展示了安装在车床内的eRTIS传感器内部
  • 图面板d)加工的材料
  • 图面板e)拉伸试验样品的模型
  • 制造了350个拉伸测试样品,使用了两种材料(1.1191 C45和1.7225 Chromoly)
  • 使用Fluke i1000s电流钳的轴电流,连接到National Instruments NI-USB6363 DAQ,该DAQ以500 kHz的采样率同时采样电流信号和同步信号。

2.2 频谱图

  • 上图为eRTIS传感器在车削运行期间记录的声学数据的频谱图表示。
  • 上图面板a)显示了在车床外部由eRTIS传感器测量的数据。
  • 上图面板b)显示了从车床内部记录的数据。
  • 在低频部分,信号主要由机器的运动声音支配,而频谱图的高频部分则是由切削操作产生的。

3 信号处理和实验结果

3.1 信号处理

3.1.1 数据采集

  • 传感器: 使用两个 eRTIS 超声波传感器,一个放置在机床内部,另一个放置在机床外部,采集超声波信号。
  • 采样频率: 450 kHz
  • 采样时长: 40 ms
  • 采样间隔: 10 Hz

3.1.2 波束形成

  • 目的: 通过聚焦麦克风信号到刀具位置,提高信噪比,滤除噪声和干扰。
  • 方法: 使用波束形成技术,根据麦克风阵列的几何结构和传感器与刀具之间的距离,计算每个麦克风的权重,并进行加权求和。
  • 参数: 波束方向指向刀具位置,即传感器指向刀具的向量。

3.1.3 频域转换

  • 目的: 将时域信号转换为频域信号,揭示不同频率成分的能量分布,从而更容易提取与刀具磨损相关的特征。
  • 方法: 使用 Welch 功率谱密度估计器,对波束形成后的信号进行傅里叶变换。
  • 参数: 窗口长度 1024 个样本,汉明加权。

3.1.4 数据拼接

  • 目的: 将所有频谱图拼接成一个大矩阵,形成类似于声谱图的表示形式,方便后续的 CNN 模型处理。
  • 方法: 将每个频谱图按照时间顺序排列,形成一个三维矩阵,其中两个维度表示频率和帧号,第三个维度表示麦克风编号。

3.2 CNN模型架构

    构建一个包含 4 个卷积层leaky ReLu激活函数,平均池化,批量归一化和dropout(10%)的 CNN 模型,用于预测刀具剩余使用寿命 (RUL)。模型输入为超声波声谱图,输出为工件编号,从而间接预测刀具磨损程度。

  • 卷积层:网络包含四个卷积层,这些层负责从输入数据中提取特征。每个卷积层都会对输入的声学频谱图数据进行卷积操作,以识别和提取重要的特征。
  • 激活函数:在卷积层之后,使用leaky ReLu(线性整流单元)激活函数。Leaky ReLu是一种改进版的ReLU激活函数,它允许负值通过一个很小的斜率,从而解决了ReLU在负值时梯度消失的问题。
  • 池化层:接着是平均池化层,它用于降低特征的空间维度,同时保留最重要的信息。这有助于减少计算量,并使特征检测更加鲁棒。
  • 批量归一化:网络还包含批量归一化层,这有助于加速训练过程,并减少对初始化权重的敏感性。批量归一化通过对每个小批量数据进行归一化处理来工作,这有助于稳定和加速神经网络的训练。
  • Dropout:为了提高网络的泛化能力并防止过拟合,网络使用了dropout技术。Dropout以一定的概率随机丢弃一些网络连接,迫使网络学习更加鲁棒的特征表示。
  • 全连接层:在卷积层和池化层之后,输出被展平并通过两个全连接(FC)层。全连接层是神经网络中负责进行高级特征融合和最终预测的部分。
  • 输出层:第一个全连接层的输出维度为10,使用ReLu非线性激活函数。最后一个全连接层是输出层,它有一个单一的输出节点,用于预测基于输入声学频谱图的工件编号,即预测刀具的剩余使用寿命。

3.3 模型训练

  • 优化器选择:使用了Adam优化器来训练神经网络。Adam优化器是一种自适应学习率优化算法,它结合了动量(Momentum)和RMSprop的关键思想,通常在训练深度学习模型时表现良好。
  • 学习率设置:为Adam优化器设置的学习率为0.01,这是一个常用的初始学习率值,有助于模型在训练初期快速收敛。
  • 训练周期:设定了最多100个训练周期(epoch),每个周期中,整个数据集都会被用来更新网络的权重一次。
  • 验证损失检查点:在训练过程中,使用验证损失来监控模型的性能。我们保留了具有最佳验证损失的网络参数作为最终模型,这有助于防止过拟合,并确保模型在未见数据上也能表现良好。
  • 数据增强:为了提高模型的泛化能力,我们对训练数据进行了增强,包括在时间维度上的平移和添加噪声。数据增强有助于模型学习到更加鲁棒的特征,减少对特定训练样本的依赖。
  • 数据集划分:将增强后的数据集随机分为三个部分:训练集(占总数据的75%),验证集(占10%),和测试集(占15%)。这样的划分有助于我们在训练过程中评估模型的性能,并在训练结束后使用测试集来评估模型的最终性能。
  • 训练时长:在单个NVidia RTX4090 GPU上进行模型训练,包括数据预处理,大约需要一个小时。这表明我们的训练流程相对高效,能够在合理的时间内完成模型的训练。

3.4 模型评估

  • 预测误差:使用均方误差 (MSE) 作为预测误差指标,衡量预测值与真实值之间的差异。
  • 误差方差:分析预测误差的方差,评估模型的稳定性。方差越小,说明模型的预测结果越稳定。
  • 模型结构比较:比较不同模型结构的性能,选择最优模型。例如,比较使用不同数量卷积层和全连接层的模型性能。
  • 数据增强效果:分析数据增强技术对模型性能的影响。例如,比较使用和不使用数据增强技术的模型性能。
  • 交叉验证:使用交叉验证评估模型的泛化能力。例如,将数据集分成训练集和测试集,训练模型并在测试集上进行评估。

3.5 实验结果

  • 图面板a)显示了基于单个声学频谱图的运行编号预测
  • 上图面板b)显示了使用五个以所需运行编号为中心的频谱图的预测。
  • 上图面板c)和d)显示了平均运行编号预测误差,包括预测的方差带(灰色阴影),占总工具寿命的百分比。

结果表明,通过超声波传感器和深度学习模型的结合,可以有效地预测数控车削中的刀具磨损。通过分析声学信号的频谱图,CNN能够以较高的精度估计刀具的剩余使用寿命,这对于预测性维护任务具有潜在的应用价值。

相关文章:

使用超声波麦克风阵列预测数控机床刀具磨损

预测性维护是使用传感器数据来推断机器状态,并从这些传感器数据中检测出在故障发生之前存在的缺陷或故障的过程。预测性维护在所有工业领域都是一种日益增长的趋势,包括轴承故障检测、齿轮磨损检测或往复式机器中的活塞磨损等许多其他例子。在预测性维护…...

怎么控制多个存储设备的访问权限?数据安全存储方案来了

数据安全存储是指将数据以安全的方式存储在存储系统中,以确保数据的机密性、完整性和可用性。要控制数据安全存储的权限以保障安全,可以采取以下措施: 访问控制列表(ACLs):使用ACLs来定义对存储数据的访问权…...

麒麟系统mate_indicators进程占用内存资源高

一、问题现象 故障现象:环境出现内存溢出 操作系统:KYlin10-SP2 二、问题定位 发现mate-indicators进程占用内存资源达到节点总内存40%,导致服务出现内存熔断 临时解决 systemctl restart lightdm.service systemctl set-default multi-u…...

Docker高级篇之轻量化可视化工具Portainer

文章目录 1. 简介2. Portainer安装 1. 简介 Portianer是一款轻量级的应用,它提供了图形化界面,用于方便管理Docker环境,包括单机环境和集成环境。 2. Portainer安装 官网:https://www.portainer.io 这里我们使用docker命令安装&…...

Vue32-挂载流程

一、init阶段 生命周期本质是函数。 1-1、beforeCreate函数 注意: 此时vue没有_data,即:data中的数据没有收到。 1-2、create函数 二、生成虚拟DOM阶段 注意: 因为没有template选项,所以,整个div root都…...

算法金 | 一个强大的算法模型:t-SNE !!

大侠幸会,在下全网同名「算法金」 0 基础转 AI 上岸,多个算法赛 Top 「日更万日,让更多人享受智能乐趣」 t-SNE(t-Distributed Stochastic Neighbor Embedding)是一种用于降维和数据可视化的非线性算法。它被广泛应用于…...

用IAST工具强化“越权检测”能力,提升系统安全性

什么是越权漏洞 越权漏洞是一种常见的逻辑安全漏洞。越权漏洞指的是攻击者利用系统中的漏洞,获得超过其正常权限的访问权限,执行未授权操作。 越权漏洞主要分为两种类型:水平越权(横向越权)和垂直越权(纵…...

VirtualStudio配置QT开发环境

环境 VirtualStudio2022Qt5.12.10 安装msvc工具链(这一步不是必须的) 打开virtual studio,打开Virtual Studio Installer界面选择要安装的msvc版本,点击安装 安装VirtualStudio扩展 在线安装 打开virtual Studio,…...

Nature发文介绍使用ChatGPT帮助学术写作的三种方式

文章链接:https://www.nature.com/articles/d41586-024-01042-3 一、介绍 这篇文章是由Dritjon Gruda撰写的,讨论了生成性人工智能(AI)在学术写作、编辑和同行评审中的三种应用方式。Gruda认为,尽管学术界对聊天机器…...

【网络安全的神秘世界】Kali 自带 Burp Suite 使用指南:字体与CA证书设置详解等

🌝博客主页:泥菩萨 💖专栏:Linux探索之旅 | 网络安全的神秘世界 | 专接本 | 每天学会一个渗透测试工具 Kali 自带 Burp Suite 使用指南目录 Burp Suite的打开方式设置Burp Suite软件的字体大小查看Burp Suite 默认代理在火狐浏览器…...

【Go】爬虫数据解密_使用Go语言实现TripleDES加密和解密

是你多么温馨的目光 教我坚毅望着前路 叮嘱我跌倒不应放弃 没法解释怎可报尽亲恩 爱意宽大是无限 请准我说声真的爱你 🎵 Beyond《真的爱你》 引言 Triple Data Encryption Standard (TripleDES 或 3DES) 是一种对称加密算法,它通…...

【HarmonyOS NEXT】鸿蒙 如何在包含web组件的页面 让默认焦点有效

页面包含web组件Button组件等,把页面的默认焦点放到Button组件上,不起效果。 因为web组件默认会在组件加载完成后获取焦点; 可以在web的网页加载完成时onPageEnd回调中,将设置默认获焦的组件通过focusControl.requestFocus方法主…...

mysql常用参数配置详解my.cnf my.ini

1.关注生产中高频常用参数 # 数据库时区 log_timestamps = system # 刷盘策略 0,1,2 innodb_flush_log_at_trx_commit # 定义了 InnoDB 用于写日志数据的缓冲区大小。当事务发生时,日志首先被写入这个缓冲区,然后再被刷新(flush)到磁盘上的重做日志文件(redo log file…...

GlusterFS企业分布式存储

GlusterFS 分布式文件系统代表-nfs常见分布式存储Gluster存储基础梳理GlusterFS 适合大文件还是小文件存储? 应用场景术语Trusted Storage PoolBrickVolumes Glusterfs整体工作流程-数据访问流程GlusterFS客户端访问流程 GlusterFS常用命令部署 GlusterFS 群集准备环…...

SSH生成SSH密钥(公钥和私钥)

在设置SSH服务时,生成SSH密钥(公钥和私钥)是一个常见的任务。这些密钥用于安全地进行身份验证,无需输入密码。以下是如何生成SSH密钥的步骤: 1. 生成SSH密钥对 首先,您需要在客户端机器上生成一个SSH密钥…...

阶段性总结:如何快速上手一个新的平台或者技术

作为研发一枚,为了实现客户的各种需求,为了避免重复造轮子,通常需要快速调查到哪个轮子(比如各种平台,或者开发包等)好用,然后快速熟悉和上手。在接触到一个新的平台或者技术的时候,…...

kettle从入门到精通 第七十一课 ETL之kettle 再谈http post,轻松掌握body中传递json参数

场景: kettle中http post步骤如何发送http请求且传递body参数? 解决方案: http post步骤中直接设置Request entity field字段即可。 1、手边没有现成的post接口,索性用python搭建一个简单的接口,关键代码如下&#…...

第十二章:会话控制

会话控制 文章目录 会话控制一、介绍二、cookie2.1 cookie 是什么2.2 cookie 的特点2.3 cookie 的运行流程2.4 浏览器操作 cookie2.5 cookie 的代码操作(1)设置 cookie(2)读取 cookie(3)删除 cookie 三、se…...

【LeetCode滑动窗口算法】长度最小的子数组 难度:中等

我们先看一下题目描述&#xff1a; 解法一&#xff1a;暴力枚举 时间复杂度&#xff1a;o(n^3) class Solution { public:int minSubArrayLen(int target, vector<int>& nums){int i 0, j 0;vector<int> v;for (;i < nums.size();i){int sum nums[i];fo…...

MySQL 用户权限管理:授权、撤销、密码更新和用户删除(图文解析)

目录 前言1. 授予权限2. 撤销权限3. 查询权限4. Demo 前言 公司内部的数据库权限一般针对不同人员有不同的权限分配&#xff0c;而不都统一给一个root权限 1. 授予权限 授予用户权限的基本命令是GRANT 可以授予的权限种类很多&#xff0c;涵盖从数据库和表级别到列和存储过…...

wordpress后台更新后 前端没变化的解决方法

使用siteground主机的wordpress网站&#xff0c;会出现更新了网站内容和修改了php模板文件、js文件、css文件、图片文件后&#xff0c;网站没有变化的情况。 不熟悉siteground主机的新手&#xff0c;遇到这个问题&#xff0c;就很抓狂&#xff0c;明明是哪都没操作错误&#x…...

centos 7 部署awstats 网站访问检测

一、基础环境准备&#xff08;两种安装方式都要做&#xff09; bash # 安装必要依赖 yum install -y httpd perl mod_perl perl-Time-HiRes perl-DateTime systemctl enable httpd # 设置 Apache 开机自启 systemctl start httpd # 启动 Apache二、安装 AWStats&#xff0…...

HTML 列表、表格、表单

1 列表标签 作用&#xff1a;布局内容排列整齐的区域 列表分类&#xff1a;无序列表、有序列表、定义列表。 例如&#xff1a; 1.1 无序列表 标签&#xff1a;ul 嵌套 li&#xff0c;ul是无序列表&#xff0c;li是列表条目。 注意事项&#xff1a; ul 标签里面只能包裹 li…...

django filter 统计数量 按属性去重

在Django中&#xff0c;如果你想要根据某个属性对查询集进行去重并统计数量&#xff0c;你可以使用values()方法配合annotate()方法来实现。这里有两种常见的方法来完成这个需求&#xff1a; 方法1&#xff1a;使用annotate()和Count 假设你有一个模型Item&#xff0c;并且你想…...

Java面试专项一-准备篇

一、企业简历筛选规则 一般企业的简历筛选流程&#xff1a;首先由HR先筛选一部分简历后&#xff0c;在将简历给到对应的项目负责人后再进行下一步的操作。 HR如何筛选简历 例如&#xff1a;Boss直聘&#xff08;招聘方平台&#xff09; 直接按照条件进行筛选 例如&#xff1a…...

Maven 概述、安装、配置、仓库、私服详解

目录 1、Maven 概述 1.1 Maven 的定义 1.2 Maven 解决的问题 1.3 Maven 的核心特性与优势 2、Maven 安装 2.1 下载 Maven 2.2 安装配置 Maven 2.3 测试安装 2.4 修改 Maven 本地仓库的默认路径 3、Maven 配置 3.1 配置本地仓库 3.2 配置 JDK 3.3 IDEA 配置本地 Ma…...

使用 Streamlit 构建支持主流大模型与 Ollama 的轻量级统一平台

🎯 使用 Streamlit 构建支持主流大模型与 Ollama 的轻量级统一平台 📌 项目背景 随着大语言模型(LLM)的广泛应用,开发者常面临多个挑战: 各大模型(OpenAI、Claude、Gemini、Ollama)接口风格不统一;缺乏一个统一平台进行模型调用与测试;本地模型 Ollama 的集成与前…...

鸿蒙DevEco Studio HarmonyOS 5跑酷小游戏实现指南

1. 项目概述 本跑酷小游戏基于鸿蒙HarmonyOS 5开发&#xff0c;使用DevEco Studio作为开发工具&#xff0c;采用Java语言实现&#xff0c;包含角色控制、障碍物生成和分数计算系统。 2. 项目结构 /src/main/java/com/example/runner/├── MainAbilitySlice.java // 主界…...

GruntJS-前端自动化任务运行器从入门到实战

Grunt 完全指南&#xff1a;从入门到实战 一、Grunt 是什么&#xff1f; Grunt是一个基于 Node.js 的前端自动化任务运行器&#xff0c;主要用于自动化执行项目开发中重复性高的任务&#xff0c;例如文件压缩、代码编译、语法检查、单元测试、文件合并等。通过配置简洁的任务…...

消息队列系统设计与实践全解析

文章目录 &#x1f680; 消息队列系统设计与实践全解析&#x1f50d; 一、消息队列选型1.1 业务场景匹配矩阵1.2 吞吐量/延迟/可靠性权衡&#x1f4a1; 权衡决策框架 1.3 运维复杂度评估&#x1f527; 运维成本降低策略 &#x1f3d7;️ 二、典型架构设计2.1 分布式事务最终一致…...