Кремень FMZ Реклама
Kremen FMHM Реклама

Скрипты для помощи в калибровке стола. Изучаем G Code на практике для начинающих и не только выпуск № 1

Санечка
Идет загрузка
Загрузка
16.01.2021
5293
14
Личные дневники

Подпишитесь на автора

Подпишитесь на автора, если вам нравятся его публикации. Тогда вы будете получать уведомления о его новых статьях.

Отписаться от уведомлений вы всегда сможете в профиле автора.

1
Статья относится к принтерам:
Ender 3 Pro

Всем привет всем доброго времени суток и приятного чтения. 

Давно уже собирался познакомится поближе с G-кодом, но как-то не приходило в голову для чего это мне нужно, а изучение ради изучения не интересовало. Нужна была какая-нибудь практическая задача решение которой облегчает жизнь. Вместе с тем, очень не нравится во время калибровки стола перемещаться по осям вручную. И как-то с утра потребовалось калибровать принтер и тут сложилось одно с другим и тогда решил попробовать написать скрипт для перемещения печатной головы в 4 угла стола. Сначала думал написать один скрипт для всех точек с небольшими задержками по времени в каждой. Однако исходя из личного опыта и способа калибровки решил перемещение в каждую точку сделать отдельным скриптом. Запускаю скрипты с микро-SD карты через меню принтера «печатать с SD карты». Можно конечно отправлять команды с консоли, но у меня это дольше получается, чем через меню принтера, кроме того были проблемы «подружить» компьютер и принтер и этот способ применения сильно выручал.

Знаком с программированием и многие вещи для меня очевидны, поэтому могу упускать какие-то нужные подробности, будут вопросы задавайте в комментариях.

Первое моё знакомство с G-кодом было здесь: https://3dtoday.ru/blogs/steamgun/g-code-po-russki-dlya-3d-pechati-mini-spravochnik и здесь: https://youtu.be/1cD7a_iRJPk. Пересказывать своими словами хорошее изложение материала не вижу смысла, изучите сами, не маленькие уже)))). Здесь приведу лишь краткое описание тех команд, которые использовал для написания скриптов калибровки.

G90 ; переход в абсолютную систему координат, обычно установлена по умолчанию после включения питания принтера. Для полной определенности, лучше добавить команды в свой скрипт.

G28 ; автоматическая парковка всех осей

G1; перемещение имеет аргументы

Примеры:

Переместить печатную голову в координату Х=10 мм со скоростью 600 мм / минуту

G1 X10 F600

Если надо совершить движение по двум осям одновременно, то запишем:

G1 X10 Y20 F600

Движение по оси Z также можно включать в координированное движение, однако движение по оси Z происходит гораздо медленнее, чем по другим осям, поэтому рекомендуется движение по оси Z отдельной командой, например,

G1 Z0.2 F300 ; Переместить печатную голову по оси Z на 0,2мм со скоростью 300мм/мин

Сразу замечу, что после включения питания принтеру необходимо задать через меню принтера команду Home (G28) – парковка по трем осям. Принтер при выполнении этой операции обретает ориентацию в пространстве - определяет координаты печатающей головы. И для исключения нештатных ситуаций стоит вставить код G28 в скрипт для первой точки, хотя поначалу я обходился без него.

В зависимости от состояния стола перед калибровкой, например, вы его для чего-то снимали, может возникнуть ситуация, когда сопло сильно упрется в стол. Если на печатном столе стекло и принтер соплом в него упрется, ничего страшного не должно произойти, а если поверхность мягкая, то такая поверхность может быть повреждена, тогда в каждый скрипт надо добавить подъем головы по оси Z перед началом перемещения, скажем, на 5-10 мм и по окончании перемещения её возврат в нулевое положение. По той же причине сначала калибровку рекомендую проводить при холодном сопле и столе и только после, того как убедились, что сопло нигде не задевает стол и не проплавит поверхность, можно включать нагрев сопла и стола и проводить уже более точную калибровку. Все варианты скриптов и ссылки на готовые файлы смотрите ниже. Кроме вышеуказанного подъем оси Z удобен, что бы не сносить зажимы и прочие выступающие над поверхностью стола предметы.

Для создания первого своего скрипта взял первый попавшийся файл модели, переименовал его в point1_X10_Y10.gcode, открыл его при помощи блокнота из стандартных программ Винды. Выделил всё через Ctrl-A и заменил выделенный диапазон скриптом на G-код:

;Подвигаем осями

G1 X10 Y10 F5000.0 ;переползаем в первую точку

Затем этот файл переименовал в point2_X200_Y220.gcode

И написал свой второй cкрипт:

;Подвигаем осями

G1 X200 Y220 F5000.0 ;переползаем во вторую точку

Переименовал файл в point3_X200_Y10.gcode

;Подвигаем осями

G1 X200 Y10 F5000.0 ; переползаем в третью точку

Так же поступил и для четвертой точки: point4_X10_Y220.gcode

;Подвигаем осями

G1 X10 Y220 F5000.0 ;переползаем в четвертую точку

«Продвинутые» варианты скриптов

; point1_X10_Y10.gcode

G28 ; Home для забывчивых

G90 ; включить абсолютную систему координат, на всякий случай

G1 Z10 F300 ; подъем головы на 10 мм над столом

G1 X10 Y10 F5000.0 ;переползаем в первую точку

G1 Z0 ; опускаем голову в нулевую координату

; point2_X200_Y220.gcode

G1 Z10 F300 ; подъем головы на 10 мм над столом

G1 X200 Y220 F5000.0 ;переползаем во вторую точку

G1 Z0 ; опускаем голову в нулевую координату

; point3_X200_Y10.gcode

G1 Z10 F300 ; подъем головы на 10 мм над столом

G1 X200 Y10 F5000.0 ; переползаем в третью точку

G1 Z0 ; опускаем голову в нулевую координату

; point4_X10_Y220.gcode

G1 Z10 F300 ; подъем головы на 10 мм над столом

G1 X10 Y220 F5000.0 ;переползаем в четвертую точку

G1 Z0 ; опускаем голову в нулевую координату

Ссылка на скачивание рабочих скриптов: https://yadi.sk/d/8oni1vYE_ZavBQ

З.Ы. Регулярность подобных выпусков не обещаю, буду публикации по мере решения собственных задач.

Всем удачи!

Подпишитесь на автора

Подпишитесь на автора, если вам нравятся его публикации. Тогда вы будете получать уведомления о его новых статьях.

Отписаться от уведомлений вы всегда сможете в профиле автора.

1
Комментарии к статье