8 просмотров
Рейтинг статьи
1 звезда2 звезды3 звезды4 звезды5 звезд
Загрузка...

Шаговые двигатели как подключить easy driver

Управляем шаговым двигателем с помощью Arduino и контроллера Easy Driver

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

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

Необходимые элементы

  • Драйвер для шагового двигателя EasyDriver;
  • Небольшой шаговый двигатель;
  • Макетная плата;
  • Провода мама-мама;
  • Коннекторы;
  • Arduino Uno или подобный микроконтроллер;
  • Паяльник;
  • Источник питания на 12 В (или регулируемый источник питания)

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

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

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

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

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

Сборка драйвера

Самый простой метод использования драйвера EasyDriver — установить на нем коннекторы для последующей установки на макетной плате. Теоретически, можно закрепить коннекторы и на макетной плате.

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

Схема подключения

После распайки пришло время подключить драйвер к Arduino. Схема подключения несложная и приведена на рисунке ниже.

Примечание. Маленький шаговый двигатель выглядит не так, как он изображен на схеме подключения. У него должен быть коннектор с четырьмя разъемами на конце. Этот коннектор можно напрямую подключить к разъему с четырьмя коннекторами на драйвере (см. Рисунок после распайки выше). Только обратите внимание на даташит вашего двигателя. Бывает такое, что разводка кабелей не соответсвует пинам на драйвере.

Важно! Шаговые двигатели потребляют больше тока, чем может предоставить Arduino. В связи с этим мы будем питать Arduino от 12 В. При этом вход для питания (М+) на EasyDriver подключен к пину Vin на Arduino. Благодаря этому, можно запитывать Arduino и двигатель от одного источника.

Программа Arduino для вращения шагового двигателя

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

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

Драйвер шагового двигателя EasyDriver V44 A3967 для Arduino

EasyDriver представляет собой простой в использовании драйвер шагового двигателя, совместимы со всеми двигателями, которые работают с логикой от 0 до 5 вольта (или от 0 до 3,3 вольта , если закрыть вывод SJ2 на драйвере EasyDriver). EasyDriver работает с питанием шаговых двигателей от 7Вольт до 30 Вольт. EasyDriver имеет стабилизатор напряжения для цифрового интерфейса, который может быть установлен на 5V или 3.3V.
EasyDriver подключается как к шаговым двигателям (4,6 или 8 проводным шаговым двигателям) та и биполярным.

Читать еще:  Что означают белые свечи двигателя

A3967 микрошаговый драйвер.

MS1 и MS2 контакты изменяют микрошаг (Microstepping) на полный, половина, четверть и одну восьмую шагов (по умолчанию восьмой).

Совместимость с 4, 6 и 8 проводными шаговыми двигателями любого напряжения.

Регулируемый ток от 150 мА / фазы до 750 мА / фазы.

Диапазон напряжения питания от 7В до 30В. Чем выше напряжение, тем выше крутящий момент при высоких скоростях.

Включение (ВКЛ). При включении активный низкий вход сохраняется на всех выводах .

Спящий режим (SLEEP). Активным низким уровнем входного сигнала используется для минимизации энергопотребления, когда двигатель не используется. Отключает большую часть внутренней схемы в том числе выходов. Высокий логический вывод обеспечивает нормальное функционирование и запуск устройства с исходногого положение.

Схема подключения к L298N

Подключение к L298N увеличивает мощность .

Пример подключнения 3 осей
Пример подключения

С помощью программы можно продемонстрировать работу шагового двигателя. Выполняются две функции, поворот на 90 градусов (отрицательное вращение вращение в противоположном направлении), микрошаг (8)

Обе функции со скоростью .01 и 1. Скорость .01 медлено но большое усилие, и 1 с быстрой скорость но малым усилием.

  • Sketch code
  • Sketch code
  • Sketch code

Sketch code

