STL 文件:您需要了解的有关此格式及其替代方案的所有信息

STL 渲染

如果您进入了 3D 打印的世界,那么您肯定在不止一个地方看到过 STL 这个缩写词。 这些缩写是指 一种文件格式(扩展名为 .stl) 这非常重要,尽管现在有一些替代方案。 众所周知,3D 设计不能按原样打印,它们需要一些中间步骤。

当您有了 3D 模型的概念后,您必须使用 CAD 设计软件并生成渲染。 然后可以将它导出为 STL 格式,然后通过一个切片器“切片”它以创建,例如,一个 GCode 3D打印机可以理解 这样就可以创建图层,直到完成作品。 但是,如果您不完全了解它,请不要担心,在这里我们将解释您需要了解的所有内容。

3D模型处理

混合器

使用传统打印机,您有一个程序,例如 PDF 阅读器、文本编辑器、文字处理器等,其中有一个打印功能,当按下该功能时,文档将进入打印队列以供其打印被打印。 然而,在 3D 打印机中,它有点复杂,因为 需要3类软件 为了使它工作:

  • 3D建模软件:这些可以是用于创建要打印的模型的建模或 CAD 工具。 一些例子是:
    • TinkerCAD
    • 混合器
    • BRL-CAD
    • 设计火花机械
    • FreeCAD
    • OpenSCAD
    • 翅膀3D
    • 欧特克AutoCAD
    • Autodesk Fusion 360
    • Autodesk Inventor中
    • 3D斜线
    • Sketchup的
    • 3D MOI
    • 犀牛3D
    • 影院4D
    • 扎实的作品
    • 玛雅
    • 3DS Max
  • 切片机: 它是一种软件,它把前面一个程序设计的文件和切片,也就是把它切成层。 这样一来,3D打印机就可以理解了,如你所知,它是一层一层的构建,并转换成G-Code(大多数3D打印机制造商的主流语言)。 这些文件还包括附加数据,例如打印速度、温度、层高、是否有多重挤出等。 基本上是一个 CAM 工具,它为打印机生成所有指令,以便能够制作模型。 一些例子是:
    • Ultimaker库拉
    • 直放站
    • 简化3D
    • 切片3r
    • 亲吻切片机
    • 创意者
    • OctoPrint
    • 3D打印机操作系统
  • 打印机主机或主机软件:在 3D 打印中,它指的是一个程序,其实用程序是从切片机接收 GCode 文件并将代码传送到打印机本身,通常通过 USB 端口或通过网络。 通过这种方式,打印机可以使用 X (0.00)、Y (0.00) 和 Z (0.00) 坐标来解释 GCode 命令的“配方”,打印头必须移动到这些坐标以创建对象和必要的参数。 在许多情况下,主机软件集成到切片器本身中,因此它们通常是单个程序(参见切片器示例)。
虽然在设计软件中您可以自由选择适合您的软件,但在其他两种情况下并非如此。 3D打印机通常只支持其中一种或几种,但并不支持全部。

这最后两点 它们通常带有 3D 打印机本身,就像传统的打印机驱动程序一样。 然而, 设计软件 您将不得不单独选择它。

切片:什么是 3D 滑块

在上一节中,您了解了有关滑块的更多信息,即切割 3D 模型的软件,旨在获取必要的图层、形状和尺寸,以便 3D 打印机知道如何创建它。 然而, 3D打印中的切片过程 这是非常有趣的,也是这个过程中的一个基本阶段。 因此,您可以在此处获得有关它的更多信息。

切片,切片 3D

