» » » Домашний CNC. Часть 1. Драйвер шагового двигателя для мини-станка с ЧПУ

 
 
 

Домашний CNC. Часть 1. Драйвер шагового двигателя для мини-станка с ЧПУ

Разместил basilevscom 13 марта 2016. Просмотров: 12502

8
Домашний CNC. Часть 1. Драйвер шагового двигателя для мини-станка с ЧПУ

При конструировании очередного станка с ЧПУ, а попросту 3-х осевого фрезерного-сверлильного станочка для печатных плат и мелких фрезерных работ, у меня появилось неугомонное желание разложить всё «по полочкам».
Многие скажут, что тема не нова, существует множество проектов, множество технических и программных решений. Но, плавая в этом море информации, я постарался убрать всю «воду» и получить «сухой остаток».
Вот что из этого получилось…
Сразу оговорюсь — все, что здесь далее написано, лишь мои личные выводы и не претендует на абсолютную истину. Истина рождается в споре, так что если уважаемые читатели в чем-то со мной не согласны, давайте это обсудим!

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

Привод

Нужно двигать собственно фрезер в 3-х направлениях — XYZ, значит нужно 3 привода — 3 мотора с передачей вращения вала двигателя в линейное перемещение.
О передаче…
Для фрезерного станка, где есть боковые усилия резания материала, желательно не применять ременные передачи, очень популярные в 3D принтерах. Буду применять передачу «винт-гайка». Самая бюджетная передача — обычный стальной винт и безлюфтовая, желательно бронзовая, гайка. Более правильная — винт с трапециевидной резьбой и гайка из капролона. Самая хорошая (и, увы, самая дорогая) шарико-винтовая пара, или ШВП. Об этом подробнее я еще расскажу далее…
У каждой передачи есть свой коэффициент, свой шаг — то есть насколько линейно по оси переместится фрезер за один оборот двигателя, например, на 4 мм.


Двигатель (мотор)

В качестве двигателя для привода определил шаговый двигатель (ШД)
Почему шаговый? Что это вообще такое?
Двигатели есть переменного и постоянного тока, коллекторные и бесколлекторные, и так называемые «шаговые». В любом случае нам надо обеспечить какую-то точность позиционирования, например 0,01 мм. Как это сделать? Если двигатель имеет прямой привод — вал двигателя соединяют напрямую с винтом, то для обеспечения такой точности нужно повернуть его на некоторый угол. В данном случае, при шаге передачи 4 мм и желаемой точности перемещения 0,01 мм это… всего 1/400 оборота, или 360/400=0,9 градуса! Ерунда, возьмем обычный моторчик…

С «обычным» моторчиком без обратной связи никак не получится. Не вдаваясь в подробности, схема управления двигателем должна «знать», на какой угол повернулась ось. Можно конечно поставить редуктор — потеряем в скорости, и все равно без гарантии, без обратной связи вообще никак! На ось ставится датчик угла поворота. Такое решение надежное, но дорогое.

Альтернатива — шаговый двигатель (как он работает, почитайте сами). Можно считать, что за одну «команду» он повернет свою ось на определенный градус, обычно это 1,8 или 0,9 градуса (точность обычно не хуже 5%) — как раз то, что нужно. Недостаток такого решения — при большой нагрузке двигатель будет пропускать команды — «шаги» и может вообще остановиться. Вопрос решается установкой заведомо мощного двигателя. На шаговых двигателях и делается большинство любительских станочков.


Выбираем шаговый двигатель

2 обмотки, с минимальным током, минимальной индуктивностью и максимальным моментом — то есть максимально мощный и экономичный двигатель.

Противоречивые требования. Малый ток — значит большое сопротивление, значит много витков провода обмотки двигателя, значит большая индуктивность. А большой момент — это большой ток и много витков. Выбираем в пользу большего тока и меньшей индуктивности. А момент надо выбирать исходя из нагрузки, но об этом потом.

Характеристики некоторых двигателей приведены в таблице:
Домашний CNC. Часть 1. Драйвер шагового двигателя для мини-станка с ЧПУ

Для небольшого станка с рабочим пространством размером 300×300х100 мм и легким фрезером вполне сгодятся двигатели с крутящим моментом 0,3Нм и выше. Оптимальным является ток от 1,5 до 2,5 Ампер, вполне подойдет FL42STH38-1684

