見出し画像

Bambu Lab P1S 開始G-CODE解読(途中) 10/22更新

;===== machine: P1S ========================
;===== date: 20231107 =====================
;===== turn on the HB fan & MC board fan =================
M104 S75 ;ホットエンド加熱、75度
M710 A1 S255 ;MCファンON、100%(S255)
;===== reset machine status =================
M290 X40 Y40 Z2.6666666 ; ベイビーステップ、パラメーター(X40 Y40 Z2.6666666)指定
G91 ;相対的位置
M17 Z0.4 ; ステッパー有効、パラメーター(Z0.4)指定
G380 S2 Z30 F300 ; G380はG38と同じ、ヒートベッドをZ30へZ速度300mm/minで相対移動(Z速度5mm/s)ヒートベッドをプローブ、ノズルの位置をヒートベッド以下にしない
G380 S2 Z-25 F300 ; プローブした位置からヒートベッドをZ-25へZ速度300mm/min相対移動(Z速度5mm/s)
G1 Z5 F300; ヒートベッドをZ5までZ速度300mm/min直線移動(Z速度5mm/s)
G90 ; 絶対位置指定
M17 X1.2 Y1.2 Z0.75 ; ステッパー有効、デフォルト値、パラーメター指定
M960 S5 P1 ; ロゴランプON
G90 ; 絶対位置指定
M220 S100 ;フィードレイトリセット100%
M221 S100 ;フローレイトリセット100%
M73.2 R1.0 ; 残り時間のリセット
M1002 set_gcode_claim_speed_level : 5 ; G-CODE要求レベル5
M221 X0 Y0 Z0 ; 潜在的なロジックの問題を防ぐ為ソフトエンドストップをオフにする
G29.1 Z{+0.0} ; Zプローブオフセットをクリア
M204 S10000 ; デフォルトの加速度を設定(10000m/s^2)

;===== ヒートベッド予熱 ====================
M1002 gcode_claim_action : 2;ヒートベッド予熱開始
M140 S[bed_temperature_initial_layer_single] ;ヒートベッドを初期レイヤー設定温度にセット
M190 S[bed_temperature_initial_layer_single] ;ヒートベッドが初期レイヤー設定温度になるまで待機

;=====PLAの詰まり防止のためファンを回す=================
{if filament_type[initial_extruder]=="PLA"}
{if (bed_temperature[initial_extruder] >45)||(bed_temperature_initial_layer[initial_extruder] >45)}
M106 P3 S180;チャンバーファンON 70%(S180)
{endif};Prevent PLA from jamming
{endif}
M106 P2 S100 ; turn on big fan ,to cool down toolhead;補助ファンをON 40%(S100)、ツールヘッドの冷却

;===== 印刷温度と材料の準備 ==========
M104 S[nozzle_temperature_initial_layer] ;ホットエンド加熱開始[初期レイヤーの設定ノズル温度]
G91;相対位置
G0 Z10 F1200;直線移動 Z10 1200mm/min(Z速度20mm/s)
G90;絶対位置
G28 X;X軸、原点へ移動
M975 S1 ; ドワーフ加速時計のサンプリング周波数の測定を開始(ココちょっとよくわからない)
G1 X60 F12000;X座標60へ12000mm/minで直線移動(X速度200mm/s)
G1 Y245;Y座標245へ直線移動
G1 Y265 F3000;Y座標265へ3000mm/minで直線移動(Y速度50mm/s)
M620 M;デバイスの有効化(おそらくAMSのこと)
M620 S[initial_extruder]A ; AMSがある場合材料を切り替える
M109 S[nozzle_temperature_initial_layer];ホットエンドを初期レイヤー印刷設定温度に加熱
G1 X120 F12000;X座標120へ12000mm/minで直線移動(X速度200mm/s)

G1 X20 Y50 F12000;X座標20_Y座標50へ12000mm/minで直線移動(XY速度200mm/s)
G1 Y-3;Y座標-3直線移動
T[initial_extruder];ツールの選択、エクストルーダー(不明)
G1 X54 F12000;X座標54へ12000mm/minで直線移動(200mm/s)
G1 Y265;Y座標265へ直線移動
M400;一時停止
M621 S[initial_extruder]A;初期エクストルーダーの選択(多分)
M620.1 E F{filament_max_volumetric_speed[initial_extruder]/2.4053*60} T{nozzle_temperature_range_high[initial_extruder]};上記で選択されたエクストルーダーのノズルが高温の時、フィラメントの最大ロード量を2.4053*60に設定(多分)

M412 S1 ; ===turn on filament runout detection===

M109 S250 ;set nozzle to common flush temp
M106 P1 S0
G92 E0
G1 E25 F200
M400
M104 S[nozzle_temperature_initial_layer]
G92 E0
G1 E25 F200
M400
M106 P1 S255
G92 E0
G1 E5 F300
M109 S{nozzle_temperature_initial_layer[initial_extruder]-20} ; drop nozzle temp, make filament shink a bit
G92 E0
G1 E-0.5 F300

G1 X70 F9000
G1 X76 F15000
G1 X65 F15000
G1 X76 F15000
G1 X65 F15000; shake to put down garbage
G1 X80 F6000
G1 X95 F15000
G1 X80 F15000
G1 X165 F15000; wipe and shake
M400
M106 P1 S0
;===== prepare print temperature and material end =====

