项目简介
本项目是一个开源的3D打印机状态显示系统,基于Arduino和Duet Wifi开发。适用于配备Duet Wifi控制板的用户,为昂贵的PanelDue显示器提供了低成本、易制作的替代方案。系统通过三个屏幕实现打印状态展示、预加热床和挤出机、暂停打印并更换新丝材等功能。
项目的主要特性和功能
Duet Data部分
- 数据获取:借助Duet Wifi的串口,利用gcode命令(如
M408
)获取打印机的实时状态数据,以JSON格式呈现。 - 数据解析:解析包含温度、设置点、完成百分比以及预计剩余时间等信息。
- 控制命令:使用gcode命令(如
G28
、M140
、M104
、M25
、M24
等)实现对打印机的控制。
Arduino部分
- 中间设备:作为Duet和Nextion显示器之间的桥梁,负责接收数据和发送控制命令。
- 串口通信:需配置两个串口,分别用于与Duet和Nextion显示器通信。
- 数据处理:运用JSON库解析来自Duet的JSON数据,并按需更新Nextion显示器的内容。
Nextion显示器部分
- 显示配置:使用Nextion编辑器创建三个页面,分别显示打印状态、预加热床和挤出机、暂停打印并更换新丝材。
- 数据通信:通过串口与Arduino通信,接收更新的显示内容。
安装使用步骤
1. 编程Arduino
将Arduino代码上传到Feather M0板(可使用Adafruit Feather M0 Adalogger或其他兼容的M0板),确保代码包含必要的库文件,如JSON库。
2. 编程Nextion显示器
使用Nextion编辑器将配置好的显示代码上传到Nextion显示器,可选择2.4英寸的Nextion显示器型号。
3. 接线
将Duet的PanelDue端口的5V、Gnd、Tx和Rx连接到Arduino和Nextion显示器。确保Arduino的串口配置正确,Duet的Tx连接到Arduino的Rx0,Duet的Rx连接到Arduino的Tx0;Nextion的Tx连接到Arduino的D11,Nextion的Rx连接到Arduino的D10。
4. 打印外壳
使用3D打印机打印合适的外壳,用于保护Arduino和Nextion显示器。
5. 测试与使用
连接电源后,系统自动启动并显示打印机的实时状态。可通过Nextion显示器上的按钮进行预加热、暂停打印和更换丝材等操作。
下载地址
点击下载 【提取码: 4003】【解压密码: www.makuang.net】