Драйвер шагового двигателя

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

Самое простое решение — источник заданного тока и две пары транзисторных ключей на каждую обмотку. И четыре защитных диода. И логическая схема чтобы менять направление. И… Такое решение обычно делают на микросхеме ULN2003A для двигателей с малым током, имеет много недостатков, не буду на них останавливаться.

Альтернатива — специализированные микросхемы «всё в одном» — с логикой, транзисторами и диодами защиты внутри (или снаружи). А еще такие микросхемы контролируют ток обмоток и регулируют его с помощью ШИМ-а, а так же могут реализовывать режим «полушаг», а некоторые режимы 1/4 шага, и 1/8 шага и т. д. Эти режимы позволяют повысить точность позиционирования, повысить плавность движения и снизить резонанс. Обычно достаточно режима «полушаг», что позволит повысить теоретическую точность линейного позиционирования (в моем примере до 0,005 мм).

Что внутри микросхемы драйвера шагового двигателя? Блок логики и управления, источники питания, ШИМ со схемами формирования момента и времени коммутации обмоток, выходные ключи на полевых транзисторах, компараторы обратной связи — ток контролируется по падению напряжения на резисторах (Rs) в цепи питания обмоток. Ток двигателя задается опорным напряжением.

Для реализации этих функций существуют и другие схемные решения, например, с использованием микроконтроллеров PIC или ATMEGA (опять же с внешними транзисторами и защитными диодами). На мой взгляд, они не обладают значительным преимуществом перед «готовыми» микросхемами и я их в данном проекте использовать не буду.


Богатство выбора

На сегодняшний день есть достаточно много различных микросхем и достаточно много уже готовых плат и модулей драйверов ШД. Можно купить готовый, а можно «изобретать велосипед», тут каждый решает по-своему.
Домашний CNC. Часть 1. Драйвер шагового двигателя для мини-станка с ЧПУ