;===== wipe nozzle ===============================
M1002 gcode_claim_action : 14
M975 S1
M106 S255
G1 X65 Y230 F18000
G1 Y264 F6000
M109 S{nozzle_temperature_initial_layer[initial_extruder]-20}
G1 X100 F18000 ; first wipe mouth

G0 X135 Y253 F20000 ; move to exposed steel surface edge
G28 Z P0 T300; home z with low precision,permit 300deg temperature
G29.2 S0 ; turn off ABL
G0 Z5 F20000

G1 X60 Y265
G92 E0
G1 E-0.5 F300 ; retrack more
G1 X100 F5000; second wipe mouth
G1 X70 F15000
G1 X100 F5000
G1 X70 F15000
G1 X100 F5000
G1 X70 F15000
G1 X100 F5000
G1 X70 F15000
G1 X90 F5000
G0 X128 Y261 Z-1.5 F20000 ; move to exposed steel surface and stop the nozzle
M104 S140 ; set temp down to heatbed acceptable
M106 S255 ; turn on fan (G28 has turn off fan)

M221 S; push soft endstop status
M221 Z0 ;turn off Z axis endstop
G0 Z0.5 F20000
G0 X125 Y259.5 Z-1.01
G0 X131 F211
G0 X124
G0 Z0.5 F20000
G0 X125 Y262.5
G0 Z-1.01
G0 X131 F211
G0 X124
G0 Z0.5 F20000
G0 X125 Y260.0
G0 Z-1.01
G0 X131 F211
G0 X124
G0 Z0.5 F20000
G0 X125 Y262.0
G0 Z-1.01
G0 X131 F211
G0 X124
G0 Z0.5 F20000
G0 X125 Y260.5
G0 Z-1.01
G0 X131 F211
G0 X124
G0 Z0.5 F20000
G0 X125 Y261.5
G0 Z-1.01
G0 X131 F211
G0 X124
G0 Z0.5 F20000
G0 X125 Y261.0
G0 Z-1.01
G0 X131 F211
G0 X124
G0 X128
G2 I0.5 J0 F300
G2 I0.5 J0 F300
G2 I0.5 J0 F300
G2 I0.5 J0 F300

M109 S140 ; wait nozzle temp down to heatbed acceptable
G2 I0.5 J0 F3000
G2 I0.5 J0 F3000
G2 I0.5 J0 F3000
G2 I0.5 J0 F3000

M221 R; pop softend status
G1 Z10 F1200
M400
G1 Z10
G1 F30000
G1 X230 Y15
G29.2 S1 ; turn on ABL
G28 ; home again after hard wipe mouth
M106 S0 ; turn off fan , too noisy
;===== wipe nozzle end ================================

;===== bed leveling ==================================
M1002 judge_flag g29_before_print_flag
M622 J1

M1002 gcode_claim_action : 1
G29 A X{first_layer_print_min[0]} Y{first_layer_print_min[1]} I{first_layer_print_size[0]} J{first_layer_print_size[1]}
M400
M500 ; save cali data

M623
;===== bed leveling end ================================

;===== home after wipe mouth============================
M1002 judge_flag g29_before_print_flag
M622 J0

M1002 gcode_claim_action : 13
G28

M623
;===== home after wipe mouth end =======================

M975 S1 ; turn on vibration supression

;=============turn on fans to prevent PLA jamming=================
{if filament_type[initial_extruder]=="PLA"}
{if (bed_temperature[initial_extruder] >45)||(bed_temperature_initial_layer[initial_extruder] >45)}
M106 P3 S180
{endif};Prevent PLA from jamming
{endif}
M106 P2 S100 ; turn on big fan ,to cool down toolhead

M104 S{nozzle_temperature_initial_layer[initial_extruder]} ; set extrude temp earlier, to reduce wait time

;===== mech mode fast check============================
G1 X128 Y128 Z10 F20000
M400 P200
M970.3 Q1 A7 B30 C80 H15 K0
M974 Q1 S2 P0

G1 X128 Y128 Z10 F20000
M400 P200
M970.3 Q0 A7 B30 C90 Q0 H15 K0
M974 Q0 S2 P0

M975 S1
G1 F30000
G1 X230 Y15
G28 X ; re-home XY
;===== fmech mode fast check============================

;===== nozzle load line ===============================
M975 S1
G90
M83
T1000
G1 X18.0 Y1.0 Z0.8 F18000;Move to start position
M109 S{nozzle_temperature_initial_layer[initial_extruder]}
G1 Z0.2
G0 E2 F300
G0 X240 E15 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}
G0 Y11 E0.700 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}
G0 X239.5
G0 E0.2
G0 Y1.5 E0.700
G0 X18 E15 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}
M400

;===== for Textured PEI Plate , lower the nozzle as the nozzle was touching topmost of the texture when homing ==
;curr_bed_type={curr_bed_type}
{if curr_bed_type=="Textured PEI Plate"}
G29.1 Z{-0.04} ; for Textured PEI Plate
{endif}
;========turn off light and wait extrude temperature =============
M1002 gcode_claim_action : 0
M106 S0 ; turn off fan
M106 P2 S0 ; turn off big fan
M106 P3 S0 ; turn off chamber fan

M975 S1 ; turn on mech mode supression

この記事が気に入ったらサポートをしてみませんか?