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

等角度采样谐波减速器故障诊断【附代码】

✨ 本团队擅长数据搜集与处理、建模仿真、程序设计、仿真代码、EI、SCI写作与指导,毕业论文、期刊论文经验交流。
✅ 专业定制毕设、代码
如需沟通交流,查看文章底部二维码


(1)脉冲触发等角度重采样与零相位滤波预处理:

针对变转速工况下谐波减速器振动信号非平稳导致故障阶次难以提取的问题,设计基于增量编码器脉冲的硬件等角度采样系统。编码器每圈输出2048个脉冲,每个脉冲上升沿触发力矩传感器采集一个数据点,确保每个机械周期内采样点数固定,消除转速波动影响。采集到的角域信号中仍含有高频噪声,采用零相位低通滤波器处理,截止频率设为阶次分析最高关注阶次的2.5倍。零相位通过向前向后滤波实现,消除了传统FIR滤波器的相位延迟,保证冲击特征在角域中的位置不变。在协作机器人关节平台实验中,设置转速从20rpm的线性扫描到80rpm,柔轮缺齿故障特征阶次3.2在平均角域谱中清晰可见,峰值信噪比达到38dB,传统定时采样方法仅18dB。实验对比了不同编码器分辨率的影响,512线编码器仍能提取到故障阶次但幅值下降23%,建议至少1024线。","

(2)角域平均谱与同步压缩短时傅里叶变换增强:

在获得等角度重采样信号后,采用角域同步平均增强方法。将多个机械周期的角域信号截取对齐后相加平均,周期性故障冲击幅值相干叠加而随机噪声非相干衰减,信噪比提升与平均次数平方根成正比。对平均后的信号进行同步压缩短时傅里叶变换,将时频平面中同一阶次附近的能量重新分配到瞬时频率轨迹上,显著提高阶次分辨率。在选择窗函数长度时,提出基于循环平稳度的自适应窗选择准则,最大化故障阶次与背景噪声的比值。在谐波减速器的复合故障(柔轮缺齿+柔性轴承外圈剥落)识别中,该方法能够同时分离出阶次3.2和阶次6.8两个故障特征,幅值比分别为1.00和0.72,故障模式分类器达到97%准确率。使用阶次谱的边带能量比作为健康指标,在加速寿命试验中该指标退化趋势与磨损进程高度相关(相关系数0.94)。","

(3)阶次跟踪与深度残差收缩网络的端到端诊断:

将等角度采样后的角域信号直接输入改进深度残差收缩网络IDRSN,实现变转速下的端到端故障诊断。IDRSN在残差模块后插入软阈值化子网络,自适应学习每个通道的阈值以消除与故障无关的噪声成分。在训练阶段,采用多转速混合数据集,包括20、40、60、80rpm四种稳定转速以及线性扫描变转速工况。网络输入为连续8个机械周期的角域信号片段(2048x8点),输出故障类型(柔轮裂纹、柔性轴承点蚀、刚轮磨损等6类)。在测试集中对从未训练过的65rpm工况,准确率达到95.2%,证明模型学习到了转速不变的阶次特征。进一步引入通道注意力与空间注意力双机制,使模型聚焦于故障冲击出现的角域位置。相比于使用传统频谱特征作为输入的SVM方法(准确率71%),IDRSN优势巨大。该模型最终部署到机器人关节控制器中,每秒钟诊断一次,累计运行超过2000小时,成功预警了3起柔轮疲劳故障,避免了整关节报废。

