Драйвер шагового двигателя A4988. Распиновка, подключение к Ардуино. A4988 подключение к ардуино.

Как подключить
A4988 подключение к ардуино - Сигналы управления STEP/DIR (PUL/DIR): Подключение драйвера шагового двигателя A4988 и DRV8825 с помощью модуля. Кратко про модуль подключения драйверов A4988 и DRV8825. Микросхема драйвера шагового двигателя A4988 Код для Arduino управления драйвером A4988 (DRV8825)с использованием библиотеки AccelStepper.

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

Шаговый двигатель 6 проводов подключение – Морской флот

Эта статья посвящена управлению шаговым двигателем NEMA-17 с помощью платы Arduino и драйвера двигателя A4988. Для управления направлением вращения шагового двигателя мы будем использовать потенциометр.

Модуль построен на чипе A4988. Несмотря на небольшой размер (всего 0,8″ × 0,6″), он обладает хорошими функциями.

Драйвер шагового двигателя A4988 имеет высокую выходную мощность (до 35 В и 2 А) и позволяет управлять одним биполярным шаговым двигателем с выходным током до 2 А на катушку, например, NEMA 17.

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

Драйвер предлагает 5 различных разрешений, а именно:

  • Полный шаг
  • 1/2 шага
  • 1/4 шага
  • 1/8 шаг 1/8 шаг
  • Шаг 1/16 Шаг 1/16

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

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

В шаговом двигателе 17HS1352-P4130, например, ротор поворачивается на 1,8° за один полный шаг. Это означает, что двигатель должен сделать 200 полных шагов, чтобы повернуть ротор на 360°.

Для одного полного шага обмотки двигателя получают серию сигналов от драйвера (как полный шаг «1», так и микрошаг «2», «4», «8», «16»).

736e51abf85c7982c78cdc949c85a76f.png

Информацию о том, как работают шаговые двигатели, см. в разделе Wiki — Шаговые двигатели.

КАК ПОДКЛЮЧИТЬ ШАГОВЫЙ ДВИГАТЕЛЬ

Как подключить шаговый двигатель с 4, 5, 6 и 8 контактами к драйверу?

как подключить шаговый двигатель

В предыдущих статьях мы обсуждали процесс выбора шагового двигателя (см. статью «Как выбрать шаговый двигатель»).

«Как выбрать шаговый двигатель») в зависимости от области применения.

) в зависимости от применения. В этой статье мы подробно рассмотрим подключение шагового двигателя.

Шаговые двигатели могут поставляться с различными вариантами подключения. Выбор схемы зависит от типа двигателя. Большинство распространенных шаговых двигателей имеют цепи с 4, 5, 6 или 8 проводами.

КАК ПОДКЛЮЧИТЬ ШАГОВЫЙ ДВИГАТЕЛЬ С 4 ВЫВОДАМИ

Если у вас есть шаговый двигатель, к которому подключены только четыре провода, это означает, что он имеет две обмотки, является биполярным двигателем и его можно использовать только с биполярным драйвером. Обратите внимание, что каждая фазная обмотка содержит пару проводов — используйте тестер (мультиметр) для идентификации каждого провода.

Найдите закороченные провода (те, которые проверяются) и подключите их к шаговому двигателю. Лучше всего подключить их все сразу, чтобы не повторять процесс снова и снова.

wiring.png

КАК ПОДКЛЮЧИТЬ УНИПОЛЯРНЫЙ ШАГОВЫЙ ДВИГАТЕЛЬ С 6 ВЫВОДАМИ

Как и шаговый двигатель с четырехполюсным подключением, униполярный 6-проводной двигатель имеет одну пару проводов для каждой обмотки. Однако он также имеет центральный провод для каждой обмотки, так что его можно использовать

как биполярный шаговый двигатель

а также униполярный шаговый двигатель.

content_img.png

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

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

Схема подключения 5-контактного шагового двигателя очень похожа на схему подключения 6-контактного. Основное отличие заключается в том, что центральные провода соединяются внутри в один кабель. Это гарантирует, что двигатель работает только в однополярной цепи.

content_img.png

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

КАК ПОДКЛЮЧИТЬ ШАГОВЫЙ ДВИГАТЕЛЬ С 8 ВЫВОДАМИ

