К содержанию

ИнструкцияСтанки с ЧПУ и металлообработкаСредний уровень

Mach3 на китайском станке с нуля: пины, Motor Tuning, концевики и первый запуск

Оси не едут, едут только в одну сторону, шаговики держат, но не вращаются, а Mach3 встаёт посреди детали: так выглядят первые вечера с самодельным станком или китайским 6040. Разбираем настройку по порядку: пины и инверсии, длительность импульсов, шаги на единицу, скорость и ускорение, концевики. В конце коротко о том, чем GRBL, LinuxCNC и автономные контроллеры DDCS отличаются в тех же местах.

Дмитрий Волков

Инженер-механик, фрезерные станки с ЧПУ и CAM, 15 лет в отрасли

8 минут

Фрезерный станок с ЧПУ обрабатывает деревянную заготовку на столе мастерской
Станок на шаговых двигателях с управлением от компьютера: на таком Mach3 настраивают пины, шаги на единицу и ускорение

Кратко

В Mach3 четыре настройки решают большинство проблем первого запуска: правильные номера пинов Step и Dir с включённым Enable, активный низкий уровень сигналов шага и направления, ненулевая длительность импульсов (производитель называет 1 мкс достаточным минимумом, на практике ставят около 5 мкс) и верный расчёт шагов на единицу: 200 шагов двигателя, умноженные на микрошаг и делённые на шаг винта. Частоту импульсов проверяют отдельно: 500 имп/мм при подаче 6000 мм/мин дают 50 кГц, а ядро Mach3 по умолчанию работает на 25 кГц.

  • Сначала назначают пины и инверсию, потом считают шаги на единицу и только потом подбирают скорость и ускорение. Перепутанный порядок даёт «станок гудит, но стоит».
  • Длительность импульсов не оставляют нулевой: производитель Mach3 пишет, что большинству драйверов хватает 1 мкс, а при проблемах советует 5 мкс. Практики на LPT ставят около 5 мкс, на USB-контроллерах больше.
  • Шаги на единицу считают по формуле, а затем проверяют измерением. Профиль настроек чужого станка не копируют.
  • Частоту импульсов проверяют вручную: скорость в мм/мин умножают на импульсы на мм и делят на 60. Если получилось больше частоты ядра, станок физически не разгонится.
  • Демо-версия Mach3 обрывает работу на 500 строках. Неработающие и «взломанные» копии дают сбои, о них лучше забыть.

Оборудование

  • мультиметр
  • шаблон распиновки платы или драйверов
  • линейка или индикатор
  • второй человек у аварийной кнопки

Материалы

  • копия папки Mach3 с профилем
  • листок с параметрами двигателей и винтов

Время

≈ 180 мин

Что нужно, чтобы вообще начинать

Mach3 сама не выдаёт импульсы на двигатели: сигналы идут через порт LPT компьютера, через USB-контроллер или через Ethernet-плату. Разница между этими вариантами и сравнение Mach3 с Mach4 и LinuxCNC разобраны в статье про выбор между Mach3, Mach4 и LinuxCNC. Здесь о том, что вы уже купили и собрали.

Требования, которые важны для настройки:

  • Порт LPT работает на настольном компьютере с 32-разрядной Windows не новее седьмой. Для 64-разрядной системы берут внешний USB- или Ethernet-контроллер.
  • Лицензия. Без неё Mach3 в демо-режиме ограничена 500 строками G-кода. После этого движение прерывается, а шпиндель продолжает вращаться. Практики встречали на форумах «взломанные» копии и «народные» версии, но они нестабильны, а подмена файла лицензии нарушает условия использования.
  • Отдельный компьютер под станок. Отключают лишние службы Windows, экономию питания USB, ставят дискретную видеокарту для больших файлов (мнения о её необходимости расходятся).
  • Тест драйвера. В меню Config запускают Driver Test: на графике должна быть ровная линия, а не «пила». «Пила» означает, что Windows не успевает вовремя отдавать импульсы.

Шаг 1. Пины и инверсии

Откройте Config, Ports and Pins. На вкладке Motor Outputs для каждой оси включите Enabled и укажите пин Step и пин Dir из схемы вашей платы. Дальше три настройки, которые решают половину проблем.

Низкий уровень сигнала. Драйверы обычно ожидают импульсы активного низкого уровня. В руководстве Mach3 написано, что для драйверов выходы Step и Dir настраивают как Active Lo (на экране это галочка Low Active), иначе сигнал по-прежнему движется вверх и вниз, но драйвер читает паузы вместо импульсов. Результат описан честно: «очень грубый или ненадёжный ход мотора». Практики ещё называют правило: если ось дёргается, пищит или идёт рывками на низкой скорости, сначала проверьте галочку Low Active на пине Step.

Направление. Если ось едет не в ту сторону, в руководстве описаны три способа исправить: изменить галочку Low Active для пина Dir этой оси, поставить галочку Reversed в Homing/Limits для этой оси или при выключенном питании поменять местами одну пару проводов двигателя у драйвера. Третий способ дольше и требует обесточить станок, а первые два делают программно.