import numpy as np from scipy.signal import filtfilt, butter, stft from scipy.fft import fft, fftfreq def zero_phase_angular_filter(angular_signal, cutoff_cycle, samples_per_cycle): # cutoff_cycle: 截止阶次,单位为cycle/rev nyquist = samples_per_cycle / 2.0 normal_cut = cutoff_cycle / nyquist b, a = butter(4, normal_cut, btype='low') filtered = filtfilt(b, a, angular_signal) return filtered def angular_sync_average(signal, cycles): samples_per_cycle = len(signal) // cycles reshaped = signal[:samples_per_cycle*cycles].reshape(cycles, -1) avg = np.mean(reshaped, axis=0) return avg def synchrosqueezed_stft(x, fs, n_fft=512, hop_length=128): f, t, Zxx = stft(x, fs, nperseg=n_fft, noverlap=n_fft-hop_length) # 同步压缩简化算法:沿频率方向重分配 f_delta = f[1] - f[0] Tfr = np.zeros_like(Zxx, dtype=complex) for i in range(Zxx.shape[0]): phase_diff = np.angle(Zxx[i,:]) # 忽略实际差分 # 根据瞬时频率重分配 pass return f, t, Tfr class IDRSNBlock(nn.Module): def __init__(self, in_ch, out_ch, reduce=16): super().__init__() self.conv1 = nn.Conv1d(in_ch, out_ch, 3, padding=1) self.conv2 = nn.Conv1d(out_ch, out_ch, 3, padding=1) self.gap = nn.AdaptiveAvgPool1d(1) self.fc = nn.Sequential( nn.Linear(out_ch, out_ch//reduce), nn.ReLU(), nn.Linear(out_ch//reduce, out_ch), nn.Sigmoid() ) def forward(self, x): residual = x out = F.relu(self.conv1(x)) out = self.conv2(out) # 软阈值化 scale = self.fc(self.gap(out).squeeze(-1)).unsqueeze(-1) threshold = scale.mean(dim=1, keepdim=True) out = torch.sign(out) * torch.max(torch.abs(out) - threshold, torch.zeros_like(out)) return out + residual # 编码器脉冲模拟重采样 def encoder_trigger_resample(encoder_pulse_times, analog_data, target_points_per_rev=2048): # encoder_pulse_times: 每个脉冲的到达时间,analog_data: 连续采样信号 # 输出每个脉冲对应时刻的模拟信号值 interp = np.interp(encoder_pulse_times, np.arange(len(analog_data)), analog_data) return interp


如有问题,可以直接沟通

👇👇👇👇👇👇👇👇👇👇👇👇👇👇👇👇👇👇👇👇👇👇

http://www.jsqmd.com/news/723633/

相关文章:

  • 基于事件驱动的轻量级编码计划监控技能设计与实现
  • COW(Copy-on-Write):开抄开抄,哎嘿,我装的
  • Golang goroutine泄漏怎么排查_Golang协程泄漏排查教程【实战】
  • 认证榜单:2026年AI搜索行业GEO优化公司推荐与选型指南
  • 工控人出差必带的 10 样东西,少一样都麻烦
  • 告别传统天线:用紧耦合阵列(TCA)实现超宽带通信的保姆级原理拆解
  • FPGA并行计算与硬件加速实战解析
  • SAM2S:手术视频语义长期跟踪分割技术解析
  • 【2024边缘AI落地关键突破】:.NET 9原生支持TinyML推理+轻量服务网格,仅需128MB RAM即可部署
  • CMOS Ising机器在文本摘要中的高效优化应用
  • 【GraphWorX32】忘记最高权限密码解决方法(9.20)
  • MemOS:内存优先计算范式解析与应用实践
  • 别再到处找PDK了!手把手教你用ADS自带的DemoKit设计10GHz切比雪夫滤波器(附完整工程)
  • Spring Cloud 2027 云原生支持:构建现代化云应用
  • 自动化工作流:全平台社交媒体评论区数据采集与关键词筛选系统
  • 蓝桥杯单片机省赛避坑指南:从DS18B20到IIC,手把手拆解2021年真题的编程逻辑
  • 如何快速掌握w64devkit:Windows平台便携式C/C++开发套件终极指南
  • 南充婚姻家事法律服务现状及专业机构解析:南充保险理赔律师事务所,南充公司法务律师事务所,优选推荐! - 优质品牌商家
  • 查看单元测试用例覆盖率新姿势:IDEA 集成 JaCoCo
  • 从‘跑字典’到‘跑掩码’:John the Ripper 增量与掩码模式详解,搞定那些有规律的‘强密码’
  • 从Overleaf回迁本地:TexStudio搭配TexLive 2024的深度配置与效率提升指南
  • 2026年4月中央空调回收口碑推荐榜单 - 优质品牌商家
  • Scratch游戏物理引擎入门:用“描边法”和“二次检测”搞定坦克碰撞与反弹
  • SCALE技术:视觉-语言-动作模型的自适应优化方案
  • Android蓝牙开发踩坑记:用GATT连接经典蓝牙(EDR)的正确姿势,别再传那个参数了!
  • AutoAgents:多智能体协作如何重塑AI驱动的软件开发流程
  • Koodo Reader 2.3.2:跨平台电子书管理系统的架构解析与实战应用
  • GEO管理系统有哪些功能?一篇讲透企业必用核心能力
  • 代码—开发平台
  • Nature | Anthropic:蒸的不止数据,还有 “灵魂”