Цитата(Я.К. @ Jan 25 2016, 12:56)

Есть задача: управлять шаговиком через драйвер со STEP/DIR-интерфейсом.
Крайне полезно уметь плавное ускорение и замедление (с заданным ограничением по ускорению и замедлению).
Имею спросить: нет ли где готовой реализации модуля управления шаговиком с плавным ускорением и замедлением?
P.S. Устройство — Cyclone V.
форма ускорения, замедления и работы шагового двигателя с постоянным ускорением может быть трапеция - наклонные стороны (нарастание ускорение и замедление, горизонтальная полочка трапеции работа шагового двигателя с постоянным ускорением), т.е. функция прямой с определенным углом наклоном (рекомендуют в некоторых источниках брать угол 45 градусов).
Берете несколько точек на прямой и строите пропорциональную зависимость для ширины импульса (STEP, т.е. количество импульсов в периоде для модуля PWM), зная минимальный шаг и количество микрошагов за шаг(16/32/64 и т.д.).
в некоторых источниках пишут, что лучше строить ускорение/замедление не по наклонным прямым трапеции, а когда боковые/наклонные стороны трапеции имеют функцию не наклонной прямой, а кусок синусоиды или косинусоиды.
Тогда в точке перехода на постоянную скорость (точка пересечения наклонной линии и горизонтальной) не будет скачков в работе шагового двигателя, т.к. нет разрыва функции во втором (кажется) дифференциале этой функции
Формула во вложении. Да, таблица понадобиться одна как для спада, так и для нарастания ускорения.
из готовых решений - платно
DIR нужен, чтобы поменять вращение в обратную сторону. Изменение лучше делать когда шаговик остановлен.
Эскизы прикрепленных изображений
If it doesn't work in simulation, it won't work on the board.
"Ты живешь в своих поступках, а не в теле. Ты — это твои действия, и нет другого тебя" Антуан де Сент-Экзюпери повесть "Маленький принц"