示波器控制服务器

通过SCPI协议(LAN或USB)控制LeCroy示波器的服务器,支持自动检测、配置和波形捕获。

  • by lucasgerads
  • Python
  • 本地部署
  • 11 星标
  • 更新于
在 GitHub 查看 lucasgerads/lecroy-mcp

使用说明

勒克罗伊·麦克普

MCP服务器,用于通过局域网(VXI-11)或USB上的SCPI控制LeCroy示波器。

需求

  • 紫外线 安装
  • 通过局域网或USB连接的LeCroy示波器

MCP配置

添加到MCP客户端配置中(例如Claude Code的 .mcp.json):

{
  "mcpServers": {
    "lecroy-scope": {
      "type": "stdio",
      "command": "uvx",
      "args": ["lecroy-mcp"]
    }
  }
}

uvx 将自动下载并运行服务器,无需手动安装。

示波器设置(LAN/VXI-11)

该服务器通过标准VXI-11协议进行通信。连接前,在示波器上启用它:

  1. 在示波器上,转到 公用事业→ 实用程序设置。.. → 远程
  2. 在 控制来自 节,启用 LXI(VXI11)
  3. 注意 IP地址 显示--连接字符串需要它

作用域的IP可以通过DHCP分配,也可以在下面静态配置 公用事业→ 效用→ 远程→ 网络连接.

注: 这 TCPIP(VICP) 同一面板中显示的选项使用LeCroy的专有协议,目前此服务器不支持该选项。仅 LXI(VXI11) 是必需的。

连接选项

选项1——手动连接

按原样复制上面的MCP客户端配置,并从Claude会话中连接:

  1. scope_scan --自动检测本地网络上的LeCroy示波器
  2. scope_list_resources --列出所有VISA资源(局域网+USB)
  3. scope_connect("TCPIP0::192.168.1.111::inst0::INSTR") --直接连接

可选设置 LECROY_SUBNET 提示扫描范围:

{
  "mcpServers": {
    "lecroy-scope": {
      "type": "stdio",
      "command": "uvx",
      "args": ["lecroy-mcp"],
      "env": {
        "LECROY_SUBNET": "192.168.1.0/24"
      }
    }
  }
}

选项2——预先配置IP地址(建议用于局域网)

集 LECROY_HOST 在env块中,服务器在启动时自动连接:

{
  "mcpServers": {
    "lecroy-scope": {
      ...
      "env": {
        "LECROY_HOST": "192.168.1.111"
      }
    }
  }
}

选项3——预配置完整的资源字符串(LAN或USB)

使用 LECROY_RESOURCE 用于完全控制,包括USB连接:

{
  "mcpServers": {
    "lecroy-scope": {
      ...
      "env": {
        "LECROY_RESOURCE": "USB0::0x05FF::0x1023::12345::INSTR"
      }
    }
  }
}

用法

连接后,您将拥有以下工具:

  • 通道设置(比例、偏移、耦合、带宽限制)
  • 触发器配置(模式、源、电平、边缘)
  • 时基和内存深度
  • 自动测量(PKPK、FREQ、RMS、RISE、DUTY等)
  • 波形捕获(JSON或CSV)
  • 截图
  • 数学函数(FFT、INTG、DIFF等)
  • WaveSource内置生成器(WaveSurfer 3000Z及类似产品)

支持的型号

服务器检测连接的模型并相应地调整命令。 包括以下配置文件:

  • WaveSurfer 3000Z/4000HD
  • HDO4000A/HDO6000B/HDO8000A
  • WaveRunner 6000/8000
  • WavePro HD
  • MDA800A,SDA

未知模型回归到保守的默认值。

手动安装

如果你不想使用 uvx:

pip install lecroy-mcp

然后使用 lecroy-mcp 作为MCP配置中的命令,而不是 uvx lecroy-mcp.

更新

随着 uvx,使用 @latest 标签强制使用最新版本:

uvx lecroy-mcp@latest

或更新 args 在你的 .mcp.json 始终获取最新信息:

"args": ["lecroy-mcp@latest"]

使用pip:

pip install --upgrade lecroy-mcp

备注

  • 需要 pyvisa-py 后端——目前不支持NI-VISA(中断截图捕获)
  • 所有VISA访问都是通过线程锁序列化的;并行MCP工具调用是安全的

故障排除

诊断消息未出现在MCP日志中

如果在MCP客户端的日志查看器中看不到服务器日志输出(例如自动连接状态或错误),请添加 PYTHONUNBUFFERED 转到env块:

"env": {
  "PYTHONUNBUFFERED": "1"
}

这将禁用Python的输出缓冲,以便立即刷新日志消息。正常运行不需要它。

经过测试

组件 详细信息
示波器 Teledyne LeCroy WaveSurfer 3024Z
操作系统 Windows 10、Windows 11、Linux Mint
MCP客户端 克劳德代码

此服务器还应与其他MCP兼容客户端(如OpenAI Codex和Google Gemini Code Assist)以及其他操作系统(如macOS)配合使用。欢迎为其他配置提供报告和意见。

免责声明

Teledyne-LeCroy和LeCroy是TeledyneLeCroy,股份有限公司的注册商标。本项目是一个独立的开源工具,不隶属于、支持或赞助Teledyne-LeCroy,股份有限公司。所有产品和公司名称均为其各自持有人的商标或注册商标。