Что делает контроллер станка с ЧПУ
Станок с ЧПУ выполняет управляющую программу, и на пути от чертежа до движения инструмента у каждого звена своя задача. В CAM-программе по модели детали строят траекторию инструмента, постпроцессор переводит её в G-код. Контроллер читает G-код, рассчитывает движение с учётом разгона и торможения и превращает его в импульсы шага и уровень направления для каждой оси. Драйвер по этим логическим сигналам подаёт ток в обмотки шагового двигателя или управляет сервоприводом, а двигатель через винт, ремень или рейку двигает ось.

Кроме осей контроллер читает концевики, датчик инструмента и аварийную кнопку, включает шпиндель и задаёт его обороты через частотный преобразователь, управляет охлаждением, обдувом и вытяжкой. Тип контроллера определяет, нужен ли станку компьютер во время обработки, какая программа им управляет и сколько импульсов в секунду он способен выдать.
Автономные DSP контроллеры
В автономной системе процессор DSP стоит в пульте. Пульт читает файл управляющей программы с USB-флешки и сам формирует импульсы для драйверов, а компьютер нужен только для подготовки файла. Поэтому сбой Windows или зависание программы на компьютере не останавливают обработку. Пульт соединяется кабелем с интерфейсной платой в электрошкафу, к которой подключают драйверы, датчики и управление шпинделем.
Возможности такой системы задаёт прошивка пульта. Например, по руководству RichAuto серии A1X пульт читает файлы G-кода, PLT, bitmap и DXF с флешки FAT16 или FAT32 и выдаёт импульсы с частотой до 1 МГц. Ограничения тоже от прошивки: пульт открывает только перечисленные в руководстве форматы, экран маленький, а редактировать программу и отлаживать станок удобнее на компьютере. DSP контроллеры ставят на производственные фрезерные и гравировальные станки, где задания повторяются, а компьютер рядом со станком держать неудобно.
Управление с компьютера через порт LPT
В схеме с портом LPT импульсы шага и направления формирует сама программа на компьютере, Mach3 или LinuxCNC, а плата опторазвязки только разводит сигналы порта на клеммы драйверов и пропускает входы от станка через оптроны. Это самая простая и недорогая схема, но у неё жёсткие требования к компьютеру.
По данным разработчика Mach3 драйвер порта LPT работает только на 32-разрядных настольных компьютерах с Windows от 2000 до 7 и не работает в 64-разрядных версиях и в Windows 8 и новее. Нужен настоящий параллельный порт: переходник USB-LPT для управления станком не подходит. Частоту импульсов ограничивает частота ядра Mach3: при 25 кГц программа выдаёт до 25 000 импульсов в секунду. LinuxCNC работает с портом LPT на ядре Linux с поддержкой реального времени, а для высоких частот использует платы FPGA с подключением по PCI или Ethernet.
Контроллеры с подключением по USB и Ethernet
Внешний контроллер движения получает от компьютера данные траектории, а импульсы формирует сам, поэтому точность импульсов не зависит от загрузки Windows. Именно такой контроллер разработчик Mach3 рекомендует для 64-разрядных версий Windows. Для работы в Mach3 устанавливают плагин контроллера.
USB есть у любого современного компьютера и ноутбука, но связь по USB чувствительна к помехам: при включении шпинделя или частотного преобразователя она может оборваться посреди обработки. Защищают её экранированным кабелем, ферритовым фильтром и раздельной прокладкой сигнальных и силовых кабелей. У Ethernet сетевой порт по стандарту гальванически развязан трансформаторами, а кабель можно проложить длиннее, чем USB. Контроллер Ethernet подключают напрямую к сетевой карте компьютера и задают ему адрес по инструкции производителя.
Платы PCI
Плата PCI ставится в компьютер и работает в паре с интерфейсной платой в электрошкафу станка. Так устроена система NC Studio: программа для Windows рассчитывает траекторию, плата выдаёт сигналы на интерфейсную плату, к которой подключены драйверы, концевики и шпиндель. Программа и плата работают как одна система, но нужен настольный компьютер со свободным слотом PCI: у многих современных материнских плат есть только слоты PCI Express. Версия программы должна совпадать с версией драйвера платы.
Микроконтроллерные платы с GRBL
GRBL это открытая прошивка, которая превращает плату Arduino Uno на микроконтроллере ATmega328P в контроллер станка. По документации GRBL прошивка управляет тремя осями и выдаёт стабильные импульсы с частотой до 30 кГц. Компьютер с программой-отправителем передаёт G-код по USB построчно, а траекторию и разгон рассчитывает сама плата. В версии GRBL 1.1 есть лазерный режим, в котором мощность лазера меняется вместе со скоростью движения.
Сверху на плату ставят плату расширения с гнёздами под модули драйверов. Такую систему выбирают для любительских фрезеров, лазерных граверов и учебных станков. Ограничения следуют из микроконтроллера: мало входов и выходов, частота импульсов ниже, чем у DSP и внешних контроллеров движения, а связь по USB требует той же защиты от помех.
Какой тип выбрать под станок и задачу

