Показать сообщение отдельно
Старый 31.01.2017, 10:03   #16
Evgen
Разработчик
 
Аватар для Evgen
 
Регистрация: 12.01.2011
Адрес: Moscow
Сообщений: 419
Написано 68 полезных сообщений
(для 100 пользователей)
Ответ: Как заставить шаговый двигатель шагать

Сообщение от Phantom Посмотреть сообщение
Заменил все четыре вывода на восьмибитный ШИМ, использовав два таймера AVR с синхронным запуском. Таким образом появились следующие возможности:
1) можно уменьшить мощность, чтобы уменьшить нагрев;
2) можно дробить целые шаги не только на половинчатые, но и на меньшие.

Пробовал шагать по 1/32, 1/16, 1/8 и 1/4 шагов. Работает, но не чётко, чётко встаёт только в целые и половинчатые шаги. Наверняка это можно было понять, почитав теорию и даташит на двигатель, но пощупать руками и посмотреть глазами - это ж другое дело. Кстати сказать, вроде бы я искал даташит на этот двигатель в прошлом году и не нашёл. Он из принтера, бумагу протягивал.
Запустить движок в шаговом или 1/2 шаговом режиме не сложно. Микрошаг полагаю не такая простая вещь. Двигатель это индуктивность и она при протекании тока запасает энергию в своём магнитном поле. Этот момент наверно нужно как-то учитывать.

Микрошаг не пробовал делать через ШИМ, потому что уже есть готовые микросхемы allegro с микрошагом которые применяются в 3d принтерах, они достаточно распространены.

Тема плавно перетекла в С++
(Offline)
 
Ответить с цитированием