Переменные Cura и начальные команды G-кода
Ender 3 Pro, PLA, температура 200 °C и 60 °C.
Я хочу не нагревать сопло до завершения автоматического выравнивания стола (CR Touch). Я могу сделать это в стартовом G-коде, но к тому времени Cura уже нагрела сопло до температуры, указанной в разделе "Материал", и филамент начинает вытекать во время выравнивания стола. Я бы предпочел присвоить переменной это значение и вызвать ее с помощью M104,
когда буду готов.
Это начало g-кода Cura:
;FLAVOR:Marlin
;TIME:2888
;Filament used: 1.96332m
;Layer height: 0.2
;MINX:93.266
;MINY:10.195
;MINZ:0.2
;MAXX:126.734
;MAXY:210.658
;MAXZ:4.2
;Generated with Cura_SteamEngine 4.13.1
M140 S60
M105
M190 S60
M104 S200
M105
M109 S200
M82 ;absolute extrusion mode
; Ender 3 Custom Start G-code
G92 E0 ; Reset Extruder
G28 ; Home all axes
G29 ; Auto Bed Level (CR Touch)
G1 Z2.0 F3000 ; Move Z Axis up little to prevent scratching of Heat Bed
G1 X0.1 Y20 Z0.3 F5000.0 ; Move to start position
G1 X0.1 Y200.0 Z0.3 F1500.0 E15 ; Draw the first line
G1 X0.4 Y200.0 Z0.3 F5000.0 ; Move to side a little
G1 X0.4 Y20 Z0.3 F1500.0 E30 ; Draw the second line
G92 E0 ; Reset Extruder
...
Строки сразу после "Сгенерировано с помощью Cura_SteamEngine" - это те, которые я хотел бы изменить, но я не могу найти их в приложении Cura. Я знаю, что 60 ° C и 200 ° C - это температуры, определенные для стола и сопла. Cura вставляет их в качестве констант для команд M140
и M104
. Я бы хотел, чтобы Cura устанавливала переменным эти значения (например, {bed_temp} = 60
), чтобы я мог ссылаться на эту переменную, когда вставляю команду M140
в свой пользовательский запуск G-кода. Можно ли это сделать?
Связанный с этим вопрос был задан несколько лет назад, и тогда часть примера начального кода была следующей:
; Ender 3 Custom Start G-code
M104 S{material_print_temperature_layer_0} ; Set Extruder temperature
M140 S{material_bed_temperature_layer_0} ; Set Heat Bed temperature
G28 ; Home all axes
G29 ; BLTOUCH Mesh Generation
M190 S{material_bed_temperature_layer_0} ; Wait for Heat Bed temperature
M109 S{material_print_temperature_layer_0} ; Wait for Extruder temperature
Переменная {material_bed_temperature_layer_0}
уже была установлена, но я не знаю, где и как это было сделано.
@RayW, 👍3
2 ответа
Перейдите в меню Настройки
-> Принтеры
из верхнего меню,
выберите ваш активный принтер (или активируйте
его) и управляйте настройками принтера через устройство
.
Это откроет настройки принтера,
там вы сможете изменить нужные строки в разделе Start G-code
.
Примечание. G-код запуска по умолчанию не включает в себя нагрев рабочего стола и ядра, в вашем случае вам нужно добавить их после G29
. Лично я использую heat up desk и продолжаю (M140
), затем нагреваю ядро и жду, пока не будет достигнута температура (M109
), затем нагреваю и жду, пока не будет достигнута температура стола (M190
).
Я с этим разобрался. ЕСЛИ я включу свои собственные команды нагрева в свой начальный G-код, Cura знает, что НЕ следует добавлять свои собственные команды нагрева в начале файла G-кода.
Переменные, о которых я говорил, имеют специальные имена.
material_print_temperature_layer_0
- это температура печати (экструдера / сопла), установленная в разделе Material в Cura.
material_bed_temperature_layer_0
- это температура пластины сборки, установленная в разделе Material в Cura.
Cura заменяет значения этих переменных именами переменных в файле G-code.
Поэтому, чтобы избежать просачивания филамента во время автоматического выравнивания стола, я устанавливаю температуру сопла на 150 ° C (горячая, но ниже заданной температуры печати и достаточно низкая, чтобы избежать просачивания). Я устанавливаю температуру рабочего стола на заданную температуру.
Затем я автоматически выравниваю стол.
Затем я нагреваю сопло до заданной температуры печати и запускаю задание на печать.
Это мой Стартовый G-код:
; Пользовательский G-код запуска Ender 3
G92 E0 ; Сброс экструдера
G28 ; Главная страница по всем осям
M104 S150 ; Настройка температуры экструдера для выравнивания стола
M140 S{material_bed_temperature_layer_0} ; Установить температуру нагревательного стола
M109 S150; Дождитесь температуры экструдера для выравнивания стола
M190 S{material_bed_temperature_layer_0} ; Дождитесь температуры нагревательного стола
G29; Автоматический уровень стола (CR Touch)
M104 S{material_print_temperature_layer_0} ; Установить температуру экструдера
M109 S{material_print_temperature_layer_0} ; Дождитесь температуры экструдера
G1 Z2.0 F3000; Немного сдвиньте ось Z вверх, чтобы предотвратить царапание теплового слоя
G1 X0.1 Y20 Z0.3 F5000.0; Переместиться в исходное положение
G1 X0.1 Y200.0 Z0.3 F1500.0 E15; Нарисуйте первую линию
G1 X0.4 Y200.0 Z0.3 F5000.0; Немного сдвинуться в сторону
G1 X0.4 Y20 Z0.3 F1500.0 E30; Нарисуйте вторую линию
G92 E0 ; Сброс экструдера
G1 Z2.0 F3000; Немного сдвиньте ось Z вверх, чтобы предотвратить царапание теплового слоя
G1 X5 Y20 Z0.3 F5000.0; Переместитесь, чтобы предотвратить раздавливание капли
И вот как Cura записывает файл G-code:
;FLAVOR:Marlin
;TIME:2888
;Filament used: 1.96332m
;Layer height: 0.2
;MINX:93.266
;MINY:10.195
;MINZ:0.2
;MAXX:126.734
;MAXY:210.658
;MAXZ:4.2
;Generated with Cura_SteamEngine 4.13.1
M82 ;absolute extrusion mode
; Ender 3 Custom Start G-code
G92 E0 ; Reset Extruder
G28 ; Home all axes
M104 S150 ; Set Extruder temperature for bed leveling
M140 S60 ; Set Heat Bed temperature
M109 S150 ; Wait for Extruder temperature for bed leveling
M190 S60 ; Wait for Heat Bed temperature
G29 ; Auto Bed Level (CR Touch)
M104 S200 ; Set Extruder temperature
M109 S200 ; Wait for Extruder temperature
G1 Z2.0 F3000 ; Move Z Axis up little to prevent scratching of Heat Bed
G1 X0.1 Y20 Z0.3 F5000.0 ; Move to start position
G1 X0.1 Y200.0 Z0.3 F1500.0 E15 ; Draw the first line
G1 X0.4 Y200.0 Z0.3 F5000.0 ; Move to side a little
G1 X0.4 Y20 Z0.3 F1500.0 E30 ; Draw the second line
G92 E0 ; Reset Extruder
G1 Z2.0 F3000 ; Move Z Axis up little to prevent scratching of Heat Bed
G1 X5 Y20 Z0.3 F5000.0 ; Move over to prevent blob squish
G92 E0
...
Я надеюсь, что это поможет кому-то с подобным вопросом.
Ваше здоровье.
- Редактирование G-кода для изменения порядка печати нескольких заданий печати по одному
- Как возобновить незаконченный проект
- Написание G-кода : проведите пальцем в начале печати
- Cura: установить z-смещение
- Эндер 3 тяжелая недоэкструзия
- Одновременный нагрев экструдера и стола при запуске печати
- Как избежать попадания сопла в модель?
- Переместить печатный стол спереди в конце печати, а не сзади