机械振动健康快速筛查

SKILL研究检索
研究检索 未标注权限 许可证不明确
安装这个技能

旋转机械振动健康快速筛查(含鲁棒接入层)。当用户提供任意格式的振动信号文件(CSV/NPY/MAT/WAV/XLSX/Parquet 等),即便采样率、单位、转速未知,也能给出 ISO 20816-3:2022 健康度判定。本 Skill 自带"接入层"——自动识别格式、嗅探元数据、单位归一、与用户确认低置信项——再调用核心 ISO 评估算法,输出 A/B/C/D 区 + 健康度评分(0-100)。适用于任意联轴工业旋转设备(电机/泵/风机/压缩机/汽轮机)的点检、巡检、现场快速健康初筛。

一句话选型结论

按资料字段整理

机械振动健康快速筛查是研究检索类的 Agent Skill,安装方式未标注,权限级别未标注,许可证不明确,有可直接复制的安装命令。技能本质是给模型读的说明书,效果取决于模型与客户端;装完先用一个小任务验证,再放进正式流程。

分类研究检索 安装方式未标注 权限级别未标注权限 许可证许可证不明确
累计安装 未标注 本周 未标注
GitHub 星标 未标注 仓库 未标注
下载量 未标注 技能市场下载数
权限级别 未标注权限 安装前请确认风险范围
许可证 许可证不明确 未说明

安装

未标注
在支持 Skills 的客户端里执行,装完问一句「你有哪些技能」验证
skillhub install user_09377e9a/vibration-quick-screen
  1. 1
    确认客户端支持

    确认你的客户端支持 Skills(Claude、Codex、Cursor 等),并升级到较新的版本。

  2. 2
    拿到技能文件

    执行上面的命令安装;也可以把仓库里的 SKILL.md 手动放进客户端的 skills 目录。

  3. 3
    刷新技能列表

    重新打开客户端,或刷新技能列表,让新放进来的技能被加载。

  4. 4
    验证是否生效

    问一句「你有哪些技能」,确认列表里出现它,再拿一个小任务试跑。

技能档案

研究检索
字段来自技能仓库与公开索引,中文说明由本站标注
作者 / 维护方user_09377e9a仓库 未标注 · 版本 未标注
宿主客户端未标注技能可被这些客户端加载
安装方式未标注安装包 community
权限级别未标注权限安装前请确认风险范围
许可证未说明许可证不明确,商用前请自行确认条款
仓库可用性available技能仓库当前是否可访问
最近核验未标注上游最后核验时间 · 数据更新 1791705562
正文体量13.5 KBSKILL.md 原文大小,越大说明说明书写得越细

典型使用场景

3 类
按分类整理的常见用法,具体以 SKILL.md 为准
查资料并整理出处

让模型按主题查资料,并把引用来源整理成清单。

网页与文献要点提炼

把长文、论文、网页压成能直接看的要点。

竞品与行业汇总

按关键词汇总竞品动态与行业信息。

选择建议

装之前先看这几条
按条目字段给出的判断,不替你决定用不用

值得选的地方

  • 有可直接复制的安装命令,不用自己翻文档找入口。

先想清楚的地方

  • 没有标注权限级别,实际能做什么要装好后确认。
  • 许可证不明确,商用或二次分发前先到仓库确认条款。
  • 没有做站内核验,内容以作者仓库为准。
  • 技能只是说明书,实际效果取决于模型与客户端,装完先用小任务试一遍。

更适合

  • 需要在研究检索场景里给模型补一套做法的人。
  • 愿意先读一遍 SKILL.md、确认它会让模型做什么的人。

不太适合

  • 对许可证要求很严、必须明确可商用的人。
  • 只想装完就自动变强、不打算看说明书的人。

同类对比

