剛剛找到一個3D打印機G代碼的注釋網站,共享一下
另外,摘錄一些注釋
延時G 命令
RepRap固件接收到這些命令後,會先存儲在一個循環隊列緩存裡再執行。這意味着固件在接收到一條命令後馬上可以傳輸下一條。另一方面,這也意味着一組線段可以沒有間斷的情況下連續打印。為了實現命令流的控制,當接受到可緩存的命令時,如果固件把它成功放到本地緩存裡,就立即給出應答,如果本地緩存已滿,則會延時等到緩存有空出的位置時,才給出應答。
G0: Rapid move 快速移動
Support FiveD Teacup Sprinter Marlin Repetier
yes yes yes yes
Example: G0 X12
這個命令會移動的距離 X = 12 mm. 事實上, 對于RepRap來說,這個命令的效果和G1 X12是一樣的。(這條命令本來是為了讓那些喜歡走折線路徑的老機器走直線這個比較快的路徑,所以叫做快速移動)
G1: Controlled move 可控移動
Support FiveD Teacup Sprinter Marlin Repetier
yes yes yes yes yes
Example: G1 X90.6 Y13.8 E22.4
從當前的位置點(X, Y) 移動到目的點(90.6, 13.8), 并會在行進過程中擠出22.4mm的打印絲(注意,擠出命令是由E22.4控制的)
RepRap 對于進料速度很敏感. 因此:
G1 F1500
G1 X90.6 Y13.8 E22.4
會先設置 1500毫米每分鐘 的進料速度, 然後才會移動(X90.6 Y13.8)并且吐絲.
但是
G1 F1500
G1 X90.6 Y13.8 E22.4 F3000
這串代碼卻會先設置1500毫米每分鐘 的進料速度,然後在移動的時候提升進料速度,直到3000毫米每分鐘。
RepRap 可以通過E命令輕易對進料速度進行加/減速,就像對X,Y,Z,E命令一樣,這樣,機器才能在必要的點吐必要的絲。
提示: 不是所有的固件都支持這項功能(移動在改變進料速度), 例如: 當前的 Marlin 會從一開始就使用新的進料速度,而不會嘗試在中途改變它。
第一個例子是在移動時保持固定進料速度,而第二個例子則是在移動中改變進料速度。 因此:
G1 F1500
G1 X90.6 Y13.8 E22.4 F3000
G1 X80 Y20 E36 F1500
這段代碼會先先加速進料速度到3000毫米每分鐘 減速到1500 毫米每分鐘。
吸絲操作,通過反向轉動擠出機馬達,減少擠出機内部壓力,避免在懸空移動時候的吐絲,可以有效減少打印過程中的毛刺現象,具體操作:發送G1 Ennn指令給RepRap 其中nnn的值應當小于當前的值
M103 關閉所有擠出機 / Extruder Retraction (擠出回縮)
M103 in Teacup firmware
If a DC extruder is present, turn that off. Else, retract the filament in the hope to prevent nozzle drooling. Complement to M101.
M103 in other firmwares
Deprecated. Regarding extruder retraction, see M227, M228, M229.
M104:設置擠出機(熱頭)溫度
Support FiveD Teacup Sprinter Marlin Repetier
yes yes yes yes yes
例如: M104 S190
将擠出機的溫度設置為190oC 并将操作全歸還給操作主機(控制PC) (i.e. before that temperature has been reached by the extruder). See also M109.
This is deprecated because temperatures should be set using the G10 and T commands (q.v.).
Deprecation is subject to discussion. --Traumflug 11:33, 19 July 2012 (UTC)
M104 in Teacup Firmware
In Teacup Firmware, M104 can be additionally used to handle all devices using a temperature sensor. It supports the additional P parameter, which is a zero-based index into the list of sensors in config.h. For devices without a temp sensor, see M106.
Example: M104 P1 S100
Set the temperature of the device attached to the second temperature sensor to 100 °C.
M105: 獲取溫度
Example: M105
請求當前溫度(單位:℃),溫度将立即返回到控制程序 (T:擠出機 B:加熱床) 例如,輸出候會得到這樣的答複 ok T:201 B:117
M106: 打開風扇
Support FiveD Teacup Sprinter Marlin Repetier
yes yes yes
Example: M106 S127
打開風扇(半速)
'S'表示 PWM值 (0-255). 可簡單理解為 風扇有0-255級強度可選,其中 M106 S0 意味着風扇将被關掉。
M106 in Teacup Firmware
Additionally to the above, Teacup Firmware uses M106 to control general devices. It supports the additional P parameter, which is an zero-based index into the list of heaters/devices in config.h.
Example: M106 P2 S255
Turn on device #3 at full speed/wattage.
Note: When turning on a temperature sensor equipped heater with M106 and M104 at the same time, temperature control will override the value given in M106 quickly.
M107: 關閉風扇
不推薦. 請用M106 S0 代替.
M108: 設置擠出機速度
設置擠出機電機的轉速 (不推薦,請使用 M113)
M109: 設置擠出機溫度,并等待
Support FiveD Teacup Sprinter Marlin Repetier
not needed see text yes ???
M109 in Teacup
Not needed. To mimic Marlin behaviour, use M104 followed by M116.
M109 in Marlin, Sprinter固件 (ATmega port)
設置擠出機溫度,并等待.
Example: M109 S185
M109 in Sprinter (4pi port)
Parameters: S (optional), set target temperature value. If not specified, waits for the temperature set by M104. R (optional), sets target temperature range maximum value.
Example: M109 S185 R240 //sets extruder temperature to 185 and waits for the temperature to be between 185 - 240.
If you have multiple extruders, use T or P parameter to specify which extruder you want to set/wait.
Another way to do this is to use G10.
有話要說...