机械寿命预测(基于NASA C-MAPSS数据的剩余使用寿命RUL预测,Python代码,CNN_LSTM模型,有详细中文注释)

2023-10-27

1.效果视频:机械寿命预测(NASA涡轮风扇发动机剩余使用寿命RUL预测,Python代码,CNN_LSTM模型,有详细中文注释)_哔哩哔哩_bilibili

环境库版本:

2.数据来源:https://www.nasa.gov/intelligent-systems-division

数据文件夹 

数据介绍: 

当前基于机器学习的剩余寿命预测方法的研究异常火爆,其中C-MAPSS数据集在该领域的使用非常广泛,为了方便各位同仁的学习和理解,借此文章向大家简单介绍一下。
1)首先说明,C-MAPSS数据集为模拟数据。这是由于航空发动机的构造复杂,其气路变化复杂多变;并且航空发动机的运行数据通常作为各个航空公司的保密数据,一般不易获取。因此由NASA使用Commercial Modular Aero-Propulsion System Simulation软件生成了该套数据集,其目的是结合发动机的运行特点,来测试不同的模型性能。
2)NASA提出的涡扇引擎退化监测数据集(C-MPASS)的结构简图如下所示。主要构件包含风扇、低压压气机(LPC)、高压压气机(HPC)、燃烧室、高压涡轮(HPT)、低压涡轮(LPT)及其喷管。


 其子数据集共四个,每个子类都有不同数量的工况条件和故障状态。C-MAPSS数据如下图所示

 当前的论文研究中,主要以单工况、单故障状态的FD001数据集为主(笔者认为该数据集相对简单,相比于多工况数据,不需要额外的数据处理)。以FD001为例,其进一步分为训练和测试子集,其包含1种故障状态和1种工况。训练集Train_FD001.txt收录了100台保持全寿命循环状态的发动机参数信息;测试集Test_FD001.txt收录了100台非全寿命循环状态的发动机参数信息,即仅包含发动机故障前某个时间终止的多个传感器数据,根据给定的运行参数对每台发动机的RUL进行实时的预测;RUL_FD001.txt中收录了测试集中100台发动机的RUL真实值。每台发动机的参数信息包含3种工作状况监测参数(飞行高度,马赫数,油门杆角度)和21个性能监测参数,其24个传感器监测参数如下图所示。

单工况数据集
1)单工况。笔者认为,所谓的单工况可以理解为飞机巡航时所记录的时间节点,大致可以认为飞机巡航时其工况参数(飞行高度、马赫数和油门杆角度)是不变化的。
2)随机选取FD001训练数据集中的发动机3个性能参数进行可视化分析,如下图所示。图中横坐标代表发动机的运行循环数(所谓运行循环数,是指发动机从出厂到下发的过程中,记录发动机性能参数变化的不同时间节点。直观来讲就是:并非发动机从运行到下发的每一个时间点都记录,只是记录的各个飞行时间段中的某些时间节点。),纵坐标代表各个参数的变化量。其中不同的颜色代表不同的发动机。由图可见,单工况的数据在运行周期内具有明显的单调变化特性,这更有助于机器学习模型对于故障特征的判断。

多工况。基于前面的理解,多工况可以理解为包含了发动机从滑跑、起飞、巡航和降落的不同阶段。由于工况的不断变化,其参数的变化特点也更为复杂。
1)随机选取FD002训练数据集中的发动机三个性能参数进行可视化分析,如下图所示。由图可见。多工况的性能参数在运行周期中没有显现出明显的单调特性,这不利于机器学习。相比于单工况,机器学习模型不能有效的学习到关键的退化特征。更详细的介绍可参照论文(赵洪利,张奔,张青.基于工况聚类和残差自注意力的发动机剩余使用寿命预测[J].航空科学技术,2023,34(04):31-40.DOI:10.19452/j.issn1007-5453.2023.04.004.)

3.模型

 4.CNN_LSTM模型的效果

预测值与真实值对比 

对项目感兴趣的,可以关注最后一行

from matplotlib import pyplot as plt
plt.rcParams['font.sans-serif']=['simhei'] # 添加中文字体为黑体
plt.rcParams['axes.unicode_minus'] =False
# -*- coding: utf-8 -*-

import numpy as np  # 导入NumPy库,用于进行数值计算
import pandas as pd  # 导入Pandas库,用于数据处理和CSV文件读写


#代码和数据集的压缩包:https://mbd.pub/o/bread/ZJ6Wlp9s

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

机械寿命预测(基于NASA C-MAPSS数据的剩余使用寿命RUL预测,Python代码,CNN_LSTM模型,有详细中文注释) 的相关文章

