A4988 подключение к ардуино: Драйвер шагового двигателя A4988: описание, подключение, схема, характеристики

Содержание

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

Представляет собой модуль драйвера шагового драйвера на основе чипа Allegro A4988 DMOS. Используется стандартный интерфейс (DIR / STEP). Драйвер выполнен в стиле Pololu.

Характеристики:

  • Напряжение привода двигателя: 8 — 35 В
  • Максимальный ток: до 1 А, кратковременно и с радиатором: до 2 А
  • Микрошаг: 1, ½ , ¼, ⅛, 1/16
    Простой в использовании интерфейс DIR / Step
    Защита от перегрузки по току и термозащита.

Купить:

на Али: тут.


Распиновка и схема подключения:

Назначение выводов драйвера:

  • ENABLE – Включение драйвера
  • MS1, MS2, MS3 – Служат для установки микрошагового режима работы
  • RESET — Сброс, переводит микросхему в исходное состояние.
  • SLEEP — Перевод микросхемы в режим низкого энергопотребления, вход отключает большую часть внутренней схемы, включая выходные полевые транзисторы, регулятор тока и тд. Выход из режима приводит двигатель к прежнему положению микрошага.
  • STEP — Переход от низкого к высокому в STEP делает один шаг.
  • DIR – Задает направление вращения
  • VMOT – Питание силовой части микросхемы и двигателя
  • GND – Масса
  • 2B, 2A, 1A, 1B – Выходы драйвера, подключения обмоток двигателя
  • VDD – Питание логической части микросхемы (3.5 –5В)

Принципиальная схема модуля:


Установка ограничение тока двигателя:

Ограничение тока двигателя устанавливается подстроечным потенциометром на плате. следует подключить вольтметр к выходу VRF (см. картинку выше). Предел можно рассчитать следующим образом: Limit = VREF x 2. Например: если у вас шаговый двигатель рассчитан на 1A, то необходимо установить опорное напряжение равное 0,5 В. При условии что на модуле используется шунт номиналом 0,10 Ом.



Микро-шаговый режим:

Таблица соответствия ног драйвера и режима микрошага.

 1½¼1/16
MS1(M0)OFFONOFFONOFF
MS2(M1)OFFOFFONONOFF
MS3(M2)OFFOFFOFFOFFON

Видео:


Запись опубликована автором admin в рубрике Обзоры с метками A4988, Драйвер шагового двигателя.

Статьи о роботах » Драйверы шаговых двигателей A4988 и DVR8825

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

Шаговые моторы имеют три режима управления вращением: полношаговый, полушаговый и микрошаговый.

Во время полношагового режима шаговые моторы для поворота мотора на 360 градусов делают 200 шагов, во время полушагового — 400, а во время микрошагового возможно делить шаг на 4, 8 и даже 16 частей. Техника управления микрошаговым режимом сложна, поэтому многие производители станков ЧПУ (CNC) и качественных 3D принтеров стали изготавливать специальные контроллеры для управления шаговыми двигателями, часто называемых драйверами шаговых моторов. Ещё их называют StepStick.

Функционирование специальных контроллеров управления (драйверов шаговых двигателей) происходит следующим образом: вначале напряжение питания поступает на шаговый двигатель, затем на логическую часть драйвера шаговика, после этого задается направление вращения и команда (ШАГ) по управляющим контактам на двигателе. Во время команды (ШАГ) шаговый мотор получает необходимое напряжение, которого достаточно для передвижения ротора на один микрошаг (полушаг или шаг) – это зависит от предварительных установок, заданных заранее специальными перемычками на RAMPS 1.4.

Зачастую у продаваемых контроллеров шаговых двигателей (например: RAMPS 1.4) предустановлен режим микрошага 1/16. Чтобы регулировать подаваемое на шаговый мотор напряжение питания, на котроллере RAMPS 1.4 установлен специальный переменный резистор. Он является важным элементом, поскольку шаговики могут быть под 8V, 4V, 12V и д.р.

Для платы RAMPS 1.4 выпускают два вида драйверов A4988 и DVR8825. Они отличаются током, выдаваемым на шаговый двигатель и минимальным микрошагом.

И не только. Выпускаются несколько других драйверов шаговых двигателей, которые могут быть использованы в качестве альтернативы. Например, у драйвера шагового двигателя Pololu A4988 Black Edition производительность на 20% выше. Есть также большая версия драйвера на A4988, которая имеет защиту от обратной мощности на главном входе питания, а также встроенной 5 В и 3.3 В стабилизаторы напряжения, которые устраняют необходимость в покупке отдельного питания для логики и двигателей. Платы на DRV8825 предлагают на около 50% более высокую производительность в более широком диапазоне напряжений и с несколькими дополнительными функциями, в то время как платы на DRV8834 работают с двигателями с напряжением питания от 2.5 В. Любую из этих плат можно использовать в качестве драйвера во многих приложениях.

Рассмотрим драйвер A4988.

Купить драйвер шагового двигателя A4988 для RAMPS 1.4 Купить драйвер шагового двигателя A4988 для RAMPS 1.4

Характеристики драйвера A4988

  • Максимальный ток 2 A
  • Минимальный микрошаг 1/16 шага

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

Установка микрошага производится перемычками установленными на RAMPS 1.4

Схема драйвера A4988

Купить драйвер шагового двигателя A4988 для RAMPS 1.4

Подключение драйвера A4988

