DRV8825 Stepper Driver

Pololu, микросхема Texas Instruments · Pololu DRV8825 Stepper Motor Driver Carrier #2133, Rsense 0,100 Ом

Драйвер биполярного шагового двигателя с STEP/DIR, ограничением тока и выходом FAULT.

Автор: SLDV LAB

Опубликовано · Обновлено

СложностьСредне
Проекты с компонентом

О МОДУЛЕ

Что делает Pololu DRV8825 Stepper Motor Driver Carrier #2133, Rsense 0,100 Ом

DRV8825 управляет двумя обмотками с ограничением тока и принимает импульсы STEP/DIR. По сравнению с A4988 его режимы, время импульсов и настройка тока отличаются, даже если платы помещаются в похожую колодку.

Здесь рассматривается Pololu #2133 с Rsense 0,100 Ом. Только для этой платы Imax в амперах равен 2 × Vref в вольтах. Число нельзя переносить на произвольный модуль DRV8825. При полном шаге ток каждой обмотки составляет примерно 70% от Imax.

У этого модуля контакт на месте VDD платы A4988 является FAULT. В примере он используется только как вход диагностики Uno. Наличие защитного резистора у оригинального Pololu не означает, что любой клон допускает ту же замену без проверки. Микрошаг выбирается входами MODE0–MODE2, а не таблицей случайно похожего драйвера.

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

Для любой перекоммутации выключайте логическое и силовое питание и дожидайтесь разряда конденсатора. Извлечение двигателя из работающего драйвера может вывести плату из строя. На двухполярные выходы H-моста не ставят один обычный диод поперёк обмотки. Пример не обеспечивает аварийную остановку опасного механизма и не предназначен для нагруженной вертикальной оси.

DRV8825, Pololu #2133 · Rsense 0,100 Ом. Фото: Pololu; https://www.pololu.com/product/2133/pictures. Лицензия на повторное использование не установлена. Удалён фон; объект равномерно масштабирован, детали и маркировка сохранены.

Схема соединений SLDV LAB показывает функции контактов для примера карточки; порядок строк не задаёт физическое расположение выводов.

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

Референс платы
Pololu DRV8825 Stepper Motor Driver Carrier #2133, Rsense 0,100 Ом
Питание силовой части
8.2–45 В
Максимальное деление полного шага
1/32
Rsense референса
0.1 Ом
Выход FAULT
Да
Нагрузка
Двухфазный биполярный шаговый двигатель
Питание модуля
Референс Pololu #2133: VMOT 8,2–45 В, входы совместимы с логикой 3,3/5 В; отдельный VDD не требуется. В стенде VMOT 12 В и управляющие сигналы Uno R3 5 В.

ПРАКТИКА

Подключение

Контакт модуляКонтакт платыНазначение
STEPD2 Arduino Uno R3В программе HIGH 10 мкс, что больше минимальных 1,9 мкс DRV8825.
DIRD3 Arduino Uno R3Направление устанавливается до STEP.
ENBLD4 Uno и 10 кОм к 5VАктивен LOW; HIGH отключает выходы.
RESET, SLEEP5V Uno R3Оба должны быть HIGH. У DRV8825 по умолчанию они подтянуты вниз.
MODE0, MODE1, MODE2GNDПолный шаг.
FAULTD5 Uno R3На Pololu #2133 есть подтяжка через 10 кОм к SLEEP и последовательный защитный резистор. Это выход ошибки, не питание VDD.
VMOT+12 В внешнего источникаЭлектролит у платы: не менее 47 мкФ; в этом стенде 100 мкФ 25 В с верной полярностью.
GNDМинус источника и GND Uno R3Оба контакта земли подключить; силовые 12 В не подавать на 5V.
A1, A2Первая пара выводов двигателяПары определяют омметром при выключенном питании.
B1, B2Вторая пара выводов двигателяНе подключать и не извлекать обмотки при поданном питании.

Подходит для Arduino. Выберите контакты по документации своей платы.

ВАШ ПРОЕКТ · ВАШ ДАТЧИК

Интегрируйте модуль с ChatGPT

Скопируйте запрос в ChatGPT. Укажите свою плату и среду разработки — получите подключение и код для своего проекта.

Помоги интегрировать DRV8825 Stepper Driver. Сначала уточни изготовителя и ревизию платы, значения обоих Rsense, паспортный ток двигателя, напряжение источника, контроллер и нагрузку. Сверь обозначения контактов и рассчитай ток по схеме конкретной платы. Не используй универсальное Vref и не подменяй фазный ток показанием источника. Подготовь развязку питания, схему, зависимости, короткий пример с отключением мостов, диагностику и процедуру безопасной проверки. Отдельно обсуди охлаждение и невозможность контролировать реальное положение только счётом STEP.