Из готовых — наиболее распространённые и недорогие драйверы на микросхемах Allegro A4988 (до 2А), Texas Instruments DRV8825 (до 2,5А).
Поскольку модули изначально разрабатывались для использования в 3D принтерах типа Rep-rap проекта Arduino, они не являются законченными модулями (например, им нужно еще питание логики (+5V), которое подается с так называемой рампы (Ramp).

Еще есть решения на DRV8811 (до 1,9 А), A3982 (до 2 А), A3977 (до 2,5 А), DRV8818 (до 2,5 А) DRV8825 (до 2,5 А), Toshiba TB6560 (до 3 А) и другие.

Поскольку мне интересно что-то сделать самому, плюс появилась возможность «попробовать на вкус» микросхемы Allegro A3982 и A3977, решил сделать пару драйверов самостоятельно.

Готовые решения на A4988 не понравились, прежде всего, из-за миниатюризации размеров печатной платы в ущерб хорошему охлаждению. Типовое сопротивление открытых транзисторов у A4388 при токе 1,5А 0,32+0,43 Ом, плюс 0,1-0,22 Ома «измерительный» резистор — получается около 0,85 Ом. А таких каналов два, и хотя и работают они импульсно, но 2-3 Ватта тепла надо рассеивать. Ну не верю я в многослойную плату и малюсенький радиатор охлаждения — в даташите нарисована плата гораздо больших размеров.

Провода мотора нужно сделать короткими, драйвер устанавливать рядом с двигателем. Существует 2 технических решения в звукотехнике: длинный сигнальный кабель к усилителю + короткие провода к акустической системе, или короткий сигнальный кабель к усилителю + длинные провода, а акустической системе. Оба решения имеют свои плюсы и минусы. С моторами — так же. Я выбрал длинные провода управления и короткие провода к мотору.

Управляющие сигналы — «шаг» (step), «направление» (dir), «включение» (enable), индикация состояния сигналов управления. Некоторые схемы не используют сигнал «Enable», но это приводит в режиме простоя к ненужному нагреву и микросхемы и двигателя.

Одно питание 12-24 вольта, источник питания логики (+5B) — на плате. Размеры платы — достаточные для хорошего охлаждения, двухсторонняя печать с большой областью «меди», возможность приклеить на микросхему радиатор (применяемой для охлаждения памяти видеокарт).

Драйвер ШД на микросхеме Allegro A3982

Основные характеристики и блок-схема:
Домашний CNC. Часть 1. Драйвер шагового двигателя для мини-станка с ЧПУ

Напряжение питание силовое: 8…35 В Напряжение питание логики: 3,3…5 В Выходной ток (максимальный, зависит от режима и охлаждения): ±2 А Типовое сопротивление открытых транзисторов (при токе 1,5А): 0,33+0,37 Ом

Драйвер ШД на микросхеме Allegro A3977

Основные характеристики и блок-схема:
Домашний CNC. Часть 1. Драйвер шагового двигателя для мини-станка с ЧПУ

Напряжение питание силовое: 8…35 В Напряжение питание логики: 3,3…5 В Выходной ток (максимальный, зависит от режима и охлаждения): ±2,5 А Типовое сопротивление открытых транзисторов (при токе 2,5А): 0,33+0,45 Ом

Схема и прототип

Домашний CNC. Часть 1. Драйвер шагового двигателя для мини-станка с ЧПУ
Домашний CNC. Часть 1. Драйвер шагового двигателя для мини-станка с ЧПУ

Проектировал в среде DipTrace. Драйвер A3982 включен по схеме из документации производителя. Включен режим «полушаг». Дополнительно для надежной работы сигналов управления и индикации применил микросхему логики 74НС14 (с триггерами Шмитта). Можно было сделать гальвано-развязку на оптронах, но для маленького станка я решил ее не делать. Схема на A3977 отличается только дополнительными джамперами режима шага и более мощным разъемом питания, пока в «железе» не реализована.

Печатная плата

Процесс изготовления — ЛУТ, двухсторонняя. Габариты 37×37 мм, крепеж — как у двигателей, 31×31 мм.
Домашний CNC. Часть 1. Драйвер шагового двигателя для мини-станка с ЧПУ

Для сравнения — слева мое творчество, справа драйвер на A4988.
Домашний CNC. Часть 1. Драйвер шагового двигателя для мини-станка с ЧПУ


Работа

Все заработало сразу, наладки не требовалось.
Домашний CNC. Часть 1. Драйвер шагового двигателя для мини-станка с ЧПУ

Температуру корпуса микросхемы мерил пирометром — без радиатора она достигала 90-95 градусов (при токе обмоток 1,6А) — мне это не понравилось. С радиатором — 55-60 градусов — куда лучше! Вообще плата вся теплая — около 35 градусов.

Спасибо за внимание!
Продолжение следует…


Файлы

В архиве схема и плата в формате DipTrace
Файловый сервис доступен только полноправным членам сообщества и подписчикам.
Пожалуйста, ознакомьтесь с условиями доступа.


Даташит на микросхему Allegro A3982
Файловый сервис доступен только полноправным членам сообщества и подписчикам.
Пожалуйста, ознакомьтесь с условиями доступа.

Об авторе

Антон (basilevscom)
Россия, Санкт-Петербург
Электроника для меня - и профессия, и хобби. Испытываю огромное удовольствие, когда получается что-то сделать или починить, основные предпочтения - звуковая аппаратура и микроконтроллеры.
 

Понравилось? Палец вверх!

  • всего лайков: 113

Поделись с друзьями!


Связанные материалы:


Kaspersky FREE. Бесплатная годовая лицензия для России, Белоруссии и Украины

Привет, друзья! Очередной подарок от kaspersky.ru — антивирус «Kaspersky FREE». Спасибо...

Домашний CNC. Часть 2. Механика

При конструировании очередного станка с ЧПУ, а попросту 3-х осевого...

Пусть всегда будет солнце!

Сегодня День Победы. Мы так долго живём без войны, что начали забывать, что это...

17/01 киберсубботник на портале

Привет, дрУги! В ближайщую субботу на нашем портале и в магазине будет...

Coil32 v9.0 - программа для расчета катушек индуктивности

Всем, кто занимался изготовлением (и ремонтом) приемников, передатчиков, акустических систем,...

Сэмплы гитарного комбоусилителя U-96

Как и обещал, записал пару сэмплов на скорую руку с моего комбика...

Библиотеки Diptrace +3D. Разъёмы PBS (розетки)

Продолжая тему библиотек для Diptrace, хочу предложить розетки однорядные PBS для пайки...

Toshiba - это хорошо! Новейший каталог 4Q2012

Предлагаю вниманию сограждан новейший каталог Toshiba Bipolar Power Transistors — 4 квартал...

Датагорскiя Вѣдомости №1 (2012)

Здравствуйте, уважаемые сограждане-датагорцы и гости нашего электронного города! Спешу...

Transformer: программа расчета маломощного (до 500 Вт) силового трансформатора на

Предлагаю начинающим очень простую программулину для расчета силовых трансформаторов. Автор...

Датагорская Ярмарка электроники v.2 открылась!

Уважаемые граждане Датагории и гости нашего кибер-города! После обновления открылась...

Пишем комментарии правильно

Здравствуйте, уважаемые граждане Датагории! Сегодня я расскажу вам, зачем у нас есть...
<
  • Подписчик
14 марта 2016 04:21

Николай / nick_shuvalov

  • Регистрация: 17.12.2011
  • Публикаций: 0
  • Комментариев: 2
 
  • 0
Класс! А STEP/DIR с компа? Станина - алюминиевый профиль?

<
  • Главный редактор
14 марта 2016 11:10

Игорь Петрович Котов / Datagor

  • Регистрация: 25.02.2011
  • Публикаций: 261
  • Комментариев: 1599
 
  • 0
Николай,
речь пока шла только о драйверах ШД - решения на современных чипах.
Надеюсь и до станины дойдём потихоньку. good
В заглавие вынесена отвлеченная 3d-картинка.

<
  • Гражданин
14 марта 2016 12:38

Никита / remontsofta

  • Регистрация: 1.02.2010
  • Публикаций: 0
  • Комментариев: 7
 
  • 0
Круть! Вот только неделю назад заинтересовался вопросом. Зарылся на пару дней в интернет, понял что не все просто) Если целая статья посвящена шаговым и драйверу, значит цикл планируется ого-го ;)
Ждем с нетерпением!!!

