Привет, друзья! Предлагаю вам практический алгоритм, как правильно подключить обмотки шагового двигателя к драйверу. Начинающие, и не только, ардуинщики при работе с шаговыми двигателями часто сталкиваются с проблемой определения, где выводы первой обмотки, где второй, где начало первой обмотки, где второй. Так же часто возникает вопрос как проводами поменять направление вращения двигателя. Давайте в этом видео разберёмся, как с высокой степенью четкости подходить к решению этих вопросов.
Давайте подпишемся на канал, лайкнем это видео и поехали дальше.
В идеальном случае нам может попасться широко известный тип шагового двигателя, у которого имеется стандартный неизменный клеммник, схему подключения которого легко найти в гугл-картинках. Так же желательно, чтобы была и легко находимая схема подключения имеющегося драйвера. Тогда их чаще всего получается подключить с первого раза без ошибок. Хотя я умудрялся и в таких случаях напутать. Но мы будем исходить из того, что двигатель у нас с неизвестной цветовой маркировкой проводов, что часто становится проблемой и схемы подключения обмоток двигателя к имеющемуся драйверу нет.
Кстати насчет схем подключения драйверов, тут тоже есть свои факторы запутывания и непоняток. Вот к примеру обозначения выходов трёх самых популярных драйверов. Кружочками будем обозначать условное начало обмотки двигателя. Все обозначения здесь сильно отличаются у каждого драйвера. Эти отличия начинаются с самих инструкций на микросхемы драйверов. Прямо в pdf на каждую из этих популярных микросхем создатели заложили столько путанины – как тут разобраться без бокала пива!?
По возможности нужно тестировать подключение на ненагруженном шаговом двигателе. Для управления возьмем контроллер Arduino NANO. Будем использовать его просто как задающий генератор. Вы можете взять любой драйвер шагового двигателя. Только разберитесь по документации или по подписям на плате, где находятся пары выходов под каждую обмотку. Я возьму самый популярный драйвер A4988. Вот схема включения для нашего универсального алгоритма подключения обмоток двигателя. От контроллера подается прямоугольный сигнал известной частоты на вход STEP драйвера, который отвечает за запуск шагов. При этом вход DIR, отвечающий за направление вращения ротора, подключен к общему проводу – он нам не понадобится. Так же у конкретного драйвера необходимо подать питание логики (для некоторых драйверов это не нужно). А так же необходимо подать разрешающие вращение сигналы, такие как RESET, SLEEP, ENABLE. Для драйвера A4988 можно просто поставить перемычку между RESET и SLEEP – это переведёт драйвер в рабочий режим. Так же подключаем провода питания двигателя к источнику 12В. А сами катушки двигателя стараемся по имеющимся схемам и документациям подключить хотя бы к своим парам выходов драйвера. Но, если не получается разобраться сразу, не отчаивайтесь – мы здесь разберём все случаи.
Теперь по быстрому обратим внимание на программу, которая будет загружена в Arduino NANO. Я беру стандартный пример Blink, который мигает светодиодом раз в две секунды и назначаю свой выход номер 2, к которому подключен вход STEP. А так же ставлю задержку в 1 миллисекунду. Это означает, что на вход STEP драйвера пойдет прямоугольный сигнал с периодом в 2 миллисекунды или 500 Гц, что для 200-шагового двигателя соответствует 2,5 об./сек или 150 об./мин. Эта скорость и не большая и не маленькая и как по мне хорошо подходит для экспериментов по подключению обмоток двигателя. Кстати вместо контроллера Arduino, вы можете то же самое проделать и при помощи генератора прямоугольных импульсов. Выставьте на нем частоту приблизительно равную 500 Гц. Амплитуда напряжения на выходе должна быть 5В. Соединяете общий провод и выход генератора подключаете ко входу STEP драйвера.
void setup() { pinMode(2, OUTPUT); } void loop() { digitalWrite(2, HIGH); delay(1); digitalWrite(2, LOW); delay(1); }
Итак после подключения у вас получится одна из четырех ситуаций: в первой вы правильно угадаете начала обеих катушек; во втором случае одна из катушек будет подключена началом в обратную сторону; в третьем случае вы угадаете начала катушек но перепутаете пары выходов драйвера; и в четвертом случае будет перепутано все максимально. Теперь попробуем все эти случаи на практике.
В первом идеальном случае ротор двигателя вращается с ожидаемой скоростью в ожидаемом нами направлении.
Во втором случае наблюдаем обычную скорость вращения и нормальный режим работы двигателя. Только вращение направлено в другую сторону. В большинстве случаев вам подойдет и так.
В третьем случае у нас перепутаны пары выходов драйвера и они не совпадают с выводами своей катушки. Вращение непредсказуемое, а точнее дергание ротора вперёд и обратно.
В четвертом случае все повторяется с третьего опыта. Часто такое подключение запутывает своей работой наполовину и кажется, что все как бы подключено правильно, только направление одной обмотки нужно поменять и все. На самом деле оно так и есть, но менять надо подключение не одной обмотки, а двух проводов с разных обмоток.
И, чтобы быстро поменять направление вращения ротора при помощи проводов, я переворачиваю зеркально все 4 провода от двигателя.
Еще раз более внимательно разберём в графическом виде, что нужно переворачивать. Здесь буквами А и В обозначены пары выходов драйвера. В первом случае нас все устраивает. Во втором случае нам не понравится направление вращения ротора по умолчанию. Для поворота в правильную сторону вам нужно поменять провода на одной из пар выходов драйвера. В третьем случае двигатель дергается на месте, что означает, что нужно поменять местами два провода из разных пар выходов драйвера. В четвертом случае все так же как и в третьем, только направление вращения ротора после замены местами двух проводов нам может не понравиться и тогда мы оказываемся на втором случае и уже знаем как развернуть ротор в другую сторону. В общем, как бы мы не подключили шаговый биполярный двигатель к исправному драйверу, получаем два варианта событий: либо ротор вращается в рабочем режиме, либо дергается на месте. И, чтобы он перестал дергаться и вращался нормально, вам нужно перекинуть два провода. Это и есть алгоритм подключения шагового двигателя.
Спасибо за внимание! Нам очень поможет ваша подписка и лайк!
17.03.2021
Модуль блока питания 12В 250мА
Удобный модуль питания из 220В AC в 12В постоянного тока. Разработан для установки на печатную плату..
149.59грн.
Шестерня для зубчатого ремня на 30 зубьев под ось 8 мм
Используется для передачи и редукции крутящего момента от двигателя до оси 8 ммКоличество зубьев 30 ..
76.89грн.
Терминальный модуль для Wemos D1 mini
Модуль для установки Wemos D1 mini с винтовыми клеммниками.Имеет выход шины I2C нормализованный под ..
155.90грн.
Подшипник для зубчатого ремня GT2 20 зубьев
Подшипник для натяжения зубчатого ремня GT2 6мм на ось(крепление) 5 мм20 зубьевШирина 10 мм..
53.28грн.
Стойка нейлоновая М3 15мм + 6мм
Стойка для крепления различных електронных модулей к корпусу устройстваВысота стойки 15 ммДлина внеш..
3.46грн.