Для работы с драйвером A4988 необходимо питание логического уровня (3 — 5.5 В), подаваемое на выводы VDD и GND, а также питание двигателя (8 — 35 В) на выводы VMOT и GND. Чтобы обеспечить необходимый потребляемый ток (при пиковых до 4 А), необходимо поставить конденсаторы для гальванической развязки как можно ближе к плате.

Внимание: В плате используются керамические конденсаторы с низким эквивалентным последовательным сопротивлением, что делает её уязвимой для индуктивно-ёмкостных скачков напряжения, особенно если питающие провода длиннее нескольких сантиметров. В некоторых случаях, эти скачки могут превысить максимально допустимое значение (35 В для A4988) и повредить плату. Одним из способов защиты платы от подобных скачков является установка большого (не меньше 47 мкФ) электролитического конденсатора между выводом питания (VMOT) и землёй близко к плате.

Купить драйвер шагового двигателя A4988 для RAMPS 1.4

При правильном подключении, через Pololu A4988 можно управлять четырёх-, шести- и восьми- проводными шаговыми двигателями.

Внимание: Соединение или разъединение шагового двигателя при включённом драйвере может привести к поломке двигателя.

Установка микрошага

У шаговых двигателей обычно установлена конкретная величина (например 1,8° или 200 шагов на оборот), при которой достигается полный оборот в 360°. Микрошаговый драйвер, такой как A4988 позволяет увеличить разрешение за счёт возможности управления промежуточными шагами. Это достигается путём возбуждения обмоток средней величины тока. Например, управление мотором в режиме четверти шага даст двигателю с величиной 200-шагов-за-оборот уже 800 микрошагов при использовании разных уровней тока.

Разрешение (размер шага) задаётся комбинациями переключателей на входах (MS1, MS2, и MS3). С их помощью можно выбрать пять различных шагов, в соответствии с таблицей ниже. На входы MS1 и MS3 переключателя установлены 100 кОм подтягивающие на землю резисторы, а на MS2 — 50 кОм, и если оставить их не подключёнными, двигатель будет работать в полношаговом режиме. Для правильной работы в режиме микрошага необходим слабый ток (см. ниже), который обеспечивается ограничителями по току. В противном случае, промежуточные уровни будут некорректно восприниматься, и двигатель будет пропускать микрошаги.

Купить драйвер шагового двигателя A4988 для RAMPS 1.4

Обычно для домашних 3D принтеров и станков ЧПУ используются драйверы A4988 с микрошагом 1/16. Для этого все перемычки на плате RAMPS 1.4 должны быть установлены на свои гнезда.

Входы управления

Каждый импульс на входе STEP соответствует одному микрошагу двигателя, направление вращения которого зависит от сигнала на выводе DIR. Обратите внимание, что выводы STEP и DIR не подтянуты к какому-либо конкретному внутреннему напряжению, поэтому вы не должны оставлять эти выводы плавающими при создании приложений. Если вы просто хотите вращать двигатель в одном направлении, вы можете соединить DIR непосредственно с VCC или GND. Чип имеет три различных входа для управления состоянием питания: RST, SLP и EN. Обратите внимание, что вывод RST плавает; если вы его не используете, вы можете подключить его к соседнему контакту SLP на печатной плате, чтобы подать на него высокий уровень и включить плату.

Ограничение тока

Для достижения высокой скорости шага, питания двигателя, как правило, гораздо выше, чем это было бы допустимо без активного ограничения тока. Например, типичный шаговый двигатель может иметь максимальный ток 1 А с 5 Ом; сопротивлением обмотки, отсюда максимально допустимое питание двигателя равно 5 В (U=I*R). Использование же такого двигателя с питанием 12 В позволит повысить скорость шага. Однако чтобы предотвратить повреждение двигателя, необходимо ограничить ток до уровня ниже 1 А.

Драйвер A4988 поддерживает активное ограничение тока, которое можно установить подстроечным потенциометром на плате.

Один из способов установить предельный ток — подключить драйвер в полношаговый режим и измерять ток, протекающий через одну обмотку двигателя без синхронизации по входу STEP. Измеренный ток будет равен 0,7 части предельного тока (так как обе обмотки всегда ограничиваются примерно на 70% от текущей настройки предельного тока в полношаговом режиме). Учтите, что при изменении логического напряжения Vdd, на другое значение, изменит предельный ток, поскольку напряжение на выводе «ref» является функцией Vdd.

Еще один способ установить предельный ток – измерить напряжение на выводе «ref» и вычислить полученное ограничение тока (резисторы SENSE равны 0,05 Ом). Напряжение вывода доступно через металлизированное сквозное отверстие (в кружке на шёлкографии печатной платы). Ограничение тока относится к опорному напряжению следующим образом:

Current Limit = VREF × 2,5

Например: опорное напряжение равно 0,3 В, предельный ток 0,75 А. Как упоминалось выше, в режиме полного шага, ток через катушки ограничен 70% от текущего предела, поэтому, чтобы получить полный шаг тока катушки в 1 А, текущий предел должен быть 1 A / 0,7 = 1,4 А, что соответствует VREF 1,4 A / 2,5 = 0,56 В. Смотрите спецификацию A4988 для получения дополнительных сведений.

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

Величину тока на драйвере шагового мотора настроить и опытным путём. Необходимо устроить прогон 3D принтера на высокой скорости по всем координатам. Оптимальным считается, когда шаговые двигатели уже не гудят и ещё не пропускают шаги.

