К содержанию

СравнениеСтанки с ЧПУ и металлообработка

Mach3, Mach4 или LinuxCNC: что выбрать для самодельного и старого станка с ЧПУ

Mach3, Mach4 и LinuxCNC превращают обычный компьютер в стойку ЧПУ, но отличаются лицензией, операционной системой и тем, как сигнал доходит до драйверов: по порту LPT, по USB или по Ethernet. Сравниваем их по документации разработчиков и считаем, какую скорость холостых ходов даёт каждый способ.

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

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

Обновлено 9 минут

Самодельный настольный фрезер из фанеры с ручным фрезером на портале над столом из МДФ
Самодельный фрезерный станок на фанерном корпусе. Такой станок управляется компьютером с Mach3 или LinuxCNC либо отдельным контроллером

Кратко

Для шагового станка под Windows проще Mach3 или Mach4 с внешней платой по USB либо Ethernet. Для старого станка с серво и для тех, кто готов работать в Linux, подходит LinuxCNC с платой Mesa по Ethernet. Порт LPT годится только настольному компьютеру. Mach3 стоит 175 долларов, Mach4 Hobby 200, LinuxCNC бесплатен.

  • Все три программы работают на компьютере и сами не выдают импульсы на двигатели без помощи железа: сигнал идёт через порт LPT, USB-контроллер или Ethernet-плату.
  • Цены по магазину разработчика на октябрь 2026 года: Mach3 175 долларов, Mach4 Hobby 200, Mach4 Industrial 1400. LinuxCNC распространяется бесплатно по лицензии GPL.
  • Mach3 по требованиям разработчика с портом LPT работает только на настольном ПК с 32-разрядной Windows до Windows 7. Mach4 с LPT разработчик не рекомендует и продаёт для него отдельный платный плагин.
  • LinuxCNC управляет до 9 осями, работает на Linux с ядром реального времени и умеет сам замыкать контур серво. Для Ethernet-плат Mesa нужна отдельная сетевая карта.
  • Программная генерация шагов в LinuxCNC при базовом периоде 25 мкс даёт не больше 20 кГц, это 3750 мм/мин на ШВП 5 мм при микрошаге 1/8.

Что делает программа, а что плата

Mach3, Mach4 и LinuxCNC читают управляющую программу, планируют движение с разгоном и торможением и показывают оператору экран. Дальше возникает вопрос, как довести команду до драйверов двигателей. Короткий ответ дают три варианта: через порт LPT напрямую, через USB-контроллер или через Ethernet-плату. В первом случае шаги формирует сам компьютер, во втором и третьем их генерирует плата, а компьютер только отправляет ей план движения.

От этого выбора зависит больше, чем от выбора программы: LPT требует стабильного времени отклика системы, а плата с собственным процессором от нагрузки на компьютер зависит слабее.

Пуск шпинделя из программы сводится к замыканию клемм «вперёд» и общего на частотнике выходом платы (на приводах это обычно FOR или FWD и DCM или COM). Это легко проверить перемычкой, а в самом приводе должно быть выбрано внешнее управление пуском и частотой.

На широком портале с двумя моторами на одной оси ставят датчик нуля на каждую ногу и ведут их независимо, а в Mach вторую ось делают подчинённой. Тогда портал выравнивается по датчикам при каждом возврате в ноль, а результат подтверждают равные диагонали вырезанного прямоугольника.

Другой общий момент: ни одна из трёх программ не создаёт управляющие программы из чертежа или модели в полном объёме. LinuxCNC в документации прямо оговаривает, что не умеет ни рисовать, ни генерировать G-код по чертежу. У Mach3 есть модуль LazyCam с импортом DXF, BMP, JPG и HPGL и набор мастеров для простых операций, но для объёмной обработки всё равно нужна CAM-система.

Сравнение Mach3, Mach4 и LinuxCNC