El 分步切片过程 根据所使用的 3D 打印技术略有不同。 基本上你可以区分:

  • FDM 切片:在这种情况下,需要对多个轴 (X/Y) 进行精确控制,因为它们在两个轴上移动打印头,并且非常需要打印头的移动来构建三维对象。 它还将包括喷嘴温度和冷却等参数。 一旦切片机生成 GCode,内部打印机控制器的算法将负责执行必要的命令。
  • SLA切片:在这种情况下,命令还必须包括曝光时间和仰角速度。 这是因为,不是通过挤压来沉积层,而是必须将光束引导到树脂的不同部分以使其固化并创建层,同时提升对象以允许创建另一个新层。 这种技术比 FDM 需要更少的运动,因为只控制一个反射镜来引导激光。 此外,必须强调一些重要的事情,那就是这些类型的打印机通常不使用 GCode,而是它们通常有自己的专有代码(因此,它们需要自己的切割或切片软件)。 但是,有一些 SLA 的泛型,例如 ChiTuBox 和 FormWare,它们与许多此类 3D 打印机兼容。
  • DLP 和 MSLA 切片:在另一种情况下,它与 SLA 类似,但不同之处在于,其中唯一需要的移动是构建板的移动,在此过程中它将沿 Z 轴移动。 其他信息将面向展板或屏幕。
  • 其他: 其余如SLS、SLM、EBM等,印刷工艺可能会有明显差异。 请记住,在提到的这三种情况下,还添加了另一个变量,例如 binder 的注入,并且需要更复杂的切片过程。 除此之外,我们必须补充一点,品牌的 SLS 打印机型号与竞争对手的 SLS 打印机不同,因此需要特定的切割软件(它们通常是制造商自己提供的专有程序)。

最后,我想补充一下,有一家比利时公司叫 Materialise公司 谁创造了一个 适用于所有 3D 打印技术的复杂软件 和一个强大的 3D 打印机驱动程序,称为 魔术. 此外,该软件可以通过模块进行增强,为特定机器生成适当的切割文件。

STL 文件

STL 文件

到目前为止,已经参考了 STL 文件,这是本文的核心。 然而,这种流行的格式还没有被深入研究。 在本节中,您将能够深入了解它:

什么是STL文件?

格式 STL 文件 它是一个包含 3D 打印机驱动程序所需的文件,也就是说,打印机硬件可以打印所需的形状,换句话说,它允许对 3D 对象表面的几何形状进行编码。 它由 80D Systems 的 Chuck Hull 在 XNUMX 年代创建,首字母缩略词并不完全清楚。

几何编码可以编码为 镶嵌,以没有重叠或空间的方式插入几何形状,即像马赛克一样。 例如,可以使用三角形组合形状,就像 GPU 渲染的情况一样。 由三角形组成的精细网格将形成 3D 模型的整个表面,其中包含三角形的数量及其 3 个点的坐标。

二进制 STL 与 ASCII STL

它区分二进制格式的 STL 和 ASCII 格式的 STL。 两种方式来存储和表示这些瓦片和其他参数的信息。 一种 ASCII 格式示例 将是:

solid <nombre>

facet normal nx ny nz
outer loop
vertex v1x v1y v1z
vertex v2x v2y v2z
vertex v3x v3y v3z
endloop
endfacet

endsolid <nombre>

其中 «vertex» 将是具有各自 XYZ 坐标的必要点。 例如,要创建 球形, 你可以用这个 示例 ASCII 码.

当 3D 形状非常复杂或很大时,意味着有很多小三角形,如果分辨率更高则更多,这将使三角形更小以使形状平滑。 这会生成巨大的 ASCII STL 文件。 为了压缩它,我们使用 STL 格式 二进制文件,例如:

UINT8[80] – Header                               - 80 bytes o caracteres de cabecera
UINT32 – Nº de triángulos                    - 4 bytes
for each triangle                                        - 50 bytes
REAL32[3] – Normal vector                  - 12 bytes para el plano de la normal
REAL32[3] – Vertex 1                              - 12 bytes para el vector 1
REAL32[3] – Vertex 2                             - 12 bytes para el vector 2
REAL32[3] – Vertex 3                             - 12 bytes para el vector 3
UINT16 – Attribute byte count              - 2-bytes por triángulo (+2-bytes para información adicional en algunos software)
end

如果你希望, 这里有一个 STLB 文件 或示例二进制 STL 以形成 一个简单的立方体.

最后,如果你想知道是否 最好是 ASCII 或二进制,事实是二进制文件总是被推荐用于 3D 打印,因为它们的尺寸较小。 但是,如果您想检查代码并手动调试它,那么除了使用 ASCII 和编辑之外别无他法,因为它更易于解释。

STL的优点和缺点

像往常一样,STL 文件有其优点和缺点。 了解它们以确定它是否适合您的项目或何时不应该使用它是很重要的:

  • 优点:
    • 这是一个 通用和兼容的格式 几乎所有的 3D 打印机,这就是为什么它在 VRML、AMF、3MF、OBJ 等其他打印机中如此受欢迎的原因。
    • 它有一个 成熟的生态系统,并且很容易在 Internet 上找到所需的一切。
  • 缺点:
    • 您可以包含的信息量的限制,因为它不能用于颜色、构面或其他附加元数据以包括版权或作者身份。
    • La 保真度是它的另一个弱点. 使用高分辨率(微米)打印机时,分辨率不是很好,因为平滑描述曲线所需的三角形数量非常多。

并非所有 STL 都适合 3D 打印

似乎任何 STL 文件都可以用于 3D 打印,但事实是 并非所有 .stl 都是可打印的. 它只是一个格式化为包含几何数据的文件。 为了让它们被打印出来,它们需要有厚度的细节,以及其他必要的细节。 简而言之,STL 保证模型可以在 PC 屏幕上很好地看到,但如果按原样打印,几何图形可能会不立体。

所以试试 验证 STL (如果您没有自己创建)适用于 3D 打印。 这将为您节省大量浪费时间,并在错误的型号上浪费灯丝或树脂。

争议

要完成这一点,您应该知道有一些 关于是否使用此文件类型的争议. 尽管仍然有很多人蜂拥而至,但与其他替代品相比,有些人已经认为 STL 已死。 他们给出的避免 3D 设计使用 STL 的一些原因是:

  • 分辨率差 因为,在进行三角测量时,与 CAD 模型相比,会损失一些质量。
  • 颜色和纹理丢失,其他更当前的格式已经允许的东西。
  • 无填充控制 高级。
  • 其他文件更有效率 在编辑或审查它们而不是 STL 时,以防有必要进行任何纠正。

.stl 软件

CAD 与 STL

一些 有关 STL 文件格式的常见问题 他们通常指的是如何创建这种格式,或者如何打开它,甚至如何修改它。 以下是这些说明:

如何打开 .stl 文件

如果你想知道如何 打开一个 STL 文件,您可以通过多种方式进行操作。 其中之一是通过一些在线查看器,或者也可以通过计算机上安装的软件。 以下是一些最佳选择:

如何创建 STL 文件

创建 STL 文件,您还拥有适用于所有平台的良好软件库,甚至还有在线选项,例如:

*有一些适用于移动设备的 3D 编辑和建模应用程序,例如 AutoCAD Mobile、Morphi、OnShape、Prisma3D、Putty、Sculptura、Shapr3D 等,尽管它们不能与 STL 一起使用。

如何编辑 STL 文件

在这种情况下,它能够创建的软件也允许 编辑 STL 文件,因此,看节目,可以看上一点。

替代品

3D 设计,文件格式

他们一点一点地出现了 一些替代格式 用于 3D 打印设计。 这些其他格式也非常重要,包括:

具有这种语言类型的文件不仅有一个扩展名,而且可以以多种形式呈现。 有些是 .gcode、.mpt、.mpf、.nc 等。
  • PLY(多边形文件格式):这些文件具有 .ply 扩展名,它是多边形或三角形的格式。 它旨在存储来自 3D 扫描仪的 XNUMXD 数据。 这是对象的简单几何描述,以及其他属性,例如颜色、透明度、表面法线、纹理坐标等。 而且,就像 STL 一样,有 ASCII 和二进制版本。
  • OBJ: 带有 .obj 扩展名的文件也是几何定义文件。 它们是由 Wavefront Technologies 为名为 Advanced Visualizer 的软件开发的。 它目前是开源的,并已被许多 3D 图形程序采用。 它还存储有关对象的简单几何信息,例如每个顶点的位置、纹理、法线等。 通过逆时针声明顶点,您不需要显式声明法线面。 此外,这种格式的坐标没有单位,但可以包含比例信息。
  • 3MF(3D 制造格式):此格式存储在 .3mf 文件中,这是由 3MF 联盟开发的开源标准。 增材制造的几何数据格式基于 XML。 它可以包括有关材料、颜色等的信息。
  • VRML(虚拟现实建模语言): 由 Web3D 联盟创建。 这些文件具有一种格式,其目的是表示交互式三维场景或对象,以及表面颜色等。 它们是 X3D(可扩展 3D 图形)的基础。
  • AMF(增材制造格式):一种文件格式 (.amf),它也是 3D 打印增材制造工艺对象描述的开源标准。 它也基于 XML,并且与任何 CAD 设计软件兼容。 它已作为 STL 的继任者出现,但进行了改进,例如包括对颜色、材料、图案和星座的原生支持。
  • WRL: VRML 扩展。

什么是G代码?

G代码示例

来源:https://www.researchgate.net/figure/An-example-of-the-main-body-in-G-code_fig4_327760995

我们已经谈论了很多关于 GCode 编程语言,因为它是当今 3D 打印过程的关键部分,从 STL 设计转移到 一个 G 代码,它是一个包含 3D 打印机指令和控制参数的文件. 将由切片器软件自动执行的转换。

我们将在 关于 CNC 的文章,因为 3D 打印机只不过是一台 CNC 型机器,它可以打印……

这段代码有 指挥官, 告诉打印机如何以及在哪里挤出材料以获得零件,类型:

  • G:这些代码被所有使用 G 代码的打印机普遍理解。
  • M:这些是特定系列 3D 打印机的特定代码。
  • 其他: 还有其他机器的其他原生代码,比如函数F、T、H等。
您可以查看 G 代码示例和图形结果 此链接.

正如您在示例的上一张图片中看到的那样,一系列 代码行 这无非就是告诉 3D 打印机该做什么的坐标和其他参数,就好像它是一个食谱:

  • X 和 Z: 是三个打印轴的坐标,即挤出机必须沿一个方向或另一个方向移动的坐标,原点坐标为 0,0,0。 例如,如果 X 中有一个大于 0 的数字,它将在 3D 打印机的宽度方向上移动到该坐标。 而如果 Y 轴上有一个大于 0 的数字,则打印头将向外移动并朝打印区域的方向移动。 最后,Z 中任何大于 0 的值都将导致它从下到上滚动到指定的坐标。 也就是说,对于这幅作品,可以说 X 是宽度,Y 是深度或长度,Z 是高度。
  • F: 将指示打印头移动的速度,单位为 mm/min。
  • E: 指以毫米为单位的挤压长度。
  • ;: 所有以 ; 开头的文本这是一条评论,打印机会忽略它。
  • G28:通常在开始时执行,以便头部移动到停止位置。 如果没有指定轴,打印机将移动所有 3 个轴,但如果指定了特定轴,它只会将其应用于该轴。
  • G1:它是最流行的 G 命令之一,因为它是命令 3D 打印机在线性移动到标记坐标 (X,Y) 的同时沉积材料的命令。 例如,G1 X1.0 Y3.5 F7200 表示沿坐标 1.0 和 3.5 标记的区域,以 7200 mm/min 的速度,即 120 mm/s 的速度沉积材料。
  • G0: 与 G1 相同,但不挤出材料,也就是说,它在不沉积材料的情况下移动头部,对于那些不应该沉积任何东西的运动或区域。
  • G92: 告诉打印机设置其轴的当前位置,这在您想要更改轴的位置时很方便。 非常适合在每一层的开始或缩回时使用。
  • M104: 命令加热挤出机。 它在开始时使用。 例如, M104 S180 T0 表示挤出机 T0 被加热(如果有双喷嘴,则为 T0 和 T1),而 S 决定温度,在本例中为 180ºC。
  • M109: 与上面类似,但表示打印应等到挤出机达到温度后再继续执行任何其他命令。
  • M140 和 M190: 类似于前两个,但它们没有参数 T,因为在这种情况下,它指的是床的温度。

