Подключение шагового двигателя к микроконтроллерам AVR

Модератор: boogyman

Re: Подключение шагового двигателя к микроконтроллерам AVR

Сообщение:#21  Сообщение AntonChip » 02 фев 2015, 13:47

Valeriy писал(а):Все-таки, если не трудно, первый вариант реализуйте. Там мне почти ничего переделывать не надо, только дополнить транзистор и резистор в схему. Я пытался сам переделать код, но не получается.

Не могу вникнуть в суть дела, нарисуйте схему, будет понятнее
Аватара пользователя
AntonChip
Администратор
 
Сообщения: 190
Зарегистрирован: 24 дек 2011, 21:11
Откуда: Киров

Re: Подключение шагового двигателя к микроконтроллерам AVR

Сообщение:#22  Сообщение passlight » 02 фев 2015, 15:26

Valeriy писал(а):
passlight писал(а):Добрый день ребята. Схему взял из шапки. Транзисторную часть заменил UNL2003...подойдет, будет работать?
Вопрос по прошивке bipolar_step_motor_2.rar...можете выложить готовый HEX или как его скомпилировать и какие фьюзы выставлять для атмеги8?
подскажите пожалуйста, буду благодарен.

Скачайте программу "AVR Studio 4". Как получить в ней HEX файл расписано в интернете, я прошел через это. Через нее выставите и фьюзы и саму программу. Очень легко. Про фьюзы написано в тексте. Нужно выставить у новой микросхемы внутренний генератор на RC и частоту 8 МГц. Остальное по умолчанию. В первом сообщении во вложении есть HEX файл. Внимательно просмотрите папку "default"

так этот HEX я просто шью в мегу? я просто еще не прошивал меги, по этому и спрашиваю. а что по поводу замены транзисторной части на 2003?
Аватара пользователя
passlight
Новичок
 
Сообщения: 3
Зарегистрирован: 02 фев 2015, 11:18

Re: Подключение шагового двигателя к микроконтроллерам AVR

Сообщение:#23  Сообщение Valeriy » 02 фев 2015, 17:50

Антон!
Наверное, это не так просто скорректировать программу под мою задачу. Я воспринимаю Ваше молчание как отказ? Если у Вас нет времени или желания этим заниматься, пожалуйста, дайте мне знать. К сожалению, я уже переделал часы на эту схему - понадеялся, что все работает отлично. А сейчас опять надо будет что-то предпринимать. Очень жаль.
Последний раз редактировалось Valeriy 02 фев 2015, 19:10, всего редактировалось 1 раз.
Аватара пользователя
Valeriy
Любитель
 
Сообщения: 25
Зарегистрирован: 14 янв 2015, 15:26
Откуда: Магнитогорск

Re: Подключение шагового двигателя к микроконтроллерам AVR

Сообщение:#24  Сообщение Valeriy » 02 фев 2015, 18:46

Антон!
Если я Вам еще не надоел, еще раз прошу вас помочь. Очень надо!
Задача следующая. Сейчас напряжение на обмотках Ш.Д. в режиме ожидания отключается. Надо сделать так, чтобы на обмотке , на которую пришел последний такт (шаг), напряжение осталось. Это необходимо для того, чтобы ток, проходящий по этой обмотке в режиме ожидания, тормозил двигатель. А для снижения тока в режиме ожидания применится схема подачи плюса на общий провод Ш.Д. через мощный транзистор, зашунтированным мощным резистором. Управление транзистором должно идти через свободный порт РВ5 МК. Для этого надо в код добавить строки на подключение единицы на РВ5 в режиме прокрутки двигателя. При прокрутке двигателя ток максимальный, а в режиме ожидания на одну обмотку (на которой остановился двигатель) через резистор будет подаваться напряжение, создающее ток удержания.
Схему (от руки) прикрепляю.
Вложения
Схема.jpg
Аватара пользователя
Valeriy
Любитель
 
Сообщения: 25
Зарегистрирован: 14 янв 2015, 15:26
Откуда: Магнитогорск

