正如汤姆在评论中所解释的那样,您可以使用M42
命令直接从 G 代码设置任何端口。要将引脚设置为22
“高”,您需要调用M42 P22 S255
. 没有为命令添加时间的参数,因此您需要使用G4
(dwell 或 pause)自己添加来指定打印机需要等待下一条指令的时间,例如:
M42 P22 S255 ; Activate solenoid/relay
G4 P2000 ; Dwell/pause for 2000 milliseconds (2 seconds)
M42 P22 S0 ; Deactivate solenoid/relay
作为替代方案,如果您的机器中未使用该风扇,您可以使用现有风扇(或在固件中添加一个“额外风扇”并将值 255 发送到该风扇)。要使用现有风扇:
M106 S255 ; Activate solenoid/relay
G4 P2000 ; Dwell/pause for 2000 milliseconds (2 seconds)
M107 ; Deactivate solenoid/relay
在这个答案中已经描述了如何添加额外的风扇(对于特定的 RAMPS 板)。但是,答案也适用于其他电路板,只要您有可以访问的外露引脚(或者如果您可以直接焊接到开放引脚),就可以使用所描述的技术。
用于激活“额外风扇”(电磁阀)的 G 代码是M106 P1 S255
禁用的M107 P1
。请注意,有一个选项/参数可以为命令添加时间(Bnnn
Blip 时间 - 风扇将在从静止状态启动时以全 PWM 运行此秒数)到M106
命令中,但这仅在 RepRapFirmware 中实现。另一种方法是使用G4
(dwell or pause) 来指定打印机需要等待多长时间来等待下一条指令 ( M107
) 被解析,例如:
M106 P1 S255 ; Activate solenoid/relay
G4 P2000 ; Dwell/pause for 2000 milliseconds (2 seconds)
M107 P1 ; Deactivate solenoid/relay