Перейти к содержанию

Интерфейс STEP/DIR

Драйвер шагового двигателя вроде A4988 или DRV8825 сам формирует токи обмоток. Микроконтроллеру остаётся сказать, когда шагнуть и куда: импульс на входе STEP и уровень на входе DIR. Простота обманчива — у этих двух сигналов есть минимальные длительности и времена установки.

Обновлено Редакция GAW

Интерфейс STEP/DIR — способ управления драйвером шагового двигателя двумя цифровыми линиями. Каждый фронт на входе STEP (переход из низкого уровня в высокий) продвигает внутренний индексатор драйвера на одно состояние — полный шаг или микрошаг, а уровень на входе DIR задаёт направление. Токи обмоток драйвер формирует сам, в том числе ограничивая их ШИМ-регулятором (Allegro A4988; TI DRV8825, разд. 8.3).

Тайминги

ПараметрA4988DRV8825
Минимальная длительность высокого уровня STEP1 мкс1,9 мкс
Минимальная длительность низкого уровня STEP1 мкс1,9 мкс
Установка DIR и режима до фронта STEP200 нс650 нс
Удержание после фронта STEP200 нс650 нс
Наибольшая частота STEPне указана250 кГц
Дробление шагадо 1/16до 1/32

Источники — рис. 1 и табл. 1 даташита Allegro 4988-DS Rev. 8 и табл. 7.6 TI SLVSA73F. По длительностям уровней предел A4988 — около 500 кГц (период не меньше 2 мкс), у DRV8825 по длительностям получается 263 кГц, но паспортный предел — 250 кГц (наш расчёт).

Частота и скорость

Импульсов на оборот = шаги двигателя × дробление шага. Двигатель с углом шага 1,8° делает 200 шагов на оборот; в режиме 1/16 это 3200 импульсов на оборот, а 5 об/с требуют 16 кГц на входе STEP (наш расчёт). Как выбирать скорость и режим под двигатель — в статье «Шаговые двигатели».

Особенности

  • Смена DIR и режима дробления вступает в силу только со следующим фронтом STEP (A4988).
  • Входы DRV8825 подтянуты к земле резисторами 100 кОм, у A4988 подтяжки на MS1 и MS3 — 100 кОм, на MS2 — 50 кОм: неподключённый вход — это логический ноль.
  • После выхода DRV8825 из режима сна перед первым импульсом STEP надо выждать: время tWAKE в табл. 7.6 — 1,7 мс (в тексте разд. 8.3.6 TI пишет «около 1 мс», ориентироваться стоит на таблицу).

Не путать

С управлением обмотками напрямую через ключи, когда последовательность фаз формирует сам микроконтроллер: при STEP/DIR её формирует индексатор драйвера, а микроконтроллер только считает шаги (наш комментарий).

Частые вопросы

Какой длительности должен быть импульс STEP?

Не меньше значения из даташита: у A4988 — 1 мкс высокого и 1 мкс низкого уровня (Allegro, рис. 1), у DRV8825 — по 1,9 мкс (TI, табл. 7.6). У DRV8825 частота импульсов ограничена ещё и сверху — 250 кГц. Короткий импульс от быстрого микроконтроллера драйвер может пропустить.

Когда менять сигнал DIR?

Заранее перед фронтом STEP и не сразу после него: время установки и удержания — 200 нс у A4988 и 650 нс у DRV8825. Сама смена направления вступает в силу только со следующим фронтом STEP (Allegro A4988).

Сколько импульсов STEP нужно на оборот?

Число шагов двигателя на оборот, умноженное на дробление шага. У двигателя 200 шагов на оборот в режиме 1/16 это 3200 импульсов; при 5 об/с — 16 кГц (наш расчёт). Это далеко от предела DRV8825 в 250 кГц, но на скорость влияет ещё момент двигателя.

Источники

  1. Allegro MicroSystems. A4988 DMOS Microstepping Driver with Translator and Overcurrent Protection, 4988-DS Rev. 8 (5 April 2022) — рис. 1: STEP — минимум 1 мкс высокий и 1 мкс низкий уровень; установка и удержание MS1–MS3, RESET, DIR относительно STEP — 200 нс; табл. 1: MS1–MS3 задают шаг от полного до 1/16; подтяжки MS1, MS3 100 кОм, MS2 50 кОм; переход STEP из низкого в высокий продвигает транслятор на один шаг; смена DIR и шага вступает в силу со следующим фронтом STEP
  2. Texas Instruments. DRV8825 Stepper Motor Controller IC (SLVSA73F, revised July 2014) — табл. 7.6: частота STEP до 250 кГц, импульс высокого и низкого уровня не меньше 1,9 мкс, установка и удержание команды относительно фронта STEP — 650 нс, nENBL до STEP — 650 нс; разд. 8.3: простой интерфейс STEP/DIR, индексатор до 1/32 шага, на каждом фронте STEP — следующее состояние таблицы; DIR низкий — последовательность в обратном порядке; входы с подтяжкой 100 кОм к земле; tWAKE — от выхода из сна до приёма STEP 1,7 мс (в тексте разд. 8.3.6 — «около 1 мс»)

Нашли ошибку?