Функционально устройство состоит из двух частей: "Контроллера" и "Драйвера". "Контроллер" собран на популярном МК ATtiny2313, работающим на частоте 1 мГц от внутреннего генератора. "Драйвер" представляет собой набор из 4-х ключей, на транзисторах КТ972.

Конструктивно и "Контроллер" и "Драйвер" собраны на одной печатной плате, но разводка сделана так, что можно собрать на двух отдельных платах, соединив их между собой плоским шлейфом (для этого на плате предусмотрены разъемы) и подав на плату "Контроллера" +5В через разъем Х1, а на плату "Драйвера" от +12 до +35В через разъем Х4 (выв.1).

В одноплатном варианте, как на фото, контроллер может использоваться для проверки любого 12-ти вольтового двигателя с питанием от компьютерного блока питания

Возможности контролера:
- управление шаговым двигателем в 2 стороны (реверсивное вращение);
- 9 скоростей вращения двигателя;
- вход для проверки контролера, работающий с программой VRI-CNC;
- вход для проверки контролера с управляющими сигналами СТЕП-ДИР;
- Инверсия сигнала СТЕП;
- Пошаговый режим работы;
- Полушаговый режим для всех кроме режима СТЕП-ДИР.

Контроллер шагового двигателя на Attiny2313 - схема

При включении питания, устройство через 2 секунды стартует в обычном режиме (светодиоды VD1-VD3 не светятся): Крутит двигатель влево (кнопка 1), вправо (кнопка 2), можно изменять скорость (кнопка 3), переключать в режим "ШАГ-ПОЛУШАГ" (кнопка 4), инвертировать сигнал. Если 3-4 секунды удерживать кнопку 3, то по отпускании ее включится максимальная скорость вращения. СТЕП.

Если в момент включения питания удерживать 3 секунды любую кнопку, то устройство стартует в ПОШАГОВОМ режиме (должны зажечься светодиоды VD1-VD3). Далее, нажимая любую кнопку, будет происходить режим пошаговой работы, вал двигателя будет проворачиваться на 1 шаг. Никакие другие режимы в пошаговом режиме не работают и двигатель вращается только в одну сторону. Переход в обычный режим можно осуществить либо отключением и включением питания или джампером "Reset".

Контроллер шагового двигателя на Attiny2313 - печатная плата

Установка FUSE-битов: lfuse:0x64, hfuse:0xDF


Архив для статьи "Контроллер шагового двигателя на Attiny2313"
Описание: Файл прошивки микроконтроллера, макет печатной платы SprintLayout5
Размер файла: 10.14 KB Количество загрузок: 5 472 Скачать

Комментарии  

+1 #1 kaschenko.alex 04.10.2013 20:48
укажите фуз биты для прощивки контроллера
Сообщить модератору
+2 #2 AntonChip 04.10.2013 22:18
Фьюзы добавил в статью
Сообщить модератору
+2 #3 Михаил 23.10.2013 17:56
Собрал устройство, работает прекрасно!
Есть вопросик- Можно ли им проверить работу
биполярного шагового двигателя(4 провода)?
Если можно, то как подключать?
Сообщить модератору
+1 #4 AntonChip 23.10.2013 19:21
Цитирую Михаил:
Есть вопросик- Можно ли им проверить работу биполярного шагового двигателя(4 провода)? Если можно, то как подключать?
Подключить биполярный двигатель к этой схеме не получится, подробнее здесь radioparty.ru/.../...
Сообщить модератору
0 #5 Le_Fleurs 20.11.2013 21:32
А можно было бы посмотреть видео работы устройства? на максимальной скорости не будет ли шаговик слетать? а потом без датчика холла тупить свое положение?
Сообщить модератору
0 #6 Alfa2 02.03.2015 15:42
Собрал данную схему
Подключил контроллер шагового двигателя по линии Степ/Дир

Двигатель крутится только в одну сторону кнопка 1, на кнопку 2 реагирует остановкой движка. Повторное нажатие на кнопку 2 движок крутит в туже сторону что и по кнопке 1.

Так и задумано?
Сообщить модератору
0 #7 Alukard 31.05.2015 22:14
Скажите пожалуйста для чего в схеме цепь X3????
Сообщить модератору
-1 #8 AntonChip 31.05.2015 23:06
Цитирую Alukard:
Скажите пожалуйста для чего в схеме цепь X3????

- вход для проверки контролера, работающий с программой VRI-CNC;
- вход для проверки контролера с управляющими сигналами СТЕП-ДИР;
Сообщить модератору
0 #9 Tantrum 26.06.2015 22:22
Искал как раз подобное устройство с регулировкой скорости и реверсом.
А можно как-то доделать программу так, чтобы двигатель сделал нужное количество оборотов (оно вычисляется экспериментальн ым путем и потом вписывается в код как константа) и остановился?
Спасибо.
Сообщить модератору
+3 #10 AntonChip 26.06.2015 23:04
На форуме обсуждали radioparty.ru/forum/topic?f=2&t=776
Сообщить модератору
+1 #11 sergsib 30.06.2015 10:21
Антон. Если не трудно, поместите в архив (после статьи) исходник программы для униполярного двигателя. Мне требуется значительно, раз в 10 снизить скорость вращения.
Сообщить модератору
0 #12 AntonChip 30.06.2015 23:25
К сожалению исходника нет
Сообщить модератору
0 #13 Vladimir90 23.09.2015 12:44
Скажите пожалуйста, как переделать схему чтобы при нажатии и удержании кнопок вправо/влево двигатель вращался в ту или другу сторону соответственно, а при отпускании останавливался?
Сообщить модератору
0 #14 Андрей 69 01.04.2023 17:13
помогите пожалуйста с прошивкой под конкретный мотор PW55L-048
Сообщить модератору
0 #15 AntonChip 03.04.2023 06:39
Цитирую Андрей 69:
помогите пожалуйста с прошивкой под конкретный мотор PW55L-048

Этот двигатель какой-то особенный, что для него нужна отдельная прошивка?
Сообщить модератору