一个模型上下文协议服务器,将工业机械诊断直接带到像Claude这样的大型语言模型中,通过自然对话实现AI驱动的振动分析、轴承故障检测和预测性维护工作流程。
🔧 从振动数据和机器手册到可操作见解:将原始传感器数据转换为带有ISO合规检查、FFT分析、包络分析和ML异常检测的报告。由LLMs支持的PdM工作流。

🎯 真实轴承故障数据包含 - 21个生产质量的振动信号来自真实机器测试(3个健康,18个故障)
📊 专业HTML报告 - 带有自动峰值检测和频率标记的交互式Plotly可视化
🤖 ML异常检测 - 在健康基线上训练无监督/半监督模型(OneClassSVM/LOF),可选超参数调整
📏 ISO 20816-3合规性 - 内置行业标准振动严重性评估

🔍 高级诊断 - FFT频谱分析,轴承故障的包络分析,时域特征提取
<details> <summary><b>示例分析</b></summary>

🚀 零配置 - 使用样本数据开箱即用,自动检测元数据中的采样率
这是一个概念验证(PoC) - 展示了如何通过模型上下文协议使LLMs具备工业诊断能力的可行性演示。
这个PoC展示了潜力。现在我们需要您的专业知识来使其达到生产就绪状态。
您能帮助的方式:
参与方式:
为什么这很重要:
预测性维护对工业4.0至关重要。复杂的诊断和维护工作流程可以通过提供适当的上下文和工具与LLMs集成,以增强人类工程工作。通过模型上下文协议(MCP),我们连接了LLM推理能力和专用诊断工具,实现了专家级机械设备诊断的普及化,并使工业AI更易于全球工程师使用。
生成real_train/OuterRaceFault_1.csv的包络报告
结果:AI自动:
reports/envelope_OuterRaceFault_1_*.html评估real_train/OuterRaceFault_1.csv是否符合ISO 20816-3标准
结果:
1. 从test_pump_manual.pdf中提取规格
2. 计算1475 RPM下SKF 6205-2RS轴承的频率
3. 使用计算出的频率诊断signal_from_pump.csv中的轴承故障
结果:完全零知识诊断:
📚 更多示例:参见下方的使用示例部分或EXAMPLES.md以了解完整的工作流程
资源提供直接读取访问供Claude检查数据:
<details> <summary><b>📊 振动信号</b></summary>signal://list - 浏览所有可用信号文件及其元数据signal://read/{filename} - 直接读取信号数据(前1000个样本预览)使用:Claude可以直接读取信号,无需先调用工具。
</details> <details> <summary><b>📖 机器手册</b></summary>manual://list - 浏览可用设备手册(PDF/TXT)manual://read/{filename} - 读取手册文本(前20页)使用:Claude可以回答关于手册内容的任何问题,只需直接阅读即可。
</details>工具执行计算并生成输出:
<details> <summary><b>📊 分析及诊断</b></summary>analyze_fft - 自动峰值检测的FFT频谱分析analyze_envelope - 轴承故障检测的包络分析analyze_statistics - 时域统计指标(RMS,峭度因子,峰度等)evaluate_iso_20816 - ISO 20816-3振动严重性评估diagnose_bearing - 引导式的6步轴承诊断工作流diagnose_gear - 基于证据的齿轮故障诊断工作流extract_features_from_signal - 从振动数据中提取17+统计特征train_anomaly_model - 仅在健康数据上训练新颖性检测模型(OneClassSVM/LOF),可选半监督超参数调整predict_anomalies - 在新信号中检测异常并给出置信分数generate_fft_report - 带有峰值表的交互式FFT频谱HTML报告generate_envelope_report - 带有轴承故障标记的包络分析报告generate_iso_report - 带有区域可视化的ISO 20816-3评估list_html_reports - 列出所有生成的报告及其元数据get_report_info - 获取报告详细信息而不加载整个HTML</details> <details> <summary><b>📖 机器文档阅读器</b></summary>💡 所有报告都是交互式Plotly可视化,并保存在
reports/目录中
list_machine_manuals - 列出可用设备手册(PDF/TXT)extract_manual_specs - 从手册中提取轴承、RPM、功率(带缓存)calculate_bearing_characteristic_frequencies - 根据几何形状计算BPFO/BPFI/BSF/FTFread_manual_excerpt - 读取手册文本摘录(可配置页面限制)search_bearing_catalog - 在本地目录中搜索轴承几何形状(20+常见轴承)MCP资源:
manual://list - 浏览可用的手册manual://read/{filename} - 为LLM上下文读取手册</details> <details> <summary><b>🔍 数据管理</b></summary>🎯 上传泵手册 → 提取轴承规格 → 自动计算频率 → 诊断信号
list_signals - 浏览所有可用信号文件及其元数据generate_test_signal - 创建用于测试的合成信号该系统遵循结合资源(直接数据访问)和工具(计算处理)的混合MCP架构:

┌─────────────────────────────────────────────────────────────┐
│ CLAUDE / LLM客户端 │
└────────────────────┬────────────────────────────────────────┘
│
▼
┌─────────────────────────────────────────────────────────────┐
│ MCP服务器(FastMCP) │
│ ┌──────────────────────────────────────────────────────┐ │
│ │ 资源(直接数据访问) │ │
│ │ ┌────────────────────────────────────────────────┐ │ │
│ │ │ 振动信号 │ │ │
│ │ │ • signal://list │ │ │
│ │ │ • signal://read/{filename} │ │ │
│ │ └────────────────────────────────────────────────┘ │ │
│ │ ┌────────────────────────────────────────────────┐ │ │
│ │ │ 机器手册 │ │ │
│ │ │ • manual://list │ │ │
│ │ │ • manual://read/{filename} │ │ │
│ │ └────────────────────────────────────────────────┘ │ │
│ └──────────────────────────────────────────────────────┘ │
│ ┌──────────────────────────────────────────────────────┐ │
│ │ 工具(分析及处理) │ │
│ │ • FFT,包络,ISO 20816-3 │ │
│ │ • ML异常检测 │ │
│ │ • 报告生成(HTML) │ │
│ │ • 手册规格提取 │ │
│ │ • 轴承频率计算 │ │
│ │ • 轴承目录搜索 │ │
│ └──────────────────────────────────────────────────────┘ │
└────────────────────┬────────────────────────────────────────┘
│
┌────────────┴────────────┐
▼ ▼
┌──────────────────┐ ┌──────────────────────────────────┐
│ 信号分析模块 │ │ 文档阅读模块 │
│ • FFT引擎 │ │ ┌────────────┐ ┌────────────┐ │
│ • 包络 │ │ │ PDF提取 │ │ ISO公式 │ │
│ • 滤波器 │ │ │ (PyPDF2) │ │ BPFO/BPFI │ │
│ • 统计 │ │ └────────────┘ └────────────┘ │
│ • ML模型 │ │ ┌─────────────────────────────┐ │
│ • Plotly图表 │ │ │ 轴承目录数据库 │ │
│ │ │ │ • 20+ ISO轴承 │ │
└────────┬─────────┘ └────────┬─────────────────────────┘
│ │
▼ ▼
┌─────────────────────────────────────────────────────────────┐
│ 本地文件系统 │
│ ┌──────────────────────┐ ┌──────────────────────────┐ │
│ │ data/signals/ │ │ resources/ │ │
│ │ ├── real_train/ │ │ ├── machine_manuals/ │ │
│ │ ├── real_test/ │ │ ├── bearing_catalogs/ │ │
│ │ └── samples/ │ │ ├── datasheets/ │ │
│ └──────────────────────┘ │ └── cache/ (自动) │ │
│ ┌──────────────────────┐ └──────────────────────────┘ │
│ │ reports/ │ ┌──────────────────────────┐ │
│ │ • FFT报告 │ │ models/ │ │
│ │ • 包络报告 │ │ • 训练的ML模型 │ │
│ │ • ISO报告 │ │ • 缩放器,PCA │ │
│ └──────────────────────┘ └──────────────────────────┘ │
└─────────────────────────────────────────────────────────────┘
</details>
关键特性:
# 1. 克隆仓库
git clone https://github.com/LGDiMaggio/predictive-maintenance-mcp.git
cd predictive-maintenance-mcp
# 2. 运行自动化设置
python setup_venv.py
# 3. 激活环境
.venv\Scripts\activate # Windows
source .venv/bin/activate # Linux/macOS