ПараметрMach3Mach4 HobbyLinuxCNC
Цена лицензии175 долларов200 долларовбесплатно, GPL
Операционная системаWindows XP, Vista, 7 (32 бита) для LPT; до Windows 10 с внешним контроллеромWindows XP, 7, 8, 10; LPT только на 32-битных XP и 7Debian (с Bookworm) и Ubuntu (с Kinetic Kudu), ядро реального времени
Число осей6до 6до 9, плюс до 16 независимых дополнительных
Порт LPTвстроенный драйверотдельный платный плагин, разработчик не рекомендуетдрайвер hal_parport
Внешние платыплагины сторонних производителейплагины сторонних производителейEthernet-платы Mesa и другие
Скриптымакросы на VBScriptнастраиваемые M-коды и экраныслой HAL и программный ПЛК на релейных схемах
Демо-режим500 строк G-кодаработает в демо до лицензированияограничений нет

Данные взяты с сайтов разработчиков: страниц Mach3 и Mach4-Hobby в магазине Mach Support и разделов документации LinuxCNC. Mach4 написан заново: по словам разработчика, общего кода с Mach3 у него меньше 1%, поэтому драйверы и плагины от Mach3 к нему не подходят. Перед покупкой Mach4 стоит убедиться, что для вашей платы есть плагин именно под него.

Лицензия Mach4 привязана к конкретному компьютеру: при замене ПК её приходится переоформлять. Для коммерческого использования Mach3 нужна отдельная лицензия на каждый станок, а любителям разрешено использовать одну лицензию на сколько угодно станков. Для мастерской, которая работает на заказ, это значит три лицензии на три станка.

LPT, USB или Ethernet

LPT. Параллельный порт из документации LinuxCNC: 17 физических линий, в режиме вывода 12 выходов и 5 входов. Дёшево и просто, но настольный компьютер с таким портом приходится искать, а ноутбуки Mach3 для работы с портом не поддерживает. Шаги формирует процессор, поэтому важно, как быстро система отвечает на периодический сигнал: чем меньше задержка, тем быстрее и ровнее импульсы. Скорость процессора для этого вторична, по документации LinuxCNC. Влияют материнская плата, видеокарта, USB-порты и системные прерывания SMI.

USB. Контроллер вроде UC100 венгерской компании CNCdrive повторяет распиновку LPT, работает с Mach3 и Mach4 через плагин и, по описанию производителя, управляет до шести осей на частоте до 100 кГц. На сайте производителя есть оговорка, что на торговых площадках продаются поддельные UC100, с которыми программа не работает, и что на Windows 10 и 11 драйвер иногда ставится с ошибкой 39. Для Mach выпускает платы и компания Warp9 Tech: на её сайте представлены USB SmoothStepper и Ethernet SmoothStepper.

Ethernet. В LinuxCNC для этого есть драйвер hm2_eth, который работает с платами Mesa 7I76E, 7I80DB, 7I80HD, 7I92, 7I93, 7I94, 7I95, 7I96, 7I96S, 7I97 и 7I98. Плата подключается к отдельной сетевой карте одним кабелем, беспроводные и USB-сетевые адаптеры для этого не подходят. Адрес платы по умолчанию 192.168.1.121, и эта подсеть часто совпадает с подсетью домашнего роутера, поэтому её меняют заранее.

Расчёт: какую скорость холостых ходов даёт LPT

Возьмём ось с ШВП шагом 5 мм, шаговый двигатель на 200 шагов на оборот и драйвер с микрошагом 1/8. Получаем 200 × 8 / 5 = 320 импульсов на миллиметр. Подробный разбор этой арифметики есть в статье про пропуск шагов, здесь она нужна для сравнения платформ.

Для LinuxCNC при программной генерации шагов в документации сказано, что максимальная частота равна одному шагу на два базовых периода (BASE_PERIOD) при выходе «шаг и направление». Базовый период подбирает мастер StepConf по результатам теста задержки. Значения ниже взяты для примера, а не как результат измерения.

СценарийЧастота шаговСкорость, мм/сСкорость, мм/мин
LinuxCNC, базовый период 25 мкс1 / (2 × 25 мкс) = 20 000 Гц62,53750
LinuxCNC, базовый период 40 мкс12 500 Гц39,12344
LinuxCNC, базовый период 50 мкс10 000 Гц31,31875
Mach3, ядро 25 кГц25 000 Гц78,14688
Mach3, ядро 35 кГц35 000 Гц109,46563
Mach3, ядро 100 кГц100 000 Гц312,518 750

