stepper на драйвере ULN2003

для мотора stepmotor_28BYJ-48-5V( и аналогичных) на драйвере ULN2003

Пользовательские блоки для управления шаговыми двигателями и сервоприводами
Правила форума
Рекомендации по размещению блоков:
Автор блока создает подробное описание блока, отличие от подобных(если есть на данный момент).Сложные блоки очень желательно с примерами.
При выходе новых версий редактирует/дополняет свой первый пост с указанием даты, версии, причины.
В каждой теме обсуждается только выложенный автором блок - баги, возможность (или предложение) доработки и прочие хотелки.
Свои блоки, переработанные, с другими библиотеками, протоколами и т.д.- размещаем либо сами отдельно, либо обсуждаем и дорабатываем в форуме Разработка блоков.
Пользователи улучшив блок автора и проверив его работоспособность - могут обратиться к автору или модераторам с просьбой добавить их версию блока в первое сообщение темы.
Ответить
pan
Полковник
Сообщения: 2860
Зарегистрирован: 13.04.2017{, 11:57}
Репутация: 204
Имя: noname

stepper на драйвере ULN2003

#1

Сообщение pan » 08.01.2018{, 16:28}

для мотора stepmotor_28BYJ-48-5V( и аналогичных) на драйвере ULN2003

Изображение

первый блок для работы по заданному количеству оборотов
второй для поворота на заданный угол.

имеются 2 входа для поворота по часовой и против часовой стрелки.

в первом блоке если количество оборотов установить 0 , то мотор будет вращаться бесконечно пока на одном из
входов будет сигнал. при снятии сигнала мотор остановится.

если указать некое количество оборотов то входа будут работать по ФРОНТУ.

входа для задания количества оборотов и угла поворота соответственно.

rotateN - вращение на заданное кол-во оборотов
Degrees - заданное кол-во градусов

выход done - выдаст 1 когда мотор выполнил вращение по оборотам или градусам.

выход _rotate - оставшееся количество оборотов (по просьбе Грачика)

библиотека находится в самих блоках. в ней есть небольшие изменения (для вывода оставшихся оборотов)
поэтому имеющуюся библиотеку CustomStepper нужно удалить.
Вложения
stepper2.ubl
(164 КБ) 377 скачиваний
Последний раз редактировалось pan 16.03.2018{, 23:53}, всего редактировалось 1 раз.
Причина: обновление блоков stepper2

Аватара пользователя
Wladislav_1
Рядовой
Сообщения: 42
Зарегистрирован: 25.12.2016{, 20:36}
Репутация: 2
Откуда: Новосибирск

stepper на драйвере ULN2003

#2

Сообщение Wladislav_1 » 18.01.2018{, 19:07}

Вопрос такой... а можно ли сделать блок на основании нижеприведенной статьи? дело в том что биполярные шаговые двигатели, в связи с массовостью увлеченных ардуино, идут по популярности наряду с 1602 дисплеем, так собственно почему то FLprog обходит это дело стороной?
http://arduino-diy.com/arduino-sovety-d ... el-Nema-17
Безусловно каждый двигатель имеет свои параметры свою скважность импульса, спада тока, но не об этом речь, это можно оставить пользователям и они уже сами поделятся показаниями по тому или иному двигателю, в данной статье рассматривается правильное использование шагового двигателя с разгоном и торможением, а без этого пропуски шагов гарантированы... хотя думаю биполярные двигатели надо в отдельную тему выводить...

Аватара пользователя
hrach
Сержант
Сообщения: 258
Зарегистрирован: 17.09.2015{, 11:05}
Репутация: 13
Откуда: Самара
Имя: Грачик
Контактная информация:

stepper на драйвере ULN2003

#3

Сообщение hrach » 08.03.2018{, 08:19}

Можно к этому блоку добавит выход, который будет показывать обратный отчет оборотов.

pan
Полковник
Сообщения: 2860
Зарегистрирован: 13.04.2017{, 11:57}
Репутация: 204
Имя: noname

stepper на драйвере ULN2003

#4

Сообщение pan » 10.03.2018{, 19:40}