当然,这个 G 代码有效 用于 FDM 类型打印机,因为树脂需要其他参数,但是通过这个示例,您足以了解它是如何工作的。

转换:STL 到...

STL文件转换

最后,考虑到存在的不同格式的数量,加上 3D CAD 设计的格式以及不同切片机生成的代码,用户最疑惑的另一件事是如何从一种转换到另一种。 在这里你有 一些最想要的转换:

如果你做一个谷歌搜索,你会看到有很多在线转换服务,比如 AnyConv 或 MakeXYZ,可以转换几乎任何格式,尽管不是所有的都能很好地工作,也不是所有的都是免费的。
  • 从 STL 转换为 GCode:它可以用切片软件转换,因为它是它的目标之一。
  • 从 STL 转到 Solidworks: 可以用 Solidworks 本身完成。 打开 > 在文件资源管理器中更改为格式 STL (*.stl) > 选项 > 改变 导入为 a 固体 o 坚硬的表面 > 接受 > 浏览并单击要导入的 STL > 打开 > 现在您可以在左侧看到打开的模型和特征树 > 进口 > 特征工程 > 识别特征 > 它就准备好了。
  • 将图像转换为 STL 或将 JPG/PNG/SVG 转换为 STL:您可以使用 Imagetostl、Selva3D、Smoothie-3D 等在线服务,或使用一些 AI 工具,甚至是 Blender 等软件,将图像生成 3D 模型,然后导出到 STL。
  • 从 DWG 转换为 STL: 是一个CAD文件,很多CAD设计软件都可以转换。 例如:
    • AutoCAD:输出 > 发送 > 导出 > 输入文件名 > 选择类型光刻 (*.stl) > 保存。
    • SolidWorks:文件 > 另存为 > 另存为 STL > 选项 > 分辨率 > 精细 > 确定 > 保存。
  • 从 OBJ 到 STL: 两种在线转换服务都可以使用,也可以使用一些本地软件工具。 例如,使用 Spin3D,您可以执行以下操作:添加文件 > 打开 > 在保存在文件夹中选择目标文件夹 > 选择输出格式 > stl > 按转换按钮并等待过程完成。
  • 从 Sketchup 到 STL:您可以使用 Sketchup 本身轻松地做到这一点,因为它具有导入和导出功能。 在这种情况下,您需要在打开 Sketchup 文件时按照以下步骤进行导出:文件 > 导出 > 3D 模型 > 选择 STL 的保存位置 > 另存为 STereolithography 文件 (.stl) > 导出。

更多信息


2条评论,留下您的评论

发表您的评论

您的电子邮件地址将不会被发表。 必填字段标有 *

*

*

  1. 负责数据:MiguelÁngelGatón
  2. 数据用途:控制垃圾邮件,注释管理。
  3. 合法性:您的同意
  4. 数据通讯:除非有法律义务,否则不会将数据传达给第三方。
  5. 数据存储:Occentus Networks(EU)托管的数据库
  6. 权利:您可以随时限制,恢复和删除您的信息。

  1.  

    解释得很好,也很清楚。
    谢谢合成。

    1.    艾萨克

      非常感谢您!