随机推荐

  • idea 自定义注释 -- 类注释 方法注释

    自定义注释可以按照我们自己喜欢的风格 快速创建注释 废话不多 动起手来 一 在setting界面 根据流程进行设置 1 类注释 设置自定义注释格式 author USER createTime DATE TIME description 2
  • c语言高精度加法

    今天遇到一道题 让我写高精度加法 钻研了一会 写下了代码 include
  • [深入研究4G/5G/6G专题-57]: L3信令控制-6-什么是无线承载DRB Profile

    目录 第1章 什么是DRB Profile 1 1 什么是DRB 1 2 什么是DRB Profile 1 3 DRB Profile的作用 1 4 QCI profile
  • PIM-SM协议初探(一)路由角色选举

    PIM是Protocol Independent Multicast 协议无关组播 的简称 表示可以利用静态路由或者任意单播路由协议 包括RIP OSPF IS IS BGP等 所生成的单播路由表为IP组播提供路由 组播路由与所采用的单播路
  • html输出xml纯文本,将XML转换为纯文本

    我的目标是构建一个引擎 它使用最新的HL7 3 0CDA文档 并使它们与HL7 2 5向后兼容 后者是一个完全不同的野兽 CDA文档是一个XML文件 当与匹配的XSL文件配对时 它会呈现适合最终用户显示的HTML文档 在HL7 2 5中 我
  • “定制化人才” 的悲哀

    这篇博客写得就是自己现阶段的一些感悟 今天看到一个微信公众号的文章推送 标题就是 24岁后 你更应该逼自己系统性成长 只是看到这个标题就很有感触啊 因为还有一个月就24了 但是很迷茫 完全不知道自己的竞争力在哪里 可能唯一的优势大概就是前后
  • REDIS19_zipList压缩列表详解、快递列表 - QuickList、跳表 - SkipList

    文章目录 压缩列表 zipList 快递列表 QuickList 跳表 SkipList 压缩列表 zipList ZipList是一种特殊的 双端链表 由一系列特殊编码的连续内存块组成 可以在任意一端进行压入 弹出操作 并且该操作的时间复
  • CSRF(跨站请求伪造)详细说明

    Cross Site Request Forgery CSRF 中文一般译作跨站请求伪造 经常入选owasp漏洞列表Top10 在当前web漏洞排行中 与XSS和SQL注入并列前三 与前两者相比 CSRF相对来说受到的关注要小很多 但是危害
  • java符号解释大全,太完整了!

    微服务是什么 微服务起源于2005年Peter Rodgers博士在云端运算博览会提出的微Web服务 Micro Web Service 根本思想类似于Unix的管道设计理念 2014年 由Martin Fowler 与 James Lew
  • python中使用pymongo操作mongo

    MongoDB是由C 语言编写的非关系型数据库 是一个基于分布式文件存储的开源数据库系统 其内容存储形式类似JSON对象 它的字段值可以包含其他文档 数组及文档数组 非常灵活 在这一节中 我们就来看看Python 3下MongoDB的存储操
  • Hibernate学习笔记 多表映射

    前面说了Hibernate的单表映射 由于是实体类和数据表之间一对一的映射 所以比较简单 现在就来说说多表映射 这需要涉及到多个实体类和数据表之间的关系 因此稍微复杂一点 建立实体类 我建立了两个实体类 一个作者类 一个文章类 其他方法都忽
  • Pytorch使用DDP加载模型时出现多进程在GPU0上占用过多显存的问题

    使用pytorch DDP DistributedDataParallel 分布式数据并行 可以进行多卡训练 涉及到模型保存与加载问题时 一般会涉及到以下两种需求 将多卡训练的模型保存到磁盘 从磁盘加载模型 在多卡上继续训练 如何无bug且
  • MySQL server安装流程

    1 进入到mysql官网MySQL 这里显示的是32位 但是实际下载的时候也会下载64位的 双击进行安装 然后一路点击next 配置保持默认 然后点击next 2 配置环境变量 如果想要在dos面板中使用mysql命令 需要到系统变量pat
  • 【牛客网】找出字符串中第一个只出现一次的字符

    题目描述 找出字符串中第一个只出现一次的字符 输入描述 输入一个非空字符串 输出描述 输出第一个只出现一次的字符 如果不存在输出 1 示例 输入 asdfasdfo 输出 o 完整代码 include
  • AddString[LeetCode]

    class Solution public string addStrings string num1 string num2 string res int m num1 size 1 记录字符串num1最后一位 int n num2 si
  • 阿里云飞天系统

    阿里云飞天系统 有幸在阿里云飞天部门工作几年 下面给出基础架构一览
  • 能拟合任何函数的神经网络只是个分段线性函数

    原文 https mp weixin qq com s XA1zS9bvgAfRkmTh e 78g 阅读本文 你可以理解 能逼近 拟合 任何函数只是个分段线性函数 让你深刻理解神经网络能力的边界 消除你对神经网络的神秘感 需要你具备的知识
  • PMOS管经典开关电路-PMOS开关典型电路工作原理及分析-KIA MOS管

    PMOS管经典开关电路 下图是两种PMOS管经典开关电路应用 其中第一种NMOS管为高电平导通 低电平截断 Drain端接后面电路的接地端 第二种为PMOS管典型开关电路 为高电平断开 低电平导通 Drain端接后面电路的VCC端 首先要进
  • 在本地配置nginx配置负载均衡

    首先建一个工程 确保在idea上能跑通 2 把这个项目打成war包 在tomcat下跑 1 为了不影响idea项目的正常运行 我在复制一个tomact 命名为tomcat 1 这个时候是要给tomcat 1配置环境变量的 有两种配置方案 一
  • 机械寿命预测(基于NASA C-MAPSS数据的剩余使用寿命RUL预测,Python代码,CNN_LSTM模型,有详细中文注释)

    1 效果视频 机械寿命预测 NASA涡轮风扇发动机剩余使用寿命RUL预测 Python代码 CNN LSTM模型 有详细中文注释 哔哩哔哩 bilibili 环境库版本 2 数据来源 https www nasa gov intellige