创客出手

目录

用docker安装Octoprint 3D打印控制软件

如果你是玩3D打印的创客,你就一定有听说过或者使用过Octoprint,又或者看过一只绿色的八抓鱼出现在各大创客社交媒体。Octoprint,本文或对Octoprint进行简单的介绍,并且分享怎样使用docker来快速安装octoprint软件。

octoprint

Octoprint简介

octoprint_gina
OctoPrint 是一个开源的 3D 打印机控制器应用程序,它为连接的打印机提供 Web 界面。 它可以显示打印机的状态和关键参数,并支持安排打印作业和远程控制打印机。OctoPrint早在2012年由德国女创客(也是全栈程序员)Gina Häußge开始开发并维护至今的开源软件。因为平台的开放性和功能强大,3D打印社群为octoprint开发了大量插件,深受创客们的喜爱。我来总结一下Octoprint的主要特色和功能:

  1. 可安装在多种SBC(Single Board Computer)主板,包括树莓派(2-4代), Jetson Nano, Windows, Linux,等等,由于是python语言开发而成,兼容性很好。
  2. 插件众多,尤其是延时拍摄,远程更新固件,安全检查等插件都是相当实用,这些插件大大提高了3D打印可玩性。
  3. 远程监视和控制,因为FDM 3D打印的打印时间较长,你不可能长时间看着打印机的开始和结束,Octoprint让你放心离开,也可以远程观察打印是否正常进行,从而提前干预,或者事后分析。

这是Octoprint的官网和Github链接,如果想更深入地了解,可以自行深挖。
官网:https://octoprint.org/
Github:https://github.com/OctoPrint/OctoPrint

使用Docker安装Octoprint的好处

Octoprint提供了多种安装方式,包括写入一张pi 的image,通过pip 安装,甚至能够安装到一台旧手机或者矿渣主板上面。Octoprint推荐使用树莓派作为控制主板,官方做好了一个树莓派的镜像,安装相当方便,因此Octoprint也经常被称为OctoPi,或者章鱼派。但因为我们经常使用不同的开发板,使用一种稳定可靠的方法来安装,可以避开各种奇怪的环境问题。因此,我推荐使用docker来安装octoprint。

安装过程

前置条件

  1. 你要确定你的运行环境符合Octoprint的最低运行要求,官网推荐3B, 3B+, 或者4B,而不推荐使用pi zero,但如果你只是用于远程控制,树莓派2代或者pi zero都能正常使用。如果你使用的不是树莓派系列,建议cpu至少是1.2Ghz以上,内存1Gb或者以上。
  2. 你要确保你的运行环境已经安装好docker,具体docker安装不在这里介绍。如果你使用的是树莓派或者jetson nano,可以参考《在树莓派/JetsonNano安装docker》

检查设备端口

无论是树莓派还是jetson nano或其他主板,主板都有连接打印机,然而打印机的设备端口有时候叫/dev/ttyACM0或者/dev/USB0或者windows上的COM#,因此你要先确定连接打印机后的USB端口名称。

在Linux系统下,通常是查看一下/dev目录找出相应的端口名称。
file

运行命令安装

运行以下docker run 命令即可自动安装和启动Octoprint,网络通畅的情况下在一分钟左右就下载完成并且自动运行。

docker run -d -v octoprint:/octoprint \
            --device /dev/ttyUSB0:/dev/ttyUSB0 \
            --device /dev/video0:/dev/video0 \
            -e ENABLE_MJPG_STREAMER=true \
            -p 80:80 --name octoprint \
            octoprint/octoprint

我们这里来解释一下
-d 这是为了让octoprint在后台运行,不然会一种占用你的终端,关闭终端,octoprint也会死掉。
-v octoprint:/octoprint 这是要在你的本地映射octoprint的存储空间,不然重启docker后你的配置就会丢失
–device /dev/ttyUSB0:/dev/ttyUSB0 这是把本地的USB设备映射到docker系统,不然你的octoprint就无法访问usb设备。
–device /dev/video0:/dev/video0 这是把摄像头映射到docker系统,如果你没有安装摄像头,可以不运行
-p 80:80 这是把系统的80端口映射到docker的80端口,假如你希望系统使用5000端口,可以改成-p 5000:80
-name 这是把docker的容器命名为octoprint, 方便管理。
最后的octoprint/octoprint就是镜像的名称。

在浏览器打开控制器的网址即可使用

网址:http://<控制器ip>:<你设置的端口,80端口可以不填>
具体的Octoprint 配置也相当简单,根据提示填入你的打印机参数即可,这里不做介绍。

现在Octoprint可以使用啦!
octoprint_snapshot

更多关于 , 的文章
关注创客出手公众号

关注创客出手