关于 SRS Residual Gas Analyzer
SRS Residual Gas Analyzer 是面向 SRS RGA100、RGA200 和 RGA300 四极杆质谱仪的 MCP 服务。它测量气体分压和谱图,支持氦气检漏及初步气体识别,并为灯丝、CDEM 和除气操作设置压力联锁。
主要功能
- 01测量分压和总压力
- 02记录模拟谱和直方图谱
- 03根据主要峰识别可能气体
- 04执行有时长限制的氦气检漏
- 05为危险操作执行压力限制
适用场景
- 01检查真空系统中的残余气体
- 02持续监测指定质荷比
- 03检查可疑接头是否漏氦
- 04筛查谱图中的常见气体或污染物
MCP 相关
向 MCP 客户端提供分析仪状态、压力测量、谱图、气体识别、检漏、设置和安全控制工具。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
uvx labmcp-srs-rgaLABMCP_ADDRESSInstrument address, e.g. serial:///dev/ttyUSB0 or tcp://192.168.1.50:5025LABMCP_SIMULATESet to 1 to use the built-in simulator (no hardware)LABMCP_READ_ONLYSet to 1 to disable all state-changing toolsLABMCP_LIMITSSafety limit overrides, e.g. max_temperature_c=80本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。
工具
18收录的工具列表 · 更新于 2 周前
此工具无需参数。
详细介绍
SRS 残余气体分析仪:MCP 服务
让 AI Agent 读取真空系统中的残余气体成分,使用 Stanford Research Systems RGA100、RGA200 或 RGA300 四极杆质谱仪:指定 m/z 的分压、模拟和直方图谱、总压力、氦气检漏,以及气体的初步识别(水、氢气、氮气/CO、氧气、氩气、CO2、碳氢化合物)。服务端压力联锁可保护灯丝、电子倍增器(CDEM)和离子源除气功能。
| 软件包 | labmcp-srs-rga |
| 仪器 | SRS RGA100(1-100 amu)、RGA200(1-200 amu)、RGA300(1-300 amu),可带或不带 CDEM 选件(01) |
| 接口 | RS-232(固定 28,800 波特率、8N1、RTS/CTS)、通过串口转以太网适配器或 SRS RGA 以太网适配器连接的 TCP |
| 协议 | SRS RGA 命令集:Operating Manual and Programming Reference, Models RGA100/200/300,Rev. 1.9,第 6 章“Programming the RGA Head” |
| 状态 | 🧪 模拟:已通过线路级模拟器测试,尚未在硬件上验证。报告硬件测试 |
无需硬件即可试用
uvx labmcp-srs-rga --simulate --check
uvx labmcp-srs-rga --simulate --option scenario=helium_leak # He pulses every 20 s for leak_check
uvx labmcp-srs-rga --simulate --option scenario=overpressure # a growing leak trips the filament
模拟器模拟的是一台配有 CDEM、置于未经烘烤腔室中的 RGA200,压力约为 1e-7 Torr(主要是水,其次是 H2、N2/CO、CO2)。
连接你的 RGA
- 连接线: RGA 的电子控制单元(ECU)配有一个按 DCE 接线的 DB-9 RS-232 端口,并采用 RTS/CTS 硬件握手。请使用直通线(或 USB 转串口适配器),确保其支持 RTS 和 CTS。设置固定为:28,800 波特率、8 个数据位、无校验位、1 个停止位。服务会为你设置这些参数。
- 关闭 RGA Windows / RGA Com(端口一次只能由一个程序使用)。
- 查找端口:
uvx labmcp ports - 测试连接:
连接后,服务会发送uvx labmcp-srs-rga --address /dev/ttyUSB0 --check # Linux uvx labmcp-srs-rga --address /dev/tty.usbserial-XXXX --check # macOS uvx labmcp-srs-rga --address COM3 --check # Windows uvx labmcp-srs-rga --address tcp://192.168.1.50:4001 --check # raw-TCP serial-to-Ethernet adapter uvx labmcp-srs-rga --address tcp://192.168.1.50:818 --option user=admin --option password=admin --check # SRS RGA Ethernet adapterID?和IN0(清除 RGA 的缓冲区并运行硬件自检)。不会切换任何开关。
添加到你的 MCP 客户端
Claude Code
claude mcp add rga -- uvx labmcp-srs-rga --address /dev/ttyUSB0
Claude Desktop / Cursor / Windsurf(claude_desktop_config.json、.cursor/mcp.json 等)
{
"mcpServers": {
"rga": {
"command": "uvx",
"args": ["labmcp-srs-rga", "--address", "/dev/ttyUSB0"]
}
}
}
添加 --read-only,即可允许测量,但禁止切换灯丝/CDEM、除气、校准和更改设置(关闭开关仍可用)。对于其他客户端,请使用 uvx labmcp config srs-rga --address /dev/ttyUSB0 --client vscode 生成代码片段(也支持 cursor、codex、claude-code)。
工具
| 工具 | 类型 | 描述 |
|---|---|---|
all_off | 🛑 安全 | 将 RGA 置于安全状态:中止任何脱气操作,关闭 CDEM(HV0)、灯丝(FL0)和四极杆 RF/DC(MR0)。完成操作后、放气前,或发现任何异常时使用。此操作会中断正在运行的扫描或检漏,并且即使前一步失败,也会尝试执行每一步。 |
analog_scan | 👁 读取 | 记录模拟质谱(SC1):四极杆逐步扫描整个质量范围,并返回完整峰形(经过降采样)、峰列表、扫描结束时测得的总压力,以及可选的完整 CSV 数据。可用于检查峰位置和调查未知气体。持续时间取决于噪声底(例如,NF4 时为 126 ms/amu)。已有的 save_path 文件绝不会被覆盖。 |
calibrate | ⚠️ 危险 | 校准检测器:zero(CA)在当前噪声底下重新校准离子检测器零点,并校正 RF 扫描表的温度漂移(数秒);electrometer(CL)重新校准静电计的完整 I-V 响应(耗时更长,并清除所有零点偏移)。结束时会关闭四极杆 RF。 |
cdem_off | 🛑 安全 | 关闭电子倍增器(HV0),并切换回法拉第杯检测。始终允许执行;会中断正在运行的扫描、质量测量或检漏。 |
degas | ⚠️ 危险 | 启动离子源脱气(DG):使用 20 mA、400 eV 的电子,通过电子刺激解吸清洁离子源。CDEM 会关闭并保持关闭。脱气会缩短灯丝寿命;建议优先选择烘烤。压力高于 max_filament_pressure_torr 或脱气时间超过 max_degas_minutes 时会拒绝执行。此操作会立即返回;完成前 RGA 会处于忙碌状态(任何命令都会中止它),而 filament_off / all_off 可将其停止。 |
filament_off | 🛑 安全 | 关闭灯丝(FL0);如果正在脱气,则先停止脱气。始终允许执行;会中断正在运行的扫描、质量测量或检漏。 |
get_command_log | 👁 读取 | 返回最近发送给仪器的原始命令和收到的回复(最新记录在末尾)。可用于调试和记录已执行的操作。 |
get_connection_info | 👁 读取 | 报告当前连接的仪器(标识、地址、模拟或真实)、服务是否为只读模式,以及当前生效的安全限值。请先调用此工具。 |
get_status | 👁 读取 | 报告 RGA 状态:灯丝发射、CDEM 开关状态和电压、离子源设置、扫描设置、已存储的灵敏度因子,以及解码后的错误字节(例如,过压保护关闭灯丝时会显示 FL6)。读取错误字节会像仪器本身一样清除通信(EC?)和 CDEM(EM?)错误字节。 |
histogram_scan | 👁 读取 | 记录条形图谱(HS1):每个整数 m/z 对应一个峰值锁定读数,并返回总压力。比模拟扫描更快,也是监测残余气体组成的常用方式。 |
identify_residual_gases | 👁 读取 | 运行直方图扫描,并通过简单查找标准 70 eV 碎片模式,将主要峰分配给可能的气体:H2(2)、He(4)、CH4(16/15)、H2O(18/17)、N2 或 CO(28,并结合 14 和 12 区分)、O2(32)、Ar(40)、CO2(44);还可诊断空气泄漏或烃类污染等情况。此工具仅用于初步筛查,不适用于定量分析。 |
leak_check | 👁 读取 | 氦气检漏:在有人向可疑接头喷氦气时监测 m/z 4,并报告基线、每次高于基线 x threshold_factor 的响应(开始/结束时间、峰值)以及时间序列。开始后的前几秒不要接触氦气,以确保基线准确。真实泄漏的响应时间为数秒。受 max_leak_check_duration_s 限制。 |
measure_masses | 👁 读取 | 测量一组 m/z 值对应的分压(峰值锁定的单质量测量,MR)。可快速、精确地监测已知气体;每个质量的精度和测量时间由噪声底设置(set_scan_parameters)。压力值以 N2 当量表示。 |
read_total_pressure | 👁 读取 | 在 RGA 作为电离真空计(TP?,法拉第杯)运行时测量总压力。需要开启灯丝并关闭 CDEM。读数以 N2 当量表示,并可能因气体组成不同而与 Bayard-Alpert 真空计的读数相差数倍。 |
reconnect | 🛑 安全 | 关闭并重新打开与仪器的连接(例如,仪器断电重启或重新插拔线缆后)。 |
set_cdem | ⚠️ 危险 | 以指定高压开启电子倍增器(CDEM),使信号增强约 100-10000 倍。高压强会缩短 CDEM 的寿命,甚至将其损坏,因此只有在压力低于 max_cdem_pressure_torr 时才允许执行(使用法拉第杯测得的 RGA 当前总压力、近期测量值或 external_pressure_torr);电压上限为 max_cdem_voltage_v。开启 CDEM 时会禁用总压力读数。 |
set_filament | ⚠️ 危险 | 开启灯丝(或更改其发射电流)。压力高于 1e-4 Torr 时灯丝会烧坏或受损,因此只有在压力低于 max_filament_pressure_torr 时才允许执行:传入独立真空计测得的 external_pressure_torr;或者,如果灯丝已开启,则使用 RGA 自身测得的总压力。RGA 的保护机制也会在过压时关闭灯丝(报告为 FL6)。 |
set_scan_parameters | 🎛 控制 | 更改测量设置:噪声底(速度与检测限之间的取舍)、电子能量、离子能量、聚焦板电压和模拟扫描分辨率。存储在探头中的灵敏度因子仅在默认离子源设置(70 eV、12 eV、90 V)下有效。更改噪声底后,会在下一次扫描开始时自动重新调整检测器零点。 |
get_connection_info、get_command_log 和 reconnect 内置于每个 LabMCP 服务中。 |
安全限制
RGA 灯丝只能在低于 1e-4 Torr 的压力下运行,CDEM 所承受的电压绝不能高于 1e-4 Torr;建议压力不超过 5e-6 Torr(手册:FL 命令警告,第 6-35 页,维护章节中的“CDEM Handling and Care”)。RGA 只有在灯丝发射时才会测量压力,因此开启前需要有依据:
set_filament和degas:压力必须低于或等于max_filament_pressure_torr。set_cdem:压力必须低于或等于max_cdem_pressure_torr,且电压必须低于或等于max_cdem_voltage_v(同时也会强制执行 10-2490 V 的硬件范围)。- 这三项操作所需的依据:
external_pressure_torr(用户确认的另一台压力计读数);当灯丝开启且 CDEM 关闭时,还需要此时测得的总压力。如果两者都有,则检查其中较高的读数,因此误输入的压力计数值无法覆盖 RGA 的测量值。开启 CDEM 时(RGA 无法测量),可接受最近max_pressure_reading_age_s时间内的读数,但前提是灯丝仍处于开启状态:灯丝一旦关闭(主动关闭或跳闸),旧读数就无法反映当前压力。 - 用作依据的 RGA 读数会按 1 mA 发射电流进行缩放:离子电流与发射电流成正比,因此 0.1 mA 时的读数若不缩放,会低估压力 10 倍。
- 仪器自身的灯丝保护仍然有效:压力过高会关闭发射和 CDEM(错误 FL6),并由
get_status报告。 all_off、filament_off和cdem_off会中断正在运行的扫描、质量测量或检漏;这些操作随后会返回错误且不提供数据,而不是等待其完成。all_off会尝试执行每个步骤,即使某一步失败也不例外,并报告失败项。
| 限制 | 默认值 | 含义 |
|---|---|---|
max_filament_pressure_torr | 1e-4 Torr | 可开启灯丝或对离子源进行脱气的最高压力 |
max_cdem_pressure_torr | 5e-6 Torr | 可开启 CDEM 的最高压力 |
max_cdem_voltage_v | 2000 V | CDEM 最高高压(硬件上限为 2490 V) |
max_pressure_reading_age_s | 60 s | 可接受作为依据的 RGA 总压力读数的最长时间(仅限灯丝保持开启时) |
max_degas_minutes | 3 min | 离子源脱气的最长时间(硬件上限为 20 min) |
max_scan_duration_s | 900 s | 模拟/直方图扫描的最长预计时间 |
max_leak_check_duration_s | 1800 s | 氦气检漏运行的最长时间 |
启动时覆盖,例如:--limit max_cdem_voltage_v=2400 --limit max_filament_pressure_torr=1e-5。
示例提示词
- “离子规读数为 2e-7 Torr。开启 RGA 灯丝,并告诉我腔体里有什么。”
- “进行 1-100 amu 模拟扫描,将结果保存到 ~/data/rga/after_bake.csv,并将水和氢气与今天早上的结果进行比较。”
- “这是漏气吗?检查 28、32 和 40 以及它们的比值。”
- “在 m/z 4 上启动 3 分钟氦气检漏;20 秒后我会逐个向法兰喷气。”
- “以 1400 V 开启 CDEM,每分钟测量 2、4、18、28、44,持续 10 分钟,然后关闭所有设备。”
注意事项
- 线路格式。 命令由两个字母和一个参数组成,以 CR 结尾。ASCII 回复以 LF CR 结尾。
MR、TP?和每个扫描点返回的离子电流都是 4 字节小端二进制二进制补码整数,单位为 1e-16 A。硬件命令(IN、FL、HV、EE、IE、VF、CA、CL、DG)会以 STATUS 字节作答;NF、MI、MF、SA、TP0/1、MR0均不作答。服务会读取每项无回复设置的当前值。 - 被拒绝的命令不会收到回复。 RGA 只会闪烁错误 LED 并设置 RS232_ERR;随后服务会读取
EC?并报告原因(命令错误、参数错误或参数冲突)。 - 分压为 N2 等效值。 服务会将离子电流除以存储在检测头中的分压灵敏度
SP(出厂值为默认离子源设置下的 N2 值);如果 CDEM 已开启,还会除以存储的 CDEM 增益MG。其他气体的灵敏度各不相同(相对于 N2:H2 约为 0.44,He 约为 0.14,Ar 约为 1.2);identify_residual_gases会使用典型值进行校正,其他工具则不会。存储的系数仅在 70 eV / 12 eV / 90 V 和 1 mA 发射电流下有效。 - 总压力(
TP?)在 CDEM 开启时会被 RGA 禁用(返回 0),且需要开启灯丝。 - 除气在 RGA 内部运行,任何命令都会中止它,因此
degas会立即返回,且在除气结束前,服务会拒绝其他命令(filament_off、cdem_off和all_off除外,这些命令会中止除气)。 - 噪声下限(
NF0–NF7)决定速度和检测限:从 2000 ms/amu、约 7e-15 A 噪声(NF0),到 15 ms/amu、约 5e-13 A 噪声(NF7)。出厂默认值为 NF4(126 ms/amu)。 - SRS RGA Ethernet adapter 登录(
--option user=... --option password=...,端口 818)遵循 SRS 的srsinst.rga驱动,且尚未在硬件上测试。通用原始 TCP 串口服务无需登录,但必须设置为 28,800 baud、8N1 并启用 RTS/CTS。 - 扫描或运行
measure_masses后,服务会关闭四极杆 RF(MR0),与手册建议一致。 save_path(扫描和leak_check)必须以.csv结尾,且文件必须尚不存在:绝不会覆盖已有文件。缺失的文件夹会自动创建,~会展开,并且会在测量开始前检查路径。- 连接恢复。 如果扫描的二进制数据未能及时到达(或被安全工具中断),服务会丢弃部分数据,使用
IN0停止扫描,并等待其 STATUS 回复后再发送下一条命令,以确保后续回复保持同步。
硬件验证
| 型号 | 固件 | 接口 | 验证者 | 日期 |
|---|---|---|---|---|
| 暂无:成为首位验证者 |
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。