//Released under the MIT License — Please reuse change and share
//Using the easy stepper with your arduino
//use rotate and/or rotateDeg to controll stepper motor
//speed is any number from .01 -> 1 with 1 being fastest —
//Slower Speed == Stronger movement

#define DIR_PIN 2
#define STEP_PIN 3

void setup() <
pinMode(DIR_PIN, OUTPUT);
pinMode(STEP_PIN, OUTPUT);
>

//rotate a specific number of degrees
rotateDeg(360, 1);
delay(1000);

rotateDeg(-360, .1); //reverse
delay(1000);

//rotate a specific number of microsteps (8 microsteps per step)
//a 200 step stepper would take 1600 micro steps for one full revolution
rotate(1600, .5);
delay(1000);

rotate(-1600, .25); //reverse
delay(1000);
>

void rotate(int steps, float speed) <
//rotate a specific number of microsteps (8 microsteps per step) — (negitive for reverse movement)
//speed is any number from .01 -> 1 with 1 being fastest — Slower is stronger
int dir = (steps > 0)? HIGH:LOW;
steps = abs(steps);

float usDelay = (1/speed) * 70;

for(int i=0; i 1 with 1 being fastest — Slower is stronger
int dir = (deg > 0)? HIGH:LOW;
digitalWrite(DIR_PIN,dir);

int steps = abs(deg)*(1/0.225);
float usDelay = (1/speed) * 70;

for(int i=0; i = 0 && analogRead(X_pin) 0) <
digitalWrite(dir_pin, HIGH); // (HIGH = anti-clockwise / LOW = clockwise)
digitalWrite(step_pin, HIGH);
delay(1);
digitalWrite(step_pin, LOW);
delay(1);
steps—;
>
>

while (analogRead(X_pin) > 900 && analogRead(X_pin) Рекомендуем:

Easy Servo Drive

TS808D является одной из моделей нашего гибридного сервопривода серии TS (easy servo), он имеет следующие характеристики: 1. Источник питания 1.TS808D 24

80 В постоянного тока, рекомендуется использовать 48 В пост. Тока 2.TS808D соответствует легкому сервомотору nema17, nema23, nema24 и nema34 3.Маленький размер, корпус из алюминиевого сплава, использование микросхемы первого класса 4.TS808D сочетает в себе предпочтительные свойства как шагового привода с открытым контуром, так и бесщеточного сервопривода, решает фатальную проблему «потери шагов» систем с открытым контуром, совершенствует шаговый двигатель высокая производительность двигателя, а также нагрев и шум двигателя и привода также значительно улучшены

Введение продукта: Easy Servo Drive TS808D

Гибридный сервопривод TS808D (шаговый привод с замкнутым контуром) основан на новейшей технологии DSP и усовершенствованном алгоритме управления комбинированием бесщеточных сервоприводов и шаговых систем. Он сочетает в себе предпочтительные характеристики как шаговых шаговых двигателей с открытым контуром, так и бесщеточных сервоприводов, решает роковую проблему «потери шагов» шаговых систем с открытым контуром, улучшает быстродействие шагового двигателя, а также значительно улучшается нагрев и шум двигателя и привода.

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

Особенности продукта:

● Рабочее напряжение: вход источника питания постоянного тока 24–80 В постоянного тока, рекомендуемое напряжение питания 48 В или 68 В постоянного тока

● Максимальный длительный выходной ток 8А, пиковый ток 10А

● Поддержка импульса + направление и импульс + тип команды импульса
● Принятие передовой технологии магнитно-ориентированного управления (FOC) и ШИМ-управления пространственным вектором (SVPWM).
● Принять передовые технологии переменного тока и переменной частоты, это может уменьшить нагрев и вибрацию двигателя и привода.

● Микрошаг (импульс / оборот) может быть установлен с помощью протюнера или DIP-переключателей.

● Аналоговый вход 0–5 В постоянного тока для режима скорости и поддержки функции управления скоростью ввода-вывода (настраивается).

● Поддержка перенапряжения, пониженного напряжения, перегрузки по току, защита от перегрузки
● Максимальная частота импульсов составляет 500 кГц (по умолчанию 200 кГц)
● Напряжение входного импульса составляет 4,5 — 28 В, нет необходимости подключать резистор

● Поддержка RS232 для ProTuner на ПК
● работать плавно, высокий крутящий момент на средней / высокой скорости; быстрая реакция и низкий нагрев, низкая вибрация.

Применение продукта:

Успешно внедрили гибридные сервосистемы TS808D в различном оборудовании, например, в таких как фрезерные станки с ЧПУ, небольшие фрезерные станки с ЧПУ, лазерные резаки / граверы, стоматологические мельницы, электронное оборудование для сборки и контроля, маркировочное оборудование, машины для захвата и размещения, XY столы

Читать еще:  Двигатель cawa что это

Prodcut Mounting (единица измерения: мм):

Описание функции продукта:

Введение в устройство шаговых двигателей

Если вы когда-либо имели удовольствие демонтировать старый принтер, чтобы сохранить электронные компоненты, то можете столкнуться с множеством цилиндрических загадочных моторов с 4 или более проводами, выступающими из сторон. Возможно, вы слышали характерное жужжание настольного 3D-принтера или глючную электромеханическую симфонию дисков в CD приводе? Если так, то вы столкнулись с шаговым двигателем!

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

Шаг 1: Что делает мотор шаговым двигателем?

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

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

Шаг 2: Типы шаговых двигателей


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

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

Биполярные двигатели, как правило, имеют четыре провода и являются более прочными, чем однополярный двигатель сравнительного размера, но поскольку у нас есть только одна катушка на фазу, нам нужно повернуть ток через катушки, чтобы перейти на один шаг. Наша потребность изменить ток означает, что мы больше не сможем управлять катушками напрямую с помощью одного транзистора, вместо этого — полная цепь h-моста. Построение правильного h-моста утомительно (не говоря уже о двух!), Поэтому мы будем использовать выделенный драйвер биполярного двигателя (см. Шаг 5).

Шаг 3: Понимание спецификаций шагового двигателя



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

Чтение паспорта двигателя

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

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

Шаг угла: При приблизительном разрешении 1,8 градусов на шаг мы получим 200 шагов на оборот. Хотя это является механическим разрешением, с помощью микроперехода мы можем увеличить это разрешение без каких-либо изменений двигателя (подробнее об этом в шаге 5).

Читать еще:  4а91 что за двигатель

Напряжение: номинальное напряжение этого двигателя составляет 3 вольта. Это функция тока и номинальных сопротивлений двигателя (закон Ома V = IR, следовательно, 3V = 2A * 1,5Ω)

Ток: сколько тока нужно этому двигателю? Два ампера на фазу! Эта цифра будет важна при выборе наших силовых транзисторов для базовой схемы управления.

Сопротивление: 1,5 Ом на фазу ограничит то, какой ток мы можем подать на каждую фазу.

Индуктивность: 2,5 мГн. Индуктивная природа катушек двигателя ограничивает скорость зарядки катушек.

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

Момент удержания: это то, какой момент удержания мы можем ожидать от двигателя, когда он не находится под напряжением.

Класс изоляции: класс B является частью стандарта NEMA и дает нам рейтинг в 130 градусов Цельсия. Шаговые двигатели не очень эффективны, и постоянное потребление максимального тока означает, что они будут сильно нагреваться при нормальной работе.

Показатели обмотки: диаметр провода 0,644 мм., количество витков в диаметре 15,5, сечение 0,326 мм2

Определение пар катушек

Хотя сопротивление обмоток катушки может варьироваться от двигателя к двигателю, если у вас есть мультиметр, вы можете измерить сопротивление на любых двух проводах, если сопротивление Шаг 4: Непосредственное управление шаговыми двигателями

Благодаря расположению проводов в однополярном двигателе мы можем последовательно включать катушки, используя только простые силовые полевые МОП-транзисторы. На рисунке выше показана простая схема с МОП-транзистором. Такое расположение позволяет просто контролировать уровень логики с помощью внешнего микроконтроллера. В этом случае легче всего использовать плату Intel Edison с коммутационной платой в стиле Arduino, чтобы получить легкий доступ к GPIO (однако подойдет любой микро с четырьмя GPIO). Для этой схемы используется транзистор IRF510 N-канальный мощный MOSFET. IRF510, способный потреблять до 5,6 ампер, будет иметь достаточно свободной мощности, чтобы удовлетворить потребности двигателя в 2 амперах. Светодиоды не нужны, но они дадут вам хорошее визуальное подтверждение последовательности работы. Важно отметить, что IRF510 должен иметь логический уровень не менее 5 В, чтобы он мог потреблять достаточный ток для двигателя. Мощность двигателя в этой цепи будет 3 В.

Полное управление однополярным двигателем с помощью этой настройки очень простое. Для того, чтобы вращать двигатель, нам нужно включить фазы в заданном режиме, чтобы он вращался правильно. Чтобы вращать двигатель по часовой стрелке, мы будем управлять фазами следующим образом: A1, B1, A2, B2. Чтобы вращать против часовой стрелки, мы просто изменим направление последовательности на B2, A2, B1, A1. Это хорошо для базового контроля, но что, если вы хотите большей точности и меньше работы? Давайте поговорим об использовании выделенного драйвера, чтобы сделать всё намного проще!

Шаг 5: Платы драйверов шаговых двигателей


Если вы хотите приступить к управлению биполярными двигателями (или однополярными двигателями в биполярной конфигурации), вам нужно взять специальную плату управления драйвером. На фото выше изображен драйвер Big Easy Driver и плата-носитель драйвера шагового двигателя A4988. Обе эти платы являются печатными платами для микрошагового двухполюсного драйвера шагового двигателя Allegro A4988, который на сегодняшний день является одним из наиболее распространенных чипов для привода небольших шаговых двигателей. Помимо наличия необходимых двойных h-мостов для управления биполярным двигателем, эти платы дают много возможностей для крошечной недорогой упаковки.

Эти универсальные платы имеют удивительно низкое соединение. Вы можете начать управлять двигателем, используя только три соединения (только два GPIO) с вашим главным контроллером: общее заземление, шаг и направление. Ступенчатый шаг и его направление остаются плавающими, так что нужно привязать их к опорному напряжению с нагрузочным резистором. Импульс, посылаемый на вывод STEP, будет перемещать двигатель на один шаг с разрешением в соответствии с эталонными выводами микрошага. Логический уровень на выводе DIR определяет, будет ли двигатель вращаться по часовой стрелке или против часовой стрелки.

В зависимости от того, как установлены выводы M1, M2 и M3, вы можете добиться увеличения разрешения двигателя с помощью микрошагования. Микрошаг включает в себя посылку разнообразных импульсов, чтобы тянуть двигатель между электромагнитным разрешением физических магнитов в роторе, обеспечивая очень точное управление. A4988 может перейти от полного шага до разрешения шестнадцатого шага. С нашим двигателем 1,8 градуса это обеспечит до 3200 шагов за оборот. Поговорим о мелких деталях!

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

Stepper — классика, встроенная в Arduino IDE, позволяет выполнять базовый шаг и управление скоростью вращения.

AccelStepper — гораздо более полнофункциональная библиотека, которая позволяет лучше управлять несколькими двигателями и обеспечивает правильное ускорение и замедление двигателя.

Intel C ++ MRAA Stepper — библиотека более низкого уровня для тех, кто хочет углубиться в управление необработанным шаговым двигателем C ++ с помощью Intel Edison.

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

голоса
Рейтинг статьи
Ссылка на основную публикацию
Adblock
detector