QiuQiu

练习 · FreeCAD

FreeCAD 基础

从 Body 到 Sketch 到 Pad 的建模顺序,Part 与 Part Design 的分工,STEP 零件怎么导入并用 Transform 摆到位。

12 题

Part Design 的基本顺序:一个零件对应一个 Body;在 Body 里先画 Sketch(二维轮廓),用约束把它锁死,再用 Pad(拉伸加料)或 Pocket(拉伸去料)把轮廓变成三维特征。特征一层层叠在 Body 里,模型树里从上到下就是建模顺序,改早期的 Sketch,后面的特征会跟着重算。

Body
  └─ Sketch(轮廓 + 约束)
       └─ Pad / Pocket / Hole / Fillet …

Sketch 约束:线段画好之后颜色是白色,说明还有自由度没锁;全部约束完会变成绿色。约束分两类:几何约束(水平、竖直、相切、重合、对称)和尺寸约束(长度、距离、角度、半径)。先几何再尺寸,尺寸只补几何锁不住的自由度,这样改一个尺寸不会把轮廓拉变形。

Part 与 Part Design:两个工作台都能做实体。Part 是“拼积木”:Box、Cylinder 这类基本体,加布尔运算(Union / Cut / Common)。Part Design 是“基于特征”:轮廓 + 拉伸,改起来更像真实零件。画自己设计的支架、舵机座用 Part Design;拿别人的 STEP 进来快速切一刀、量一下,Part 更顺手。

STEP 是什么:.step / .stp 是跨软件的实体交换格式,SolidWorks、Fusion、Onshape 导出的零件都能用它进 FreeCAD。导进来的是没有历史的实体:没有 Sketch,没有 Pad,只有最终形状。所以不能像自己画的零件那样改尺寸,能做的是布尔、测量、当参考摆位置。舵机、轴承、标准件的 STEP 通常厂商直接给,SO-101 一类开源机械臂也是整套 STEP 发布。

Transform(摆位置):模型树选中整个 Body 或导入的 STEP 零件,右键 → Transform,视图里出现彩色手柄:箭头是沿轴平移,圆环是绕轴旋转。按住手柄拖,再点 OK。要注意:拖的是 axis(那根轴)才会动,直接在零件表面拖是没反应的。多个零件要装配到一起,先各自 Transform 到大致位置,精确位置再在 Placement 里填数字。

钣金件与成本:自己画好的 L 型支架,打印一份便宜,找厂做钣金(激光切 + 折弯)一件就贵得多,因为开料和折弯要人工设定。所以原型阶段能 3D 打印的先打印,确定不改了再上钣金或 CNC。

题目

1. 建模的第一步

用 Part Design 画一个新零件,模型树里第一个该建的是什么?

  1. Sketch
  2. Body
  3. Pad
  4. Part 工作台的 Box
解析

Part Design 里所有特征都挂在一个 Body 下,没有 Body 的话点 Sketch 会提示先建 Body(新版本会自动帮你建一个)。一个零件一个 Body,装配时才好单独 Transform。

2. Pad 和 Pocket

已经有一块 Pad 出来的方板,要在上面开一个通孔。选中孔的 Sketch 之后该用哪个?

  1. Pad
  2. Revolution
  3. Pocket
  4. Boolean Cut
解析

Pad 是加料,Pocket 是去料。Pocket 的类型选 Through all 就是通孔。Boolean Cut 是 Part 工作台的操作,在 Part Design 里做不到这一步;Revolution 是把轮廓绕轴旋转成回转体。

3. 白线和绿线

Sketch 里画完一个矩形,四条边都是白色。这说明什么?

  1. 矩形已经完全约束,可以退出了
  2. 还有自由度没锁,矩形可以被拖动或变形
  3. 矩形是辅助线,不参与 Pad
  4. 颜色只和线型有关,和约束无关
解析

白色是“欠约束”,全绿才是“完全约束”。欠约束的 Sketch 也能 Pad,但改一个尺寸时轮廓可能往意想不到的方向跑。辅助线(construction)是蓝色虚线,和白色不同。

4. 先几何再尺寸

一个 30×20 的矩形,四条边已经加了水平/竖直约束,一个角点固定在原点。还需要几个尺寸约束才能全绿?

解析

水平/竖直 + 角点在原点后,矩形只剩“多长”和“多宽”两个自由度,加长 30 和宽 20 两个尺寸就锁死。如果不先加水平/竖直约束,得用四个尺寸或更多角度约束才能锁住,而且改一边长度时另一边会跟着歪。

5. STEP 导进来之后

