3D 打印技术新进展,第三部分:软件

作者:Kyle Rankin

本文是四部分系列文章的第三部分,探讨了自我就该主题发表第一篇文章以来的过去三年中 3D 打印技术发生的一些变化。因为这是Linux Journal,所以我没有讨论整个 3D 打印世界,而是专注于与开源和开放硬件最相关的主题部分。在第一篇文章中,我对 3D 打印技术的现状进行了总体概述。在第二篇文章中,我介绍了过去三年中 3D 打印硬件的变化,包括从开放硬件的转变以及哪些打印机仍然坚持其开放硬件的根基。在本文中,我将讨论 3D 打印软件的变化,然后在最后一部分中,我将介绍如何在 Raspberry Pi 上设置 OctoPrint 以远程控制您的打印机。

三年前,3D 打印的软件方面是开源软件力量的典范。几乎您能选择的任何流行的业余爱好者打印机都使用开源软件,从基于 Arduino 的板上的固件(通常是 Marlin),到将 Gcode 发送到打印机的软件(Printrun 工具套件),到将 3D 模型转换为打印机理解的 Gcode 的切片器(Slic3r 和 Repetier 等),再到您可以用来创建 3D 模型的软件(OpenSCAD、FreeCAD 和 Blender 等)。所有这些软件都在 Linux 上运行,因此您可以使用 3D 打印生命周期的每个部分,而无需专有软件。随着人们对 3D 打印的兴趣日益浓厚,所有软件的开放性有助于推动我们今天看到的许多创新。

不幸的是,即使不是可预测的,随着 3D 打印越来越受欢迎,新公司进入市场,与其说是为了社区的健康,不如说是为了利润驱动,我们看到 3D 打印的软件方面也像硬件方面一样封闭并变得专有。在许多情况下,一家公司会以专有的 3D 打印机进入市场,但仍然依赖开源软件来驱动它,以便争取时间编写专有的替代方案。正如我们看到 Makerbot 开始封闭其硬件设计一样,我们也看到曾经是开源软件的 Repetier(以前在 Apache 许可下)转变为闭源。许多生产商业 CAD 软件的公司,例如 AutoCAD,也已进入消费市场,推出了专有的基于主机和云的 CAD 软件,以及用于切片 3D 模型和控制 3D 打印机本身的软件。

所有这些关于专有软件的讨论可能会使 3D 打印的软件方面看起来相当黯淡,但在所有这些阴云中也有一线希望。虽然 Printrun 和 Slic3r 仍然运行良好,但开源硬件 Ultimaker 系列 3D 打印机的创建者 Ultimaker 发布了自己的切片和打印机控制软件 Cura,该软件已成为 3D 打印社区中许多人的流行选择。Cura 结合了 Printrun 的 3D 打印机控制功能(实际上具有类似的控制面板)以及快速切片器和复杂界面,使您可以轻松地在打印前查看、旋转和缩放 3D 模型。Ultimaker 甚至为许多常见的 Linux 发行版提供了软件包,因此如果您不想构建软件,则无需费心。

虽然 Cura 是为 Ultimaker 打印机创建的,但在启动时,它会启动一个向导,其中包含许多流行的 3D 打印机的校准设置,包括完整的 Printrbot 系列等。事实上,Cura 现在是 Printrbot 打印机推荐的切片和控制软件。启动向导完成后,Cura 知道有关您的打印机的基本设置,例如热端的默认尺寸、它使用的耗材尺寸以及打印床的整体尺寸。但这并不意味着您可能不需要进行一些调整。就我而言,我需要根据 Printrbot 的建议修改 Cura 在打印开始和结束时使用的 Gcode,以确保自动调平器功能正常,并且挤出机计数器正确重置。

默认的 Cura 界面相对简单明了(图 1),如果您单击“专家”→“切换到快速打印”,它会提供一个简化的视图,隐藏了许多您可能想要调整的更高级设置。事实上,它甚至隐藏了更高级的打印机控制界面,而倾向于更简单的界面。在这种简化的模式下打印对象时,您只需在几种不同的质量设置之间进行选择,这些设置会为速度和层高设置合理的默认值。主窗口让您可以清晰地查看您已加载的任何 3D 对象,并允许您使用鼠标旋转和移动选项,以及像 CAD 软件一样向上和向下缩放它。Cura 的一个优点是它不仅切片速度非常快,而且还在任何设置更改时立即开始切片,而不是等待您告诉它这样做,因此一旦您准备好打印对象,Cura 可能已经生成了 Gcode。