hrach, отсчет от чего вести?

Аватара пользователя
hrach
Сержант
Сообщения: 258
Зарегистрирован: 17.09.2015{, 11:05}
Репутация: 13
Откуда: Самара
Имя: Грачик
Контактная информация:

stepper на драйвере ULN2003

#5

Сообщение hrach » 10.03.2018{, 23:00}

От заданное кол-во оборотов.

Anydy

stepper на драйвере ULN2003

#6

Сообщение Anydy » 13.03.2018{, 05:47}

Изучаю сейчас шаговые двигатели....насколько я понял что драйверы типа ULN2003 или L298N для шаговых двигателей не подходят.
Конечно маленькие двигатели ими можно крутить, а вот что то серьезное - вряд ли...
В общем это даже никакие не драйверы а просто сборки ключей. Шаговым двигателем программно управляет МК.

Для управления шаговым двигателем существуют аппаратные драйверы. Например А4988
+ Регулировка тока
+ Аппаратный микрошаг
+ Уменьшение тока во время удержания
+ Управление - STEP/DIR
Если у кого будет время, сделайте пользовательский блок для этого типа драйверов (мне пока некогда)
Наверняка кому то пригодится))) Уж извиняйте, я для себя программирую в Notepad++
PS. Все три выше указанных драйвера проверял в железе и с разными двигателями.

Аватара пользователя
hrach
Сержант
Сообщения: 258
Зарегистрирован: 17.09.2015{, 11:05}
Репутация: 13
Откуда: Самара
Имя: Грачик
Контактная информация:

stepper на драйвере ULN2003

#7

Сообщение hrach » 14.03.2018{, 08:13}

pan писал(а):
12.03.2018{, 20:07}
hrach, вам придется тестировать. ибо делается всё без железа.
Подключил двигатель. Установил скорость 100 об/мин. Заменил библиотеку. На дисплее показывает обороты с выхода. При включение на PIN 8 появляется высокий уровень и ничего не меняется, двигатель стоить.

Да и первый блок (который было выложено) тоже ведет себя так же.

pan
Полковник
Сообщения: 2860
Зарегистрирован: 13.04.2017{, 11:57}
Репутация: 204
Имя: noname

stepper на драйвере ULN2003

#8

Сообщение pan » 16.03.2018{, 21:53}

hrach, пробуйте.

не смотря на простоту, оказалось не так просто.. пришлось повозиться.
блоки полностью переделал. прогнал в протеусе, всё работает. и по оборотам и по градусам.
проверяйте в железе.

Аватара пользователя
hrach
Сержант
Сообщения: 258
Зарегистрирован: 17.09.2015{, 11:05}
Репутация: 13
Откуда: Самара
Имя: Грачик
Контактная информация:

stepper на драйвере ULN2003

#9

Сообщение hrach » 17.03.2018{, 11:16}

pan писал(а):
16.03.2018{, 21:53}
проверяйте в железе.
Я проверил. Первый блок не работает. Как раньше на 8 пине появляется высокий уровень и так стоит. Второй блок работает как надо.

pan
Полковник
Сообщения: 2860
Зарегистрирован: 13.04.2017{, 11:57}
Репутация: 204
Имя: noname

stepper на драйвере ULN2003

#10

Сообщение pan » 18.03.2018{, 15:36}

hrach,
еще раз проверил в протеусе. генерация идет.
в архиве файл флпрог, сгенерированный .hex файл на всякий случай и файл протеуса.
Вложения
проверка.zip
(75.78 КБ) 188 скачиваний

Аватара пользователя
hrach
Сержант
Сообщения: 258
Зарегистрирован: 17.09.2015{, 11:05}
Репутация: 13
Откуда: Самара
Имя: Грачик
Контактная информация:

stepper на драйвере ULN2003

#11

Сообщение hrach » 19.03.2018{, 07:58}

Я проверил, все получилось.Я извиняюсь моя ошибка. Значение большие ставил. Для двигателя 28BYJ-48 получилось 64 шага на 1 оборот максимальная скорость 220 оборотов. Если на входе ставить 100 оборотов, то вал делает примерно 1,5 оборотов и останавливается (коэффициент трансформации редуктора 64). При больших оборотов как я раньше написал генерация не происходить. Спасибо большое за труд!

Revenger
Рядовой
Сообщения: 21
Зарегистрирован: 04.02.2016{, 02:22}
Репутация: 0
Откуда: Ставрополь
Контактная информация:

stepper на драйвере ULN2003

#12

Сообщение Revenger » 18.04.2018{, 14:22}

Anydy писал(а):
13.03.2018{, 05:47}
Для управления шаговым двигателем существуют аппаратные драйверы. Например А4988
тоже хотелось бы блок для управления нормальным ШД, а не этой подделкой (в виде 28-го на УЛН2003). Его то запустить получилось по советам в ВК, а как управлять нормальным ШД с нормальным драйвером (хотя бы А4988, не говоря о ТБ 6550) ?

sillver
Сержант
Сообщения: 194
Зарегистрирован: 27.04.2017{, 12:04}
Репутация: 3
Откуда: УКРАИНА
Имя: Вячеслав

stepper на драйвере ULN2003

#13

Сообщение sillver » 27.08.2018{, 11:55}

Revenger писал(а):
18.04.2018{, 14:22}
Anydy писал(а):
13.03.2018{, 05:47}
Для управления шаговым двигателем существуют аппаратные драйверы. Например А4988
тоже хотелось бы блок для управления нормальным ШД, а не этой подделкой (в виде 28-го на УЛН2003). Его то запустить получилось по советам в ВК, а как управлять нормальным ШД с нормальным драйвером (хотя бы А4988, не говоря о ТБ 6550) ?
Меня тоже интересует!!! Работа в Step\Dir проще, не нагружает контролер, можно работать как в шаге так и делить его и еще много плюшек. Я сам блок пользователя не делал так все в программе. но хотелось бы и БП, а еще прикрутить к нему и энкодер для контроля вращения!!!!

Priyatel
Рядовой
Сообщения: 85
Зарегистрирован: 04.11.2018{, 14:09}
Репутация: 0
Имя: Олегович

stepper на драйвере ULN2003

#14

Сообщение Priyatel » 21.01.2019{, 13:06}

Вижу, интерес по теме о шаговых двигателях не пропадает. Может быть, я со своими наработками внесу посильный вклад? Моя тема по движению приводов с шаговыми двигателями находится здесь:
viewtopic.php?t=4600
СпойлерПоказать
MPG Arduino-168(328)-5v.JPG
Модуль управления шаговым двигателем позволяет перемещать приводы пошагово как от кнопочного джойстика, так и от энкодера. ПБ обработки энкодера выполнен очень качественно (нет сбоев энкодера). Поэтому можно применять контактный энкодер (крутилку), оптический (фирменный в металлическом корпусе), а так же оптический энкодер от старой "мыши". Все три типа проверены на практике! К сожалению, не знаю автора ПБ. Огромная ему благодарность! ПБ Step/Dir выполнен тоже очень качественно. Нет никаких нареканий. Автор Slimper. Огромное ему спасибо! (Очень хотелось бы с ним пообщаться по расширению функционала, но связи с ним нет. Может, кто нибудь, передаст ему весточку?). Управление ШД через драйвера А4988, DRV8825, TB6600 или аналогичные. Выходные сигналы Step - Dir - Enable (в моем варианте Enable не выведен на пин Ардуино).
New MPG-V2.flp
(616.36 КБ) 189 скачиваний
Так же сделан модуль индикации. При совместном использовании этих модулей, организуется режим программирования электронного концевика. Т.е. можно ввести величину перемещения и выполнить до заданной позиции. При использовании только модуля перемещений, пин контроллера "Вход концевика" повесить на "0".
СпойлерПоказать
1xDRO.JPG
1Axis-DRO-V2.1.flp
(678.5 КБ) 167 скачиваний
Сейчас собираю все в железе на печатных платах, с лицевыми панелями и с реальными ходовыми винтами. Как только сделаю, выложу отчет.

Ответить

Вернуться в «Управление шаговыми двигателями и сервоприводами»