6 个同类
同分类里挑最接近的几条,字段以各自详情页为准
技能权限级别安装方式累计安装宿主客户端安装命令
机械振动健康快速筛查当前 未标注权限 未标注 未标注 未标注 有
寻找技能 浏览器控制 GitHub 仓库 3120.0 万 Codex、Claude、Cursor 有
自我改进 Agent 接触敏感数据 ClawHub 市场 1646.4 万 OpenClaw 有
灵魂追踪 联网访问 GitHub 仓库 758.9 万 Codex、Claude、Cursor 有
自我完善 联网访问 ClawHub 市场 682.9 万 OpenClaw 有
微软代工厂 调用外部服务 GitHub 仓库 661.4 万 Codex、Claude、Cursor 有

SKILL.md 全文

13.5 KB
模型实际读到的说明书原文,来自技能仓库

旋转机械振动健康快速筛查 v1.2.0

本 Skill 是 "通用鲁棒振动健康筛查" ——评委从 U 盘随手拷一个振动文件过来,不管格式、单位、采样率是否标注,都要给出一个 有依据 的 ISO 20816-3 健康判定。

核心设计:单点 + 通用

  • 单点:只做"振动健康筛查"这一件事(不做轴承故障定位、不做齿轮诊断、不做寿命预测)
  • 通用:接入层能吃 9 种格式 + 元数据三级回退 + 单位归一,遇到没见过的格式时由 Claude 现场写代码

标准依据(严格)

项目 内容
主标准 ISO 20816-3:2022 Mechanical vibration — Part 3
中国国标 GB/T 6075.3(等同采用 ISO 20816-3)
适用范围 功率 > 15 kW,转速 120–30000 RPM 的联轴工业机械
评估量 RMS 振动速度(mm/s)
有效频率范围 10 Hz – 1000 Hz(< 600 RPM 设备扩展到 2 Hz – 1000 Hz)
评估前提 稳态运行工况,不适用于启停瞬态

何时调用此 Skill

满足任一即触发:

  • 用户上传 任意格式 的振动信号文件,询问设备是否健康
  • 关键词:振动筛查 / 健康度 / 设备状态 / 健不健康 / ISO 20816 / 振动区 / 点检 / 巡检 / RMS 速度 / 振动严重度
  • 现场评审、设备健康看板、批量信号初筛
  • 任意旋转机械(电机/泵/风机/压缩机/汽轮机/发电机)的健康初筛

> 注:本 Skill 是 筛查工具,不做故障定位。如用户要识别具体故障类型(外圈/内圈/齿轮等),应转用 bearing-fault-diagnosis 或 gear-diagnosis。


工作流(严格按此顺序)

四个脚本配合完成一次筛查。所有脚本输出 JSON,可串联调用。

Step 1:解析信号文件

python scripts/load_signal.py &lt;用户给的文件&gt;
# 例:python scripts/load_signal.py /data/U盘里的奇怪.csv

返回字段:
- signal_path — 归一后的 NPY 临时文件路径(后续步骤都用这个)
- n_samples — 样本数
- format — 检测到的格式
- fs_from_file — 文件头自带的采样率(仅 WAV/TDMS 有),可为 null
- amplitude_stats — RMS / peak / mean / min / max(供 Step 2 用)
- embedded_metadata — 文件内嵌的元数据(如 MAT struct 的 bearing.sr/rate),自动写入 &lt;signal_path&gt;.meta.json sidecar,Step 2 自动读取
- candidates — 仅 MAT 多变量时存在;若有多个候选变量,先和用户确认选哪个
- warnings — 必须告诉用户的提示(多列 CSV 选哪列、MAT 多变量等)

特殊情况:
- 不支持的格式(status=error 且提示)→ 由你(Claude)现场写 Python 读取(用 nptdms/librosa/或自定义解析),保存为 NPY 后从 Step 2 继续
- MAT 多个候选变量 → 用 --mat-var &lt;name&gt; 重跑(支持嵌套路径如 bearing.gs),或先问用户

Step 2:补全元数据

python scripts/infer_metadata.py \
    --original &lt;用户原始文件路径&gt; \
    --signal &lt;Step 1 输出的 signal_path&gt; \
    [--fs-user &lt;用户明确给的采样率&gt;] \
    [--unit-user &lt;用户明确给的单位&gt;] \
    [--rpm-user &lt;用户明确给的 RPM&gt;]

