============================ 案例 A:从 CAD 模型到 G-code ============================ 本案例通过一个简单零件的完整制造流程,展示从 CAD 几何建模到数控 G-code 生成的全过程。 场景设定 ======== **零件** : 带孔矩形板 **尺寸** : 100mm × 80mm × 10mm,中心有一个 Φ20mm 通孔 **材料** : 铝合金 6061 **加工要求** : - 上表面铣平 - 外轮廓铣削 - 中心孔钻孔 - 表面粗糙度 Ra 3.2 完整流程 ======== .. figure:: ../_static/diagrams/cad-to-gcode-pipeline.svg :width: 100% :align: center :alt: 从 CAD 到 G-code 的完整流程 1. 几何建模 ------------ 在 CAD 软件(如 SolidWorks、FreeCAD)中建立三维模型: - 拉伸基体:100mm × 80mm × 10mm - 拉伸切除:中心 Φ20mm 通孔 **建模方法选择** : 实体建模(unit4) - 矩形板属于规则形状,适合实体建模 - 需要精确的尺寸和体积信息用于后续材料计算 2. 工程图与特征识别 -------------------- 从三维模型生成二维工程图: - 主视图:显示矩形轮廓和中心孔位置 - 尺寸标注:100、80、10、Φ20 - 公差标注:孔位 ±0.05mm **特征识别** ( 关联 unit6 CAPP): - 平面特征:上表面(需要铣平) - 轮廓特征:外矩形(需要铣削) - 孔特征:中心通孔(需要钻孔) 3. 工艺分析 ------------ **加工方法选择** : - 平面:面铣(Face Milling) - 外轮廓:轮廓铣(Profile Milling) - 中心孔:钻孔(Drilling)→ 扩孔(Reaming) **定位基准** : - 底面为定位基准(已加工平面) - 长边方向为 X 轴,短边方向为 Y 轴 4. 刀具选择 ------------ +--------+----------+-------+----------+ | 工序 | 刀具类型 | 直径 | 材料 | +========+==========+=======+==========+ | 面铣 | 面铣刀 | Φ50mm | 硬质合金 | | 轮廓铣 | 立铣刀 | Φ10mm | 硬质合金 | | 钻孔 | 麻花钻 | Φ20mm | HSS | +--------+----------+-------+----------+ 5. 加工路径规划 ---------------- **面铣路径** : - 刀具中心轨迹覆盖整个上表面 - 行距:35mm(刀具直径的 70%) - 进给方向:沿 X 轴往复 **轮廓铣路径** : - 刀具沿矩形外轮廓走刀 - 刀具半径补偿:左侧补偿(G41) - 下刀点:左下角(-5, -5) **钻孔路径** : - 定位至孔中心(50, 40) - 啄钻循环(G83) - 每次进给 3mm,退刀排屑 6. 后处理生成 G-code --------------------- CAM 软件(如 Mastercam、Fusion 360)根据刀具路径生成刀位文件(CL Data),后处理器将其转换为特定机床的 G-code。 示例 G-code ============ 以下是一个简化的 G-code 示例,用于教学目的: .. code-block:: gcode :linenos: % O1000 (RECTANGLE_PLATE_WITH_HOLE) (TOOL LIST) T1 M6 (TOOL 1: FACE MILL D50) T2 M6 (TOOL 2: END MILL D10) T3 M6 (TOOL 3: DRILL D20) (WORK OFFSET) G54 G90 G40 G80 (--- FACE MILLING ---) T1 M6 S1200 M3 G0 X-30. Y-30. G43 H1 Z50. Z2. G1 Z0. F200. Y110. F500. X-10. Y-30. X10. Y110. ... (additional passes) G0 Z50. (--- PROFILE MILLING ---) T2 M6 S2000 M3 G0 X-5. Y-5. G43 H2 Z50. Z2. G1 Z-10. F100. G41 D2 (CUTTER COMP LEFT) G1 X0. Y0. F300. Y80. X100. Y0. X0. G40 G0 Z50. (--- DRILLING ---) T3 M6 S800 M3 G0 X50. Y40. G43 H3 Z50. G83 Z-12. R2. Q3. F100. G80 G0 Z50. (PROGRAM END) M5 G91 G28 Z0. G28 X0. Y0. M30 % 代码说明 -------- - **G54** : 使用第 1 工件坐标系 - **G90** : 绝对坐标编程 - **G43 H1** : 刀具长度补偿 - **G41 D2** : 刀具半径左补偿 - **G83** : 啄钻循环(每次进给 Q3mm,退刀排屑) - **M6** : 自动换刀 - **M3** : 主轴正转 - **M30** : 程序结束并复位 7. 仿真与试切 -------------- **仿真验证** : - 在 CAM 软件或专用仿真器(如 Vericut)中运行 G-code - 检查刀具与工件、夹具的碰撞 - 验证加工时间估算 **首件试切** : - 使用废料或低成本材料进行试切 - 检查尺寸精度、表面粗糙度 - 根据结果调整刀具参数或刀具路径 8. 质量检测 ------------ +------------+--------------+---------------------+ | 检测项 | 方法 | 合格标准 | +============+==============+=====================+ | 外形尺寸 | 游标卡尺 | 100±0.1mm, 80±0.1mm | | 厚度 | 千分尺 | 10±0.05mm | | 孔径 | 内径千分尺 | Φ20+0.02/0mm | | 孔位 | 三坐标测量机 | ±0.05mm | | 表面粗糙度 | 粗糙度仪 | Ra ≤ 3.2μm | +------------+--------------+---------------------+ 初学者注意事项 ============== 1. **坐标系设置** - 工件坐标系(G54~G59)必须与对刀点一致 - Z0 通常设在工件上表面 2. **刀具补偿** - 刀具半径补偿(G41/G42)必须在切入工件前建立 - 刀具长度补偿(G43)必须正确设置 3. **进给速度** - 铝合金切削速度通常 300~800 m/min - 进给速度根据刀具直径和齿数计算 4. **安全第一** - 首次运行程序前必须进行仿真 - 试切时降低进给速度至 50% - 随时准备按下急停按钮 与课程章节的关联 ================ +----------+----------+------------------------------+ | 流程步骤 | 对应章节 | 核心知识点 | +==========+==========+==============================+ | 几何建模 | unit4 | 实体建模、参数化设计 | | 工程图 | unit3 | 图形变换、投影变换 | | 工艺分析 | unit6 | CAPP、特征识别、加工方法选择 | | 刀具路径 | unit7 | 数控编程、刀具补偿、固定循环 | | G-code | unit7 | 程序结构、M/G 代码 | | 仿真 | unit5 | 虚拟样机、碰撞检测 | | 质量检测 | unit8 | PDM/PLM、质量追溯 | +----------+----------+------------------------------+