Внимание: При регулировке тока подстроечным резистором на драйвере A4988. Вращение по часовой стрелке — повышение тока. Вращение против часовой стрелки — понижение величины тока.

Максимально допустимый ток подаваемый на обмотку, у микросхемы A4988 равен 2 A. Фактический ток, который можно подать на плату, зависит от качества охлаждения микросхемы. Плата разработана с учётом отвода тепла от микросхемы, но при токе выше 1 A на обмотку необходим теплоотвод или другое дополнительное охлаждение.

Внимание: плата драйвера может нагреться так, что можно получить ожог, задолго до того как перегреется сама микросхема. Будьте осторожны при обращении с платой и со всеми подключёнными к ней устройствами.

Обратите внимание, что ток, измеренный на источнике питания, как правило, не соответствует величине тока на обмотке. Так как напряжение, подаваемое на драйвер, может быть значительно выше напряжения на обмотке, то, соответственно, измеряемый ток на источнике питания может быть немного ниже, чем ток на обмотке (драйвер и обмотка в основном работают в качестве переключаемого источника с пошаговым понижением питания). Кроме того, если напряжение питания намного выше необходимого двигателю уровня для достижения требуемого тока, то скважность будет очень низкой, что также приводит к существенным различиям между средним и RMS током (среднеквадратичное значение переменного тока).

Настройка драйвера A4988. Первый запуск шаговых двигателей

Продолжаю сборку станка ЧПУ. Шаговые двигателя я уже подобрал. Для проверки электроники, собрал тестовое подключение на столе.

Сперва я подключил к CNC shield v3 шаговые двигателя:

  1. 17HS4401 — ток 1,7A
  2. EM-181 — ток 1,2A
  3. EM-142- значение максимального тока не нашел.

Двигателя выбраны сейчас нам нужно настроить рабочий ток драйверов A4988 для каждого шагового двигателя. Это можно сделать двумя способами:

1. Подключить двигатель в полношаговом режиме и замерить ток на одной обмотки. Он должен быть 70% от номинального тока двигателя. Т.е. для 17HS4401 1,7*0,7= 1,19 А

2. Рассчитать значение Vref — напряжение на переменном резисторе расположенном на драйвере А4988.

A4988 изменяется от номинала токочувствительных резисторов

Формула Vref для A4988 изменяется от номинала токочувствительных резисторов. Это два черных прямоугольника на плате драйвера. Обычно подписаны R050 или R100.

Vref = Imax * 8 * (RS)

Imax — ток двигателя;

RS — сопротивление резистора. В моем случае RS = 0,100.
Для 17HS4401 Vref = 1,7 * 8 * 0,100 = 1,36 В.

В связи с тем что рабочий ток двигателя равен 70% от тока удержания. Полученное значение нам нужно умножить на 0,7. В противном случае двигателя в режиме удержания будут сильно греться.

Для 17HS4401 Vref ист. = 1,36*0,7 = 0,952 В.

Аналогично рассчитываю значения для EM-181

Vref = 1,2 * 8 * 0,100 = 0,96 В

Vrefист. = 0,96*0,7 = 0 ,672 В.

Так как я не смог найти datasheets для ЕМ-142. Для расчетов предложил, что ток на обмотку данного двигателя составляет 0,6 А. Если двигатель будит издавать гул сильнее обычного значит ток превышает максимальное значение. Его нужно понижать. Так как я взял ток обмотки. При расчете Vref ист. Не нужно умножать на 0,7, как я говорил выше ток одной обмотки составляет 70% от номинального. Расчет будет вот таким:

Vrefист. = 0,6 * 8 * 0,100 = 0,48 В.

По моим ощущениям я угадал с током двигателя ЕМ-142. Останется рассчитать сколько шагов он делает для совершения одного оборота. Об этом расскажу в следующей статье.

В видео подключил кнопки «Пауза», «Продолжить», «Аварийная остановка» . Подключил на пины шпинделя светодиод. И протестировал работу. Так же установил один конечный выключатель. Все работает. Если у вас возникли вопросу что куда подключается к CNC shield v3, читайте статью: Плата расширения для Arduino UNO, CNC shield v3 и драйверов A4988

Подписывайтесь на мой канал на Youtube и вступайте в группы в Вконтакте и Facebook.

Спасибо за внимание!

Понравилась статья? Поделитесь ею с друзьями:

Управление шаговым биполярным двигателем A4988ET [Рабочий код ino] — Автоматизация и проектирование

Многие схемотехники начинают городить большие платы с кучей транзисторов и интегральных схем для управления шаговыми биполярными (4 провода) двигателями. Очень часто это сложно, долго, громоздко, проблематично, дорого. Для решения данных проблемы существует плата драйвера биполярных двигателей основанная на микросхеме A4988ET. В оригинале эта плата предназначена для 3D принтеров. Далее о самой плате, распиновка и проверенный код для Arduino.
Сразу заглянем внутрь самой микросхемы A4988ET, что бы понять в чем её преимущество. На рисунке ниже.

Биполярный двигатель имеет 4 провода
В отличии от драйвера шагового биполярного двигателя на ULN2803APG данная схема имеет ряд преимуществ.
Самое главное это то что развязка организованна на Mosfet транзисторах с затвором, с обратной защитой. Остальные преимущества узнаем после разбора просмотра распиновки платы A4988ET и характеристик.