把厂商给的舵机 .step 导入 FreeCAD。下面哪一项能做?

  1. 双击进去改它的 Sketch 尺寸
  2. 在模型树里看到它的 Pad / Pocket 历史
  3. 用 Part 工作台量尺寸、做布尔、当参考摆位置
  4. 什么都不能做,只能看
解析

STEP 只带最终形状,不带建模历史,所以 A、B 都没有。但它是完整实体,测量、布尔、Transform 都正常。要“改”它,只能重新画一个,或在 Part 里对它做布尔切割。

6. Part 还是 Part Design

下面两件事,各用哪个工作台更顺手?

(a) 从零画一个带四个安装孔的舵机座,以后可能改孔距。 (b) 把导入的 STEP 轴承切掉一半,看内部结构。

  1. (a) Part Design,(b) Part
  2. (a) Part,(b) Part Design
  3. 两个都 Part Design
  4. 两个都 Part
解析

(a) 要参数化、要改尺寸,Part Design 的 Sketch + Pad 就是为这个设计的。(b) 对象是没有历史的 STEP 实体,Part 的 Box + Cut 两步就完事,不需要 Body 和 Sketch。

7. Transform 拖不动

选中一个 STEP 零件,右键 Transform,彩色手柄出现了,但在零件表面拖来拖去它不动。最可能的原因?

  1. 零件被锁定了
  2. 要按住手柄(箭头或圆环)拖,不是拖零件本身
  3. STEP 零件不能 Transform
  4. 需要先进入 Sketch
解析

这是自己踩过的坑:Transform 模式下只有手柄响应拖动,箭头沿轴平移,圆环绕轴旋转。拖零件表面只会旋转视角。

8. 手柄的含义

Transform 的手柄里,红色箭头和红色圆环分别做什么?

  1. 箭头沿 X 轴平移,圆环绕 X 轴旋转
  2. 箭头绕 X 轴旋转,圆环沿 X 轴平移
  3. 都是沿 X 轴平移,一个粗调一个细调
  4. 箭头缩放,圆环旋转
解析

FreeCAD 的颜色约定和大多数 CAD 一样:红 X、绿 Y、蓝 Z。箭头是平移,圆环是旋转。Transform 不做缩放,零件尺寸只能回 Sketch 改。

9. 改早期的 Sketch

Body 里依次有 Sketch → Pad → Sketch001 → Pocket。把第一个 Sketch 的矩形从 30×20 改成 40×20,会发生什么?

  1. 只有 Sketch 变,Pad 不变
  2. Pad 变,但 Pocket 报错消失
  3. Pad 跟着重算变成 40 宽,Pocket 也重算,只要它的 Sketch001 附着的面还在
  4. FreeCAD 会问要不要新建一个 Body
解析

特征树是参数化的,上游一改下游全部重算。Pocket 是否正常取决于 Sketch001 附着在哪个面:附着在 Pad 的顶面,顶面还在就没事;如果附着在某条被改掉的边上,就会报“附着丢失”。这也是为什么 Sketch 尽量附着在基准面(XY / XZ / YZ)而不是模型面上。

10. 原型阶段选什么工艺

自己画的 L 型支架,第一版原型,孔位大概率还要改。先用哪种方式做?

  1. 3D 打印
  2. 找厂做钣金
  3. CNC 铝件
  4. 直接买现成的
解析

钣金和 CNC 的开料、装夹、折弯要人工设定,单件成本高,改一次就得重来。原型阶段打印一份几块钱,改孔位再打一份。确定不改了再上钣金。

11. 动手:画一个带孔的 L 型支架

在 FreeCAD 里从零画:底板 40×30×3,竖板 30×30×3 立在底板一条长边上,底板中间开两个 Ø3.2 通孔。要求 Sketch 全绿,模型树只有一个 Body。做完自评。

提示

一种走法:XY 面 Sketch 画 40×30 矩形 → Pad 3;选底板一条长边所在的 XZ 面新建 Sketch 画 30×3 矩形 → Pad 30;底板顶面 Sketch 画两个圆 → Pocket Through all。也可以在 XZ 面直接画 L 形轮廓一次 Pad 30,再开孔,少一个特征。

12. 动手:把 STEP 零件摆到支架上

找任意一个舵机或轴承的 STEP 导入,和第 11 题的支架放在同一个文档里,用 Transform 把它摆到竖板上,再打开它的 Placement 看数值。做完自评。

提示

Transform 只能拖到大概位置;打开 Placement(属性面板 → Placement)能看到 Position 和 Angle,精确位置在这里填。装配多个零件时这个数值就是零件之间的相对位姿,和后面 URDF 里写 joint origin 是同一件事。

相关阅读:CADRobotics - Mech Design