AutoProber 是硬件黑客的飞针自动化堆栈,为您的智能体提供从“板上有了新目标”到安全探测单个引脚所需的一切。

演示视频:https://gainsec.com/autoprober-demo-mp4/




所有硬件均可通过 Web 仪表板、Python 脚本或智能体本身进行控制。

本仓库是一个独立的、源代码可获取的发布候选版本。它包含创建您自己的 AutoProber 所需的 Python 控制代码、仪表板、CAD 文件和文档。
本项目可移动物理硬件。请将其视为机器控制系统,而非普通 Web 应用。
所需的安全设计如下:
Pn:P 被忽略。CNC 探针引脚不是受信任的限位开关。运行硬件前请阅读 docs/safety.md 和 docs/operations.md。
apps/ 面向操作员的脚本和 Flask 仪表板入口
autoprober/ 可复用的 Python 包,用于 CNC、示波器、显微镜、日志记录、安全
dashboard/ 单页 Web 仪表板
docs/ 架构、设备参考、操作和安全指南
cad/ 当前自定义工具头的可打印 STL 文件
config/ 环境/配置示例文件
AGENTS.md 智能体/操作员安全规则
LICENSE PolyForm 非商业许可证 1.0.0 及商业联系
pyproject.toml Python 项目元数据
uv.lock 锁定 Python 依赖解析
经过测试的项目架构使用:
mjpg_streamer 提供的 USB 显微镜cad/ 中当前可打印的自定义工具头部件默认运行时假设记录在设备文档中。使用前请替换为您自己的实验室设置。
关于硬件清单,请参阅 docs/BOM.md。
以下是原型发布所用的具体零件或零件类别。购买前请核实当前列表、尺寸、电压和连接器兼容性。
我的搭建:
cad/ 中工具头部件的 3D 打印机可选/可替换:
flowchart LR
Operator[操作员] --> Dashboard[Web 仪表板]
Dashboard --> Apps[Python 应用程序]
Apps --> CNC[通过 USB 串口的 GRBL CNC]
Apps --> Microscope[通过 mjpg-streamer 的 USB 显微镜]
Apps --> Scope[通过 LAN/SCPI 的示波器]
Apps --> Outlet[可选 LAN 电源插座]
Endstop[光电限位开关] --> ScopeC4[示波器 C4 安全电压]
Pogo[探针测量] --> ScopeC1[示波器 C1 测量]
ScopeC4 --> Apps
ScopeC1 --> Appsflowchart TD
Preflight[预检] --> SafetyCheck{通道 4 清晰?}
SafetyCheck -- 否 --> Stop[停止状态]
SafetyCheck -- 是 --> Motion[受监控的运动]
Motion --> Monitor[限位监控线程 >= 10 Hz]
Monitor --> C4{C4 清晰?}
C4 -- 是 --> Capture[显微镜采集]
C4 -- 否 --> FeedHold[立即进给保持]
FeedHold --> Stop
Capture --> Stitch[拼接 / 地图]
Stitch --> Review[手动探测审查]
Review --> Approved{已批准目标并测量了探针偏移?}
Approved -- 否 --> Stop
Approved -- 是 --> Probe[有界探针运动]stateDiagram-v2
[*] --> Running
Running --> STOP: C4 触发 / C4 故障 / CNC 报警 / 真实限位引脚
STOP --> Report: 记录电压、状态、操作
Report --> WaitForOperator: 无自动恢复运动
WaitForOperator --> Running: 操作员明确清除条件安装依赖:
uv sync
在已配置硬件的机器上启动仪表板:
PYTHONPATH=. python3 apps/dashboard.py
仪表板默认端口为 5000。
从 config/autoprober.example.env 开始。除非您打算公开发布,否则请勿发布实验室特定的 IP、主机名、凭据、校准文件或采集的目标图像。
重要的运行时值可配置:
AUTOPROBER_LOG_PATH:运行时日志路径AUTOPROBER_RUNTIME_ROOT:校准、平场和运行时状态目录AUTOPROBER_MICROSCOPE_SNAPSHOT_URL:显微镜快照端点AUTOPROBER_SCOPE_HOST / AUTOPROBER_SCOPE_PORT:示波器 SCPI 端点5000请勿提交包含实验室特定主机、路径或目标数据的本地环境文件。
该发布候选版本有意不包括:
.venv、__pycache__、Playwright 工件详情请参阅 RELEASE_MANIFEST.md。
本项目以 PolyForm 非商业许可证 1.0.0 提供源代码可获取。
您可以出于非商业目的使用、修改和分享本项目。
商业使用需要单独购买商业许可证。
商业许可联系方式:[email protected]
本项目旨在用于受控实验室环境,针对您有权测试的设备与目标。请勿在未经许可的情况下使用它来探测、损坏或分析系统。