Я долго мучался когда «городил» драйвер на микросхеме ULN2803 с резисторами (для создания разно полярного напряжения на обмотках, по ссылке выше). Резисторы часто перегревались, а парочка и вовсе взорвалась.

Поэтому данная микросхема — счастье и находка. В оригинале плата A4988ET предназначена для управления двигателями от 3D принтера и прекрасно сочетается с платой RAMPS.


Как видно на рисунке на плате A4988ET находятся радиаторы. При условии что рабочая температура всего лишь 60 градусов, основная микросхема имеет защиту от перегрева.

О характеристиках:
Напряжения питания для двигателей: от 8 до 35 В
Возможно установить шаг двигателя: от 1 до 1/16 от целого шага (микрошаги)
Сама микросхема имеет питание: 3-5.5В
Максимальный ток: 1А без радиатора, 2А с радиатором
Размер платы: 20 х 15 мм — как копейка

Ниже на рисунке изображена схема подключения платы.

ENABLE — Включение или выключение микросхемы
RESET — Сброс работы логики
STEP — Генерация ШИМ — скорости биполярного двигателя. Каждый импульс это шаг
DIR — Установка высокого или низкого уровня на входе регулирует направление вращения.
VMOT -Питание для двигателя от 8 до 35 вольт
GND — Минус питания для двигателя
2B, 2A, 1A, 1B — Обмотки двигателя. Для определения обмоток двигателя замерьте сопротивление. Между разными обмотками бесконечное сопротивление, иначе вы увидите сопротивление 4-8 Ом значит что вы определили или 1ю или 2ю обмотку двигателя.
VDD — Питание 5В для микросхемы
GNG — Минус питания для микросхемы
MS1, MS2, MS3 — Устанавливая на данных входах уровни 000, 100, 010, 110, 111 достигается режим полношагового, половинного шага, четверти шага, одна восьмая шага, и даже 1\16 от целого шага.
Таким образом плата имеет широкие возможности.

Так выглядят на скорую руку подпаянные провода. Так же важно установить поддерживающий конденсатор в 1000 мкф (не 100, а 1000мкф 16Вольт !)

Основными моментами является:
Не дай вам Боже случайно выдернуть подключенный двигатель от микросхемы при поданном питании — сгорит. В мануале к микросхеме написано что есть защита от кз. Но защиты от резкой смены нагрузки нет.

Код программы ниже опробован на Arduino Mega с довольно большим биполярным двигателем.

  1. /*

  2. * 1injener.ru

  3. * Управление шаговым биполярным двигателем A4988ET [Рабочий код ino]

  4. *

  5. */

  6. int dirPin = 2; //Название переменной указывает DIR

  7. int stepperPin = 3; //STERR Pin

  8. void setup() {

  9. pinMode(dirPin, OUTPUT);

  10. digitalWrite(4,LOW); // Установка высокого уровня на Enable

  11. pinMode(stepperPin, OUTPUT);

  12. }

  13. //Функция ШАГ. Принимает направление движения и количество шагов.

  14. void step(boolean dir,int steps){

  15. digitalWrite(dirPin,dir);

  16. delay(50);

  17. for(int i=0;isteps;i++){

  18. digitalWrite(stepperPin, HIGH);

  19. delayMicroseconds(800);

  20. digitalWrite(stepperPin, LOW);

  21. delayMicroseconds(800);

  22. }

  23. }

  24. void loop(){

  25. step(true,1000); //Движемся в одну сторону 1000 шагов

  26. delay(3000);

  27. step(false,3000); //Движемся в обратную сторону 3000 шагов

  28. delay(3000); //Пауза

  29. }

  30. //http://www.geeetech.com/wiki/index.php/A4988_Stepper_Motor_Driver_Carrier_Board


Скачать скетч для Arduino: 1injener_ok_A4988.ino
Официальные документы на A4988: Скачать a4988.pdf

Всё просто!

Другие статьи по разделу:

 ЖКИ дисплей WH0802 подключение к Ардуино [Много проводов]


 Управление шаговым биполярным двигателем A4988ET [Рабочий код ino]

Драйвер шагового двигателя A4988 — ProGDron.com

 

 

Характеристики:

модель: A4988;
напряжения питания: от 8 до 35 В;
возможность установки шага: от 1 до 1/16 от максимального шага;
напряжение логики: 3-5.5 В;
защита от перегрева;
максимальный ток на фазу: 1 А без радиатора, 2 А с радиатором;
расстояние между рядами ножек: 12 мм;
размер платы: 20 х 15 мм;
габариты драйвера: 20 х 15 х 10 мм;
габариты радиатора: 9 х 5 х 9 мм;
вес с радиатором: 3 г;
вес без радиатора: 2 г.

 Описание и Схемы подключения здесь.

Плата создана на базе микросхемы A4988 компании Allegro — драйвера биполярного шагового двигателя. Особенностями A4988 являются регулируемый ток, защита от перегрузки и перегрева, драйвер также имеет пять вариантов микрошага (вплоть до 1/16-шага). Он работает от напряжения 8 — 35 В и может обеспечить ток до 1 А на фазу без радиатора и дополнительного охлаждения (дополнительное охлаждение необходимо при подаче тока в 2 A на каждую обмотку).

Описание:

Драйвер создан на базе микросхемы управления шаговым двигателем компании Allegro A4988, изготовленной по ДМОП-технологии с регулятором и защитой по току, поэтому мы настоятельно рекомендуем, перед использованием этого продукта,   ознакомиться со спецификацией A4988 (1MB pdf). Этот драйвер позволит управлять биполярным шаговым двигателем с выходным током до 2 А на обмотку (для получения дополнительной информации смотрите раздел о рассеивании мощности). Ниже приведены ключевые особенности драйвера:

  • Простой интерфейс управления шагом и направлением вращения электродвигателя
  • Пять различных разрешений перемещения: полный шаг, 1/2-шага, 1/4-шага, 1/8-шага, 1/16-шага
  • Регулируемый контроль тока с помощью потенциометра, позволит установить максимальный выходной ток. Это даст вам возможность использовать напряжение выше допустимого диапазона для достижения более высокой угловой скорости шага двигателя
  • Интеллектуальное управление автоматически выбирает режим регулировки затухания тока (медленный и быстрый режимы)
  • Защитное отключение при перегреве и перегрузке по току, а также блокировка питания при пониженном напряжении
  • Защита от короткого замыкания на землю, защита от замыкания в нагрузке

Обратите внимание, что Pololu производит несколько драйверов шаговых двигателей, которые могут быть использованы в качестве альтернативы этого модуля. У драйвера шагового двигателя Pololu A4988 Black Edition производительность на 20% выше, и за исключением тепловых характеристик, Black Edition, и данная (зеленая) плата являются взаимозаменяемыми. Есть также большая версия драйвера Pololu на A4988, которая имеет защиту от обратной мощности на главном входе питания, а также встроенной 5 В и 3,3 В стабилизаторы напряжения, которые устраняют необходимость в покупке отдельного питания для логики и двигателей. Платы Pololu на DRV8825 предлагают на около 50% более высокую производительность в более широком диапазоне напряжений и с несколькими дополнительными функциями, в то время как платы на DRV8834 работают с двигателями с напряжением питания от 2,5 В; любую из этих плат можно использовать в качестве альтернативы этого драйвера во многих приложениях.

Использование:

Соединение с источником питания:

Для работы с драйвером необходимо питание логического уровня (3 — 5,5 В), подаваемое на выводы VDD и GND, а также питание двигателя (8 — 35 В) на выводы VMOT и GND. Чтобы обеспечить необходимый потребляемый ток (при пиковых до 4 А), необходимо поставить конденсаторы для гальванической развязки как можно ближе к плате.

Внимание: В плате используются керамические конденсаторы с низким эквивалентным последовательным сопротивлением, что делает её уязвимой для индуктивно-ёмкостных скачков напряжения, особенно если питающие провода длиннее нескольких сантиметров. В некоторых случаях, эти скачки могут превысить максимально допустимое значение (35 В для A4988) и повредить плату. Одним из способов защиты платы от подобных скачков является установка большого (не меньше 47 мкФ) электролитического конденсатора между выводом питания (VMOT) и землёй близко к плате.

Соединение двигателя:

При правильном подключении, через Pololu A4988 можно управлять четырёх-, шести- и восьми- проводными шаговыми двигателями

Внимание: Соединение или разъединение шагового двигателя при включённом драйвере может привести к поломке двигателя.

Размер шага (и микрошага):

У шаговых двигателей обычно установлена конкретная величина (например 1,8° или 200 шагов на оборот), при которой достигается полный оборот в 360°. Микрошаговый драйвер, такой как A4988 позволяет увеличить разрешение за счёт возможности управления промежуточными шагами. Это достигается путём возбуждения обмоток средней величины тока. Например, управление мотором в режиме четверти шага даст двигателю с величиной 200-шагов-за-оборот уже 800 микрошагов при использовании разных уровней тока.

Разрешение (размер шага) задаётся комбинациями переключателей на входах (MS1, MS2, и MS3). С их помощью можно выбрать пять различных шагов, в соответствии с таблицей ниже. На входы MS1 и MS3 переключателя установлены 100 кОм подтягивающие на землю резисторы, а на MS2 — 50 кОм, и если оставить их не подключёнными, двигатель будет работать в полношаговом режиме. Для правильной работы в режиме микрошага необходим слабый ток (см. ниже), который обеспечивается ограничителями по току. В противном случае, промежуточные уровни будут некорректно восприниматься, и двигатель будет пропускать микрошаги.

MS1

MS2

MS3

Разрешение микрошага

Низкий

Низкий

Низкий

Полный шаг

Высокий

Низкий

Низкий

1/2 шага

Низкий

Высокий

Низкий

1/4 шага

Высокий

Высокий

Низкий

1/8 шага

Высокий

Высокий

Высокий

1/16 шага


Входы управления:

Каждый импульс на входе STEP соответствует одному микрошагу двигателя, направление вращения которого зависит от сигнала на выводе DIR. Обратите внимание, что выводы STEP и DIR не подтянуты к какому-либо конкретному внутреннему напряжению, поэтому вы не должны оставлять эти выводы плавающими при создании приложений. Если вы просто хотите вращать двигатель в одном направлении, вы можете соединить DIR непосредственно с VCC или GND. Чип имеет три различных входа для управления состоянием питания: RST, SLP и EN. Дополнительные сведения об этих состояниях см. в техническом описании. Обратите внимание, что вывод RST плавает; если вы его не используете, вы можете подключить его к соседнему контакту SLP на печатной плате, чтобы подать на него высокий уровень и включить плату.

   ePN Cashback — сервис, который возвращает часть денег с покупок, сделанных в интернет магазинах, представленных в ePN Cashback

Ограничение тока:

Для достижения высокой скорости шага, питания двигателя, как правило, гораздо выше, чем это было бы допустимо без активного ограничения тока. Например, типичный шаговый двигатель может иметь максимальный ток 1 А с 5 Ом; сопротивлением обмотки, отсюда максимально допустимое питание двигателя равно 5 В (U=I*R). Использование же такого двигателя с питанием 12 В позволит повысить скорость шага. Однако чтобы предотвратить повреждение двигателя, необходимо ограничить ток до уровня ниже 1 А.

Pololu A4988 поддерживает активное ограничение тока, которое можно установить подстроечным потенциометром на плате. Один из способов установить предельный ток — подключить драйвер в полношаговый режим и измерять ток, протекающий через одну обмотку двигателя без синхронизации по входу STEP. Измеренный ток будет равен 0,7 части предельного тока (так как обе обмотки всегда ограничиваются примерно на 70% от текущей настройки предельного тока в полношаговом режиме). Учтите, что при изменении логического напряжения Vdd, на другое значение, изменит предельный ток, поскольку напряжение на выводе «ref» является функцией Vdd.

Еще один способ установить предельный ток – измерить напряжение на выводе «ref» и вычислить полученное ограничение тока (резисторы SENSE равны 0,05 Ом). Напряжение вывода доступно через металлизированное сквозное отверстие (в кружке на шёлкографии печатной платы). Ограничение тока относится к опорному напряжению следующим образом:

Current Limit = VREF × 2,5

Например: опорное напряжение равно 0,3 В, предельный ток 0,75 А. Как упоминалось выше, в режиме полного шага, ток через катушки ограничен 70% от текущего предела, поэтому, чтобы получить полный шаг тока катушки в 1 А, текущий предел должен быть 1 A / 0,7 = 1,4 А, что соответствует VREF 1,4 A / 2,5 = 0,56 В. Смотрите спецификацию A4988 для получения дополнительных сведений.

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

Рекомендации по рассеиванию мощности:

Максимально допустимый ток подаваемый на обмотку, у микросхемы A4988 равен 2 A. Фактический ток, который можно подать на плату, зависит от качества охлаждения микросхемы. Плата разработана с учётом отвода тепла от микросхемы, но при токе выше 1 A на обмотку необходим теплоотвод или другое дополнительное охлаждение.

Эта плата может нагреться так, что можно получить ожог, задолго до того как перегреется сама микросхема. Будьте осторожны при обращении с платой и со всеми подключёнными к ней устройствами.

Обратите внимание, что ток, измеренный на источнике питания, как правило, не соответствует величине тока на обмотке. Так как напряжение, подаваемое на драйвер, может быть значительно выше напряжения на обмотке, то, соответственно, измеряемый ток на источнике питания может быть немного ниже, чем ток на обмотке (драйвер и обмотка в основном работают в качестве переключаемого источника с пошаговым понижением питания). Кроме того, если напряжение питания намного выше необходимого двигателю уровня для достижения требуемого тока, то скважность будет очень низкой, что также приводит к существенным различиям между средним и RMS током (среднеквадратичное значение переменного тока).

Шаговые двигатели (подробный разбор 4 типов)

Общие сведения:

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

Шаговые двигатели состоят из ротора (подвижная часть) и статора (неподвижная часть). На статоре устанавливают электромагниты, а части ротора взаимодействующие с электромагнитами выполняются из магнитотвердого (двигатель с постоянными магнитами) или магнитомягкого (реактивный двигатель) материала.

Виды шаговых двигателей по типу ротора:

По типу ротора, шаговые двигатели делятся на: двигатели с постоянными магнитами, реактивные двигатели и гибридные двигатели.

  • Двигатель с постоянными магнитами (ротор из магнитотвердого материала). На роторе установлен один, или несколько, постоянных магнитов. Количество полных шагов в одном обороте таких двигателей, зависит от количества постоянных магнитов на роторе, и количества электромагнитов на статоре. Обычно в одном обороте от 4 до 48 шагов (один шаг от 7,5° до 90°).
  • Реактивный двигатель (ротор из магнитомягкого материала). Еще такие двигатели называют двигателями с переменным магнитным сопротивлением. Ротор не имеет постоянных магнитов, он выполнен из магнитомягкого материала в виде многоконечной звезды. Данные двигатели встречаются редко, так как у них наименьший крутящий момент, по сравнению с остальными, при тех же размерах. Количество полных шагов в одном обороте таких двигателей, зависит от количества зубцов на звезде ротора, и количества электромагнитов на статоре. Обычно в одном обороте от 24 до 72 шагов (один шаг от 5° до 15°.)
  • Гибридный двигатель (совмещает технологии двух предыдущих двигателей). Ротор выполнен из магнитотвердого материала (как у двигателя с постоянными магнитами), но имеет форму многоконечной звезды (как у реактивного двигателя). Количество полных шагов в одном обороте таких двигателей, зависит от количества постоянных магнитов на звезде ротора, и количества электромагнитов на статоре. Количество шагов в одном обороте таких двигателей может доходить до 400 (один шаг от 0,9°).

Какой тип шагового двигателя у меня?

