Зачем нам рампа для шагового двигателя?

9

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

«Если мы пытаемся запустить шаговый двигатель быстрыми импульсами, то он просто сидит и гудит, не поворачиваясь. Нам нужно медленно запустить шаговый двигатель и постепенно увеличивать скорость шагов (нарастая)». Источник: http://www.societyofrobots.com/member_tutorials/book/export/html/314

Мой вопрос: почему тогда шаговый двигатель запускается с правильными квадратными импульсами? Зачем нам рампа? Все остальные форумы и учебные пособия всегда говорят о подаче цифровых импульсов в степпер для его запуска, почему там не обсуждается концепция генерации линейного изменения? Это плохая практика - запускать степпер с цифровыми импульсами?

alexhilton
источник
2
Я думаю, что вы путаете «пандус» с «прямоугольной» формой. Управление по-прежнему осуществляется прямоугольной волной, только скорость / скорость изменения этих шагов управления увеличивается с нуля до предполагаемых шагов в секунду или любой скорости, которую вы пытаетесь получить.
KyranF
Скажем, ваш шаговый прямоугольный сигнал выглядит как сигнал 3 кГц. Вместо того, чтобы переходить от тупика к затуханию, следует начинать с низкой частоты (или с более длинного промежутка между импульсами). Напольное покрытие педали акселератора автомобиля занимает около полсекунды и либо курит шины (на пониженной передаче), либо реагирует (на высокой передаче).
Алан Кэмпбелл
Да, я перепутал рампу с импульсами, спасибо за отзывы, ребята!
Алексхилтон

Ответы:

8

Когда контроллер запускает двигатель, ротор должен двигаться достаточно далеко (под углом), чтобы при включении следующей катушки (или пары катушек) он вращал ротор в правильном направлении. Если ротор не сдвинулся на достаточный угол, то катушки будут тянуть ротор назад, а мотор просто сидит и гудит. В Интернете можно найти множество иллюстраций и анимаций, которые объясняют, как работает нормальный режим работы. Представьте, что ротор перемещался только на часть предполагаемого количества.

Ротор, вал и все, что связано с валом, имеют инерцию и различное трение.

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

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

Вот кривая крутящего момента двигателя от Oriental Motor (крупного японского производителя):

http://www.orientalmotor.com/technology/articles/article-speed-torque-curves-for-step-motors.html

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

Спехро Пефхани
источник
Спасибо Сферо за такой подробный ответ, я на самом деле путал себя с двумя главными вещами, я буду работать над способом выбора частоты шагов, чтобы составить рампу!
Алексхилтон
У вас есть литература?
Карлтон Бэнкс
@CarltonBanks Проверьте ссылку выше на Oriental Motor.
Спехро Пефхани
В нем нет необходимости упоминать, почему оно лучше, чем нет (если вообще, только упомяните выбор, насколько я могу прочитать). Я имею в виду, насколько я понимаю, можно было бы двигать двигатель на несколько шагов и не увеличивать его, разница была бы не крутящим моментом. быть таким мощным.
Карлтон Бэнкс
Если вас не волнует максимальная скорость, нет никаких оснований для ускорения. Рампинг позволяет получить более высокую максимальную скорость для данного момента инерции + крутящий момент без потери шагов.
Спехро Пефхани
2

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

Причина в том, что шаговый двигатель может генерировать только такой крутящий момент. Когда мы превышаем этот максимальный крутящий момент, двигатель пропускает шаги.

Кроме того, ускорение двигателя требует крутящего момента по второму закону движения Ньютона : сила равна массе, умноженной на ускорение:

Fзнак равномa

Для вращающейся системы термины немного меняются, но в основном они аналогичны: крутящий момент равен моменту инерции, умноженному на угловое ускорение:

τзнак равнояα

Следствием этого является то, что для мгновенного ускорения двигателя потребуется бесконечный крутящий момент, что невозможно. Таким образом, мы должны ограничить ускорение, то есть «увеличить» скорость, чтобы ограничить крутящий момент, необходимый для чего-то, что двигатель может генерировать без пропусков шагов.

