Шаговый двигатель на драйвере L298N

Пользовательские блоки для управления шаговыми двигателями и сервоприводами
Правила форума
Рекомендации по размещению блоков:
Автор блока создает подробное описание блока, отличие от подобных(если есть на данный момент).Сложные блоки очень желательно с примерами.
При выходе новых версий редактирует/дополняет свой первый пост с указанием даты, версии, причины.
В каждой теме обсуждается только выложенный автором блок - баги, возможность (или предложение) доработки и прочие хотелки.
Свои блоки, переработанные, с другими библиотеками, протоколами и т.д.- размещаем либо сами отдельно, либо обсуждаем и дорабатываем в форуме Разработка блоков.
Пользователи улучшив блок автора и проверив его работоспособность - могут обратиться к автору или модераторам с просьбой добавить их версию блока в первое сообщение темы.
Аватара пользователя
RedSky
Лейтенант
Сообщения: 576
Зарегистрирован: 19 дек 2016, 20:07
Откуда: Днепропетровск
Имя: Алексей
Поблагодарили: 1 раз

Шаговый двигатель на драйвере L298N

Сообщение RedSky »

Блок управления шаговым двигателем по 4-м проводам (драйвер L298N и аналогичные). Не останавливает выполнение программы. Используется прерывание по таймеру1, поэтому не будет корректно работать ШИМ на выводах 9 и 10. Есть возможность работы в двух режимах: шаговый и полушаговый. Есть возможность удержания ротора при отсутствии движения (тормоз).
Работает таким образом: на входе steps задаётся количество шагов на которое необходимо выполнить вращение, на входе interval задаётся время в мс, через которое выполняются шаги. Для начала вращения на вход start подать короткий импульс (через Rtrigger) - будет произведено вращение на заданное количество шагов. Для постоянного вращения на вход start подавать единицу непрерывно. Для досрочной остановки на вход stop подать короткий импульс (через Rtrigger) - двигатель будет остановлен, счётчик шагов сброшен. После отработки заданного числа шагов на выходе end будет единица.
Параметры пользователя:
In1, 2, 3, 4 - номера пинов для соответствующих входов драйвера.
brake - удержание (тормоз) вкл/выкл.
mode - режим работы: 0 - шаговый; 1 - полушаговый.
Входы:
start - начать вращение (через Rtrigger).
stop - остановить вращение (через Rtrigger).
steps - задание на количество шагов.
interval - интервал между шагами, мс.
Выходы:
down - остаток шагов.
up - пройдено шагов.
end - вращение завершено (шаги закончились).
Библиотеки включены в блок, также есть отдельно в архиве.
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Последний раз редактировалось RedSky 08 июн 2023, 15:35, всего редактировалось 1 раз.
uzer
Рядовой
Сообщения: 91
Зарегистрирован: 30 июн 2019, 14:50
Имя: igor

Шаговый двигатель на простом драйвере

Сообщение uzer »

RedSky писал(а): 09 сен 2018, 13:46 этот блок с управлением энкодера ? выложите пожалуйста схему подключения.
этот блок с управлением энкодера ? выложите пожалуйста схему подключения.
Аватара пользователя
RedSky
Лейтенант
Сообщения: 576
Зарегистрирован: 19 дек 2016, 20:07
Откуда: Днепропетровск
Имя: Алексей
Поблагодарили: 1 раз

Шаговый двигатель на простом драйвере

Сообщение RedSky »

[ref]uzer[/ref], энкодер здесь не причём. А схема подключения стандартная для этого драйвера.
У вас нет необходимых прав для просмотра вложений в этом сообщении.
vfv
Сержант
Сообщения: 283
Зарегистрирован: 22 мар 2018, 12:35
Откуда: Самара
Имя: Валерий

Шаговый двигатель на простом драйвере

Сообщение vfv »

Попробовал ваш блок - всё хорошо работает.
Можно ли к этому блоку как то прикрутить смену направления движения?
Аватара пользователя
ingener
Лейтенант
Сообщения: 580
Зарегистрирован: 14 окт 2018, 00:26
Имя: Андрей
Благодарил (а): 2 раза
Поблагодарили: 3 раза

Шаговый двигатель на простом драйвере

Сообщение ingener »

[ref]RedSky[/ref], не планируется редакция блока под step/dir драйвер?
Понятно, что его и в таком виде можно применять, но слишком много пинов займет...
Аватара пользователя
RedSky
Лейтенант
Сообщения: 576
Зарегистрирован: 19 дек 2016, 20:07
Откуда: Днепропетровск
Имя: Алексей
Поблагодарили: 1 раз

Шаговый двигатель на простом драйвере