| Тип | Компьютер во время обработки | Сильные стороны | Ограничения | Где применяют |
|---|
| Автономный DSP | Не нужен | Не зависит от компьютера и Windows, пульт у станка | Форматы файлов и настройки ограничены прошивкой, маленький экран | Производственные фрезерные и гравировальные станки с повторяющимися заданиями |
| Плата опторазвязки LPT | Нужен, импульсы формирует компьютер | Простая и недорогая схема | Нужен настоящий порт LPT, для Mach3 32-разрядная Windows до версии 7, частота шагов зависит от компьютера | Старые и любительские станки на Mach3 или LinuxCNC |
| Контроллер USB | Нужен, импульсы формирует контроллер | Работает с современными компьютерами и ноутбуками | Нужен плагин для программы, связь USB чувствительна к помехам | Любительские и небольшие производственные станки на Mach3 |
| Контроллер Ethernet | Нужен, импульсы формирует контроллер | Сетевой порт развязан от компьютера, кабель можно проложить длиннее USB | Нужна настройка сети и поддержка в программе | Станки, где компьютер стоит далеко или связь USB сбоит от помех |
| Плата PCI | Нужен, плата стоит в компьютере | Программа и плата работают как одна система | Нужен компьютер со слотом PCI, привязка к версии программы и драйвера | Фрезерные станки с системой NC Studio |
| Плата с GRBL | Нужен, программа только отправляет G-код | Низкая цена, открытая прошивка, много программ-отправителей | На ATmega328P три оси и до 30 кГц импульсов, мало входов и выходов | Любительские фрезеры, лазерные граверы, учебные станки |
Параметры выбора контроллера
- Число осей. Контроллер должен выдавать шаг и направление на каждую ось, включая поворотную. Если ось Y приводят два двигателя, их подключают к одному выходу через два драйвера или к двум выходам, если программа поддерживает подчинённую ось.
- Частота шагов. Нужная частота равна числу импульсов на 1 мм, умноженному на скорость в мм/с. Двигатель с шагом 1,8° делает 200 шагов на оборот. При микрошаге 1/8 это 1600 импульсов на оборот, на винте с шагом 5 мм 320 импульсов на 1 мм. Скорость 3000 мм/мин это 50 мм/с, значит нужно 320 × 50 = 16 000 импульсов в секунду, то есть 16 кГц. При микрошаге 1/16 частота удваивается до 32 кГц и уже выше 30 кГц у GRBL и 25 кГц у Mach3 через LPT при частоте ядра 25 кГц.
- Входы и выходы. Входов должно хватать на концевики всех осей, датчики нуля, датчик инструмента и аварийную кнопку, выходов на шпиндель, охлаждение, обдув и вытяжку. Входы с оптронной развязкой защищают контроллер от помех и ошибок в проводке.
- Управление шпинделем. Частотному преобразователю обороты задают аналоговым сигналом 0-10 В на его вход задания, пуск и направление дискретными сигналами через выходы или реле. Выход PWM подходит для регуляторов с управлением PWM, для частотного преобразователя сигнал PWM переводят в 0-10 В преобразователем. Часть частотных преобразователей принимает команды по RS-485, если это поддерживают программа и контроллер.
- Совместимость с программой. Внешний контроллер работает только с теми программами, для которых у него есть плагин или драйвер. Проверяйте поддержку нужной версии Mach3, Mach4, NC Studio, LinuxCNC или программы-отправителя для GRBL и версию Windows.
- Помехоустойчивость. Оптронная развязка входов, отдельное питание логики, экранированные разъёмы и связь по Ethernet или экранированному кабелю USB снижают риск сбоев от шпинделя и частотного преобразователя.

