Помогите с G-кодом, чтобы изменить заену нити филамента в середине печати

Я использую Ultimaker Cura, и я хочу изменить нить филамента для печати, которую я пытаюсь выполнить на слое 15. Проблема, с которой я сталкиваюсь, заключается в том, что мне также нужно использовать G-код для загрузки и выгрузки нити с помощью экструдера BMG. Это сценарий, созданный Ultimaker Cura для приостановки постпроцесса на уровне 15.

;current layer: 15
M83
G1 F3000 E-25
G1 F300 Z4
G1 F9000 X100 Y100
G1 F300 Z15
M104 S25; standby temperature
M0;Do the actual pause
M109 S215; resume temperature
G1 F3000 E25
G1 F3000 E-25
G1 F300 Z4
G1 F9000 X101.7 Y137.3
G1 F3000 E25
G1 F9000
M82
G92 E763.80547
G4 P1    

Это то, что я обычно использую для разгрузки своей нити:

G21 ;Значения Показателей
G90 ;Абсолютное Позиционирование
M109 S205.000 ;205 Разгрузка
G92 E0 ;Сброс Положения Экструдера
G1 E10 F100 ;Выдавливать нить 10 мм
G92 E0 ;Сброс Положения Экструдера
G1 E-600 F1500 ;Полностью втяните нить накала 
G92 E0 ;Сброс Экструдера
M400 ;Команда Ожидания
M117 НЕМЕДЛЕННО УДАЛИТЕ НИТЬ НАКАЛА ;Сообщение на ЖК-дисплее
M400 ; Команда Ожидания

И для загрузки:

G21 ;Metric Values
G90 ;Set absolute positioning
M109 S205.000 ;Preheat PLA
M300 S440 P200 ; Tone
M300 S660 P250 ; Tone
M300 S880 P300 ; Tone
G4 S5 ; Wait 5 seconds
G92 E0 ;Reset Extruder Position
G1 E380 F1500; Fast Feed of 380mm filament
G92 E0 ;Reset Extruder Position
G1 E100 F200 ;Feed 100mm filament slowly
G92 E0 ;Reset Extruder Position
M400; Finish Move

Итак, вот что я придумал, сработает ли это?

;current layer: 15
M83
G1 F3000 E-25
G1 F300 Z4
G1 F9000 X100 Y100
G1 F300 Z15
G92 E0; Reset extruder position
G92 E-600 F1500; Retract Filament Completely
M104 S25; standby temperature
M0;Do the actual pause
G92 E0; Reset Extruder Position
M109 S215 ;Preheat PLA+
G1 E380 F1500; Fast Feed of 380mm filament
G92 E0; Reset Extruder Position
G1 E100 F200; Slowly Feed 100mm
M104 S25; Standby Temperature
M0; Do the actual Pause
M109 S215; resume temperature
G1 F3000 E25
G1 F3000 E-25
G1 F300 Z4
G1 F9000 X101.7 Y137.3
G1 F3000 E25
G1 F9000
M82
G92 E763.80547
G4 P1

, 👍6

Обсуждение

Попробуйте и скажите нам, работает ли это!, @user77232


1 ответ


2

Перво-наперво имхо: M0, чтобы остановить печать. Я не знаю, какую прошивку вы используете, но она должна подождать, пока вы нажмете кнопку на ЖК-дисплее (это делает Марлин). После этого он запускает gcode для выгрузки и загрузки нити филамента, возобновляет температуру (M109 S215) и продолжает печать.

Это моя окончательная версия:

 М83
    G1 F3000 E-25
    G1 F300 Z4
    G1 F9000 X100 Y100
    G1 F300 Z15
    M0 ;Сделайте фактическую паузу
    G21 ;Значения Показателей
    G90 ;Абсолютное Позиционирование
    M109 S205.000 ;205 Разгрузка
    G92 E0 ;Сброс Положения Экструдера
    G1 E10 F100 ;Выдавливать нить 10 мм
    G92 E0 ;Сброс Положения Экструдера
    G1 E-600 F1500 ;Полностью втяните нить накала 
    G92 E0 ;Сброс Экструдера
    M400 ;Команда Ожидания
    M117 НЕМЕДЛЕННО УДАЛИТЕ НИТЬ НАКАЛА ;Сообщение на ЖК-дисплее
    M400 ; Команда Ожидания
    G21 ;Значения Показателей
    G90 ;Установите абсолютное положение
    M109 S205.000 ;Разогреть ПЛА
    M300 S440 P200 ; Тон
    M300 S660 P250 ; Тон
    M300 S880 P300 ; Тон
    G4 S5 ; Подождите 5 секунд
    G92 E0 ;Сброс Положения Экструдера
    G1 E380 F1500; Быстрая подача нити 380 мм
    G92 E0 ;Сброс Положения Экструдера
    G1 E100 F200 ;Медленно подавайте 100 мм нить накала
    G92 E0 ;Сброс Положения Экструдера
    М400; Финишный Ход
    M109 S215; температура возобновления
    G1 F3000 E25
    G1 F3000 E-25
    G1 F300 Z4
    G1 F9000 X101.7 Y137.3
    G1 F3000 E25
    G1 F9000
    М82
    G92 E763.80547
    G4 P1 

,