Наконец, существуют шаговые двигатели, которые соединены 8 проводами. Чтобы понять, как подключить шаговый двигатель с 8 проводами, нужно обратиться к инструкциям выше; их схема почти такая же, как и схема с 6 проводами. Разница между ними заключается в том, что две фазы разделены на две отдельные обмотки. С помощью приведенной выше схемы вы можете подключить шаговый двигатель в однофазную цепь, а также иметь три различные комбинации для двухполярного подключения.

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

Драйвер шагового двигателя A4988. Распиновка, подключение к Ардуино

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

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

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

Как работает драйвер шагового двигателя A4988

Драйвер шагового двигателя A4988 имеет транслятор для облегчения управления шаговым двигателем. Когда импульсы подключены к контакту STEP, драйвер управляет тем, какую катушку подключить к источнику питания и как подключить к источнику питания.

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

Поскольку драйвер все определяет сам, нам нужно только послать необходимое количество импульсов на вывод STEP в соответствии с количеством шагов. Выход модуля DIR используется для определения направления вращения двигателя и может быть установлен как «1» или «0» в зависимости от желаемого направления.

Внутри драйвера находятся транзисторы MOSFET, которые позволяют драйверу подавать на катушку ток до 2 А.

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

Так, существуют полные шаги, 1/2, 1/4, 1/8 и 1/16 шага. Если мы используем этот режим, мы должны помнить, что в этом случае двигатель делает больше шагов за один оборот, и это занимает больше времени.

Для выбора микрошагового режима необходимо подать сигнал на клеммы MS1, MS2, MS3, соответствующий желаемому микрошагу, в соответствии со следующей таблицей:

Если двигатель должен постоянно работать в режиме полного шага, контакты MS1, MS2 и MS3 могут оставаться неподключенными.

Как подключить модуль A4988 к Arduino

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

Мы подключаем шаговый двигатель к выходам драйвера, а к выводам STEP и DIR подключаем цифровые выводы Arduino, которые мы хотим использовать для управления двигателем. Схема показана ниже, с использованием Arduino для логического питания и адаптера 12 В для питания двигателя.

Скетч

Этот драйвер прост в программировании. Нам не нужна библиотека для его использования, у нас есть только контакты DIR и STEP для управления двигателем. Мы устанавливаем вывод DIR в «1» или «0» в зависимости от направления вращения двигателя, а на вывод STEP подаем импульсы в зависимости от количества шагов двигателя.

Далее следует код, который вращает ротор двигателя с 200 шагами в одном направлении и после секундной паузы в другом направлении.

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

Подключение модуля драйверов A4988 и DRV8825 к Arduino.

Первым делом устанавливаем драйвер A4988 (DRV8825) в гнездо согласно распиновке

Сначала подключите драйвер A4988 (DRV8825) к разъему в соответствии с распиновкой, а затем подключите шаговый двигатель NEMA17. В этом примере я не буду использовать вывод EN, а подключу STEP к выводу 3 Arduino, а DIR — к выводу 2 Arduino. Осталось подключить блок питания, 5В к выводу 5В Arduino и 9В к источнику питания, в моем случае 12В, не забудьте подключить землю.

Схема подключения модуля драйверов A4988 и DRV8825 к Arduino.

Схема подключения модуля драйверов A4988 и DRV8825 к Arduino.

Вы должны правильно установить драйвер на модуль, в соответствии с маркировкой контактов драйвера и блока разъемов на модуле драйвера A4988 и DRV8825. В противном случае драйвер может выйти из строя.

Скетч вращения шагового двигателя NEMA 17, драйвер A4988, DRV8825.

Код можно найти в статьях о драйверах A4988 и DRV8825.

N EMA 17 код вращения шагового двигателя, A4988, DRV8825 драйвер без использования библиотеки .

Код вращения шагового двигателя NEMA 17, A4988, драйвер DRV8825 с использованием библиотеки AccelStepper .

Библиотеку AccelStepper можно скачать со страницы автора или в конце статьи в разделе «Загрузки».

Скетч начинается с определения выводов Arduino, к которым будут подключены выводы STEP и DIR драйвера A4988. Здесь мы также определяем stepsPerRevolution — количество шагов за один оборот. Установите это значение в соответствии со спецификацией 200-шагового двигателя (так как NEMA 17 делает 200 шагов за оборот).

Interfacing A4988 with stepper motor and ESP32

