@Michio-sempaiq

Какую выбрать плату управления шаговыми двигателями, для управления с компьютера?

Добрый день.
Я никогда не занимался разработкой подобных устройств и моя компетенция лежат в другой области.

В качестве небольшого хоббийного проекта мне необходимо разработать некоторое устройство которое должно перемещать само себя.

Некое устройство должно быть закреплено на подвижном основании и перемещаться в 3 плоскостях. Точно такая же логика встречается на всем известных станках с ЧПУ или 3d принтерах.

Правильно ли я понимаю, что я могу взять любом 3d принтер нужной мне конструкции, убрать из него экструдер, заменив на что-то свое. И я получу всю необходимую мне механику.
Остается вопрос, каким образом этой механикой мне управлять. Как я понял, мне необходим контроллер шаговых двигателей, которому бы я по последовательному порту передавал команды на передвижения, а этот контроллер их выполнял.
В качестве такого контроллера многие предлагают использовать arduino + CNC child, подойдет ли мне такое решение?
Хотелось бы решить более красивое решение в идеале одну плату. Существуют ли такие решения? Подходят ли мне платы с али, которые идут под разными названия вроде плат управления ЧПУ станками, например Makerbase MKS DLC32 V2.1 GRBL

Основной сценарий использование такой:
Оператор запускает скрипт на пк
1. Скрипт дает команду перемещения в нужную точку
2. Каретка с устройством передвигается в нужную точку
3. Устройство выполняет какие-то действия, при этом передвижение по X\Y не производится, но может быть движение по оси Z
4. Устройство передвигается в другую точку
И так до конца выполнения необходимого мне скрипта.
  • Вопрос задан
  • 86 просмотров
Пригласить эксперта
Ответы на вопрос 5
@rPman
Именно так, всей начинки 3d принтера тебе хватит для описываемой задачи (исключение - вес того что ты будешь перемещать, драйвера на таких платах очень слабые)

Для того чтобы тягать что то по тежелее, механику и платы нужно брать как для станков чпу
Кстати самые первые 3d принтеры рулили через lpt порт компьютера, можно даже софт для этого найти - LinuxCNC.

Управление с компьютера по usb (штатно поддерживают почти все опенсорс платы принтеров) с помощью gcode - промышленный стандарт управления
Ответ написан
Stalker_RED
@Stalker_RED
Вешать моторы напрямую на порт компьютера или ноги контроллера как-бы не принято (хотя в ряде случаев технически возможно).
Потому что моторы сегодня одни, завтра другие, помощнее, а от них всплеск напряжения, помехи, ой все сгорело.
Принято вешать через специальные платы управления двигателями (motor shield, motor driver, step driver) их много разных под разные типы двигателей и мощность.

И не обязательно использовать ардуино, есть множество других контроллеров.
К примеру можете взять NodeMCU сразу с вайфаем на борту, или какой-нибудь stm32 с блютусом, что вам больше подходит.

При выборе шасси и моторов в первую очередь исходите из массы вашей головки (у 3д принтера она лёгкая, у фрезера гораздо тяжелее) во вторую очередь скорость моторов и точность, которая зависит ещё и от жёсткости всей конструкции и от качества направляющих и подшипников (или рельс и роликов, или ремней, цепей, или чем вы там собрались перемешать).

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

Контроллер любой, под который существуют нужные вам программы управления.
Ответ написан
Комментировать
@evgeniy_lm
Правильно ли я понимаю, что я могу взять любом 3d принтер нужной мне конструкции,
Вполне может быть

Как я понял, мне необходим контроллер шаговых двигателей, которому бы я по последовательному порту передавал команды на передвижения, а этот контроллер их выполнял.

В принципе так и есть. Вы должны понимать, что ЧПУ станки и 3D принтера выполняют программу из последовательности стандартных G-кодов. Т.е. вы можете воспользоваться уже готовым решение, а можете ваять что-то свое, но без опыта у вас уйдут годы.

В качестве такого контроллера многие предлагают использовать arduino + CNC child, подойдет ли мне такое решение?
Ни кто кроме вам этого не знает. arduino штука медленная, если вам нужна большая скорость работы и сложные расчеты с плавающей точкой то не подойдет, если ваша фигня будет работать "медленно и печально", то в принципе зачем платить больше.

вроде плат управления ЧПУ станками, например Makerbase MKS DLC32 V2.1 GRBL
Возможно, но arduino дешевле.

Если вы хотите более подробного ответа, напишите подробнее что вам нужно и для чего.
Ответ написан
Комментировать
@lonelymyp
Живу
В целом всё верно, тебе нужен аналог 3д принтера.
Но специализированный софт и платы для 3д принтеров могут быть недостаточно гибки, их стараются заточить под специфику 3д печати и вкорячить туда какунибудь специфическую прошивку.
Makerbase MKS DLC32 V2.1 GRBL вполне подойдёт для самоделок, её плюс в том что там нет специфического кода, там стоит универcальный GRBL который можно приспособить для чего угодно.
Ответ написан
Комментировать
Kyodza
@Kyodza
Инженер по лётным испытаниям лёгких самолетов
Вы можете управлять моторами сами, без 3D принтера, если вам не важно, как перемещаться из точки в точку.
В 3D принтере есть два важных момента, которые для вам могут быть не так важны.

1. Интерполяция. В CNC устройствах раньше было отдельное устройство, которое так и называлось - интерполятор. Сейчас все умещается даже в Ардуино. Его задача рассчитать, как подавать импульсы на 3 мотора, так чтобы движение шло равномерно по всем осям (линия) или наоборот неравномерно (окружность в нужной плоскости). Если вам это не важно, то проще написать свою программу последовательного перемещения по каждой из осей - сначала Х, потом У, затем Z.

2. Ускорения. Вторая головная боль для CNC. Нужно учитывать механику и инерцию конкретной конструкции, для того что бы быстро разогнать, а потом затормозить все оси. Да так, чтобы не поломать интерполяцию, потому что...

2а. ... в дешевых CNC датчиков обратной связи нет (кроме концевых выключателей). Если начнутся пропуски шагов, то для любого CNC устройства это катастрофа - понимание местоположения головы будет не достоверным. Для 3D принтера или гравера - это искажение геометрии изготовляемой детали, что не приемлемо. Для вас это может быть не критично - сначала грубое перемещение в заданную область, а затем, если нужно - точное прицеливание (ой, это я из другой своей работы...)
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы