1️⃣ 系统定位
目标是:集中管理机械加工图纸(2D/3D)和关联数据,支持版本控制、权限管理、加工记录与 BOM 查询。
适合企业车间、研发设计部门。
2️⃣ 核心功能模块
| 模块 | 功能描述 |
|---|---|
| 图纸管理 | 导入 FreeCAD 文件(FCStd)、STEP、IGES、STL 等格式,支持搜索、分类、标签 |
| 版本控制 | 每次修改自动生成新版本,支持回滚历史版本 |
| 权限管理 | 基于角色分配访问、编辑、下载权限 |
| 加工工艺管理 | 关联加工工艺文件、CNC 程序、工艺参数 |
| BOM 管理 | 自动提取部件、材料、数量,生成物料清单 |
| 审批流程 | 图纸审核、签发、状态跟踪 |
| 查询与统计 | 按产品、部件、时间、加工状态查询,生成报表 |
3️⃣ 技术实现
3.1 FreeCAD 集成
- 使用 FreeCAD Python API:
- 读取/修改 3D 模型与装配体
- 导出 PDF 图纸(TechDraw 模块)
- 自动生成零件清单 (BOM)
- 可做 批量操作脚本:如批量生成工程图、更新参数、生成 STEP 文件。
3.2 数据存储
- 数据库:PostgreSQL / MySQL
- 表结构:
drawings:图纸信息(文件路径、版本号、状态)parts:零件信息bom:物料清单users:用户与权限process:加工工艺、CNC 文件
- 表结构:
- 文件存储:
- 本地 NAS 或对象存储(MinIO/OSS)
- FreeCAD 文件与导出格式单独管理
3.3 Web/桌面界面
- 桌面端:
- PySide2/PyQt + FreeCAD Python API
- 直接打开、预览、编辑模型
- Web端(可选):
- Flask / FastAPI 后端 + Vue / React 前端
- 支持图纸浏览、下载、审批、查询统计
3.4 加工记录与追踪
- 每张图纸可关联:
- CNC 加工程序
- 加工机台信息
- 工艺参数
- 操作员
- 支持加工状态追踪、报表导出
4️⃣ 系统架构图(文字版示意)
+-------------------+
| Web/Desktop UI |
| - 图纸浏览/下载 |
| - 批量生成PDF/BOM |
| - 审批流程 |
+-------------------+
|
v
+-------------------+
| FreeCAD Python API|
| - 读取/修改模型 |
| - 生成工程图/STEP |
| - 提取BOM |
+-------------------+
|
v
+-------------------+ +------------------+
| 数据库 (PostgreSQL)|<--->| 文件存储 (NAS/OSS)|
| - 图纸信息 | | - FCStd/STEP/STL |
| - BOM/工艺 | | - PDF导出 |
| - 用户权限 | +------------------+
+-------------------+
|
v
+-------------------+
| 加工机台/CNC |
| - 状态追踪 |
| - 加工记录关联 |
+-------------------+
5️⃣ 可扩展功能
- AI 自动检查零件干涉、尺寸异常
- 自动生成加工路径预估
- 支持多厂区同步管理
- 集成 ERP/MES 系统