Библиотеки

Установите библиотеку для своей среды и откройте пример из её документации.

Что именно прописать

Контроллер и API
Arduino Uno R3; Arduino AVR Boards 1.8.6

Пример для Uno R3 ATmega328P, не универсальная распиновка ESP32.

Двигатель для примера
Adafruit #324, 12 В, 0,35 А/фазу

Свободный вал без нагрузки; другой двигатель требует нового расчёта.

Rsense
0,100 Ом

Оба резистора оригинального Pololu #2133; для иной платы нужен её расчёт.

Лимит короткой пробы
Imax = 0,30 А; Vref = 0,150 В

Только при Rsense 0,100 Ом: Vref = Imax / 2. Предел двигателя стенда 0,35 А/фазу.

Микрошаг
MODE0=LOW; MODE1=LOW; MODE2=LOW

Полный шаг.

Диагностика
FAULT=D5, активный LOW

Скетч прерывает пробу при LOW; причина выясняется после безопасного отключения.

Управление
STEP=D2; DIR=D3; ENABLE=D4, активный LOW

Подтяжка ENABLE к 5V сохраняет отключение при сбросе Uno.

Проба
200 импульсов; HIGH 10 мкс; LOW не менее 10 мс

Последовательность запускается один раз после t; после неё силовые мосты отключаются.

Подготовка ограничителя тока и питания

text
1. Отключите все источники. Проверьте ревизию платы, Rsense и пары обмоток омметром; мотор пока не подключайте.
2. Соберите питание, общий GND и конденсатор по pins. Выходы отключены через ENABLE/ENN = HIGH. Загрузите скетч в Uno.
3. Подсоедините щупы вольтметра к GND и указанной изготовителем точке Vref при выключенном питании, исключив замыкание соседних контактов.
4. Подайте питание и настройте вычисленное Vref по инструкции именно этой платы. Используйте изолированный инструмент; не касайтесь радиатора и выводов.
5. Отключите всё питание, дождитесь разряда конденсатора и только затем подключите обмотки двигателя. Не меняйте разъёмы при поданном питании.
6. Включите логику, затем силовое питание. Убедитесь, что вал свободен, а источник можно немедленно отключить.
7. Отправьте t в Serial Monitor 115200. При дрожании, дыме, запахе или сильном нагреве выключите питание; не увеличивайте ток вслепую.

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

Arduino Uno R3: короткая серия STEP после t

cpp
const uint8_t STEP_PIN = 2, DIR_PIN = 3, ENABLE_PIN = 4;
const uint8_t FAULT_PIN = 5;
void setup() {
  pinMode(FAULT_PIN, INPUT);
  digitalWrite(ENABLE_PIN, HIGH);
  pinMode(ENABLE_PIN, OUTPUT);
  digitalWrite(STEP_PIN, LOW);
  pinMode(STEP_PIN, OUTPUT);
  digitalWrite(DIR_PIN, LOW);
  pinMode(DIR_PIN, OUTPUT);
  Serial.begin(115200);
  Serial.println("Check current limit and remove load, then send t.");
}
void loop() {
  if (!Serial.available() || Serial.read() != 't') return;
  digitalWrite(DIR_PIN, LOW);
  digitalWrite(ENABLE_PIN, LOW);
  delay(10);
  for (uint16_t n = 0; n < 200; ++n) {
    if (digitalRead(FAULT_PIN) == LOW) {
      digitalWrite(ENABLE_PIN, HIGH);
      Serial.println("FAULT: power off and inspect driver.");
      return;
    }
    digitalWrite(STEP_PIN, HIGH);
    delayMicroseconds(10);
    digitalWrite(STEP_PIN, LOW);
    delay(10);
  }
  digitalWrite(ENABLE_PIN, HIGH);
  Serial.println("200 commanded pulses; bridge disabled.");
}

Полный скетч; базовый API Arduino AVR Boards 1.8.6 сверено, компиляция и аппаратное испытание не выполнялись. Число импульсов является командой и не доказывает фактический угол. Отключение мостов после пробы снимает удерживающий момент; используйте только ненагруженный вал.

Проекты с этим компонентом

Все проекты

Связанные проекты пока не опубликованы.

Связанные материалы и компоненты