图 1. 默认 Cura 界面

这些基本的打印预设是针对 Ultimaker 打印机的,因此如果您使用不同的打印机,您可能需要通过单击“专家”→“切换到完整设置”(图 2)切换到高级设置视图。在高级视图中,一旦您确定了适用于您的打印机的配置,您就可以调整几乎所有您需要的切片设置,如果这还不够,您可以进入专家设置窗口并调整更多设置。当您将所有设置调整到您喜欢的状态时,您可以保存各种配置文件。这对于某些更奇特的材料(例如 Ninjaflex)特别有用。我喜欢为我用于普通质量打印的普通 PLA 设置一个基本的默认配置文件,并且我已经为 Ninjaflex 和具有更高质量设置的 PLA 创建了自定义配置文件。

图 2. 高级 Cura 设置

从开源的角度来看,CAD 世界仍然与三年前的情况相对相似。OpenSCAD 和 Blender 等工具仍然占据主导地位,OpenSCAD 已经出现了像 OpenJSCad 这样的变体,它使用 JavaScript 作为构建 3D 对象的语言。CAD 软件的大部分增长似乎都来自像 AutoCAD 这样的公司提供的免费但专有的产品,这些公司旨在在桌面或 Web 工具中提供一套简单的 CAD 功能,作为对其更复杂的 CAD 软件套件进行销售的介绍。除了这对开源倡导者来说显而易见的缺点之外,这也意味着,尽管这些工具生成的 .stl 文件可以被所有人打开和打印,但源项目文件(这使得修改模型更容易,就像 GIMP 项目文件而不是 .png)需要专有软件才能打开。

三年前,您用来共享和下载 3D 打印对象的主要站点是 Thingiverse。虽然 Thingiverse 仍然是一个流行的选择,但几年前,由于其使用条款的一些更改,它对用户提交的打印作品拥有比社区中某些人更舒服的权利,因此引发了一些社区的强烈反对。这引发了强烈反对,抗议者将抗议声明对象上传到该站点。这场争议的一个结果是,涌现出许多其他站点来共享 3D 模型。对于开源社区来说,最值得注意的可能是 YouMagine,它由 Ultimaker 运营,是开源社区中共享模型的流行选择。

开源 3D 打印软件的最后一个有趣的进展是一个足够大的话题,以至于我本系列的最后一篇文章将专门讨论它:OctoPrint。借助 OctoPrint 项目,您可以将 Raspberry Pi(或任何 Linux 计算机)变成 3D 打印机的独立 Web 控制器。OctoPrint 特别支持网络摄像头和 Raspberry Pi 摄像头,因此您可以从另一个房间或完全不同的位置观看打印进度,并拍摄打印作品的延时视频。即使我使用 Cura 作为我的切片软件,并且 Cura 也可以轻松控制我的打印机,但我仍然使用 OctoPrint 来管理我的打印作业,以便我可以获得视频和远程控制的好处。在我的办公室开始打印,然后能够在客厅监控它非常方便。如果您对此感兴趣,请务必查看下个月的期刊,我将在其中详细介绍如何设置和使用 OctoPrint。

资源

Cura: https://ultimaker.com/en/products/software

OpenSCAD: http://openscad.org

OpenJSCad: http://openjscad.org

OctoPrint: http://octoprint.org

Kyle Rankin 是 Linux Journal 的技术编辑和专栏作家,以及 Purism 的首席安全官。他是 Linux Hardening in Hostile Networks, DevOps Troubleshooting, The Official Ubuntu Server Book, Knoppix Hacks, Knoppix Pocket Reference, Linux Multimedia HacksUbuntu Hacks 的作者,也是许多其他 O'Reilly 书籍的贡献者。Rankin 经常就安全和开源软件发表演讲,包括在 BsidesLV、O'Reilly Security Conference、OSCON、SCALE、CactusCon、Linux World Expo 和 Penguicon 上。您可以在 @kylerankin 上关注他。

加载 Disqus 评论