Интерфейс STEP/DIR
Драйвер шагового двигателя вроде A4988 или DRV8825 сам формирует токи обмоток. Микроконтроллеру остаётся сказать, когда шагнуть и куда: импульс на входе STEP и уровень на входе DIR. Простота обманчива — у этих двух сигналов есть минимальные длительности и времена установки.
Обновлено Редакция GAW
Интерфейс STEP/DIR — способ управления драйвером шагового двигателя двумя цифровыми линиями. Каждый фронт на входе STEP (переход из низкого уровня в высокий) продвигает внутренний индексатор драйвера на одно состояние — полный шаг или микрошаг, а уровень на входе DIR задаёт направление. Токи обмоток драйвер формирует сам, в том числе ограничивая их ШИМ-регулятором (Allegro A4988; TI DRV8825, разд. 8.3).
Тайминги
| Параметр | A4988 | DRV8825 |
|---|---|---|
| Минимальная длительность высокого уровня STEP | 1 мкс | 1,9 мкс |
| Минимальная длительность низкого уровня STEP | 1 мкс | 1,9 мкс |
| Установка DIR и режима до фронта STEP | 200 нс | 650 нс |
| Удержание после фронта STEP | 200 нс | 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 кГц, но на скорость влияет ещё момент двигателя.
Источники
- 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
- 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 мс»)
Нашли ошибку?
Смотрите также
- A4988 и DRV8825Драйверы шагового двигателя: микрошаг, ток через VREF, выводы, модули
- МикрошагСтупенчатое синусное управление током обмоток: режимы, драйверы
- Шаговые двигателиТипы и обмотки, шаг и микрошаг, чоппер, драйвер A4988
- Угол шага шагового двигателяНа сколько градусов поворачивается вал за шаг
- Ограничение тока ШИМПрерывание тока обмотки по порогу на резисторе-датчике: расчёт, примеры