Працюємо з 09:00 до 19:00 Пн-Пт
Київ біля ТЦ Квадрат бул.Перова


Привет, друзья! Предлагаю вам практический алгоритм, как правильно подключить обмотки шагового двигателя к драйверу. Начинающие, и не только, ардуинщики при работе с шаговыми двигателями часто сталкиваются с проблемой определения, где выводы первой обмотки, где второй, где начало первой обмотки, где второй. Так же часто возникает вопрос как проводами поменять направление вращения двигателя. Давайте в этом видео разберёмся, как с высокой степенью четкости подходить к решению этих вопросов.



Давайте подпишемся на канал, лайкнем это видео и поехали дальше.

В идеальном случае нам может попасться широко известный тип шагового двигателя, у которого имеется стандартный неизменный клеммник, схему подключения которого легко найти в гугл-картинках. Так же желательно, чтобы была и легко находимая схема подключения имеющегося драйвера. Тогда их чаще всего получается подключить с первого раза без ошибок. Хотя я умудрялся и в таких случаях напутать. Но мы будем исходить из того, что двигатель у нас с неизвестной цветовой маркировкой проводов, что часто становится проблемой и схемы подключения обмоток двигателя к имеющемуся драйверу нет.

Кстати насчет схем подключения драйверов, тут тоже есть свои факторы запутывания и непоняток. Вот к примеру обозначения выходов трёх самых популярных драйверов. Кружочками будем обозначать условное начало обмотки двигателя. Все обозначения здесь сильно отличаются у каждого драйвера. Эти отличия начинаются с самих инструкций на микросхемы драйверов. Прямо в 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


<< Проекты << Все товары >> Статьи, уроки >>

Написать отзыв

Примечание: HTML разметка не поддерживается! Используйте обычный текст.
    Плохо           Хорошо
Шилд DHT11 для WeMos D1 mini

Шилд DHT11 для WeMos D1 mini

Шилд для измерения температуры и влажности на основе цифрового датчика DHT11 под плату контролл..

52.55грн.

Arduino Nano + расширитель пинов + управление двигателем актуатора

Arduino Nano + расширитель пинов + управление двигателем актуатора

Пример реверсивного управления двигателем актуатора при помощи драйвера L298N и расширителя вхо..

Модуль расширения входов-выходов 4 реле и 4 DI  I2C

Модуль расширения входов-выходов 4 реле и 4 DI I2C

Интересный модуль расширения 4-х входов и 4 релейных выходов с коммуникацией I2C на основе микросхем..

214.20грн.

KiCad уроки рисования схем и разработки печатных плат

KiCad уроки рисования схем и разработки печатных плат

Вас приветствует сайт гикматик! Сегодня поговорим о мега-полезной и доступной программе KiCad. Пораб..

Стойка латунная М3 высотой 15мм шестигранник мама-мама

Стойка латунная М3 высотой 15мм шестигранник мама-мама

Латунная стойка мама-мама с резьбой М3 и шестигранным внешним сечениемПрименяется при конструировани..

7.34грн.