Шаговый двигатель nema 17 схема

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

  • Описание товара

    Драйвер шагового двигателя A4988 — простой и доступный способ управления шаговыми двигателями, может использоваться в маломощных станках ЧПУ, 3D принтерах и других устройствах с применением шаговых двигателей.
    Параметры драйвера:

    • Напряжения питания шаговых двигателей: 8. 35 вольт постоянного тока
    • Дробление шага: в 1, 1/2, 1/4, 1/8, 1/16 раз
    • Протокол управления: STEP/DIR
    • Напряжение питания логики микросхемы: 3. 5.5 вольт постоянного тока
    • Защита от
      • перегрева
      • перегрузки по току
      • пониженного напряжения
      • короткого замыкания на землю
      • короткого замыкания обмоток двигателя
    • Максимальный ток на фазу: до 1 ампер без радиатора, до 2 ампер с радиатором
    • Интеллектуальное управление режимом затухания тока
    • Габариты модуля: 20*15*10 мм
    • Габариты радиатора: 9*5*9 мм

    В основе драйвера шагового двигателя — специализированная микросхема А4988, которая включает в себя транслятор интерфеса STEP/DIR , калькулятор микрошага, схему огрнаичения тока, два Н-моста из полевых транзисторов в защитными диодами и драйверы для них.

    Диаграма А4988:

    Рекомендуемая даташитом схема подключения микросхемы А4988:

    Реальная принципиальная схема драйвера А4988:

    Расположение выводов:

    Подключение драйвера (на примере использования ШД NEMA17 и Arduino Uno в качестве управляющего микроконтроллера):

    Чтобы использовать драйвер необходимо выполнить следующие действия:

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

    Подключение шагового двигателя производится напрямую к выводом драйвера 1A-1B и 2A-2B. Стоит отметить, что драйвер предназначен для подключения биполярных шаговых двигателей, имеющих две обмотки. Но этот драйвер также можно использовать и с униполярными двигателями. Как подключить униполярные двигатели к биполярному шаговому двигателю читайте в статье на нашем сайте.

    2. Подать питание.

    Драйвер требует двойного питания: 3-5 вольт для работы логической части микросхемы (выводы Vdd и GND) и 8-35 вольт (в зависимости от используемого шагового двигателя) для силовой части (выводы Vmot и GND). На примере выше питание логической части осуществляется от платы Arduino Uno и составляет 5 вольт. Питание силовой части рекомендуется осуществлять от отдельного блока питания. Кроме того, рекомендуется устанавливать электролитический конденсатор в цепи питания силовой части, емкостью не менее 470 микрафарад и рабочим напряжением выше напряжения питания силовой части.

    3. Установить режим микрошага.

    Современные шаговые двигатели позволяют управлять углом поворота оси с достаточно большой точностью. Например, шаговый двигатель типоразмера NEMA17 имеет показатель в 200 шагов на оборот вала двигателя, что соответствует минимальному углу 1.8 градуса. Для некоторых задач такой точности может оказаться недостаточно. Более того, сейчас ещё можно встретить устаревшие шаговые двигатели (как правило униполярные, применявшиеся в матричных принтерах), которые имеют всего 48 шагов на оборот (7.5 градусов на шаг). К тому же шаговый двигатель между этими фиксированными положениями перемещается рывками. Для увеличения точности позиционирования и уменьшения рывков при перемещении используют функцию микрошага — разбиение одного шага на несколько частей. Драйвет А4988 способен делить шаги двигателя в 2, 4, 8 или 16 раз, что позволяет получить до 16 раз более точное позиционирование угла поворота (0.1125 градуса при делении на 16) и сгладить рывки перемещения. Для установки микрошага используются выводы MS1-3. Эти выводы подтянуты к «земле» встроенными в драйвер резисторами и по умолчанию принимают значение логического нуля. Для активации дробления шага необходимо подключить выводы MS1-3 к положительному полюсу питания логической части (3-5 вольт). Для вычисления величины деления микрошага используется следующая таблица:

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

    Более подробные осциллограммы для каждого режима дробления шага приведены на страницах 14-16 даташита на микросхему А4988.

    4. Установить конфигурацию работы драйвера.

    Кроме входов MS1-3 драйвер А4988 имеет три входа конфигурации, которые управляют питанием драйвера:

    • SLEEP — подача низкого логического уровня переводит микросхему драйвера в спящий режим, подача высокого логического уровня выводит драйвер из спящего режима. Но на самом деле подача высокого логического уровня не нужна,так-как вывод SLEEP подтянут к положительному полюсу логической части питания драйвера через внутренний резистор.
    • RESET — подача низкого логического уровня сбрасывает логику микросхемы (транслятор) в предопределенное состояние. Также, пока на выводе RESET присутствует логическая единица драйвер игнорирует все входящщие сигналы управления. Зачастую вход RESET не используют для сброса транслятора и соединяют его с выводом SLEEP на котором присутствует логическая 1, что и изображено на вышепреведенной схеме подключения.
    • ENABLE — вход включения драйвера, активируется логическим 0 (присутствует по умолчанию), логическая 1 запрещает работу драйвера. Данный вывод можно не использовать, так как встроенный подтягивающий резистор всегда разрешает работу драйвера, тем не менее в ЧПУ станках и 3D принтерах данный вывод активно используется для разблокировки шаговых двигателей для ручного перемещения без обесточивания всего станка, либо для снижения энергопотребления.

    5. Настроить ограничение силы тока шаговых двигателей.

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

    Читать еще:  Sqr472 что за двигатель

    Правильно установить силу тока нам поможет даташит, который предлагает формулу для расчета тока: ITripMAX = Vref / ( 8 * Rs), где Vref — напряжение на входе 17 микросхемы драйвера, Rs — номинал резисторов R7 и R8 (см. принципиальную схему драйвера), которые могут иметь номинал 0,1 или 0,05 Ом. Необходимую силу тока можно получить из даташита на шаговый двигатель, номинал сопротивления Rs также известен, поэтому формула приобретает вид Vref = ITripMAX * 8 * Rs

    Для примера я приведу расчет опорного напряжения для шагового двигателя NEMA 17 OK42STH33-1334A, который имеет номинальный ток 1.33A. Сопротивления Rs в моем случае имеют номинал 0,1 Ом, поэтому опорное напряжение равно 1,33*0,1*8= 1,064 вольт. Но в таком случае шаговый двигатель будет работать не пределе своих возможностей, поэтому рекомендуется ограничить ток 70% от максимального, а это значит, что полученное опорное напряжение необходимо умножить на 0.7, и в итоге я получаю 1,064*0,7 = 0,7448 вольт.

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

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

    6. Подать управляющие сигналы.

    Управление мотором осуществляется по протоколу STEP/DIR, сигналы которого подаются на одноименные выводы драйвера.

    • DIR (direction) — задает направление вращения шагового двигателя. Направление вращения зависит не только от значения на входе DIR, но и от полярности подключения обмоток шагового двигателя. Если шаговый двигатель вращается не в ту сторону, то можно изменить значение на входе DIR, либо поменять местами выводы одной из обмоток шагового двигателя.
    • STEP — импульс шага, представляет собой прямоугольные импульсы. Один импульс шага поварачивает вал шагового двигателя на определенный угол, например, для двигателей типоразмера Nema17 на 1.8 градусов при отключенном дроблении шага. При включенном дроблении шага угол поворота на один шаг уменьшается пропорционально значению дробления шага.

    Стоит отметить, что напряжение импульсов STEP/DIR не должно превышать 5,5 вольт. Источниками управляющих импульсов могут служить как микроконтроллеры, так и простые генераторы прямоугольных импульсов, например, мультивибраторы.

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

    Управление шаговым двигателем NEMA 17 с помощью Arduino и драйвера DRV8825

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

    Рассматриваемый в данной статье шаговый двигатель NEMA 17 имеет шаг величиной 1.8°, что означает что он совершает 200 шагов за один оборот 360°. Изменяя подаваемое на шаговый двигатель напряжение мы легко можем управлять скоростью его вращения. Шаговый двигатель может функционировать в различных режимах: полного шага, половины шага, 1/4 шага. Чтобы лучше понять материал данной статьи целесообразно посмотреть статью об управлении шаговым двигателем 28-BYJ48 с помощью Arduino и потенциометра. Однако шаговый двигатель 28-BYJ48 имеет значительно меньший крутящий момент, чем более мощные двигатели такие как, например, NEMA 14, NEMA17.

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

    Необходимые компоненты

    1. Плата Arduino Uno (купить на AliExpress).
    2. Шаговый двигатель NEMA 17 (купить на AliExpress).
    3. DRV8825 Stepper Driver Module (модуль драйвера шагового двигателя) (купить на AliExpress).
    4. Конденсатор 47 мкФ (купить на AliExpress).
    5. Потенциометр (купить на AliExpress).

    Шаговый двигатель NEMA17

    Принцип действия шагового двигателя Nema17 аналогичен работе других шаговых двигателей. Более подробно о принципах работы шаговых двигателей можно прочитать в статье про подключение шагового двигателя к микроконтроллеру AVR.

    Шаговый двигатель NEMA 17 имеет плиту размером 1.7 x 1.7 дюйма и он имеет больший крутящий момент по сравнению с другими аналогичными шаговыми двигателями меньшего размера, например, NEMA 14. Данный двигатель имеет 6 подводящих проводов и работает от напряжения 12 В. Он может работать и от напряжения меньшей величины, однако при этом соответствующим образом будет уменьшаться и его крутящий момент.

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

    Как вы можете видеть из представленного рисунка, шаговый двигатель NEMA17 имеет униполярное расположение 6 проводов. Эти провода подсоединены к двум раздельным обмоткам. Черный, желтый и зеленый провода подключены к первой обмотке, а красный, белый, и синий провода – к другой обмотке. В обычном режиме центральные провода обмоток (черный и белый) оставляют неподключенными.

    Читать еще:  Что такое двигатель дэт

    Число шагов за оборот для двигателя NEMA17

    Число шагов за полный оборот (Steps per Revolution) для каждого определенного шагового двигателя рассчитывается с помощью угла, на который поворачивается шаговый двигатель за один шаг (step angle). Для двигателя NEMA17 этот шаг равен 1.8 градуса, соответственно, получаем:

    Steps per Revolution = 360/ step angle
    360/1.8 = 200 Steps Per Revolution

    Технические характеристики двигателя Nema 17

    • рабочее напряжение: 12V DC (12 В постоянного тока);
    • угол за один шаг (Step Angle): 1.8 градуса;
    • 200 шагов за один полный оборот;
    • число фаз: 4;
    • длина двигателя: 1.54 дюйма;
    • диапазон рабочих температур: от -10 до 40 °C;
    • удерживающий крутящий момент: 22.2 oz-in.

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

    DRV8825 – модуль драйвера шагового двигателя Nema 17

    Модуль драйвера шагового двигателя управляет работой шагового двигателя, подавая на него различные фазы питания в необходимые моменты времени.

    DRV8825 представляет собой модуль драйвера двигателя, похожий на модуль A4988. Он используется для управления биполярными (двухполюсными) шаговыми двигателями. Модуль DRV8825 имеет встроенный транслятор (преобразователь), что позволяет ему управлять и скоростью, и направлением вращения шаговых двигателей таких как NEMA 17 с использованием только двух контактов — STEP и DIR. Контакт STEP используется для управления шагами, а контакт DIR – для управления направлением вращения.

    Драйвер двигателя DRV8825 может управлять работой шагового двигателя в 6 различных режимах: полного шага, половины шага, четверти шага, 1/8 шага, 1/16 шага и 1/32 шага. Вы можете изменить разрешающую способность шага используя контакты для управления микро шагами (M0, M1 и M2). Устанавливая соответствующие логические уровни на этих контактах мы можем устанавливать одно из шести разрешений шага. Таблица значений данных контактов для установки различных разрешений шага выглядит следующим образом:

    Технические характеристики модуль драйвера шагового двигателя DRV8825:

    • максимальное рабочее напряжение: 45 V;
    • минимальное рабочее напряжение: 8.2 V;
    • максимальный ток на одну фазу: 2.5 A;
    • размеры печатной платы модуля: 15 mm x 20 mm.
    • шесть разрешений шага: полный шаг, ½ шага, ¼ шага, 1/8 шага, 1/16 шага и 1/32 шага;
    • регулируемый с помощью потенциометра выходной ток;
    • режим автоматического обнаружения уменьшения тока;
    • схема автоматического отключения при перегреве;
    • блокировка при пониженном напряжении;
    • автоматическое отключение при превышении уровня тока.

    Различия между драйверами двигателя DRV8825 и A4988

    Оба этих драйвера двигателя предназначены для управления шаговым двигателем Nema 17, имеют похожую распиновку и области применения, но они отличаются в количестве микрошагов, рабочем напряжении и т.д. Ниже приведены следующие ключевые отличия этих модулей драйвера двигателя:

    • модуль DRV8825 поддерживает 6 режимов шага, а модуль A4988 – только 5. Большее число этих режимов означает более равномерное и тихое функционирование шагового двигателя;
    • минимальная длительность шага для DRV8825 составляет 1.9 мкс, а для A4988 – 1 мкс;
    • без дополнительного охлаждения DRV8825 обеспечивает немного больший ток чем A4988;
    • местоположение потенциометра, регулирующего лимит тока, в обоих модулях различно;
    • DRV8825 может быть использован при более высоком напряжении питания;
    • на контакте спящего режима (SLEEP pin) в DRV8825 по умолчанию не установлен режим с подтягивающим резистором как это сделано в A4988;
    • вместо контакта напряжения питания DRV8825 имеет выходной контакт.

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

    Схема управления шаговым двигателем NEMA 17 с помощью Arduino и драйвера DRV8825 представлена на следующем рисунке.

    Как видно из представленной схемы, шаговый двигатель запитывается от напряжения 12V, а модуль DRV8825 запитывается от платы Arduino. Контакты RST и SLEEP модуля подключены к контакту 5V платы Arduino чтобы модуль драйвера был готов к работе/доступен (enabled). Потенциометр подключен к контакту A0 платы Arduino – он используется для управления направлением вращения двигателя. Если вы будете поворачивать потенциометр по часовой стрелке, то и шаговый двигатель будет вращаться по часовой стрелке, а если вы будете поворачивать потенциометр против часовой стрелки, то и шаговый двигатель будет вращаться против часовой стрелки. Конденсатор 47 мкФ используется для защиты платы от выбросов напряжения. Контакты M0, M1 и M2 модуля драйвера двигателя оставлены в свободном состоянии, что означает что драйвер двигателя будет функционировать в режиме полного шага.

    Внешний вид собранной конструкции проекта показан на следующем рисунке.

    Таблица соединений платы Arduino, шагового двигателя Nema 17 и модуля драйвера двигателя DRV8825 выглядит следующим образом.

    Контакт DRV8825 Соединение
    VMOT +ve Of Battery
    GND -ve of Battery
    RST 5V of Arduino
    SLP 5V of Arduino
    GND GND of Arduino
    STP Pin 3 of Arduino
    DIR Pin 2 of Arduino
    B2, B1, A1, A2 шаговый двигатель

    Соблюдайте полярность подключаемого источника питания.

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

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

    Объяснение программы для Arduino

    Полный код программы и видео с демонстрацией работы схемы приведены в конце статьи, здесь же мы кратко рассмотрим основные фрагменты кода.

    Первым делом скачайте библиотеку для управления шаговым двигателем по следующей ссылке и добавьте ее в Arduino IDE. После этого подключите заголовочный файл этой библиотеки в программе и укажите число шагов для шагового двигателя NEMA 17 – оно равно 200.

    Читать еще:  Что сделать если двигатель расходует масло

    L298N подключение к Ардуино

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

    Конечно, шаговые двигатели (ШД) используются не только в ЧПУ и 3D-принтерах, им есть масса и других применений. Например, вкупе с популярным «конструктором для взрослых», Arduino, на базе которого можно создать всё что угодно. Однако, связка «Ардуино – шаговый двигатель» требует дополнительный элемент – драйвер.

    Из-за того, что двигатель требует повышенного напряжения и силы тока, непосредственное подключение его к микроконтроллеру невозможно, напряжения логического нуля в +5В и силы тока в 40 мА не хватит для работы любого шагового двигателя. Функцию усилителя/переключателя берет на себя драйвер.

    О нём мы и поговорим подробнее ниже.

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

    Модуль собирается на основе одноименной микросхемы (L298N).

    К L298N можно подключить двигатели, питающиеся напряжением от 5 до 35 вольт. Управление может быть реализовано в активном или пассивном режимах.

    1. Активный – доступно не просто включение и отключение вращения мотора, но и управление его скоростью.

    2. Пассивный – контроллер будет понимать только логику «включить/выключить двигатель». Управление уровнем выходного напряжения будет недоступно.

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

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

    Рис. 1. Джамперы и клеммы на плате

    К клеммникам 1 и 2 подключаются двигатели, логика подключения зависит от моделей двигателей и логики их работы.

    Блок клемм 3 отвечает за подключение питания двигателей. Первый контакт — +12. На него подаётся питание от 5 до 12 вольт, если джампер 3 одет, и от 12 до 35 воль, если джампер 3 снят.

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

    Если джампер 3 снят, то контакт +5В требуется запитать отдельно.

    Управляющие сигналы от Ардуино или с другого микроконтроллера должны подаваться на контакты IN1-IN4, ENA, ENB. В зависимости от логических уровней и конфигурации джамперов 1,2 будет подаваться питание на двигатели/двигатель.

    Джамперы 1 и 2 отвечают за переключение между активным и пассивным режимами работы драйвера. Если джампер одет, то реализуется логика «пассивного» управления.

    Теперь для наглядности рассмотрим пару реальных схем подключения.

    Управление двумя двигателями постоянного тока

    Схема соединения будет выглядеть следующим образом.

    Рис. 2. Схема соединения

    Напряжение питания двигателей ниже 12 вольт, значит джампер 3 установлен, джамперы 1 и 2 на контактах ENA и ENB сняты.

    Стоит особое внимание уделить пинам на Ардуино с ШИМ-модуляцией (рядом с цифровым значением есть специальный символ «

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

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

    Простая схема управления шаговым двигателем

    Analog Devices AD9833

    Шаговые двигатели находят применение во множестве потребительских, промышленных и военных приложений. В некоторых системах необходим точный контроль скорости. Контроллеры шаговых двигателей могут быть простыми (Рисунок 1), но на тактовом входе им требуются прямоугольные импульсы переменной частоты. Для решения этой задачи идеально подходит микросхема прямого цифрового синтеза AD9833 с интегрированным 10-разрядным ЦАП, поскольку для установки частоты импульсов ей не нужны никакие внешние компоненты (Рисунок 2). Устройство содержит 28-битный аккумулятор, позволяющий формировать сигналы с разрешением 0.1 Гц при частоте синхроимпульсов 25 МГц. Кроме того, схема может легко остановить двигатель, если программно задать выходную частоту 0 Гц.

    Рисунок 1. Для контроллера шагового двигателя требуется всего несколько логических
    элементов.
    Рисунок 2. Микросхема прямого цифрового синтеза AD9833 формирует частоты
    с разрешением 0.1 Гц.

    Полная схема показана на Рисунке 3. Старший значащий бит (MSB) внутреннего ЦАП переключает выход VOUT микросхемы AD9833 между уровнями 0 В и VDD, генерируя прямоугольные импульсы, которые служат входными синхросигналами для контроллера шагового двигателя. Частота импульсов легко устанавливается записью через трехпроводный интерфейс соответствующих кодов в регистры управления частотой. Запись в регистры нуля останавливает генератор, и, таким образом, останавливает мотор. Если ЦАП не используется, можно отключить его питание, записав бит в управляющий регистр. В режиме пониженной мощности AD9833 потребляет от источника питания всего 2 мА. Еще больше снизить ток потребления можно, уменьшив тактовую частоту. AD9833 выпускается в крошечном 10-выводном корпусе, поэтому полную систему управления можно собрать на очень небольшой плате.

    Рисунок 3. Полный контроллер шагового двигателя основан на микросхеме
    прямого цифрового синтеза, генерирующей переменные частоты
    для схемы на Рисунке 1.

    Материалы по теме

    1. Datasheet Analog Devices AD9833
    2. Datasheet Texas Instruments SN74HC86
    3. Datasheet Texas Instruments SN74LS76A

    Перевод: AlexAAN по заказу РадиоЛоцман

  • Ссылка на основную публикацию
    Adblock
    detector