Arduino с шаговым двигателем

Я пытаюсь управлять шаговым двигателем для моего FYP с помощью Arduino Mega. Я пробовал примеры кода, шаговый двигатель делает один оборот. После загрузки всё заработало, но если я отключу питание на половине оборота, то при следующем включении питания двигатель сначала отклонится назад, а затем будет работать согласно программе. Я хочу, чтобы при включении питания двигатель двигался согласно коду и не запоминал последнее движение. Кто-нибудь может помочь мне с этой проблемой?

, 👍0

Обсуждение

Пожалуйста, опубликуйте свой код, чтобы другие могли увидеть, как он написан, и оказать помощь/дать совет., @jose can u c


1 ответ


2

Шаговый двигатель не имеет механических «шагов» как таковых. В выключенном состоянии шаговый двигатель вращается свободно. При включении питания (подача напряжения на катушки) ротор переместится в ближайшее из нескольких положений, соответствующих поданным напряжениям на катушки. Таким образом, он не сохраняет своё положение при отключении питания; ваш код должен «находить» его каждый раз. Обычно это включает в себя управление двигателем до тех пор, пока подключенный механизм не сработает оптический или механический переключатель, давая программе точку отсчёта. Другой вариант — подать ток удержания (меньше шагового тока) на подключённые катушки и не отключать питание двигателя полностью при отключении остальной системы. Программному обеспечению потребуется сохранить положение двигателя перед отключением питания в энергонезависимой памяти, например, EEPROM, откуда оно сможет восстановить его при следующем включении.

,