<
  • Гражданин
14 марта 2016 12:56

Антон / basilevscom

  • Регистрация: 9.01.2010
  • Публикаций: 15
  • Комментариев: 111
 
  • +1
Цитата: nick_shuvalov
А STEP/DIR с компа?

Не торопитесь, все варианты будут рассмотрены в следующей статье...)))

<
  • Подписчик
14 марта 2016 17:49

Игорь / StalKer-NightMan

  • Регистрация: 15.03.2012
  • Публикаций: 1
  • Комментариев: 84
 
  • 0
Очень интересная статья. Буду с нетерпением ждать продолжения.

<
  • Гражданин
14 марта 2016 23:18

Александр / minchenko

  • Регистрация: 16.06.2009
  • Публикаций: 4
  • Комментариев: 31
 
  • 0
В нашем ряду станкостроителей прибыло))) Антон поздравляю Вас с великим началом! Наверное пора добавить и мой станок, точнее первую его часть - механику.

А как открыть файл платы, пишет - неверный формат?

<
  • Главный редактор
15 марта 2016 13:37

Игорь Петрович Котов / Datagor

  • Регистрация: 25.02.2011
  • Публикаций: 261
  • Комментариев: 1599
 
  • 0
Саша, врёте, всё нормуль с файлом! wink
И хотя у меня открылось в предыдущем, возьмите себе свеженький DipTrace 3.0:
//diptrace.com/rus/download-diptrace/

<
  • Гражданин
16 марта 2016 01:05

Антон / basilevscom

  • Регистрация: 9.01.2010
  • Публикаций: 15
  • Комментариев: 111
 
  • 0
Цитата: minchenko
поздравляю Вас с великим началом!

Спасибо, но это скорее продолжение, первый станок сделал 3 года назад)))

Информация
Вы не можете участвовать в комментировании. Вероятные причины:
— Администратор остановил комментирование этой статьи.
— Вы не авторизовались на сайте. Войдите с паролем.
— Вы не зарегистрированы у нас. Зарегистрируйтесь.
— Вы зарегистрированы, но имеете низкий уровень доступа. Получите полный доступ.