Управление шаговым мотором с помощью ардуино

Шаговый двигатель (stepper motor) предназначен для точного позиционирования или перемещения объекта на заданное количество шагов вала. Плата Arduino может управлять шаговым двигателем с помощью драйвера и библиотеки stepper.h или accelstepper.h. Рассмотрим принцип работы и схему подключения шагового двигателя к Arduino Uno / Nano, а также разберем скетч для управления шаговым мотором.

Видео:NEMA17 Управление шаговым двигателем - Stepper motor with ArduinoСкачать

NEMA17 Управление шаговым двигателем  - Stepper motor with Arduino

Принцип работы шагового двигателя

В зависимости от конструкции, сегодня применяются три вида шаговых двигателей: с постоянным магнитом, с переменным магнитным сопротивлением и гибридные двигатели. У двигателей с постоянным магнитом число шагов на один оборот вала доходит до 48, то есть один шаг соответствует повороту вала на 7,5°. Гибридные двигатели обеспечивают не меньше 400 шагов на один оборот (угол шага 0,9°).

Фото. Устройство шагового мотора в разрезе

Подсчитав количество сделанных шагов, можно определить точный угол поворота ротора. Таким образом, шаговый двигатель является сегодня идеальным приводом в 3D принтерах, станках с ЧПУ и в другом промышленном оборудовании. Это лишь краткий обзор устройства и принципа работы stepper motor, нас больше интересует, как осуществляется управление шаговым двигателем с помощью Ардуино.

Видео:Как подключить шаговый двигатель к ArduinoСкачать

Как подключить шаговый двигатель к Arduino

Драйвер шагового двигателя Ардуино

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

Фото. Виды драйверов для управления шаговым двигателем

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

Схема подключения шагового двигателя 28BYJ-48 к Arduino Uno через драйвер ULN2003 изображена на рисунке ниже. Основные характеристики мотора 28BYJ-48: питание от 5 или 12 Вольт, 4-х фазный двигатель, угол шага 5,625°. Порты драйвера IN1 — IN4 подключаются к любым цифровым выводам платы Arduino Mega или Nano. Светодиоды на модуле служат для индикации включения катушек двигателя.