> 重要:脚本会自动读取 &lt;signal_path&gt;.meta.json sidecar(Step 1 写的),把文件内嵌的 fs/rpm 等元数据无缝接入——你不需要手动传递。

返回:{fs, unit, canonical_unit, rpm, confidence, reasoning, needs_user_confirm, warnings}

多级回退(优先级从高到低):
1. --*-user 用户明确指定
2. 同目录的 &lt;stem&gt;_metadata.json 旁路文件(沿用主项目约定)
3. Step 1 写的 sidecar .meta.json(含 MAT struct 内的 sr/rate、WAV 头的 fs 等)
4. 文件名正则(_fs25600 / _25kHz / _1800rpm / _mms / _g)
5. 信号幅值启发(含 g vs m/s² 模糊带的诚实低置信标注)
6. 兜底默认 + 显式警告

Step 3:与用户确认(仅当 needs_user_confirm 非空)

如果 Step 2 返回的 needs_user_confirm 包含 fs 或 unit,必须在调用 Step 5 之前与用户对话确认,模板:

> "我从这个文件中没找到明确的采样率信息,按工业常见值默认假设为 25600 Hz——如果实际不是请告诉我。
>
> 信号的 RMS 是 0.99,峰值 6.2,单位我判断不出来是 g 还是 m/s²(这两种在这个幅值范围都合理)。请问采样率是多少?单位是哪个?"

仅当 confidence=high 时可以跳过确认直接出结果。

Step 4:单位归一(仅当 canonical_unit ∉ {g, mm/s})

python scripts/convert_unit.py \
    --signal &lt;Step 1/2 后的 NPY&gt; \
    --from &lt;canonical_unit&gt; \
    --to &lt;g 或 mm/s&gt; \
    [--fs &lt;采样率,跨类时必传&gt;]

返回新的 signal_path。常见路径:m/s^2 → g、μm → mm/s、mil → mm/s。

Step 5:调用 ISO 评估

python scripts/screen.py \
    --信号 &lt;最终的 NPY 路径&gt; \
    --采样率 &lt;Step 2 确定的 fs&gt; \
    --单位 &lt;g 或 mm/s&gt; \
    [--转速 &lt;RPM&gt;] \
    [--机器组别 1 或 2]

Step 6:组织给用户的回答

必须包含:
1. 整体判定 + 健康度评分(永远有值)—— 用 emoji 标识,如 🟡 监视 / 评分 72
2. ISO 区 + 阈值依据
3. 关键指标(RMS、峭度、峰值因子、主频)
4. 算法做的所有自动处理:
- 选了哪一列(如 CSV 多列时)
- 用了哪些元数据来源(sidecar JSON / filename / amplitude heuristic)
- 走了什么降级路径
- 单位转换过程
5. 可信度等级(高/中/低)
6. 建议行动
7. 报告字段状态(v1.2.0 暂不生成 HTML,_报告.HTML 为 null)


不规范输入的处理决策树

情形 处置
不支持的格式(如 .tdms) 你现场用 nptdms 读,存 NPY,从 Step 2 继续
MAT 多个候选变量 用 --mat-var &lt;name&gt; 重跑;或问用户
CSV 多列且没有列名暗示 load_signal 已按"列名+方差+单调性"启发选一列;告诉用户选了哪列、其他候选有哪些
采样率未知 infer_metadata 默认 25600 Hz + 低置信;必须问用户确认
单位未知(且幅值模糊) infer_metadata 默认 g + 低置信;必须问用户
单位是 m/s² / μm / mil 等 自动走 Step 4 convert_unit.py
转速未知 不用问用户,screen.py 内部会从频谱反推
信号过短 / 噪声大 / NaN 多 screen.py 内部已有降级路径,结果里会有 _警告 字段
用户提供错误的机器组别(3 或 4) 告诉用户 ISO 20816-3 只有 Group 1 和 Group 2