Re: Подключение шагового двигателя к микроконтроллерам AVR

Сообщение:#25  Сообщение Valeriy » 02 фев 2015, 19:22

так этот HEX я просто шью в мегу? я просто еще не прошивал меги, по этому и спрашиваю. а что по поводу замены транзисторной части на 2003?[/quote]


По поводу 2003 не скажу. Мне кажется, что она слаба по выходным транзисторам. Знаю, что ее применяют как выходной каскад для реле. Ну и, возможно, для слаботочных шаговых двигателей пойдет. Ну а прошивать МК можно в среде AVR Studio 4. Программатор нужен внутрисхемный. У меня AVRISP mkii.
Аватара пользователя
Valeriy
Любитель
 
Сообщения: 25
Зарегистрирован: 14 янв 2015, 15:26
Откуда: Магнитогорск

Re: Подключение шагового двигателя к микроконтроллерам AVR

Сообщение:#26  Сообщение AntonChip » 02 фев 2015, 19:56

Valeriy, переделал по Вашей схеме, проверяйте
Вложения
unipolar_step_motor.rar
С функцией торможения
(38.99 КБ) Скачиваний: 1284
Аватара пользователя
AntonChip
Администратор
 
Сообщения: 190
Зарегистрирован: 24 дек 2011, 21:11
Откуда: Киров

Re: Подключение шагового двигателя к микроконтроллерам AVR

Сообщение:#27  Сообщение Valeriy » 02 фев 2015, 20:19

AntonChip писал(а):Valeriy, переделал по Вашей схеме, проверяйте

К сожалению не работает. Сразу на выходе РВ3 идет единица.На входной импульс не реагирует, а при подаче на РВ 5 через резистор и светодиод нуля, светодиод слегка светится, а на РВ3 становится ноль. В прежней прошивке тоже при подаче на РВ5 нуля все прекращается.( На РВ5 я просто вешаю светодиод через резистор 1 к. к нулю для контроля).
P.S.
Посмотрел код, оказывается порты поменялись. И опять завязка по аналоговому порту. Сейчас буду переделывать.
Прикладываю старую прошивку.
Вложения
Kurant.rar
(12.36 КБ) Скачиваний: 1218
Последний раз редактировалось Valeriy 02 фев 2015, 20:58, всего редактировалось 1 раз.
Аватара пользователя
Valeriy
Любитель
 
Сообщения: 25
Зарегистрирован: 14 янв 2015, 15:26
Откуда: Магнитогорск

Re: Подключение шагового двигателя к микроконтроллерам AVR

Сообщение:#28  Сообщение Valeriy » 02 фев 2015, 20:56

Я так понял, что в коде идет жесткая привязка после остановки двигателя к порту РВ3. А это нельзя. Дело в том, что шагов, как оказалось, нужно 10, а не 8. Поэтому остановка двигателя происходит все время на разных портах. Если привязать постоянно к какому то порту, то в какой то момент двигатель шагнет в обратную сторону за счет тока удержания.
Так эта прошивка для ATmega 8. У меня ATtini 13A.
P.S.
Переделал прошивку на ATtini13A. Работает как раньше, но РВ5 так и не работает и жесткая привязка к порту РВ3 после остановки. Что то не так.
Прикладываю файл.
Вложения
kur.rar
(966 байт) Скачиваний: 1252
Последний раз редактировалось Valeriy 02 фев 2015, 21:59, всего редактировалось 1 раз.
Аватара пользователя
Valeriy
Любитель
 
Сообщения: 25
Зарегистрирован: 14 янв 2015, 15:26
Откуда: Магнитогорск

Re: Подключение шагового двигателя к микроконтроллерам AVR

Сообщение:#29  Сообщение AntonChip » 02 фев 2015, 21:40

PB5 вывод сброса, если его использовать в attiny13 необходимо иметь параллельный программатор или fuse-bit доктор
Аватара пользователя
AntonChip
Администратор
 