Из таблицы следует несколько выводов. Подача 3000 мм/мин для фанеры укладывается во все варианты, кроме LinuxCNC с базовым периодом 40 мкс и больше, а подача 4000 мм/мин требует Mach3 или LinuxCNC с коротким периодом на очень хорошем компьютере. Для холостых ходов 10 м/мин (53 333 Гц на этой оси) по LPT придётся брать микрошаг 1/4 или более крупный шаг винта. Сравнение не говорит о том, что Mach3 «быстрее»: у LinuxCNC есть режим квадратурного входа, который по документации удваивает потолок, и аппаратная генерация шагов на плате Mesa, где скорость не зависит от задержек компьютера.

Тест задержки в LinuxCNC показывает, годится ли ПК для программных шагов. По рекомендации документации при максимальном джиттере до 15–20 мкс результат получается хорошим, при 30–50 мкс можно работать, но потолок скорости разочарует, а при 100 мкс и выше компьютер для программной генерации шагов не подходит.

Что выбрать

Mach3

Плюсы

  • Готовые экраны, много инструкций и опыта у других владельцев самодельных станков
  • Настройка пинов и мотора в одном диалоге, макросы на VBScript
  • Работает с USB- и Ethernet-платами через плагины

Минусы

  • Для LPT нужна 32-разрядная Windows не новее 7 и настольный ПК
  • Лицензия 175 долларов на компьютер, для работы на заказ на каждый станок
  • Разработчик сам называет Mach3 программой для простых станков

LinuxCNC

Плюсы

  • Бесплатный, открытый, до 9 осей и программный ПЛК
  • Замкнутый контур серво с обратной связью прямо в компьютере
  • Аппаратная генерация шагов по Ethernet на платах Mesa

Минусы

  • Нужен Linux с ядром реального времени, а Raspbian от Raspberry Pi не годится
  • Настройка через HAL и ini-файлы требует больше времени на старте
  • Нет встроенного CAM, управляющие программы придётся готовить в стороннем пакете

Выбирать проще всего от станка.

  1. Станок на шаговиках, три оси, Windows уже есть. Mach3 с USB-контроллером или Mach4 с плагином платы. Порт LPT выбирают, только если уже есть старый настольный ПК и скорости умеренные.
  2. Старый промышленный станок с серво и аналоговыми драйверами. LinuxCNC с платой Mesa по Ethernet. Mach3 выдаёт для серво шаги и направление, а сколько оборотов двигателя это даст, ограничивает частота ядра: в руководстве Mach3 для энкодера на 1200 отсчётов на оборот и редуктора 5 при 35 кГц получается около 1750 об/мин.
  3. Нужен свободный выбор программы и железа и есть время разбираться. LinuxCNC.
  4. Нужны новые функции и современный Windows. Mach4, но сначала проверьте плагин.

Если станок уже куплен готовым, его программа управления, вероятно, другая. Так, в карточках фрезеров по дереву на сайте Wattsan, например A1 1313, A1 1325, M1 1313 и M1 1325, в графе контроллера указан RichAuto A11, а у M3 1325 стоит NC Studio 8. Mach3 и LinuxCNC в этих карточках не названы: у такого станка своя стойка и свой формат файлов, и постпроцессор для CAM выбирают под неё. Если вы выбираете между сборкой и покупкой, сопоставьте цены в статье о самодельном станке, а при покупке б/у машины читайте проверку б/у станка.