ISO 20816-3 机器组(严格按标准 5.2 节)

Group 1:大型机器
- 功率 > 300 kW 或电机轴高 H ≥ 315 mm
- 通常采用滑动轴承
- 转速 120 – 30000 RPM

Group 2:中型机器(最常见,默认值)
- 功率 15 kW < P ≤ 300 kW 或电机轴高 160 mm ≤ H < 315 mm
- 通常采用滚动轴承
- 转速通常 > 600 RPM

> 严格只有 2 个组。早期 ISO 10816 有更多分组但已被 20816-3 合并简化。

支撑分类(rigid vs flexible)

按机器+基础最低自然频率与主激振频率(通常是转频)的比例:

  • 自然频率 ≥ 1.25 × 主激振频率 → rigid(刚性)
  • 其它情况 → flexible(柔性)

> 经验:中型电机/水泵/风机 → rigid;大型汽轮发电机(> 10 MW)/立式机组 → flexible。


ISO 评估阈值表(Annex A)

Group 1(大型)

支撑 A/B B/C C/D
Rigid 2.3 4.5 7.1
Flexible 3.5 7.1 11.0

Group 2(中型,最常用)

支撑 A/B B/C C/D
Rigid 1.4 2.8 4.5
Flexible 2.3 4.5 7.1

> 单位均为 RMS 速度 mm/s。

健康度评分对应表

ISO 区 评分 业务动作
A 85–100 例行巡检
B 60–84 缩短监测周期,2–4 周复测
C 35–59 1–2 周内详细诊断
D 0–34 立即停机检查
信号质量不足 — 不下结论,重新采集

算法鲁棒性承诺

  1. 永远给 ISO 区 — A/B/C/D 永远有值(或明确 不可评估 + 原因)
  2. 信号长度自适应 — 0.5 秒到 30 分钟均能处理;过短时降级到时域评估
  3. 转速未知反推 — 从频谱主峰反推 1x 频率(含谐波一致性校验)
  4. 异常采样清洗 — NaN/Inf 线性插值;超 5% 时告警
  5. 异常采样鲁棒 — NaN/Inf 会清洗或降级为“不可评估”;当前版本不单独计算 SNR
  6. 永不超时 — 50 MB 以内单文件 < 5 秒响应

不要做的事

  • ❌ 不要在 needs_user_confirm 非空时直接出结果,必须先问用户
  • ❌ 不要静默接受算法降级或元数据猜测,必须把过程告诉用户
  • ❌ 不要把"信号质量不足"包装成"机器正常"
  • ❌ 不要在机器组别参数填入 3 或 4——ISO 20816-3 只有 Group 1 和 Group 2
  • ❌ 不要承诺已生成 HTML 报告;v1.2.0 仅返回 _报告.HTML = null
  • ❌ 不要给具体故障类型结论("外圈故障"等)——本 Skill 是筛查工具
  • ❌ 不要在 Step 4 之前调用 Step 5 —— screen.py 只接受 g 或 mm/s
  • ❌ 不要直接 import 主项目 predictive-maintenance-mcp/src/signal_loader.py——Skill 必须自包含可独立分发

给用户回答的模板(高置信场景)

> ✅ 整体判定:健康(A 区) 健康度评分:89 / 100
>
> 📐 ISO 20816-3:2022
> - 区:A — 新机器交付水平,长期运行健康
> - RMS 速度:1.0 mm/s
> - 适用组:Group 2 rigid(A/B=1.4,B/C=2.8,C/D=4.5)
> - 阈值依据:ISO 20816-3:2022 Table A.2
>
> 📊 关键指标
> RMS=0.12 g,峭度=2.8,峰值因子=3.1,主频=30 Hz
>
> 🔧 算法处理
> - 采样率 25600 Hz 来自文件名解析(高置信)
> - 单位 g 来自旁路 metadata.json(高置信)
> - 转速由频谱主峰反推:1800 RPM
> - 无降级路径
>
> 💡 建议行动:例行巡检即可,30 天后复测对比
>
> 📄 HTML 报告:当前版本暂未生成(_报告.HTML = null)