Для подключения платы ESP32 к шаговому двигателю и драйверу мы будем использовать все контакты драйвера, кроме контактов Enable и Microfailure Analysis Select.

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

A4988 Driver Module and stepper motor with ESP32 connection diagram

Схема подключения ESP32 к A4988 и шаговому двигателю.

Подключите выходные контакты драйвера к соответствующим контактам двигателя. Подключите вывод STEP и вывод DIR к подходящему выводу GPIO на плате ESP32. Мы использовали GPIO12 для подключения к DIR и GPIO14 для подключения к STEP. Поскольку мы хотим запустить наш степпер в полном режиме, мы оставим контакты MS1, MS2 и MS3 без изменений. Контакт RST подключается к SLP для включения драйвера. Кроме того, контакты VCC и GND подключены к контактам Vin и GND ESP32 соответственно. VMOT подключается к внешнему источнику питания в диапазоне 8-35 В. Мы используем внешний источник питания 12 В. Убедитесь, что контакты GND подключены к соответствующему общему заземлению.

Кроме того, мы можем подключить конденсатор (не менее 47uF) к контактам шагового двигателя с внешним источником питания, чтобы избежать проблем со скачками напряжения.

A4988 Driver Module and stepper motor with ESP32

Current Limit

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

A4988 Driver Module Potentiometer

Нам понадобится мультиметр. Нам понадобится потенциометр. Напряжение, измеренное в этой точке, называется Vref. Отрегулируйте потенциометр, поворачивая его, и значения для Vref будут меняться.

Для установки предельного тока используется следующая формула:

Предел тока = Vref x 2.5

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

Arduino Sketch Controlling NEMA 17 Stepper Motor with A9488 driver

Open your Arduino IDE and go to File > Новый. Откроется новый файл. Скопируйте следующий код в этот файл и сохраните его.

Этот код поможет нам протестировать шаговый двигатель с помощью выводов DIR и STEP драйвера A9488. Мы покажем вам, как вращать двигатель в обоих направлениях с разной скоростью.

How the Code Works?

Первым шагом является настройка GPIO пинов ESP32, которые мы подключили к контактам DIR и STEP драйвера. Как вы видите, мы использовали GPIO12 и GPIO14 для подключения к DIR и STEP соответственно. Однако вы также можете использовать любой другой подходящий вывод GPIO ESP32.

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

Внутри функции setup(), Serial.begin() используется для установления последовательного соединения между платой разработки со скоростью передачи 115200 бод. Мы будем использовать функцию pinMode() для конфигурирования цифровых выводов, подключенных к STEP и DIR, как выходных выводов.

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

Для управления направлением вращения двигателя мы используем функцию digitalWrite() и передаем пин DIR в качестве первого параметра, а состояние пина — в качестве второго параметра. Для перемещения двигателя по часовой стрелке на вывод DIR подается высокий сигнал. Для перемещения двигателя по часовой стрелке на вывод DIR подается сигнал низкого уровня. Кроме того, на последовательном дисплее отображается направление движения двигателя.

Для управления скоростью двигателя мы будем использовать цикл for до шагов на оборот и менять состояние пина STEP с HIGH на LOW с задержкой между ними. Чем быстрее состояние вывода STEP устанавливается на высокий уровень, тем быстрее будет вращаться двигатель. Увеличение/уменьшение задержки существенно изменяет частоту сигнала, что, в свою очередь, изменяет скорость вращения двигателя.

Demonstration

Make sure you choose the correct board and COM port before uploading your code to the board. Go to Tools > Board and select ESP32 Dev Module. Next, go to Tools > Выберите соответствующий порт, через который подключена ваша плата.

select esp32 board

Нажмите кнопку «Загрузить», чтобы загрузить код на доску. После загрузки кода на плату разработки нажмите кнопку ENABLE.

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

В IDE Arduino откройте последовательный монитор, и вы сможете увидеть состояние вращения двигателя.

A4988 with ESP32 and stepper motor demo 1

Последовательный монитор

Installing AccelStepper Library

Нам нужна библиотека AccelStepper, доступная в менеджере библиотек Arduino, чтобы управлять большим количеством шаговых двигателей и включать ускорение/замедление. Эта библиотека предоставляет нам полезные функции для установки максимальной скорости, ускорения и шагов на оборот для вращения двигателя в обоих направлениях.

