CNC视觉分析工具

Carvera-vision是一款为Carvera CNC机器设计的视觉分析工具,提供屏幕捕捉和STEP文件解析功能,帮助用户优化加工流程。

  • by 3DCreationsByChad
  • Python
  • 本地部署
  • 更新于
在 GitHub 查看 3DCreationsByChad/carvera-vision

使用说明

卡维拉视力

Carvera CNC的MCP服务器——让Claude Desktop和Claude Code关注 您的机器和零件的3D理解。

状态: MVP/早期阿尔法。完全在Windows上运行。macOS和Linux 支持包括在内,但测试较少——欢迎PR。

它做什么

两种功能,五种工具:

工具 它做什么
view_makera_window 将MakeraCam/Cavera窗口捕获为图像——Claude看到您当前的CAM设置
list_windows 列出所有打开的窗口——如果自动检测失败,请使用此选项
capture_region 按像素坐标捕获任意屏幕区域——放大任何面板
analyze_step_file 解析STEP文件:边界框、面资源清册、坐标系、最小刀具半径
query_tools 查询Carvera工具库——按最小半径、材质和操作进行筛选

示例提示:

  • “显示我的MakeraCam屏幕上的内容,并检查WCS是否正确”
  • “分析此STEP文件,告诉我铝需要什么库存”
  • “我需要什么最小的立铣刀来实现这部分的内部功能?”
  • “看看我的提要面板——放大右下角”
  • “我有什么软木粗加工工具?”

进化故事

这个项目源于 fusion360摄像头助手, 其最初是Fusion 360插件扩展。构建实心屏幕后 视觉和实现最有用的几何数据——边界框、面 类型、最小刀具半径——可以从普通STEP文件完全访问 该项目已经超越了对Fusion 360的依赖。

卡维拉视觉与工具无关。 任何CAD工具中的STEP文件都可以工作 同样的方式。您不需要打开Fusion 360或安装任何加载项。

支持的CAD源

任何导出STEP的内容:

  • Fusion 360 --文件→ 出口→ 步骤AP214
  • 可塑性 --文件→ 出口→ STEP
  • Shapr3D --出口→ STEP
  • 任何下载 .step / .stp 文件 来自GrabCAD、McMaster、Makera等。

需求

  • Python 3.11+
  • 紫外线 (推荐)
  • 克劳德桌面或克劳德代码
  • MakeraCam或Carvera桌面应用程序(用于窗口捕获工具)
  • 仅限Linux: wmctrl 用于窗口检测(sudo apt install wmctrl)

快速安装

git clone https://github.com/3DCreationsByChad/carvera-vision
cd carvera-vision
uv sync

添加到您的Claude桌面配置(%APPDATA%\Claude\claude_desktop_config.json):

{
  "mcpServers": {
    "carvera-vision": {
      "command": "uv",
      "args": [
        "run",
        "--project",
        "C:\\path\\to\\carvera-vision",
        "carvera-vision"
      ]
    }
  }
}

克劳德代码:

claude mcp add carvera-vision -- uv run --project /path/to/carvera-vision carvera-vision

重新启动克劳德桌面。这五个工具将自动显示。

工具详解

view_makera_window

自动检测并捕获MakeraCam/Cavera窗口。

示例提示:

  • “显示MakeraCam屏幕上的内容”
  • “查看我的Carvera设置并检查原点位置”
  • “当前加载了什么刀具路径策略?”
参数 默认值 说明
scale 1.0 调整因子-在4K显示器上使用0.5以减少令牌使用

list_windows

列出当前打开的所有窗口标题。如果满足以下条件,请先运行此程序 view_makera_window 找不到窗口——它会准确地显示要添加哪个标题作为别名。


capture_region

按像素坐标捕获任意屏幕区域。

示例提示:

  • “放大坐标1200、400、600x300处的进给和速度面板”
  • “在我的第二个监视器上捕获工具库区域”
参数 必填 说明
left 是 屏幕像素的左边缘
top 是 屏幕像素的顶部边缘
width yes 宽度(像素)
height yes 高度(像素)
scale 否 调整大小因子(默认值1.0)

analyze_step_file

解析STEP文件,不依赖于任何CAD内核。

示例提示:

  • “分析/下载/括号.step并告诉我我需要什么股票”
  • “这个零件的最小刀具半径是多少?”
  • “分析STEP文件,并为铝袋提供工具建议”

输出示例:

{
  "part_name": "bracket",
  "units": "mm",
  "bounding_box": {
    "size": {"x": 75.5, "y": 40.0, "z": 12.0}
  },
  "dimensions_summary": "75.50 x 40.00 x 12.00 mm",
  "face_inventory": {
    "plane": 12, "cylindrical_surface": 4, "total": 16
  },
  "min_internal_radius": 3.175,
  "recommended_tools": [...]
}
参数 默认值 说明
file_path 必需 绝对路径 .step 或 .stp 文件
verbose false 包括原始实体类型计数

query_tools

使用可选过滤器查询Carvera工具库。

示例提示:

  • “对于半径<=3mm的铝,我有什么工具?”
  • “给我看看软木粗轧立铣刀”
  • “图书馆里有什么演习?”
参数 说明
min_radius 最大刀具半径(mm)--从 analyze_step_file
material aluminum, wood, plastic, copper, brass, pcb, steel
operation roughing, finishing, drilling, engraving, profiling, pocketing

故障排除

view_makera_window 找不到窗户

  • 确保MakeraCam或Carvera已打开且未最小化
  • 跑 list_windows 查看所有可见的窗口标题
  • 如果标题不匹配,请向添加子字符串 MAKERA_WINDOW_ALIASES 在 src/carvera_vision/window_capture.py

macOS:屏幕录制权限 将屏幕录制权限授予您的终端或Claude Desktop 系统设置→ 隐私和安全→ 屏幕录制。

Linux:wmctrl未找到

sudo apt install wmctrl   # Debian/Ubuntu
sudo dnf install wmctrl   # Fedora

analyze_step_file 返回意外的边界框

  • 检查 units 字段--某些导出器默认为英寸
  • 使用 verbose=true 查看实体计数——非常低的计数表明 仅曲面或网格导出,而不是实体B-rep

query_tools 未返回任何结果

  • 检查一下 tools/carvera/*.csv 文件存在
  • 尝试放松滤镜(删除 operation,尝试不同的 material)

服务器无法启动

uv run carvera-vision
# or
uv run python -c "from carvera_vision.server import main; main()"

路线图

  • [x] 5个MCP工具:窗口捕获+STEP分析+工具库
  • [x] 跨平台窗口检测(Windows/macOS/Linux)
  • [x] 轻量级STEP解析器(无OpenCASCADE)
  • []STEP袋/孔分类(深度、直径、类型)
  • []MakeraCam .maka 项目文件读取
  • []拍摄前自动对焦窗口(放在前面)
  • []Windows安装程序/一键安装

学分

许可证

麻省理工学院