Фил Фрост
источник
1

Два года спустя ... Я хотел бы добавить некоторые детали о типичной скорости против вибрации / шума для любого шагового двигателя.

При очень медленном шаге, например, один раз в секунду, вал будет перемещаться в новое место и перегоняться, а затем многократно падать, пока не стабилизируется на этом шаге. Процесс повторяют на каждом новом шаге.

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

Когда двигателю не нужно двигаться, напряжение / ток можно уменьшить примерно на 50-75%, чтобы сохранить это положение. В случаях, когда трение является доминирующим, или при использовании какого-либо типа шестерни, двигатель может быть полностью обесточен. Это похоже на реле, которым необходимо, например, 12 вольт для активации, но затем легко поддерживать активированный контакт только 9 вольт.

При увеличении скорости примерно до 20 в секунду вибрация / шум достигают максимума. Это скорость, которую большинство инженеров постарается избежать.

При увеличении скорости вибрация / шум также уменьшаются благодаря крутящему моменту. Если вы построите график зависимости шума от частоты, форма покажет четкое направление вниз с некоторыми локальными максимумами, часто на частоте гармоники.

Предположим, что при типичном значении выше 100 шагов в секунду вибрация достаточно низкая, чтобы быть допустимой, и допустим, что крутящий момент становится слишком слабым для надежной работы выше 500 Гц.

Вы можете сразу запустить шаговый двигатель, используя любую из этих частот, не увеличивая скорость от 100 Гц до 500 Гц. Точно так же вы можете резко останавливать шаги независимо от частоты. Ток удержания достаточен для блокировки двигателя на этом этапе.

Рампинг необходим, когда вы хотите превысить максимальную частоту. Учитывая приведенное выше «типичное» число, вы можете обнаружить, что ваш двигатель при плавном ускорении все еще имеет достаточный крутящий момент для работы от 500 Гц до 700 Гц. Хитрость для надежной работы состоит в том, чтобы запустить рампу где-то около 400 Гц, а затем увеличить ее до 700 Гц. Держите его на такой скорости, пока не достигнете целевой позиции.

Затем плавно снизьте скорость с 700 Гц до 450 Гц. Если заданное положение все еще не достигнуто, держите двигатель на этой скорости. Затем с 450 Гц вы можете остановиться. Держите двигатель под напряжением при максимальном токе / напряжении в течение от 0,1 секунды до 1 секунды, чтобы убедиться, что все источники вибрации рассеиваются.

Линейную рампу проще создать. Но оптимальной является форма "S". Вы начинаете с безопасной частоты, сначала медленно повышаетесь и меняете скорость увеличения скорости экспоненциально до достижения максимума.

Когда наступает время замедления, применяется тот же алгоритм, медленно уменьшая скорость и экспоненциально изменяя скорость снижения скорости, останавливая уменьшение скорости при достижении безопасной скорости, что позволяет резко остановить двигатель.

Фактический код, выполняющий все это с использованием микроконтроллера Motorola 68HC05, занимал около 500 байтов (внутренняя СППЗУ составляла всего 8 КБ, а объем оперативной памяти составлял 128 байтов). Это было написано на ассемблере.

Если у вас есть оборудование для микроперехода, тогда вы можете игнорировать все упоминания о шуме и вибрации. Вам все еще нужно ускорение в форме буквы «S», если вы хотите превысить обычную максимальную скорость. Но поскольку нет вибрации, независимо от скорости, вы можете позволить замедлению идти так низко, как захотите.

Уроки, извлеченные из движения прямоугольной волны, все еще сохраняются. То есть для наиболее эффективного способа достижения цели вы хотите, чтобы замедление находилось на частоте чуть ниже точки, где крутящий момент двигателя достаточен для резкого останова и запуска.

Кристиан Гинграс
источник