Видео:ПОДКЛЮЧАЕМ ШАГОВЫЙ ДВИГАТЕЛЬ К ARDUINO [Уроки Ардуино #14]Скачать

ПОДКЛЮЧАЕМ ШАГОВЫЙ ДВИГАТЕЛЬ К ARDUINO [Уроки Ардуино #14]

Как подключить шаговый двигатель к Ардуино

Для этого занятия нам потребуется:

  • плата Arduino Uno / Arduino Nano / Arduino Mega;
  • драйвер шагового двигателя ULN2003;
  • шаговый двигатель 28BYJ-48;
  • провода «папа-мама».

Ардуино и шаговый двигатель: основы, схемы, подключение и управление

Шаговые двигатели используют для управления положением чего-либо, или для вращения рабочего узла с заданной скорости и на заданный угол. Такие особенности сделали возможным его применение в робототехнике, станках с числовым программным управлением (ЧПУ), и других системах автоматизации. В этой статье мы рассмотрим ряд вопросов связанных с устройством шаговых двигателей и способами их управления с помощью микроконтроллера Arduino.

Управление шаговым мотором с помощью ардуино

Шаговый двигатель отличия от обычного

Все используемые на практике электродвигатели работают за счет электродинамических явлений и процессов происходящих в магнитных полях роторов и статоров. Как мы уже упомянули, любой двигатель состоит как минимум из двух частей – подвижной (ротор) и неподвижной (статор). Для его вращения нужно чтобы и магнитное поле тоже вращалось. Поле ротора вращается вслед за полем статора.

Читайте также: Ул текстильщиков лодки моторы

В принципе, таких базовых сведений достаточно для понимания общей картины работы электрических двигателей. Однако на самом деле промышленность производит различные варианты электродвигателя, среди которых:

1. Асинхронный двигатель с короткозамкнутым или с фазным ротором.

2. Синхронный двигатель с обмотками возбуждения или с постоянными магнитами.

3. Двигатель постоянного тока.

4. Универсальный коллекторный двигатель (работает и на постоянном токе и на переменном, ведь обмотки ротора сами подключаются и отключаются от контактов источника питания за счет конструкции ламелей и якоря).

5. Бесщеточные двигатели постоянного тока (BLDC).

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

Управление шаговым мотором с помощью ардуино

Определение

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

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

Управление шаговым мотором с помощью ардуино

Шаговый двигатель иногда называют двигателем с конечным количеством положений ротора. Звучит не совсем понятно, давайте разберемся. Представим обычный двигатель – положение его ротора никак не фиксируется, то есть он просто вращается пока подключено питание, а когда оно отключается, то останавливается через какое-то время, зависящее от его инерции. Положений ротора может быть сколько угодно много, а отличаться они могут на мельчайшие доли градуса.

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

Управление шаговым мотором с помощью ардуино

Конструкция

На статоре электродвигателя закреплены обмотки возбуждения. Его ротор выполняется из магнитомягких или магнитотвердых материалов. От материала ротора зависит крутящий момент и фиксация вала при обесточенных обмотках. Эти параметры могут быть критичными.

Управление шаговым мотором с помощью ардуино

Поэтому выделяют магнитотвердые роторы (они же на постоянных магнитах) и магнитомягкие (реактивные) роторы, кроме них есть и гибридные роторы.

Гибридный ротор делают зубчатым, количество зубцов соответствует количеству шагов. Зубцы расположены вдоль оси ротора. При этом такой ротор разделен на две части поперек. Между ними установлен постоянный магнит, таким образом, каждая из половин ротора является полюсом магнита. Также следует сказать, о том, что половины ротора повернуты на половину шага зубцов друг относительно друга.

Управление шаговым мотором с помощью ардуино

Как уже было сказано, такой двигатель является синхронным, так и процесс его вращения заключается в создании вращающего поля ротора, за которым стремится магнитный ротор, а это реализовывается за счет переключения контроллером обмоток поочередно.

Читайте также: Сколько стоит мотор от мтз

Виды шаговых двигателей ШД по конструкции обмоток делят на три основных группы по схеме подключения обмоток:

Управление шаговым мотором с помощью ардуино

Биполярные электродвигателя в большинстве своем имеют 4 контакта – это выводы с двух обмоток. Внутри двигателя они по большому счету никак не соединены между собой. Основной проблемой является то, что нужно обеспечить переключение полярности питания, это значит, что драйвер и сам процесс управления усложнится.

Униполярные напоминают соединение обмоток по схеме звезды. Другими словами, у вас есть 5 выводов – 4 из них это концы обмоток, а 1 – точка соединения всех обмоток.

Для управления таким двигателем нужно просто подавать поочередно питание на каждый из концов обмотки (или их пару, в зависимости от выбранного режима вращения), таким образом будет запитываться каждый раз половинка обмотки. Может работать в биполярном режиме, если запитывать полностью всю обмотку минуя отвод от её середины.

Двигатели с 4 обмотками имеют преимущество в том, что вы можете подключить обмотки любым удобным для вас образом и получить как биполярный, так и униполярный двигатель.

Режимы управления

Различают 4 основных режима управления шаговым двигателем:

Волновым управлением называют управление одной обмоткой. Т.е. одновременно ток течет через одну из обмоток, отсюда две отличительных черты – низкое энергопотребление (это хорошо) и низкий крутящий момент (это плохо).

В данном случае этот двигатель делает 4 шага за один оборот. Реальные же двигатели делают десятки шагов за один оборот, это достигается бОльшим количеством чередований магнитных полюсов.

Полношаговое управление является наиболее часто используемым. Здесь напряжение подается не на одну обмотку, а на две сразу. Если обмотки соединены параллельно – то ток удваивается, а если последовательно, то удваивается напряжение питания соответственно. С одной стороны в таком методе управления двигатель потребляет больше энергии, с другой – крутящий момент 100%, в отличие от предыдущего.

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

Стоит учесть, что момент на валу плавает от 50 до 100% в зависимости от того 1 или 2 две обмотки задействованы в данный момент.

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

Управление шаговым мотором с помощью ардуино

Где взять шаговый двигатель

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

1. Принтера. Шаговые двигатели могут стоять на вращении вала подачи бумаги (но может быть и двигатель постоянного тока с датчиком перемещения).

Читайте также: Муфта распредвала мерседес 274 мотор

2. Сканеры и МФУ. В сканерах часто устанавливают шаговый двигатель и механическую часть, направляющую вдоль которой ходит каретка, эти детали также могут стать полезны при разработке самодельного ЧПУ станка.

3. CD и DVD приводы. В них также можно достать и штанги и винтовые валы для самоделок и различных ЧПУ.

Управление шаговым мотором с помощью ардуино

4. Floppy-дисководы. В дискетниках также есть шаговые двигатели, особо ценятся флопики формата 5.25”.

Управление шаговым мотором с помощью ардуино

Драйвер для шагового двигателя

Для управления шаговыми двигателями используют специализированные микросхемы-драйвера. В большинстве своем это H-мост из транзисторов. Благодаря такому включению появляется возможность включать на обмотку напряжение нужной полярности. Эти микросхемы подходят и для управления двигателями постоянного тока с поддержкой изменения направления вращения.

В принципе очень маленькие двигателя можно запустить и прямо от пинов микроконтроллера, но обычно они выдают до 20-40 мА, чего в большинстве случае недостаточно. Поэтому приведем несколько примеров драйверов для шаговых двигателей:

1. Платы на базе L293D. Их множество, одна из таких продается под отечественной маркой «Амперка» под название Troyka Stepper, пример его использования в реальном проекте приведен на видео ниже. Преимущество конкретно этой платы в том, что на ней расположены микросхемы логики которые позволяют сократить количество используемых для управления пинов.

Сама по себе микросхема работает под напряжение 4.5-36В и выдает ток до 600мА-1А в зависимости от корпуса ИМС.

2. Драйвер на базе A4988. Питается напряжением до 35В, выдерживает ток до 1А без радиатора, а с радиатором до 2А. Может управлять двигателем, как целыми шагами, так и частями – от 1/16 шага до 1 шага, всего 5 вариантов. Содержит два H-моста. С помощью подстроечного резистора (видно на правом фото) можно задавать выходной ток.

Управление шаговым мотором с помощью ардуино

Размер шага задается сигналами на входах MS1, MS2, MS3.

Управление шаговым мотором с помощью ардуино

Вот схема его подключения, каждый импульс на входе STEP задает поворот двигателя на 1 шаг или на микрошаг.

Управление шаговым мотором с помощью ардуино

3. Драйвер на базе ULN2003 работает с двигателями на 5 и на 12В и выдаёт ток до 500 мА. На большинстве плат расположены 4 светодиода индицирующих работу каждого из каналов.

Управление шаговым мотором с помощью ардуино

Также на плате вы можете видеть клеммную колодку для подключения двигателей, кстати, многие из них продаются именно с таким разъёмом. Примером такого двигателя является 5В модель – 28BYJ-48.

Управление шаговым мотором с помощью ардуино

И это не все варианты драйверов для шаговых двигателей, на самом деле их еще больше.

Подключение к Arduino драйвера и шагового двигателя

В большинстве случаев нужно использовать микроконтроллер в паре с драйвером для шагового двигателя. Давайте рассмотрим схему подключения и примеры программного кода. Рассмотрим подключение на базе последнего приведенного драйвера – ULN2003 к плате Arduino. И так у него есть 4 входа, они подписаны, как IN1, IN2 и т.д. Их нужно соединить с цифровыми пинам платы ардуино, а к драйверу подсоединить моторчик как показано на рисунке ниже.

Управление шаговым мотором с помощью ардуино

Далее в зависимости от способа управления вы должны подавать на входы 1 или 0 с этих пинов включая 1 или 2 обмотки в нужно последовательности. Код программы полношагового управления выглядит примерно так:

  • Свежие записи
    • Чем отличается двухтактный мотор от четырехтактного
    • Сколько масла заливать в редуктор мотоблока
    • Какие моторы бывают у стиральных машин
    • Какие валы отсутствуют в двухвальной кпп
    • Как снять стопорную шайбу с вала


    🎥 Видео

    Шаговые двигатели, и как ими управлять с помощью микроконтроллераСкачать

    Шаговые двигатели, и как ими управлять с помощью микроконтроллера

    Управление шаговым двигателем. Драйвер A4988, подключение и настройкаСкачать

    Управление шаговым двигателем. Драйвер A4988, подключение и настройка

    Подключение двигателя без электроники и Ардуино!Скачать

    Подключение двигателя без электроники и Ардуино!

    Управление моторами с ArduinoСкачать

    Управление моторами с Arduino

    Панель управления шаговым двигателем на Arduino.Скачать

    Панель управления шаговым двигателем на Arduino.

    NEMA17: Управление шаговым двигателем в реальном времени с ArduinoСкачать

    NEMA17: Управление шаговым двигателем в реальном времени с Arduino

    Уроки Arduino. Управление моторами с библиотекой GyverMotorСкачать

    Уроки Arduino. Управление моторами с библиотекой GyverMotor

    Простое управление оборотами шагового двигателя.Скачать

    Простое управление оборотами шагового двигателя.

    Урок 40 Часть 1 Шаговый двигатель Nema17 и драйвер А4988 в программе FlprogСкачать

    Урок 40 Часть 1 Шаговый двигатель Nema17 и драйвер А4988 в программе Flprog

    Как настроить ШАГОВЫЙ ДВИГАТЕЛЬ 28BYJ-48 Arduino?! ОбзорСкачать

    Как настроить ШАГОВЫЙ ДВИГАТЕЛЬ 28BYJ-48 Arduino?! Обзор

    Управление биполярным шаговым двигателем при помощи инкрементального энкодера. Инкрементный энкодер.Скачать

    Управление биполярным шаговым двигателем при помощи инкрементального энкодера. Инкрементный энкодер.

    Управление шаговым двигателем через Arduino (Arduino+TB6560+Nema 23)Скачать

    Управление шаговым двигателем через Arduino (Arduino+TB6560+Nema 23)

    Шаговый двигатель 28BYJ-48 с драйвером ULN2003 - Подключение к ArduinoСкачать

    Шаговый двигатель 28BYJ-48 с драйвером ULN2003 - Подключение к Arduino

    ⚙️Управляем двигателем😁 Шаговый двигатель подключениеСкачать

    ⚙️Управляем двигателем😁 Шаговый двигатель подключение

    Шаговый двигатель + оптический энкодерСкачать

    Шаговый двигатель + оптический энкодер

    Управление двумя униполярными шаговыми двигателями с помощью джойстика на базе Arduino uno.Скачать

    Управление двумя униполярными шаговыми двигателями с помощью джойстика на базе Arduino uno.

    управляем шаговым двигателем с телефона Двигатель 28byj 48Скачать

    управляем шаговым двигателем с телефона Двигатель 28byj 48
Поделиться или сохранить к себе:
Технарь знаток