Сообщения: 190
Зарегистрирован: 24 дек 2011, 21:11
Откуда: Киров

Re: Подключение шагового двигателя к микроконтроллерам AVR

Сообщение:#30  Сообщение Valeriy » 02 фев 2015, 22:02

AntonChip писал(а):PB5 вывод сброса, если его использовать в attiny13 необходимо иметь параллельный программатор или fuse-bit доктор

Есть у меня программатор. Сейчас отключу. Но как быть с привязанным портом на удержании?
Аватара пользователя
Valeriy
Любитель
 
Сообщения: 25
Зарегистрирован: 14 янв 2015, 15:26
Откуда: Магнитогорск

Re: Подключение шагового двигателя к микроконтроллерам AVR

Сообщение:#31  Сообщение AntonChip » 02 фев 2015, 23:25

Незнаю, что-то вроде получилось под Attiny13
Вложения
unipolar_step_motor_attiny13.rar
AVRSudio Attiny13
(38.72 КБ) Скачиваний: 1266
Аватара пользователя
AntonChip
Администратор
 
Сообщения: 190
Зарегистрирован: 24 дек 2011, 21:11
Откуда: Киров

Re: Подключение шагового двигателя к микроконтроллерам AVR

Сообщение:#32  Сообщение passlight » 03 фев 2015, 08:06

так а фьюзы при прошивке какие выставлять для меги8?
Аватара пользователя
passlight
Новичок
 
Сообщения: 3
Зарегистрирован: 02 фев 2015, 11:18

Re: Подключение шагового двигателя к микроконтроллерам AVR

Сообщение:#33  Сообщение AntonChip » 03 фев 2015, 09:16

passlight писал(а):так а фьюзы при прошивке какие выставлять для меги8?

Изображение
Изображение
Аватара пользователя
AntonChip
Администратор
 
Сообщения: 190
Зарегистрирован: 24 дек 2011, 21:11
Откуда: Киров

Re: Подключение шагового двигателя к микроконтроллерам AVR

Сообщение:#34  Сообщение Valeriy » 03 фев 2015, 15:18

AntonChip писал(а):Незнаю, что-то вроде получилось под Attiny13

Добрый день Антон! Низкий поклон Вам и большая благодарность за проделанную работу!
Прошивка работает как и задумано. Сейчас буду реконструировать блок управления с тормозом.
Хочу спросить. У меня программатор G540 Genius. Хотел снова попробовать включить порт на reset, но не смог. (А отключал порт внутрисхемным программатором ). Но программатор G540 не видит ATtini 13A. У него в меню есть ATtiny 13 (без буквы А). Неужели у них есть разница? Собрал «Atmega fusebit doctor». Тоже не восстанавливает. Пробовал засунуть в него ATmega2313 - отлично отработал. Автор пишет, что пробовал тиньку13А, но у меня не проходит. Вставлял даже абсолютно новую тиньку, но результата нет. Какое то наваждение. Есть ли у Вас на этот счет какая нибудь информация?
Последний раз редактировалось Valeriy 06 фев 2015, 20:01, всего редактировалось 1 раз.
Аватара пользователя
Valeriy
Любитель
 
Сообщения: 25
Зарегистрирован: 14 янв 2015, 15:26
Откуда: Магнитогорск

Re: Подключение шагового двигателя к микроконтроллерам AVR

Сообщение:#35  Сообщение Valeriy » 06 фев 2015, 19:38