Помехи, экранирование и заземление
Частотный преобразователь и драйверы двигателей переключают большие токи с высокой частотой, и помехи от них и от силовых кабелей шпинделя и двигателей наводятся на соседние провода. Для контроллера это ложные срабатывания концевиков, лишние или пропущенные шаги и обрыв связи с компьютером.
- Сигнальные провода, кабели USB, LPT и Ethernet прокладывайте отдельно от силовых кабелей шпинделя и двигателей, а пересекайте их под прямым углом.
- Кабель от частотного преобразователя к шпинделю берите экранированный и заземляйте экран по руководству преобразователя.
- Экран сигнального кабеля соединяйте с землёй так, как указано в документации контроллера или преобразователя, чтобы через экран не замыкался контур заземления.
- Ферритовый фильтр на кабеле ставьте ближе к устройству, которое сбивается от помех.
- Заземление корпуса станка, электрошкафа, шпинделя и преобразователя сводите в одну точку на шине PE.

Типичные ошибки подключения и настройки
- Не та схема входов драйвера. Входы шага и направления драйвера это светодиоды оптопар. Выходы, замыкающие линию на общий провод, подключают по схеме с общим анодом, выходы, выдающие напряжение, по схеме с общим катодом.
- Короткий импульс шага. Длительность импульса и время установки направления должны быть не меньше требований драйвера. Например, для микросхемы TB6600HG документация Toshiba указывает минимальную длительность импульса 2,2 мкс.
- Неверное число импульсов на 1 мм. Если не пересчитать его после смены микрошага, винта или шкива, размеры детали уходят пропорционально ошибке.
- Концевики на нормально разомкнутых контактах. Нормально замкнутые контакты безопаснее: обрыв провода срабатывает как нажатый концевик, и станок останавливается.
- Аварийная кнопка только на входе контроллера. Кнопка аварийной остановки должна ещё и размыкать цепь питания приводов и шпинделя, чтобы станок остановился даже при зависании контроллера.
- Подключение двигателя под напряжением. Разрыв цепи обмотки под током даёт выброс напряжения на выходных ключах драйвера.
- Энергосбережение USB. Если Windows отключает порт USB для экономии энергии, связь с контроллером пропадает. Отключите энергосбережение для портов USB и сетевой карты.
Практические советы по запуску
- Первый запуск делайте без инструмента, на малой скорости и малом ускорении, проверьте направление каждой оси и срабатывание концевиков.
- Проверьте число импульсов на 1 мм: задайте перемещение, например на 100 мм, и измерьте фактический ход оси.
- Скорость и ускорение поднимайте постепенно, пока ось не начнёт терять шаги, и оставьте запас ниже этой границы.
- Настройте поиск нуля по датчикам и программные ограничения хода, чтобы ось не упиралась в механические упоры.
- Проверьте аварийную кнопку и остановку программы до первой реальной обработки.
- Сохраните копию настроек контроллера или файла конфигурации программы после наладки.