|
NX 12.0 MCP 配置 AI 建模 Claude MCP 连接Siemens NX 12.0 实战指南 配置 MCP Server,让 AI 驱动 NX Open API 自动完成三维建模、装配设计、工程图与 CAM 编程 NX Open API 三维建模 装配设计 工程图 CAM 刀路Siemens NX 12.0 是工业界最主流的 CAD/CAM/CAE 一体化平台之一,涵盖三维建模、装配、工程图、模具设计、数控编程等完整产品开发流程。而 NX 内置的 NX Open API,为外部程序提供了深度控制 NX 的能力。 通过配置 MCP(Model Context Protocol),我们可以让 Claude 通过 NX Open Python API 直接驱动 NX 12.0——用自然语言描述设计需求,AI 自动生成三维模型、修改参数、导出图纸,大幅提升工程设计效率。 核心技术路径 Claude Desktop → MCP Protocol → MCP Server(Python) → NX Open API → Siemens NX 12.0 01 连接后能用 NX 做哪些事? 这是本文最核心的部分。通过 MCP 打通 Claude 与 NX 12.0 之后,AI 可以调用以下六大功能模块: ① 三维实体建模 Claude 可调用 NX Open 的草图、拉伸、旋转、扫掠、布尔运算等指令,从零创建参数化三维模型。 可完成的典型任务: · 根据尺寸描述自动创建凸台、凹槽、孔特征(拉伸、镜像、阵列)· 生成草图并标注约束,自动绘制轮廓线· 修改模型参数(长宽高、半径、角度),批量更新族表· 布尔运算(求和/求差/求交),构建复杂实体· 圆角、倒角、抽壳、加厚等细节处理自动化② 装配设计 通过 NX Open 的 Assembly 模块,Claude 可以自动管理零件之间的装配约束关系。 · 自动将多个零件按约束条件(对齐、贴合、同轴)装入装配体· 检测并报告干涉碰撞,给出位置修正建议· 批量替换装配件(如将标准螺栓统一更换型号)· 生成 BOM(零件清单),导出为 Excel 格式· 爆炸视图自动生成与序号标注③ 工程图(Drafting) 工程图是最耗时的重复性工作之一,也是 AI 自动化最能节省时间的场景。 · 自动从三维模型生成主视图、俯视图、侧视图、剖视图· 自动标注尺寸(线性尺寸、直径、半径、角度)· 添加形位公差、粗糙度符号、焊接符号· 填写标题栏(零件名、材料、比例、图号等)· 批量导出为 PDF / DXF / DWG 格式④ 曲面与自由造型 适用于消费品、汽车、航空等需要复杂曲面的产品设计。 · 生成 B 样条曲线、过点曲面、直纹面、扫掠曲面· 曲面质量分析(斑马线、高斯曲率、反射线)并输出报告· 缝合曲面转为实体,实现曲面与实体混合建模· 对现有曲面进行偏置、延伸、修剪等编辑操作⑤ CAM 数控编程 NX CAM 是工业最强的数控编程模块之一,通过 MCP 可实现半自动化的刀路规划。 · 自动创建加工工序(型腔铣、平面铣、轮廓铣、钻孔)· 设置刀具参数(直径、刃长、材质)和切削参数(转速、进给)· 生成刀路并仿真,检测过切与欠切· 后处理生成 G 代码(支持 FANUC、SIEMENS 840D 等格式)· 输出工序卡和加工时间报告⑥ 文件与数据管理 利用 MCP 的文件系统访问能力,实现工程数据的批量处理与格式转换。 · 批量打开 .prt 文件,提取模型属性(体积、面积、质心)· 批量导出 STEP / IGES / STL / Parasolid 格式(用于 FEA/3D打印)· 读取并修改模型属性(材料、颜色、图层设置)· 版本对比:对两个版本的 .prt 文件做几何差异分析02 环境准备 | 软件 / 组件 | 版本 / 要求 | 说明 | | Siemens NX 12.0 | 12.0.2 或以上 | 需激活 NX Open 许可 | | Python | 3.9(与 NX 12 匹配) | NX 12 内置 Python 3.x 解释器 | | NX Open Python 库 | 随 NX 安装自带 | 位于 NX 安装目录 /NXBIN/ | | Claude Desktop | 最新版 | claude.ai/download | | mcp Python SDK | pip install mcp | Anthropic 官方 Python MCP 库 | | 操作系统 | Windows 10/11 64-bit | NX 仅支持 Windows |
️ 重要提示 NX Open Python 库的版本必须与 NX 安装版本严格匹配。NX 12.0 对应的 Python 版本和 NXOpen 模块路径请参考安装目录下的 NXBIN\python 文件夹内的说明文档。 03 创建 NX MCP Server(Python) 1安装依赖并确认 NX Open 路径 # 安装 MCP Python SDKpip install mcp# 确认 NX Open 库路径(NX 12 默认)set UGII_BASE_DIR=C:\Siemens\NX 12.0set PYTHONPATH=%UGII_BASE_DIR%\NXBIN;%PYTHONPATH%# 验证 NX Open 可以导入python -c "import NXOpen; print('NX Open OK')"2创建 nx_mcp_server.py 主文件 import NXOpenimportNXOpen.FeaturesimportNXOpen.UFfrommcp.serverimportServerfrommcp.server.stdioimportstdio_server# 初始化 NX Open 会话session =NXOpen.Session.GetSession()workPart = session.Parts.Work# 创建 MCP Serverapp =Server("nx-12-server", version="1.0.0")# 注册建模工具@app.tool()async defcreate_block(x, y, z, length, width, height): """创建长方体实体""" builder = workPart.Features.CreateBlockFeatureBuilder(None) builder.SetOriginAndLengths([x,y,z], length, width, height) feature = builder.CommitFeature() return{"status":"success","feature": feature.Name}# 启动 Serverif__name__ =="__main__": importasyncio asyncio.run(stdio_server(app))3注册各功能模块的工具函数 按照六大功能模块,分别注册对应的 Tool 函数。以下是部分示例: ## ── 建模工具 ──@app.tool()async defextrude_sketch(sketch_name, distance): ...@app.tool()async defcreate_hole(face, cx, cy, diameter, depth): ...@app.tool()async defadd_fillet(edge_ids, radius): ...## ── 装配工具 ──@app.tool()async defadd_component(prt_path, constraint): ...@app.tool()async defcheck_interference(): ...## ── 工程图工具 ──@app.tool()async defcreate_drawing_view(view_type, scale): ...@app.tool()async defauto_dimension(view_name): ...@app.tool()async defexport_pdf(output_path): ...## ── CAM 工具 ──@app.tool()async defcreate_cavity_mill(geometry, tool, params): ...@app.tool()async defgenerate_gcode(post_processor, output): ...## ── 文件工具 ──@app.tool()async defexport_step(output_path): ...@app.tool()async defget_model_properties(): ...4以 NX Journal 模式启动 Server NX Open Python 脚本需要在 NX 进程内运行,通过 Journal 接口加载 MCP Server: # 在 NX 12.0 菜单中:工具 → 宏 → 执行 → 选择 nx_mcp_server.py# 或通过命令行以后台模式启动:"C:\Siemens\NX 12.0\NXBIN\run_journal.exe" nx_mcp_server.py04 配置 Claude Desktop 打开 Claude Desktop 配置文件,添加 NX MCP Server 入口: 文件路径:%APPDATA%\Claude\claude_desktop_config.json { "mcpServers": { "siemens-nx12": { "command":"python", "args": [ "C:\\nx-mcp-server\\nx_mcp_server.py" ], "env": { "UGII_BASE_DIR":"C:\\Siemens\\NX 12.0", "PYTHONPATH":"C:\\Siemens\\NX 12.0\\NXBIN", "NX_OUTPUT_DIR":"C:\\NX_Output" } } }}重启 Claude Desktop 后,在对话框中输入"列出可用工具",若返回 create_block、extrude_sketch、create_drawing_view 等 NX 工具名,即配置成功。 05 实际对话演示 来看三个真实场景下 Claude 与 NX 12.0 协作的完整对话: 场景一:自动创建支架零件 你 在 NX 里创建一个 L 型支架:底板 100×60×8mm,立板 60×50×6mm,两者之间加 R5 圆角,材料为 45 钢。 Claude(调用 MCP 工具) ✓ create_block(0,0,0, 100,60,8) → 底板实体 BLOCK(1)✓ create_block(0,0,8, 6,60,50) → 立板实体 BLOCK(2)✓ boolean_unite(BLOCK1, BLOCK2) → L型实体✓ add_fillet(edge=[内侧交线], radius=5) → R5 圆角✓ set_material("45钢") → 材料属性已设置✓ NX 视图已刷新 L 型支架已创建完成,体积 54,600 mm³,质量约 428.6g(密度 7.85 g/cm³)。需要继续添加安装孔吗? 场景二:自动生成工程图 你 帮我生成这个支架的工程图,要主视图、俯视图、左视图,自动标尺寸,标题栏填零件名"L型支架",比例 1:1,导出 PDF 到桌面。 Claude ✓ create_drawing_sheet(size="A3", scale=1.0)✓ add_view("FRONT", position=[120,160]) → 主视图✓ add_view("TOP", position=[120, 60]) → 俯视图✓ add_view("LEFT", position=[240,160]) → 左视图✓ auto_dimension(all_views=True) → 已标注 14 处尺寸✓ fill_title_block(part_name="L型支架", scale="1:1")✓ export_pdf("C:\\Users\\Desktop\\L型支架.pdf") 工程图已生成,共标注 14 处尺寸。PDF 已保存至桌面,请核查尺寸标注位置后发布。 场景三:生成 CAM 加工刀路 你 对这个支架做 CAM 编程,材料 45 钢,用 Φ10 平刀,主轴转速 3000rpm,进给 800mm/min,后处理选 FANUC,输出 G 代码到 D 盘。 Claude ✓ create_tool(type="EndMill", dia=10, flutes=4)✓ create_cavity_mill(geom="WORKPIECE", tool, speed=3000, feed=800)✓ create_planar_mill(floor_geom="底面", tool, depth=8)✓ generate_toolpath() → 刀路生成,预计时长 22 min✓ simulate_toolpath() → 无过切,无碰撞✓ post_process(post="FANUC", output="D:\\L_bracket.nc") G 代码已生成至 D:\L_bracket.nc,共 847 行,预计加工时间 22 分钟。仿真无过切。建议在实际加工前在机床上做空运行验证。 06 常见问题与排查 | 问题现象 | 解决方向 | | import NXOpen 报错 ModuleNotFoundError | 检查 PYTHONPATH 是否包含 NX 的 NXBIN 目录;需在 NX 进程内或通过 run_journal 启动 | | Claude Desktop 找不到 siemens-nx12 Server | 检查 config.json 的 Python 路径是否为 NX 内置解释器,普通系统 Python 无法加载 NXOpen | | 建模操作执行后 NX 无响应 | NX Open 操作必须在 NX 主线程执行,确认脚本通过 Journal 方式运行而非独立进程 | | 工程图尺寸标注位置混乱 | auto_dimension 后需人工调整标注位置;建议先标关键尺寸,再手动补充形位公差 | | CAM 后处理输出格式不对 | 确认后处理器文件(.tcl)路径正确;不同机床需配置专属后处理,不可通用 | | STEP 导出文件打不开 | 导出时指定 STEP 203 或 214 标准;部分第三方软件对 AP242 兼容性较差 |
07 能力边界与注意事项 | Claude + MCP 擅长 | 仍需工程师把关 | | 标准几何体与参数化建模 | ️ 复杂自由曲面的美学评估 | | 重复性工程图批量生成 | ️ 形位公差的工艺合理性判断 | | 标准刀路策略设置 | ️ 薄壁件、深腔加工的工艺决策 | | STEP/STL 批量格式转换 | ️ G 代码上机前必须空运行验证 | | 装配干涉检查与 BOM 提取 | ️ 强度/疲劳等 FEA 仿真结论解读 |
安全提示 AI 生成的 CAM G 代码在上机之前,必须由有资质的工艺工程师审核,并在机床上完成空运行和低速试切,确认无误后方可正式加工。任何因未经验证的 G 代码导致的设备损坏或安全事故,责任由操作者自行承担。 完整配置要点回顾 核心路径:Claude Desktop → MCP Server(Python)→ NX Open API → NX 12.0 MCP Server 必须使用 NX 内置 Python + NXOpen 库,通过 Journal 方式在 NX 进程内运行 六大功能模块:三维建模 / 装配设计 / 工程图 / 曲面造型 / CAM 编程 / 文件管理 最大价值场景:批量建模、工程图自动生成、标准件刀路编程 所有 CAM 输出的 G 代码,上机前必须经过工艺工程师审核和空运行验证 NX 12.0 + Claude MCP 的组合,代表了 CAD/CAM 工具与 AI 深度融合的方向。对于大量重复性的建模、出图、编程任务,这套方案能带来数倍的效率提升,把工程师的精力解放到更有价值的创意设计和工艺决策上。 有问题欢迎留言区交流,也欢迎分享你在实际配置中遇到的坑,我们一起完善这套方案 #MCP配置 #Siemens NX #NX Open API #Claude AI #CAD自动化 #AI建模 #数控编程 适用 Windows 10/11 · Siemens NX 12.0 · Claude Desktop · Python 3.9 免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作! |