内容
# 振荡示波器-mcp
[](LICENSE)
[](pyproject.toml)
[](pyproject.toml)
通过 **FastMCP 3.2** 实现的AI驱动的USB振荡示波器控制。可连接无屏PC示波器(PicoScope、Hantek)或运行内置模拟器进行干燥测试。捕获波形,导出CSV,并从代理计算频率、Vpp、占空比和上升时间。
## 如何运行
| 模式 | 硬件 | 何时 |
|------|----------|------|
| **模拟器(默认)** | 无 | 开发、CI、代理干燥测试 |
| **PicoScope** | PicoScope 2000/3000/5000/6000 USB | 生产台面,搭配PicoSDK + pyPicoSDK |
| **Hantek** | Hantek 6022BE/BL | 经济型USB示波器,搭配PyHT6022 + libusb |
MCP服务器从不捆绑示波器驱动程序或PicoSDK。请单独安装供应商软件,然后将后端指向您的设备。
## 输入/输出
| 方向 | 工件 | 备注 |
|-----------|-----------|-------|
| **输入** | `device_id`,通道配置,触发设置 | 通过 `scope_device`、`scope_configure`、`scope_trigger` |
| **输出** | 波形预览(降采样JSON) | `scope_capture(operation="single")` |
| **输出** | CSV + JSON摘要文件 | `scope_capture(operation="export_csv")` 在 `OSCILLOSCOPE_MCP_CAPTURE_DIR` 中 |
| **输出** | 测量值(Vpp,频率,占空比,上升时间) | `scope_measure(operation="all")` |
### 车队流水线
| 合作伙伴MCP | 工作流程 |
|-------------|----------|
| [kicad-mcp](https://github.com/sandraschi/kicad-mcp) | 探测时钟/复位网络 |
| [chip-design-mcp](https://github.com/sandraschi/chip-design-mcp) | 验证电源轨和振荡器 |
| [devices-mcp](https://github.com/sandraschi/devices-mcp) | 在连接前发现USB设备 |
## 快速入门
```powershell
Set-Location D:\Dev\repos\oscilloscope-mcp
uv sync --extra dev
just webapp
# 打开 http://localhost:10937
```
仅STDIO(Cursor MCP):
```powershell
just serve
```
无需硬件的干燥测试:
```
scope_device(operation="connect", device_id="sim-001")
scope_capture(operation="single", sample_rate_hz=100000, sample_count=2000)
scope_measure(operation="all", channel_id="A")
```
## Cursor MCP 配置
添加到 `C:\Users\sandr\.cursor\mcp.json`:
```json
"oscilloscope-mcp": {
"command": "C:/Users/sandr/.local/bin/uv.exe",
"args": [
"--directory",
"D:/Dev/repos/oscilloscope-mcp",
"run",
"python",
"-m",
"oscilloscope_mcp",
"--stdio"
],
"env": {
"FASTMCP_BANNER": "0",
"FASTMCP_UPDATE_CHECK": "0",
"PYTHONUNBUFFERED": "1",
"OSCILLOSCOPE_MCP_BACKEND": "auto"
}
}
```
## 目录
- [硬件指南](docs/HARDWARE.md)
- [后端驱动程序](docs/BACKENDS.md)
- [设置和配置](docs/SETUP.md)
- [工具目录](docs/TOOLS.md)
- [架构](docs/ARCHITECTURE.md)
- [安全](docs/SAFETY.md)
- [车队集成](docs/FLEET_INTEGRATION.md)
- [安装(裸PC)](INSTALL.md)
## 工具概览
| 工具 | 操作 | 目的 |
|------|------------|---------|
| `scope_device` | list, connect, disconnect, status, capabilities, backends | 设备发现和会话 |
| `scope_configure` | channel, get, simulator_profile | 电压范围,耦合,模拟波形 |
| `scope_trigger` | set, get, arm, force | 触发源,阈值,边缘 |
| `scope_capture` | single, preview, export_csv, export_summary, last | 捕获和导出波形 |
| `scope_measure` | all, vpp, frequency, duty, rise_time, fresh | 时间和电压指标 |
| `scope_help` | discover, tool_help, quickstart, faq, hardware_guide | 发现和购买指南 |
## 推荐硬件
| 层级 | 型号 | 价格 | 后端 |
|------|-------|-------|---------|
| 最佳性价比 | PicoScope 2204A | ~$130-190 | `picoscope` |
| 瑞士军刀 | Analog Discovery 3 | ~$200-400 | 计划中(`waveforms`) |
| 经济型 | Hantek 6022BE | ~$40-80 | `hantek` |
参见 [docs/HARDWARE.md](docs/HARDWARE.md) 以获取完整的购买指南。
## Web应用程序
车队SOTA控制台:仪表板,波形查看器,工具中心,设置,帮助。
```powershell
just webapp
```
| 端口 | 服务 |
|------|---------|
| 10936 | FastAPI后端(`/api/*`,`/health`,`/mcp`) |
| 10937 | Vite React前端 |
## 许可证
MIT - 参见 [LICENSE](LICENSE)。