我试图编写一个简单的 Python 脚本,向运行 Marlin 的 Wanhao D9 主板打印机发送 GCode 命令。我将脚本运行在连接到打印机的 Raspberry Pi 上,并通过 USB 连接。
import serial
ser = serial.Serial("/dev/ttyUSB0", 115200)
ser.write("G28\n")
我已经阅读了20多个论坛页面,发现有类似的问题,并尝试了他们提供的解决方案,例如将波特率更改为250000以及对写函数参数进行以下更改:
ser.write("G28\r\n")
ser.write(b'G28\r\n')
ser.write(b'G28\n')
ser.write(b'G28')
ser.write("G28")
我已经尝试了所有这些组合,并且还添加了:
time.sleep(5)
在我的文件顶部,我加入了与时间模块相关的import语句。我将这行代码添加在ser声明和ser.write函数调用之间。
我还尝试添加:
ser.close()
我尝试了一些组合方式,以便查看是否会有所不同,但似乎并没有帮助,因为我知道这是最佳实践。
无论我使用哪种代码组合,在运行Python脚本时,我的打印机似乎都会重新启动(屏幕从主页更改为开机菜单,然后再回到主页)。
我期待任何人能够对我的代码提供帮助,并指出我可能做错了什么。