У конструкції крокової двигуна використовується блок електромагнітних котушок (обмоток збудження) на статорі і певну кількість постійних магнітів, які на роторі. При подачі електричного струму, котушки генерують електромагнітне поле, яке притягує або відштовхує найближчий магніт на валу двигуна. Зрозуміло, це призводить до обертання валу двигуна, а також дає можливість точно регулювати кут його повороту. Однією з особливостей конструкції крокових двигунів також є збереження положення вала після відключення живлення.
Найбільш поширені два типи крокових двигунів - уніполярні і біполярні. На відміну від біполярних, уніполярні крокові двигуни мають 5 або 6 штирі, через які здійснюється управління чотирма котушками. Харчування (плюс) на кожну з котушок подається по загальній шині харчування. що і визначає назву типу двигуна - уніполярний. До мінусовій шині кожна з котушок підключається через другий висновок, через які також подаються імпульси. керуючі обертанням.
У статті описується типовий представник класу уніполярних двигунів - Unipolar Stepper Motor 28-DYJ48.
- номінальна напруга живлення: 5 Вольт (постійний струм)
- кількість фаз: 4
- кількість кроків: 64
- кількість мікрошагов: 4096
- крок: 5.625 Градусів
- номінальна частота: 100 Герц
- номінальний опір обмоток (при 25 Градусах за Цельсієм): 50 Ом
- частота холостого ходу (за годинниковою стрілкою). 600 Герц
- частота холостого ходу (проти годинникової стрілки) 1000 Герц
- крутний момент (за годинниковою стрілкою, при частоті 120 Герц): 34,3 Ньютон-метр
- крутний момент: 34,3 Ньютон-метрів
- момент тертя (опір обертанню): 600-1200 Грамів-на-сантиметр
- номінальна тяга: 300 Грамів-на-сантиметр
- Клас електробезпеки: А
Програмне середовище розробки для Arduino містить дуже просту у використанні стандартну бібліотеку для роботи з кроковими двигунами stepper.h.
Після складання схеми з Arduino, крокової мотора і плати управління, досить лише завантажити програмний код в мікроконтролер і активувати його виконання.
Все працює, ветітся, і дзижчитьПри програмуванні Arduino, для точного позиціонування вала ви повинні обов'язково враховувати характеристики двигуна. наведені в специфікації. Так, якщо передавальне число мотора дорівнює 64, а кут повороту кожного кроку дорівнює 5,626 градусів, то кількість мікрошагов можна розрахувати за наступною формулою:
Кількість мікрошагов = кількість кроків в одному обороті * передавальне число.
Таким чином, для Unipolar Stepper Motor 28-ВYJ48 кількість мікрошагов дорівнює (360 / 5,625) * 64 = 4096. Саме результат цього розрахунку ви повинні вказати в програмному коді як максимальна кількість мікрошагов. Для крокової двигуна з кутом повороту за один крок в 7,5 градусів і передавальним числом, рівним 16 розрахунки такі ж, зрозуміло з іншими базовими вступними. Отже, кількість кроків на один повний оборот дорівнює 48, тобто 360 / 7,5 = 48. Максимальна кількість мікрошагов вважаємо, множачи отримане значення на передавальне число, тобто, 48 * 16 = 768. Запам'ятайте! Все залежить від специфікації, так що уважно вивчайте інструкції для розрахунку правильних значень керуючих команд.
Нарешті, перейдемо до управління і харчуванню вашого крокової двигуна. В принципі, виробником рекомендується використовувати зовнішнє джерело живлення з вихідною напругою 5 Вольт і струмом 500 міліампер.
Пам'ятайте! Харчування двигуна безпосередньо через 5 вольтової висновок Arduino неприпустимо. Це може привести до виходу мікроконтролера з ладу через перевантаження по харчуванню.
Напрямку обертання валу, усунення проблеми
Тремтячими руками. задаємо кількість мікрошагов як аргумент оператора step (steps); і заливаємо код в мікроконтролер. При наявності електроживлення, двигун провертає вал на заданий кут (кількість кроків), потім ще, і ще. Теорія говорить, що напрямку обертання валу змінюється знаком (більше або менше нуля) змінної, яка визначає кількість мікрошагов.
Нижче наведено модифікований програмний код, який змушує двигун обертати вал за годинниковою стрілкою і в зворотному напрямку.
BYJ48 Stepper motor code
30 Replies to "Крокове двигун BYJ48. Теорія управління "
Hind.