给用户回答的模板(低置信场景)

> 我看了你这个文件,但有几个信息需要你确认:
>
> 1. 采样率不确定:文件里没有标注,文件名也没有暗示。我先按工业常见值 25600 Hz 算了一次——如果你实际用的是 97656 Hz 或别的,请告诉我,我重算。
> 2. 单位不确定:信号 RMS=0.99、峰值 6.2,在 g 和 m/s² 之间都合理——前者意味着 ISO C 区(可疑),后者意味着 A 区(健康)。结论会反过来,请务必确认。
>
> 暂按 (fs=25600 Hz, unit=g) 给一份参考结果:
> 🟠 整体判定:可疑(C 区) 评分:48
> ...


运行架构(v1.2.0 本地版)

所有评估在 Python 进程内完成,无需任何后端服务:

组件 位置 职责
scripts/iso_engine.py Skill 自带 ISO 20816-3 评估核心算法(移植自主项目,已裁剪)
scripts/screen.py Skill 自带 CLI 入口,本地调用 iso_engine.evaluate()
Python 依赖 requirements.txt numpy / scipy / pandas / openpyxl / h5py / pyarrow

> 不依赖任何 HTTP 服务,无 daemon,无域名/端口。Skill 完全自包含可独立分发。
> 部署到 71 服务器只需 pip install -r requirements.txt,详见 INSTALL.md。


算法依据

维度 标准
诊断架构 ISO 13374 六块诊断体系
严重度评估 ISO 20816-3:2022 Annex A
加速度→速度积分 时域积分 + 4 阶 Butterworth 高通 @2 Hz 去趋势
转速反推 频谱主峰检测 + 谐波一致性校验
信号清洗 NaN/Inf 线性插值,5% 阈值告警
变化趋势 ISO 20816-3 Criterion II(变化 > B/C 边界 25% 视为显著)

参考资料

  • scripts/load_signal.py — 多格式信号加载(9 种格式 + MAT 嵌套 struct 递归 + CSV 智能选列)
  • scripts/infer_metadata.py — 元数据嗅探(六级回退 + 自动 sidecar)
  • scripts/iso_engine.py — ISO 20816-3 评估算法(本地化,无 HTTP 依赖)
  • requirements.txt — Python 依赖清单
  • INSTALL.md — 71 服务器部署指南
  • scripts/convert_unit.py — 单位归一(加速度 / 速度 / 位移)
  • scripts/screen.py — ISO 20816-3 评估调用
  • references/api_spec.md — 历史 API 规范(v1.2.0 已切换到本地,仅供字段语义参考)
  • references/output_format.md — 筛查结果字段含义
  • examples/ — 典型场景示例(含 4 个 v1.2.0 新增的"接入层鲁棒"场景)

常见问题

5 问
答案由本站依据条目字段整理
机械振动健康快速筛查怎么安装?

在支持 Skills 的客户端里执行:skillhub install user_09377e9a/vibration-quick-screen。安装方式为未标注。装完刷新技能列表或重开客户端。

机械振动健康快速筛查支持哪些客户端?

资料没有标注宿主客户端,但只要客户端支持 Skills(Claude、Codex、Cursor 等),一般都能加载。

机械振动健康快速筛查权限高吗,安全吗?

权限级别为未标注权限。安装前先看它会读取或写入哪些内容。

机械振动健康快速筛查收费吗?

本站不代收费用,也没有标注具体价格。是否收费取决于技能本身和所用的模型或客户端,正式使用前按作者说明确认。

机械振动健康快速筛查用什么许可证?

许可证标注为 未说明(许可证不明确)。商用或二次分发前请到仓库确认条款原文。

热门专题

按场景挑技能
全部专题 →

技能内容以作者仓库为准;分类、权限级别与许可证状态的中文说明为中文整理,最近核验 未标注。