Сообщение RedSky »

Был такой блок, точно помню, возможно на старом форуме. А этот переделывать нет смысла, тут библиотека именно под этот драйвер.
Главная проблема даже не с пинами - сильно падает момент при увеличении скорости. Можно поднять напряжение, но вырастет ток на малой скорости.
vfv
Сержант
Сообщения: 283
Зарегистрирован: 22 мар 2018, 12:35
Откуда: Самара
Имя: Валерий

Шаговый двигатель на простом драйвере

Сообщение vfv »

RedSky писал(а): 02 мар 2020, 17:45 сильно падает момент при увеличении скорости
Вот меня всё устраивает в вашем блоке. Как раз скорость низкая. Всё таки, как сделать чтобы менять направление движения?
Аватара пользователя
RedSky
Лейтенант
Сообщения: 576
Зарегистрирован: 19 дек 2016, 20:07
Откуда: Днепропетровск
Имя: Алексей
Поблагодарили: 1 раз

Шаговый двигатель на простом драйвере

Сообщение RedSky »

vfv писал(а): 02 мар 2020, 18:19 как сделать чтобы менять направление движения?
Установить отрицательное на входе steps.


Блок для step/dir
Generator_2_V1.0b_(CODE).ubi
Будете делать на зелёных драйверах, имейте ввиду - умирают если отключить двигатель.
У вас нет необходимых прав для просмотра вложений в этом сообщении.
vfv
Сержант
Сообщения: 283
Зарегистрирован: 22 мар 2018, 12:35
Откуда: Самара
Имя: Валерий

Шаговый двигатель на простом драйвере

Сообщение vfv »

Драйвер к моему униполярному шаговому двигателю, я собрал сам:
Самодельный драйвер.jpg
Перепробовал много блоков для работы с ним, включая штатный. Но ваш блок , почему то работает с ним самое лучшее. Сейчас попробую и ваш блок для step/dir
Generator_2_V1.0b_(CODE).ubi.

Отправлено спустя 25 минут 4 секунды:
RedSky писал(а): 02 мар 2020, 18:42 Блок для step/dir
Generator_2_V1.0b_(CODE).ubi
Этот блок для меня пока не нужен.
А вот:
RedSky писал(а): 02 мар 2020, 18:42 Установить отрицательное на входе steps
Да, минус меняет направление. Теперь буду думать как программно менять минус плюс от концевиков.
У вас нет необходимых прав для просмотра вложений в этом сообщении.
vfv
Сержант
Сообщения: 283
Зарегистрирован: 22 мар 2018, 12:35
Откуда: Самара
Имя: Валерий

Шаговый двигатель на простом драйвере

Сообщение vfv »

RedSky писал(а): 02 мар 2020, 18:42 vfv писал(а): ↑Вчера{, 18:19}
как сделать чтобы менять направление движения?
RedSky писал(а): 02 мар 2020, 18:42 Установить отрицательное на входе steps.
А какое отрицательное значение на входе steps? -1
или как можно больше например -1000.
Я использую шаговый двигатель для непрерывного вращения и меняю только направление вращения концевиками. Т.е. установка количества шагов мне не нужно.
Однако попробовал подавать на вход steps для смены направления -1 и 1 . Да направление меняется,однако при установках 1 или -1 падает ток потребления и мощность. Если сделать -1000 и 1000 и более,то ток потребления возрастает, но увеличивается и мощность. Т.е. получается установка количества шагов влияет на мщность? А так всё работает хорошо, однако бывают редко случаи при включении двигателя с установкой в одну сторону, он как то кратко временно 1=2 шага дёргается в другую,а потом начинает правильное направление движения.
Аватара пользователя
RedSky
Лейтенант
Сообщения: 576
Зарегистрирован: 19 дек 2016, 20:07
Откуда: Днепропетровск
Имя: Алексей
Поблагодарили: 1 раз

Шаговый двигатель на простом драйвере

Сообщение RedSky »

Блок давно делал, для намоточного станка, непрерывное вращение кажется вообще не предполагалось. А станок так и не был запущен, проверялось на столе
А как вы при -1 и 1 добились непрерывного вращения?
vfv
Сержант
Сообщения: 283
Зарегистрирован: 22 мар 2018, 12:35
Откуда: Самара
Имя: Валерий

Шаговый двигатель на простом драйвере

Сообщение vfv »

Так:
001.Станок намотки нити.flp
Кнопка Пуск ,если на неё второй раз нажать Стоп.
Сделал две установки скорости.
Станок я уже прямо сейчас собираю. Так , что если,что подскажите, будет совсем актуально.
Укладчик намотки нити.png
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Аватара пользователя
leons
Сержант
Сообщения: 141
Зарегистрирован: 18 июн 2017, 17:07

Шаговый двигатель на простом драйвере

Сообщение leons »

Валерий а посмотрите мой проект под драйвер step/dir , очень подойдёт под ваши задачи , убрать лишнее и доделать поиск нуля ,
у вас на шаговике будет укладчик нитки ?
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Аватара пользователя
RedSky
Лейтенант
Сообщения: 576
Зарегистрирован: 19 дек 2016, 20:07
Откуда: Днепропетровск
Имя: Алексей
Поблагодарили: 1 раз

Шаговый двигатель на простом драйвере

Сообщение RedSky »

[ref]vfv[/ref], для станка проект написан, завтра выложу. Только он на LADе, в 6й версии нужно подправить.
Аватара пользователя
RedSky
Лейтенант
Сообщения: 576
Зарегистрирован: 19 дек 2016, 20:07
Откуда: Днепропетровск
Имя: Алексей
Поблагодарили: 1 раз

Шаговый двигатель на простом драйвере

Сообщение RedSky »

[ref]vfv[/ref], вот проект. Сделано только управление самой намоткой , без укладчика.
У вас нет необходимых прав для просмотра вложений в этом сообщении.
vfv
Сержант
Сообщения: 283
Зарегистрирован: 22 мар 2018, 12:35
Откуда: Самара
Имя: Валерий

Шаговый двигатель на простом драйвере

Сообщение vfv »

leons писал(а): 03 мар 2020, 22:23 Валерий а посмотрите мой проект под драйвер step/dir
Уважаемый leons! Дело в том, что я использую униполярный шаговый двигатель 6 проводов. Другого у меня нет. Значит управление должно быть только step, к ардуино идут четыре провода.А ваш проект под драйвер step/dir.
RedSky писал(а): 04 мар 2020, 11:15 RedSky » 58 минут назад
vfv, вот проект. Сделано только управление самой намоткой , без укладчика.
Алексей спасибо! Проект посмотрел. Но мне нужен укладчик (смена направления), а в проекте нет.
Вот, чтобы в блоках FLProg добавить к моему драйверу, схема пост #9, чтобы можно было управлять по step/dir. Ведь хороших блоков с step/dir на форуме выложено полно.
Аватара пользователя
RedSky
Лейтенант
Сообщения: 576
Зарегистрирован: 19 дек 2016, 20:07
Откуда: Днепропетровск
Имя: Алексей
Поблагодарили: 1 раз

Шаговый двигатель на простом драйвере

Сообщение RedSky »

Блоки те что step/dir только для драйверов типа https://3d-diy.ru/wiki/arduino-moduli/d ... lya-a4988/
Там принцип управления другой. Контроллеру не нужно вертеть фазы, та это делает сам драйвер. От контроллера нужно два сигнала. Первый: один импульс - один шаг. Второй - направление. Драйвер сам умеет дробить шаги до 1/32 и регулировать ток. Но подключение двигателя 4х проводное. Хотя возможно и ваш двигатель можно по 4м проводам подключить.
vfv
Сержант
Сообщения: 283
Зарегистрирован: 22 мар 2018, 12:35
Откуда: Самара
Имя: Валерий

Шаговый двигатель на простом драйвере

Сообщение vfv »

RedSky писал(а): 04 мар 2020, 12:56 Хотя возможно и ваш двигатель можно по 4м проводам подключить.
Да понятно.
Вот у меня собранная рабочая схема:
Рабочая схема с этим двигателем.jpg
С неё, я драйвер прикрутил к ардуино. Так может оставить ещё микросхему с DD3.1 и DD3.2 , а потом к ардуино, и управление сгодится для step/dir. Или я опять, чего то не понимаю?
У вас нет необходимых прав для просмотра вложений в этом сообщении.
edyapd
Капитан
Сообщения: 768
Зарегистрирован: 20 сен 2019, 11:38
Имя: Эдуард

Шаговый двигатель на простом драйвере

Сообщение edyapd »

vfv писал(а): 04 мар 2020, 13:27 Вот у меня собранная рабочая схема:

С неё, я драйвер прикрутил к ардуино
Так вы бы сразу нарисовали ту схему, которую прикручиваете к ардуино. Зачем кому-то надо додумывать, как вы это будете делать?
vfv
Сержант
Сообщения: 283
Зарегистрирован: 22 мар 2018, 12:35
Откуда: Самара
Имя: Валерий

Шаговый двигатель на простом драйвере

Сообщение vfv »

Всё верно! Нарисованную мной схему (она рабочая), оставив только драйвер и униполярник 6 концов, сделать на ардуино.
Ответить

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

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

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