Enable. Многие драйверы включаются по сигналу Enable, часто на пине 14 порта LPT. Если драйверы гудят и держат вал, но ось не едет, проверяют, назначен ли выход Enable и какой у него уровень. Шаговик, который держит и не едет, в большинстве случаев получил питание, но не получает импульсов: не назначены Step и Dir или включена не та инверсия. На драйверах с переключателем входа на 5 В и 24 В проверяют и его положение.

Шаг 2. Шаги на единицу

Откройте Config, Motor Tuning и выберите ось. В поле Steps per задайте число импульсов на миллиметр. Формула одна для всех осей: шаги на оборот двигателя (200 для 1,8°), умноженные на микрошаг драйвера и на передаточное число, делятся на подачу за оборот. Для ШВП с шагом 5 мм, двигателя на 200 шагов и микрошага 8 это 200 × 8 / 5 = 320 импульсов на миллиметр. Если на оси стоит редуктор 3 или ремень, подача за оборот меняется: расчёт сохраняется, подставляется другое число.

Чужие значения из форумов и профили чужих станков копировать нельзя: они относятся к другому винту, другому драйверу и другому микрошагу. Профиль сохраняют копией xml-файла настроек вместе с папкой Mach3 перед любыми экспериментами.

Расчёт нужно проверить измерением. Mach3 умеет сама подгонять число: в Settings Alt6 есть кнопка Set Steps per Unit. Нужно выбрать ось, ввести номинальное перемещение и после движения измерить реальное. Производитель советует сначала приблизительно рассчитать значение и только потом пользоваться автоматическим режимом. Как поправлять размеры по замеру и отличать масштабную ошибку от постоянной, разобрано в статье про калибровку импульсов и дом.

Шаг 3. Длительность импульсов

Длительность Step Pulse и Dir Pulse в микросекундах задают в настройках Ports and Pins, точное место поля зависит от версии программы. Нулевые значения оставлять нельзя. В руководстве Mach3 сказано: большинство драйверов работают с минимальной длительностью импульса 1 мкс, а при проблемах (мотор «шумит», толчки) нужно сначала проверить инверсию Step, затем попробовать увеличить длительность до 5 мкс.

Практики добавляют конкретику. На LPT ставят около 5 мкс. На USB-контроллерах и с дешёвыми драйверами TB6600 и TB6560, у которых медленные оптопары на канале Dir, значения доводят до 15 и включают Step Low Active, а микрошаг не уменьшают: при меньшем дроблении оптопара не успевает ещё сильнее. Когда ось уезжает в одну сторону или теряет координату именно при смене направления, это первая настройка для проверки.

Шаг 4. Скорость, ускорение и частота ядра

В Motor Tuning выставляют Velocity и Acceleration. Производитель советует не вычислять, а подобрать так, чтобы разгон и торможение звучали «комфортно»: слишком резкий старт слышен как удар, ось начинает пропускать шаги. Практики дают ориентиры для лёгких бюджетных станков: линейное ускорение 300–600 мм/с², на тяжёлых порталах ниже. Подбирают так: поднимают ускорение до первого пропуска или вибрации и отступают на 20–30 %.

Скорость проверяют арифметикой, а не на глаз. Частота импульсов равна скорости в мм/мин, умноженной на импульсы на миллиметр и делённой на 60.

Импульсов на ммПодача, мм/минЧастота, кГцХватит ли ядра на 25 кГц
320300016да
320600032нет
500300025на пределе
500600050нет
160600016да

Ядро Mach3 по умолчанию работает на 25 кГц, при хорошем компьютере его поднимают до 35 или 100 кГц. Если не хватает, есть три выхода: уменьшить микрошаг, ограничить скорость в Motor Tuning расчётным значением или перейти на внешний контроллер с аппаратной генерацией импульсов. Подробные примеры расчёта для разных вариантов есть в статье про пропуск шагов.

Шаг 5. Концевики и дом

Концевики описаны отдельной статьёй. В Mach3 для первого запуска запомните три вещи. Дом ищут командой Ref All Home при каждом включении станка. Софтлимиты включаются только после поиска дома. Отключать лимиты, чтобы «перестало ругаться», нельзя: ошибка означает неверно назначенный пин или полярность, а не помеху. Подробности и полярность датчиков разобраны в статье про датчики и концевики.

Если ось портала приводят два двигателя, вторую ось настраивают как подчинённую: в Config, Slave Axis выбирают ведомую ось. Mach3 отправляет им одинаковые импульсы, а при поиске дома выравнивает портал по двум датчикам. Настройки обоих драйверов должны совпадать полностью: дробление, ток, направление.

Таблица типичных симптомов