Частые ошибки

  • Ставят LinuxCNC на обычный Raspbian. Документация LinuxCNC отдельно предупреждает: ядра реального времени там нет, перейти с Raspbian на ядро Debian нельзя. Для Raspberry Pi 4 и 5 есть готовые образы.
  • Берут встроенную видеокарту и ноутбук для LPT. Mach3 для порта требует настольный ПК, а для больших файлов, по рекомендации разработчика, видеокарту с отдельной памятью.
  • Покупают первый попавшийся UC100. Поддельные контроллеры с Mach-плагином не работают.
  • Не проверяют, что IP платы не совпадает с подсетью роутера. Ethernet-плата и интернет используют разные сетевые интерфейсы, и пересечение адресов ломает связь.
  • Отключают лимиты, когда Mach3 ругается на них после запуска. Сначала проверяют назначение пинов и инверсию Active Low, а сигналы датчиков смотрят на экране Diagnostics. Программные лимиты включают только после Ref All Home, а чтобы съехать с сработавшего датчика, используют Auto Limit Override или Ref All Home на малой скорости.
  • Ищут причину ухода координат только в моторах. Если размеры плывут после реверсов, проверьте инверсию STEP, длительность импульса и задержку между DIR и STEP: у дешёвых драйверов после смены направления бывает потерян первый шаг. Для Mach3 нужен компьютер с настоящим портом LPT, переходник USB-LPT не подходит. LinuxCNC на слабом Celeron даёт джиттер, и это видно в тесте задержки; чтобы силовая часть не работала без живой программы, ставят плату с charge pump.
  • Ждут, что программа заменит драйверы и блок питания. Скорость и момент определяются двигателем, драйвером и питанием, подробнее в статье о том, шаговый двигатель или серво.

Станок чаще стоит из-за ПК, чем из-за программы. Перед тем как выбирать между Mach и LinuxCNC, я бы запустил тест задержки на том компьютере, который у вас есть, и по его результату решал, нужна ли вообще отдельная плата.

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

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

Можно ли запустить Mach3 на Windows 10 или 11?

Если станок подключён через внешний контроллер, по требованиям разработчика подойдёт Windows 10 и более ранние. Для порта LPT нужна 32-разрядная Windows до Windows 7. О Windows 11 разработчик в требованиях не пишет. Производитель UC100 даёт инструкцию по установке драйверов на Windows 10 и 11.

Mach3 бесплатный или платный?

Без лицензии программа работает в демо-режиме с ограничением в 500 строк G-кода для фрезерования и плазмы и 50 строк для токарной обработки. Лицензия стоит 175 долларов. Любители могут использовать одну лицензию на все свои станки, а коммерческим пользователям нужна лицензия на каждый станок.

Чем Mach4 отличается от Mach3?

Это новая программа с отдельной кодовой базой, а не обновление: плагины от Mach3 не подходят. Mach4 не привязан к конкретной плате и требует плагина, а драйвер LPT для него продаётся отдельно. Цена Mach4 Hobby 200 долларов, версия Industrial стоит 1400.

Нужен ли для LinuxCNC мощный компьютер?

Документация LinuxCNC утверждает, что задержка важнее мощности процессора. На этот параметр влияют материнская плата, видеокарта, USB-порты и системные прерывания. Поэтому компьютер сначала проверяют тестом задержки, и только потом покупают плату.

Можно ли управлять станком с Raspberry Pi?

Для LinuxCNC разработчики выпускают образы для Raspberry Pi 4 и 5, но с обычной Raspbian работать нельзя: нужно ядро реального времени. Для программной генерации шагов на таком компьютере всё равно нужен тест задержки, а при плохом результате шаги лучше отдать внешней плате.

Источники

  1. About LinuxCNC ↗ — документация LinuxCNC, 2026
  2. Getting LinuxCNC ↗ — документация LinuxCNC, 2026
  3. hm2_eth: драйвер плат Mesa Ethernet ↗ — документация LinuxCNC, 2026
  4. Stepper Configuration Wizard ↗ — документация LinuxCNC, 2026
  5. Mach3 ↗ — Mach Support (ArtSoft), 2026
  6. Mach4 Hobby ↗ — Mach Support (ArtSoft), 2026
  7. UC100 USB motion controller ↗ — CNCdrive, 2026

Фото: Saakhtani Co. / Wikimedia Commons, CC BY-SA 4.0

Автор

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

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

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

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

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

В этом разделе: Системы ЧПУ и стойки управления

Все →

Комментарии

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

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