- Необхідний компонент
- Кроковий двигун NEMA17
- Модуль крокового драйвера A4988
- Кругова діаграма
- Пояснення коду
Кроковий двигун - це тип двигуна постійного струму, який працює з дискретними кроками і використовується скрізь, починаючи від камери спостереження і закінчуючи складними роботами та машинами. Крокові двигуни забезпечують точне управління, і їх можна диференціювати на основі крутного моменту, кроків за оберт та вхідної напруги. У нашому попередньому проекті ми контролювали кроковий двигун 28-BYJ48 за допомогою Arduino. 28-BYJ48 має відносно менший крутний момент, ніж інші крокові двигуни, такі як NEMA 14, NEMA17.
У цьому навчальному посібнику ми збираємося керувати кроковим двигуном NEMA17 за допомогою модуля крокового драйвера Arduino Uno та A4988. Кроковий двигун Nema17 має вищий крутний момент і вищу робочу напругу, ніж 28-BYJ48. Тут також буде прикріплений потенціометр для управління напрямком крокового двигуна.
Необхідний компонент
- Arduino UNO
- Кроковий двигун NEMA17
- Модуль крокового драйвера A4988
- 47 мкф конденсатор
- Потенціометр
Кроковий двигун NEMA17
Робота Nema17 подібна до звичайних крокових двигунів. Кроковий двигун NEMA 17 має лицьову панель розміром 1,7 х 1,7 дюйма, і він, як правило, має більше крутного моменту, ніж менші варіанти, такі як NEMA 14. Цей двигун має шість провідних проводів, а номінальна напруга становить 12 вольт. Він може працювати при меншій напрузі, але крутний момент впаде. Крокові двигуни не обертаються, вони рухаються, а двигун NEMA17 має кут кроку 1,8 градуса. означає, що він охоплює 1,8 градуса на кожному кроці. Схема підключення для NEMA17 наведена нижче.
Як бачите, цей двигун має однополюсну шестипровідну схему. Цей провід з'єднаний у дві роздільні обмотки. Чорний, жовтий, зелений дроти є частиною першої обмотки, де чорний - центральний кран, а жовтий і зелений - закінчення котушки, тоді як червоний, білий і синій - частина другої обмотки, в яких білий - центральний кран, а червоний і синій - котушка торцеві дроти. Зазвичай центральний провід крана залишають відключеним.
Крок за революцію для NEMA17
Крок за обертом для конкретного крокового двигуна обчислюється з використанням кута кроку цього крокового двигуна. Отже, у випадку, кут кроку NEMA 17 дорівнює 1,8 °.
Крок за оборот = 360 / кут кроку 360 / 1.8 = 200 кроків за революцію
Технічні характеристики NEMA17
- Номінальна напруга: 12 В постійного струму
- Кут кроку: 1,8 град.
- Кількість фаз: 4
- Довжина двигуна: 1,54 дюйма
- 4-провідний, 8-дюймовий свинець
- 200 кроків за оборот, 1,8 градуса
- Робоча температура: від -10 до 40 ° C
- Однополярний крутний момент: 22,2 унції
Тут також перевірте різні проекти, пов’язані з кроковим двигуном, які не лише передбачають базову взаємодію з різними мікроконтролерами, але також мають проекти робототехніки, які включають кроковий двигун.
Модуль крокового драйвера A4988
Модуль крокового драйвера керує роботою крокового двигуна. Крокові драйвери направляють струм на кроковий двигун через різні фази.
Драйвер 17 крокової A4988 Нема є модулем драйвера мікрошаговий, який використовується для управління біполярних крокових двигунів. Цей модуль драйвера має вбудований перекладач, що означає, що ми можемо керувати кроковим двигуном, використовуючи дуже мало контактів нашого контролера.
Використовуючи цей модуль драйвера двигуна Nema 17, ми можемо керувати кроковим двигуном, використовуючи лише два штифти, тобто STEP і DIRECTION. Штифт STEP використовується для управління кроками, тоді як штифт DIRECTION використовується для управління напрямком двигуна. Модуль драйвера A4988 забезпечує п’ять різних роздільних здатностей: повний крок, шаг кроку, чверть кроку, вісім кроків та шістнадцятий крок . Ви можете вибрати різну роздільну здатність кроків за допомогою контактів селектора роздільної здатності ((MS1, MS2 та MS3). Таблиця істинності цих контактів наведена нижче:
MS1 | MS2 | MS3 | Дозвіл мікрокроку |
Низький | Низький | Низький | Повний крок |
Високий | Низький | Низький | ½ Крок (напівкрок) |
Низький | Високий | Низький | ¼ Крок (Чверть кроку) |
Високий | Високий | Низький | 1/8 кроку (восьмий крок) |
Високий | Високий | Високий | 1/16 кроку (шістнадцятий крок) |
Технічні характеристики A4988
Макс. Робоча напруга: 35 В
Хв. Робоча напруга: 8 В
Макс. Струм на фазу: 2А
Роздільна здатність мікрокроку: повний крок, ½ крок, ¼ крок, 1/8 та 1/16 крок
Захист від зворотної напруги: Ні
Розміри: 15,5 × 20,5 мм (0,6 ″ × 0,8 ″)
Кругова діаграма
Схема керування кроковим двигуном Nema 17 з Arduino наведена на зображенні вище. Оскільки модуль A4988 має вбудований перекладач, це означає, що нам потрібно лише підключити штифти Step і Direction до Arduino. Ступінчастий штифт використовується для управління кроками, тоді як напрямний штифт використовується для управління напрямком. Кроковий двигун живиться від джерела живлення 12 В, а модуль A4988 - від Arduino. Потенціометр використовується для управління напрямком двигуна.
Якщо ви повернете потенціометр за годинниковою стрілкою, тоді степпер буде обертатися за годинниковою стрілкою, а якщо ви повернете потенціометр проти годинникової стрілки, то він повернеться проти годинникової стрілки. Конденсатор 47 мкф використовується для захисту плати від стрибків напруги. Виводи MS1, MS2 та MS3 залишені відключеними, це означає, що драйвер працюватиме в повноетапному режимі.
Повні з'єднання для Arduino Nema 17 A4988 наведені в таблиці нижче.
S.NO. |
A4988 Штифт |
Підключення |
1 |
VMOT |
+ більше акумулятора |
2 |
GND |
-ве батареї |
3 |
VDD |
5В Arduino |
4 |
GND |
GND Ардуїно |
5 |
STP |
Контакт 3 Arduino |
6 |
ДИР |
Штифт 2 Arduino |
7 |
1A, 1B, 2A, 2B |
Кроковий двигун |
Пояснення коду
Повний код з робочим відеокеруванням Nema 17 з Arduino наведено в кінці цього посібника, тут ми пояснюємо повну програму для розуміння роботи проекту.
Перш за все, додайте бібліотеку крокових двигунів до своєї IDE Arduino. Ви можете завантажити бібліотеку крокових двигунів звідси.
Після цього визначте кількість кроків для NEMA 17. Як ми розрахували, номер. кроків за оборот для NEMA 17 становить 200.
#включати
Після цього вкажіть штирі, до яких підключений модуль драйвера, та визначте тип інтерфейсу двигуна як Тип1, оскільки двигун підключений через модуль драйвера.
Степпер кроковий (КРОКИ, 2, 3); #define motorInterfaceType 1
Далі встановіть швидкість для крокового двигуна за допомогою функції stepper.setSpeed . Максимальна швидкість двигуна для NEMA 17 становить 4688 об / хв, але якщо ми працюємо швидше, ніж 1000 об / хв, крутний момент швидко падає.
void setup () { stepper.setSpeed (1000);
Тепер у головному циклі ми зчитуємо значення потенціометра з виводу A0. У цьому циклі є дві функції: одна - potVal , а інша - Pval . Якщо поточне значення, тобто potVal , перевищує попереднє значення, тобто Pval, ніж воно рухатиметься на десять кроків у напрямку за годинниковою стрілкою, а якщо поточне значення менше попереднього значення, то воно рухатиметься на десять кроків у напрямку проти годинникової стрілки.
potVal = map (analogRead (A0), 0,1024,0,500); if (potVal> Pval ) stepper.step (10); if (potVal
Тепер підключіть Arduino до свого ноутбука та завантажте код на свою плату Arduino UNO за допомогою Arduino IDE, виберіть плату та номер порту, а потім натисніть кнопку завантаження.
Тепер ви можете контролювати напрямок крокового двигуна Nema17 за допомогою потенціометра. Повна робота проекту показана у відео нижче. Якщо у вас є якісь сумніви щодо цього проекту, опублікуйте їх у розділі коментарів нижче.