СимптомЧто проверить сначала
Двигатель держит, ось не едетназначены ли Step и Dir, включён ли Enable, не стоит ли переключатель драйвера 5 В / 24 В в неверном положении
Ось едет только в одну сторонуDir Pulse и инверсия Dir, кабель LPT и пин направления, питание USB-контроллера
Двигатель пищит и дёргаетсяинверсия Step, слишком большая скорость, неверная распиновка обмоток
Станок встаёт посреди программыдемо-лимит 500 строк, визуализация траектории на большом файле, слабый компьютер
После запуска шпинделя оси дёргаютсянаводки, подробнее в статье про заземление и помехи

Про USB-контроллеры практики напоминают: плата питается от компьютера и может не выдержать нагрузки, поэтому ей нужен отдельный блок 5 В. Один из операторов получил станок, у которого ось не ехала в одну сторону, пока не подключил кабель дополнительного питания 5 В из комплекта контроллера.

Чем отличаются GRBL, LinuxCNC и DDCS

Принципы те же, но параметры называются иначе.

GRBL. Шаги на миллиметр задают параметры $100, $101, $102 для X, Y, Z. Максимальную скорость в мм/мин задают $110–$112, ускорение в мм/с² задают $120–$122. Длительность импульса шага ($0) по умолчанию 10 мкс, а сам контроллер на AVR удерживает до 30 кГц без джиттера. Для оси на 320 имп/мм это 93,75 мм/с, около 5,6 м/мин. Сочетание большого микрошага и скорости упирается в этот потолок так же, как в Mach3 с ядром 25 кГц. Данные взяты из документации GRBL.

LinuxCNC. Для порта LPT есть мастер Stepconf. Он подбирает базовый период по результатам теста задержки: если джиттер в сотни микросекунд, компьютер не годится для программных шагов, а до 15–20 мкс результат хороший. Скорость и ускорение по осям ограничивают в ini-файле параметрами MAX_VELOCITY и MAX_ACCELERATION.

Автономные контроллеры DDCS. Это отдельные платы с экраном, не требующие компьютера. Практики напоминают три правила: входы питают отдельно от остального, все четыре провода PUL и DIR подключают раздельно, а при дроблении 1/32–1/128 нужны версии с частотой 500 кГц, обычные не справляются. Параметры в таких контроллерах, как и у DSP-пультов, лучше сохранять в файл: подробности в статье про флешки и бэкап пультов.

Самодельные Arduino с CNC shield как контроллер для фрезера большинство практиков не одобряет, хотя спор о GRBL не закончен.

Если речь о готовых фрезерах, то, например, в характеристиках моделей Wattsan A1 и M1 указаны NcStudio или RichAuto, а не Mach3: такие станки идут с собственной стойкой и своим форматом файлов.

Частые вопросы

Почему двигатель держит вал, но не вращает?

Шаговик получил питание, но не получает импульсов. В Ports and Pins проверьте номера пинов Step и Dir, включён ли выход Enable и какая у него инверсия, а на драйвере положение переключателя 5 В и 24 В.

Сколько ставить Step Pulse и Dir Pulse?

Нулевыми не оставлять. Производитель Mach3 пишет, что большинству драйверов хватает 1 мкс и при проблемах советует 5 мкс. На дешёвых драйверах с медленными оптопарами практики доводят Dir Pulse до 15 мкс.

Как посчитать шаги на единицу?

Шаги на оборот двигателя (обычно 200), умноженные на микрошаг драйвера и передаточное число, делят на подачу за оборот в миллиметрах. Для ШВП 5 мм, 200 шагов и микрошага 8 получается 320 импульсов на мм. Результат проверяют измерением.

Работает ли Mach3 на Windows 10?

С внешним USB- или Ethernet-контроллером по требованиям разработчика да. Для порта LPT нужна 32-разрядная Windows не новее седьмой.

Источники

  1. Mach3 CNC Controller, Software Installation and Configuration ↗ — ArtSoft USA, руководство, разделы 4.4.3, 5.5 и 5.6
  2. Grbl: настройки ↗ — документация проекта Grbl
  3. Stepper Configuration Wizard ↗ — документация LinuxCNC
  4. Настройка Motor Tuning ↗ — обсуждение практиков
  5. При работе в Mach всё останавливается кроме шпинделя ↗ — обсуждение практиков
  6. Как подключать SmoothStepper ↗ — обсуждение практиков

Фото: Doug Coldwell / Wikimedia Commons, CC BY-SA 4.0

Автор

Дмитрий Волков

Инженер-механик, фрезерные станки с ЧПУ и CAM, 15 лет в отрасли

Пятнадцать лет работает с фрезерными станками с ЧПУ: от мебельных раскроечных центров до обработки металла. Пишет о фрезерах, инструменте, CAM-программах и системах управления.

Все материалы автора →

Как мы готовим материалы — в редакционной политике. Нашли ошибку? Напишите нам.

В этом разделе: Китайские пульты и платы управления

Все →

Комментарии

Пока никто не написал. Задайте вопрос — автор или эксперты редакции ответят.

Написать комментарий