Извините, ничего не найдено.

Не расстраивайся! Лучше выпей чайку!
Регистрация
Справка
Календарь

Вернуться   www.boolean.name > Программирование игр для компьютеров > C++

Ответ
 
Опции темы
Старый 31.01.2017, 07:03   #16
Evgen
Знающий
 
Аватар для Evgen
 
Регистрация: 12.01.2011
Адрес: Moscow capital of Earth! :)
Сообщений: 248
Написано 24 полезных сообщений
(для 31 пользователей)
Ответ: Как заставить шаговый двигатель шагать

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

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

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

Тема плавно перетекла в С++
__________________
Типичный ответ любого кулхацкера "погугли", ибо он не знает ответа на вопрос, но прослыть знающим уж очень хочется...
(Offline)
 
Ответить с цитированием
Старый 31.01.2017, 10:22   #17
RegIon
Элита
 
Аватар для RegIon
 
Регистрация: 16.01.2010
Адрес: Новосибирск
Сообщений: 2,156
Написано 502 полезных сообщений
(для 1,012 пользователей)
Ответ: Как заставить шаговый двигатель шагать

Сообщение от Evgen Посмотреть сообщение
Тема плавно перетекла в С++
Она и до этого была в C++ (вернее C, так как С++ для МК - оверхед)
__________________
Сайт: http://iexpo.ml
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
St_AnGer (31.01.2017)
Старый 31.01.2017, 10:26   #18
Evgen
Знающий
 
Аватар для Evgen
 
Регистрация: 12.01.2011
Адрес: Moscow capital of Earth! :)
Сообщений: 248
Написано 24 полезных сообщений
(для 31 пользователей)
Ответ: Как заставить шаговый двигатель шагать

Сообщение от RegIon Посмотреть сообщение
Она и до этого была в C++ (вернее C, так как С++ для МК - оверхед)
Показалось, что из болтовни перетекла...
__________________
Типичный ответ любого кулхацкера "погугли", ибо он не знает ответа на вопрос, но прослыть знающим уж очень хочется...
(Offline)
 
Ответить с цитированием
Старый 31.01.2017, 18:35   #19
Phantom
Элита
 
Аватар для Phantom
 
Регистрация: 14.06.2008
Адрес: Украина, Киев
Сообщений: 2,086
Написано 670 полезных сообщений
(для 1,669 пользователей)
Ответ: Как заставить шаговый двигатель шагать

Не получается у меня никакой точности на микрошагах, не уверен, что это вообще возможно, по крайней мере с этим двигателем. Возможно, получилось бы добиться лучших результатов, если бы у меня был собран мост. Для этого нужно удвоить количество транзисторов, причём нужны с прямой проводимостью, а не с обратной (не знаю правильно ли так говорить применительно к полевым транзисторам). Хотя, наверно, можно попробовать поставить транзисторы одинаковой проводимости, вот пример (правда не с мотором, но нас интересует только левая часть схемы):



Ну в общем, это не так важно, потому что мне лень это паять.

Есть и положительные результаты. Хоть и не получилось добиться высокой точности в микрошаговом режиме, зато двигатель так работает более плавно и тихо. Причём чем на большее количество шагов дробишь, тем плавнее и тише (логично в общем-то). Но крутящий момент скорее всего падает. Можно использовать разный подход в зависимости от стоящей задачи.
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
Ответ


Опции темы

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


Часовой пояс GMT +1, время: 05:21.


vBulletin® Version 3.6.5.
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.
Перевод: zCarot
Style crйe par Allan - vBulletin-Ressources.com