To install the library, we will use the Arduino Library Manager. Open your Arduino IDE and go to Sketch > Include Libraries > Управление библиотекой. Введите «Accelstepper» в строке поиска и установите последнюю версию.

Installing AccelStepper library

В этом эскизе мы ждем окончания вращения вала и проверяем значение шага в цикле while, но мы можем делать и другие вещи, например, опрашивать концевые выключатели и датчики, измерять пройденное расстояние и т.д.

Компонент Требуется

  • Arduino UNO
  • Шаговый двигатель NEMA17
  • Модуль водителя кардиостимулятора A4988
  • Конденсатор 47 мкФ
  • Потенциометр

Работа Nema17 аналогична работе обычного шагового двигателя. Шаговый двигатель NEMA 17 имеет лицевую панель размером 1,7″ x 1,7″ и обычно имеет более высокий крутящий момент, чем более компактные версии, такие как NEMA 14. Этот двигатель имеет шесть проводов и номинальное напряжение 12 вольт. Он может работать при более низком напряжении, но крутящий момент будет ниже. Шаговые двигатели не вращаются, это шаговые двигатели, а двигатель NEMA17 имеет угол наклона 1,8 градуса. Схема подключения для NEMA17 показана ниже.

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

Количество шагов на оборот для NEMA17

Количество шагов на оборот для конкретного шагового двигателя рассчитывается на основе угла шага конкретного шагового двигателя. Поэтому в данном случае угол продольного наклона NEMA 17 составляет 1,8 градуса.

Шаги за оборот = 360 / Угол продольного наклона 360 / 1,8 = 200 шагов за оборот

Спецификация NEMA17

  • Номинальное напряжение: 12 В пост. тока
  • Угол продольного наклона: 1,8 градуса.
  • Количество фаз: 4
  • Длина двигателя: 1,54 дюйма.
  • 4-проводной, 8-дюймовый провод
  • 200 шагов на оборот, 1,8 градуса
  • Рабочая температура: о т-10 до 40 °C
  • Однополярный удерживающий момент: 22,2 унции на дюйм

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

Модуль водителя кардиостимулятора A4988

Блок привода шагового двигателя управляет работой шагового двигателя. Драйверы шаговых двигателей подают ток на шаговый двигатель через различные фазы.

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

С помощью этого блока драйвера двигателя Nema 17 мы можем управлять шаговым двигателем с помощью только двух контактов, STEP и DIRECTION. Контакт STEP используется для управления шагами, а контакт DIRECTION — для управления направлением движения двигателя. Модуль драйвера A4988 предлагает пять различных разрешений шага: Полный шаг, тактовый шаг, четвертной шаг, восьмой шаг и шестнадцатый шаг. Штырьки переключателя разрешения ((MS1, MS2 и MS3) позволяют выбирать различные разрешения шага. Таблица истинности для этих выводов показана ниже:

MS1 MS2 MS3
Низкий
Полный шаг Низкий
Полный шаг Низкий
Полный шаг Полный шаг Низкий
Полный шаг Полный шаг Полный шаг Высокий

1/16 шага (шестнадцатый шаг)

Технические данные A4988

Макс. Рабочее напряжение: 35 В

Мин. рабочее напряжение: 8 В

Макс. ток Ток на фазу: 2A

Микрошаговое разрешение: полный шаг, ½ шага, ¼ шага, 1/8 шага и 1/16 шага

Защита от обратной полярности: нет

Принципиальная электрическая схема

Размеры: 15,5 × 20,5 мм (0,6″ × 0,8″)

Схема управления шаговым двигателем Nema-17 с помощью Arduino показана на рисунке выше. Поскольку модуль A4988 имеет встроенный транслятор, нам нужно подключить к Arduino только контакты Step и Direction. Контакт Step используется для управления шагами, а контакт Direction — для управления направлением. Шаговый двигатель питается от трансформатора 12 В, а модуль A4988 — от Arduino. Потенциометр используется для управления направлением вращения двигателя.

Если вы поворачиваете потенциометр по часовой стрелке, шаговый двигатель вращается по часовой стрелке, а если вы поворачиваете потенциометр против часовой стрелки, он вращается против часовой стрелки. Конденсатор 47 мкФ защищает плату от скачков напряжения. Клеммы MS1, MS2 и MS3 остаются отключенными, что означает, что драйвер работает в режиме полного шага.

Оцените статью