Здравствуйте Антон!
Вынужден опять озадачить Вас с прошивкой. Происходят сбои в работе. Думал, что это помехи, но это не так. Даже на макетной плате это тоже происходит.
Проявляется вот так. Согласно диаграмме, в цикле, остановка на счет, кратный десяти, должна происходить поочередно только на двух разрядах (портах) РВ0 и РВ3 ( начало с РВ0). Оно так и происходит некоторое время, но потом перескакивает на другую группу РВ2 и РВ4. Потом опять возвращается на РВ0 и РВ4. В моменты перескока количество импульсов в цикле больше 10 ( точно не смог посчитать, но примерно 12-14). Потом опять нормально считает (примерно 3-5 циклов), и опять все повторяется. На старой прошивке счет и последовательность импульсов в цикле никогда не менялся. Как быть? Где искать косяк? Сейчас надо будет покупать новые Тиньки, так как я уже на двух отключил reset, а назад вернуть пока не могу. А,вообще то, я зря затеял проект на ATtini13A. Надо было сделать на ATmega 8A. Тогда бы не надо было отключать ничего и хватило бы портов.
Аватара пользователя
Valeriy
Любитель
 
Сообщения: 25
Зарегистрирован: 14 янв 2015, 15:26
Откуда: Магнитогорск

Re: Подключение шагового двигателя к микроконтроллерам AVR

Сообщение:#36  Сообщение AntonChip » 06 фев 2015, 21:18

Нет возможности проверить в железе, но в симуляторе отрабатывает четко, если кол-во шагов равно 10, то стоповый бит PB0 или PB3
Аватара пользователя
AntonChip
Администратор
 
Сообщения: 190
Зарегистрирован: 24 дек 2011, 21:11
Откуда: Киров

Re: Подключение шагового двигателя к микроконтроллерам AVR

Сообщение:#37  Сообщение Valeriy » 06 фев 2015, 21:45

AntonChip писал(а):Нет возможности проверить в железе, но в симуляторе отрабатывает четко, если кол-во шагов равно 10, то стоповый бит PB0 или PB3

Дело в том, что я первый раз собрал схему на макете. Вроде работала нормально, но я долго не щелкал кнопкой, поэтому этот эффект не наблюдал. Когда я сделал все в железе, т.е. рабочий вариант, то заметил эти сбои. Подумал, что помехи, но с отключенным двигателем тоже самое. Тогда я снова сделал на макете и, после многочисленных нажатий на кнопку пуска, тоже наблюдал такие же сбои. Бывает на 27 раз, а иногда на 40. Старая прошивка такого не позволяла. Возможно микросхема сбоит, но у меня нет сейчас новой тиньки, чтобы проверить. Завтра куплю.
А что нужно изменить в коде, чтобы использовать ATmega 8A? Попробовать на ней.
Аватара пользователя
Valeriy
Любитель
 
Сообщения: 25
Зарегистрирован: 14 янв 2015, 15:26
Откуда: Магнитогорск

Re: Подключение шагового двигателя к микроконтроллерам AVR

Сообщение:#38  Сообщение AntonChip » 06 фев 2015, 22:19

Регистры таймеров поменять и еще по мелочи может что
Аватара пользователя
AntonChip
Администратор
 
Сообщения: 190
Зарегистрирован: 24 дек 2011, 21:11
Откуда: Киров

Re: Подключение шагового двигателя к микроконтроллерам AVR

Сообщение:#39  Сообщение Valeriy » 06 фев 2015, 22:29

AntonChip писал(а):Регистры таймеров поменять и еще по мелочи может что

Если это несложно, может попробуем. ATmtga8 наверное надежнее. А если получится, сделаю переходник на панельку. Столько труда вложил на конечное устройство и сейчас снова все переделывать......
Аватара пользователя
Valeriy
Любитель
 
Сообщения: 25
Зарегистрирован: 14 янв 2015, 15:26
Откуда: Магнитогорск

Re: Подключение шагового двигателя к микроконтроллерам AVR

Сообщение:#40  Сообщение AntonChip » 07 фев 2015, 09:14

Для меги 8, проверяйте
Вложения
unipolar_step_motor_atmega8.rar
AVRStudio4, Proteus
(39.21 КБ) Скачиваний: 1269
Аватара пользователя
AntonChip
Администратор
 
Сообщения: 190
Зарегистрирован: 24 дек 2011, 21:11
Откуда: Киров

Пред.След.

Вернуться в Микроконтроллеры AVR

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1

Rambler's Top100