Если вручную покрутить ротор отключённого двигателя, то можно заметить, что он движется не плавно, а шагами. После того, как Вы покрутили ротор, замкните все провода двигателя и покрутите ротор повторно. Если ротор крутится также, значит у Вас реактивный двигатель. Если для вращения ротора требуется прикладывать больше усилий, значит у вас двигатель с постоянными магнитами или гибридный. Отличить двигатель с постоянными магнитами от гибридного можно подсчитав количество шагов в одном обороте. Для этого не обязательно считать все шаги, достаточно примерно понять, их меньше 50 или больше. Если меньше, значит у Вас двигатель с постоянными магнитами, а если больше, значит у Вас гибридный двигатель.

Виды шаговых двигателей по типу соединения электромагнитов статора:

По типу соединения электромагнитов, шаговые двигатели делятся на: униполярные и биполярные.

На рисунке представлено упрощённое, схематическое, представление обмоток.
На самом деле, каждая обмотка состоит из нескольких обмоток электромагнитов, соединённых последовательно или параллельно

  • Биполярный двигатель имеет 4 вывода. Выводы A и A питают обмотку AA, выводы B и B питают обмотку BB. Для включения электромагнита, на выводы обмотки необходимо подать разность потенциалов (два разных уровня), поэтому двигатель называется биполярным. Направление магнитного поля зависит от полярности потенциалов на выводах.
  • Униполярный двигатель имеет 5 выводов. Центральные точки его обмоток соединены между собой и являются общим (пятым) выводом, который, обычно, подключают к GND. Для включения электромагнита, достаточно подать положительный потенциал на один из выводов обмотки, поэтому двигатель называется униполярным. Направление магнитного поля зависит от того, на какой именно вывод обмотки подан положительный потенциал.
  • 6-выводной двигатель имеет ответвление от центральных точек обмоток, но обмотка AA не соединена с обмоткой BB. Если не использовать выводы центральных точек обмоток, то двигатель будет биполярным, а если эти выводы соединить и подключить к GND, то двигатель будет униполярным.
  • 8-выводной двигатель является наиболее гибким в плане подключения электромагнитов. Данный двигатель можно не только использовать как биполярный или униполярный, но и самим определять, как соединить электромагниты обмоток, последовательно или параллельно.

Какой тип шагового двигателя у меня?

Если у Вашего двигателя 4 вывода, значит он биполярный. Если у Вашего двигателя 5 выводов, значит он униполярный. Но если у Вашего двигателя 6 и более выводов, то это не значит что некоторые из них являются центральными выводами катушек электромагнитов. Дело в том, что есть двигатели, некоторые выводы которых (обычно крайние), электрически замкнуты, так биполярный двигатель может иметь 6 выводов. Точно определить тип соединений, для двигателей с 6 и более выводами, можно только измеряя сопротивление между выводами.

Режимы работы шаговых двигателей:

    Для работы шагового двигателя (вне зависимости от его вида) можно выбрать один из трех режимов работы:
  • Полношаговый режим — ротор поворачивается на 1 шаг за 1 такт.
  • Полушаговый режим — ротор поворачивается на ½ шага за 1 такт.
  • Микрошаговый режим — ротор поворачивается на ¼, ⅛ и т.д. шагов за 1 такт.

Ниже рассмотрены режимы работы, на примере биполярного двигателя с постоянным магнитом и полным шагом 90°.

Полношаговый режим (одна фаза на полный шаг). Номинальные значения шагового двигателя указываются именно для этого режима.

Полношаговый режим (две фазы на полный шаг). Этот режим позволяет увеличить крутящий момент почти в половину от номинального.

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

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

Если подавать уровни не «0» — «½» — «1» (как на картинке), а «0» — «¼» — «½» — «¾» — «1», то количество шагов в полном обороте увеличится не в 4 раза, а в 8 раз. Можно увеличить количество шагов в 16, 32, 64 раза и т.д., а если заменить дискретные уровни сигнало

#21. Подключаем к Arduino Шаговый двигатель 28BYJ-48 на драйвере ULN2003

Сегодня в уроке подключим шаговый двигатель 28BYJ-48 к Arduino и научимся вращать вал двигателя в разные стороны и изменять скорость вращения с помощью потенциометра и энкодера KY-040.

Кратко, что такое шаговый двигатель (ШД) — это двигатель, который способен осуществлять вращение на 1 шаг. Шаг — это угол, который обусловлен устройством каждого конкретного шагового двигателя.

Характеристики шагового двигателя 28BYJ-48:

Характеристики шагового двигателя 28BYJ-48:

Размера шагового двигателя 28BYJ-48. Необходимы при проектировании деталей для 3D печати.

Размера шагового двигателя 28BYJ-48. Необходимы при проектировании деталей для 3D печати.

Вот так выглядит схема шагового двигателя 28BYJ-48

Вот так выглядит схема шагового двигателя 28BYJ-48

Подавая сигналы в определённом порядке на выводы двигателя, двигатель можно вращать по часовой стрелке.

Для шагового режима.

Для шагового режима.

Для полушагового режима.

Для полушагового режима.

Прямое подключение шагового двигателя 28BYJ-48 к Arduino.

В связи с тем, что двигатель 28BYJ-48 работает от 5в и при небольших токах, его можно подключить на прямую к Arduino.

Схема подключения к Arduino UNO будет следующая.

В связи с тем, что двигатель 28BYJ-48 работает от 5в и при небольших токах, его можно подключить на прямую к Arduino.

Для вращения ШД достаточно подавать сигналы по схеме, которую мы рассмотрели выше.

Для этого можно сделать массив подачи сигнала на пины микроконтроллера.

Для этого можно сделать массив подачи сигнала на пины микроконтроллера.

И в цикле выполнять каждую строчку массива. Но есть решение с более компактным кодом. Нашел я данный пример на канале Дмитрия Осипова. За что ему отельное спасибо!

Код для вращения в одну и в другую сторону будет вот таким.

ВНИМАНИЕ! Материалы для скачивания находятся внизу статьи!

Пример подключения шагового двигателя 28BYJ-48 (5V)с использованием драйвер ULN2003.

Также у Дмитрия Осипова есть код для изменения скорости вращения с помощью потенциометра. Я его немного доработал, сделал обработку нажатия кнопки без задержки в 500 мс. Сейчас двигатель стал вращаться в обратную сторону без видимой задержки.

Для подключения буду использовать модуль SBT0811 на драйвере ULN2003.

Для подключения буду использовать модуль SBT0811 на драйвере ULN2003.

Драйвер устроен вот таким образом.

Драйвер устроен вот таким образом.

Соответственно, наш код будет работать и с данным драйвером.

Подключим все по схеме и загрузим код в Arduino NANO.

Подключим все по схеме и загрузим код в Arduino NANO.

Схема подключения для Arduino UNO будет аналогичной.

Как видим, двигатель без проблем вращается по часовой стрелке и против часовой, при нажатии на кнопку вращается в противоположном направлении. При вращении потенциометра в одну сторону — скорость уменьшается, при вращении в противоположном направлении скорость увеличивается.

ВНИМАНИЕ! Материалы для скачивания находятся внизу статьи!

Пример управления шаговым двигателем 28BYJ-48 с помощью Энкодера.

Для уменьшения количества элементов в схеме решил заменить потенциометр и тактовую кнопку на энкодер вращения KY-040. Как подключить энкодер вращения к Arduino рассказывал в предыдущем уроке.

Подключаем шаговый двигатель 28BYJ-48 и энкодер к Arduino по схеме.

Подключаем шаговый двигатель 28BYJ-48 и энкодер к Arduino по схеме.

Проводим небольшую доработку кода и получим вот такой результат.

Если нажать на энкодер, меняется направление вращения. А при вращении энкодера по часовой стрелке - скорость увеличивается. Если вращать против часовой стрелки - скорость снижается.

Если нажать на энкодер, меняется направление вращения. А при вращении энкодера по часовой стрелке — скорость увеличивается. Если вращать против часовой стрелки — скорость снижается.

ВНИМАНИЕ! Материалы для скачивания находятся внизу статьи!

Вы также можете без проблем воспользоваться примером из стандартной библиотеки Stepper, которая позволит сделать тоже самое и при меньшем объёме кода. Но библиотека не даст вам понять, как это все устроено.

стандартной библиотеки Stepper

А вот сам пример вращения в одну сторону, а затем в другую с использованием библиотеки Stepper.

А вот сам пример вращения в одну сторону, а затем в другую с использованием библиотеки Stepper.

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

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

Не забывайте подписываться на канал Youtube и вступайте в группы в Вконтакте и Facebook.

Всем Пока-Пока.

И до встречи в следующем уроке

Понравилась статья? Поделитесь ею с друзьями:

Файлы для скачивания

управления шаговым двигателем 28BYJ-48 с помощью Энкодера управления шаговым двигателем 28BYJ-48 с помощью Энкодера.ino4 Kb 205 Скачать

Вы можете скачать файл.

управления шаговым двигателем 28BYJ-48 с помощью кнопки и потенциометра управления шаговым двигателем 28BYJ-48 с помощью кнопки и потенциометра .ino5 Kb 193 Скачать

Вы можете скачать файл.

с использованием библиотеки Stepper с использованием библиотеки Stepper.ino1 Kb 165 Скачать

Вы можете скачать файл.

 Даташит на шаговый двигатель 28BYJ-48 Даташит на шаговый двигатель 28BYJ-48.pdf193 Kb 113 Скачать

Вы можете скачать файл.

frostybeard / a4988_stepper_library: Библиотека шагового двигателя Ardiuno для шаговых плат a4988 для управления микрошагом

перейти к содержанию Зарегистрироваться
  • Почему именно GitHub? Особенности →
    • Обзор кода
    • Управление проектами
    • Интеграции
    • Действия
    • Пакеты
    • Безопасность
    • Управление командой
    • Хостинг
    • мобильный
    • Истории клиентов →
    • Безопасность →
  • Команда
  • Предприятие
  • Проводить исследования
    • Изучите GitHub →
    Учитесь и вносите свой вклад
    • Темы
    • Коллекции
    • В тренде
    • Учебная лаборатория
    • Руководства с открытым исходным кодом
    Общайтесь с другими
    • События
    • Сообщество
.

laurb9 / StepperDriver: библиотека Arduino для A4988, DRV8825, DRV8834, DRV8880 и универсальных двухконтактных (DIR / STEP) драйверов шаговых двигателей

перейти к содержанию Зарегистрироваться
  • Почему именно GitHub? Особенности →
    • Обзор кода
    • Управление проектами
    • Интеграции
    • Действия
    • Пакеты
    • Безопасность
    • Управление командой
    • Хостинг
    • мобильный
    • Истории клиентов →
    • Безопасность →
  • Команда
  • Предприятие
  • Проводить исследования
    • Изучите GitHub →
    Учитесь и вносите свой вклад
    • Темы
    • Коллекции
    • В тренде
    • Учебная лаборатория
    • Руководства с открытым исходным кодом
.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *