Стъпков двигател: интеграция с Arduino

Стъпков мотор

Електрическите двигатели са все по-търсени, сред тях може би се открояват тези, които работят с постоянен ток, най-популярните в рамките на проектите на производителите с Arduino, тъй като те осигуряват мобилност. Сред тях подчертайте стъпкови двигатели които се използват за множество приложения, особено за роботиката, като задвижващи механизми и др.

Електрически автомобили, малки автономни роботи, индустриални приложения за автоматизация, повтарящи се устройства за движение и др. Причината сервомоторите и стъпковите двигатели да са толкова добри за тези приложения е, че могат изпълнявайте бавни или бързи движения, но преди всичко контролирани. Освен това задвижванията са непрекъснати за приложения, при които се изискват много спирания и стартирания с висока точност.

Видове електрически двигатели

В рамките на електрически двигатели могат да се подчертаят следните типове:

  • DC или DC мотор: Двигателите с постоянен ток работят с този тип ток, както подсказва името. Те могат да варират от няколко mW мощност до няколко MW в най-мощните и големи, които се използват за промишлени приложения, превозни средства, асансьори, конвейерни ленти, вентилатори и др. Скоростта на въртене (RPM) и приложеният въртящ момент могат да се регулират според подаването.
  • AC или AC двигател (асинхронен и навит ротор): те работят с променлив ток, с много специфичен ротор, който работи благодарение на фазите, които този тип ток допринася за генериране на въртене чрез магнитно отблъскване на електромагнита по подобен начин, както правят DC. Те са много евтини и достигат до няколко kW. Те могат да се регулират по скорост на въртене, но регулиращите елементи са по-скъпи от тези на DC. Те често се използват за домакински уреди.
  • Стъпков мотор- Известни също като степери, те са подобни в много отношения на DC, но с ниски скорости на въртене и мощности. Тук се откроява позиционирането на оста, т.е. точността да се поставят в определена позиция. Техният ъгъл на въртене и скорост могат да бъдат контролирани много, поради което преди са били използвани във флопи дискове, твърди дискове (HDD), роботи, автоматизация на процесите и т.н.
  • сервомотор: може да се каже, че това е еволюция на стъпковия двигател, работещ с малки мощности и скорости, които в някои случаи достигат до 7000 RPM. Този двигател включва редукторна кутия и контролна верига. Те имат същата точност на позициониране като степерите и са много стабилни по отношение на приложения въртящ момент, което ги прави идеални за някои роботи и промишлени приложения.

Стъпкови двигатели и серво мотори

ротор и статор

Вече знаете какви са тези два вида електронни двигатели, но бих искал да кажа нещо повече за степерите. Завоят, който правят, не се прави непрекъснато, а с малки стъпки, откъдето идва и името им. Роторът (част, която се върти) има формата на зъбно колело, докато статорът (частта, която не се върти) е изграден от преплетени поляризирани електромагнити. По този начин, когато човек е „активиран“, тези от страните му не се активират, което привлича зъба на ротора към него, позволявайки точното придвижване, за което те се характеризират.

drv8825
Свързана статия:
DRV8825: драйверът за стъпкови двигатели

Зависи от роторни зъби, ще бъде възможно да напреднете повече или по-малко в завоя. Ако имате повече зъби, са необходими повече стъпки за завършване на завой, но стъпките ще бъдат по-кратки, така че ще бъде по-точен двигател. Ако имате малко зъби, стъпките ще бъдат по-резки скокове, без толкова голяма точност. Следователно стъпките, които стъпков двигател ще трябва да предприеме, за да завърши един завой, ще зависят от ъгловите стъпки.

Тези стъпки ъглови са стандартизирани, въпреки че можете да намерите някои двигатели с нестандартна стъпка. Обикновено ъглите са: 1.8º, 5.625º, 7.5º, 11.25º, 18º, 45º и 90º. За да изчислите колко стъпки е необходим на стъпков двигател, за да извърши пълен оборот или завъртане (360º), просто трябва да разделите. Например, ако имате 45 ° стъпков двигател, ще имате 8 стъпки (360/45 = 8).

завъртане с пристрастия (фаза)

В рамките на тези двигатели имате еднополюсен (най-популярния), с 5 или 6 кабела, или биполярен, с 4 кабела. Според това ще се извърши едното или другото поляризационни последователности пропускащ ток през неговите намотки:

  • Поляризация за биполярен:
Paso Терминал А Терминал Б Терминал С Терминал D
1 +V -V +V -V
2 +V -V -V +V
3 -V +V -V +V
4 -V +V +V -V
  • За еднополюсен:
Paso Намотка A Намотка B Намотка C Намотка D
1 +V +V 0 0
2 0 +V +V 0
3 0 0 +V +V
4 +V 0 0 +V

Операцията и в двата случая е една и съща, поляризирайки намотките, за да привлекат ротора до мястото, където искате да бъде позиционирана оста. Ако искаш дръжте го в едно положение, трябва да поддържате поляризация за тази позиция и вуаля. И ако искате да се движи напред, поляризирате следващия магнит и той ще направи още една стъпка и така нататък ...

Ако използвате a сервомотор, вече знаете, че това е основно стъпков двигател, следователно всичко казано работи и за тях. Единственото нещо, което включва тези редуктори, за да се получат много повече стъпки на завой и по този начин да има много по-висока точност. Например, можете да намерите двигател с 8 стъпки на завой, че ако той има редуктор 1:64, тъй като това означава, че всяка стъпка от тези осем е разделена на 64 по-малки стъпки, което би дало максимум 512 стъпки на завой. Тоест, всяка стъпка би била около 0.7º.

l298n
Свързана статия:
L298N: модул за управление на двигатели за Arduino

Също така добавете, че трябва да използвате някои контрольор с които да се контролира поляризация, скорост и т.н., например с H-Bridge. Някои модели са L293, ULN2003, ULQ2003 и др.

Donde comprar

Ви купувайте го на различни онлайн сайтове или в специализирани магазини за електроника. Също така, ако сте начинаещ, можете да използвате комплекти, които включват всичко необходимо и дори чинията Arduino UNO и ръководство, за да започнете да експериментирате и да създавате вашите проекти. В тези комплекти е включено всичко, от което се нуждаете, от самия мотор, контролерите, платките, макета и т.н.

Пример за стъпков двигател с Arduino

Arduino със стъпков двигател и контролер

Накрая покажете a практически пример с Arduino, използвайки ULN2003 контролер и стъпков двигател 28BYJ-48. Това е много просто, но ще бъде достатъчно да започнете да се запознавате с операцията, за да можете да започнете да правите някои тестове и да видите как се държи ...

Както се вижда в електрическата схема, намотките на двигателя A (IN1), B (IN2), C (IN3) и D (IN4) са назначени за връзки 8, 9, 10 и 11 съответно на платката Arduino. От друга страна, платката на драйвера или контролера трябва да се захранва на своите 5-12V щифтове (към GND и 5V на Arduino) със съответното напрежение, така че тя от своя страна да захранва двигателя, свързан към белия пластмасов конектор, който има този драйвер или контролер.

това Двигател 28BYJ-48 Това е еднополюсен стъпков двигател с четири намотки. Следователно, за да получите представа за това как работи, можете да изпратите HIGH (1) или LOW (0) стойности на намотките от платката Arduino, както следва за стъпките:

Paso Намотка A Намотка B Намотка C Намотка D
1 ВИСОКО ВИСОКО LOW LOW
2 LOW ВИСОКО ВИСОКО LOW
3 LOW LOW ВИСОКО ВИСОКО
4 ВИСОКО LOW LOW ВИСОКО

В cuanto др скица или код, необходими за програмиране на вашето движение, както би било следното използване Arduino IDE (модифицирайте го и експериментирайте, за да тествате как се променя движението):

// Definir pines conectados a las bobinas del driver
#define IN1  8
#define IN2  9
#define IN3  10
#define IN4  11

// Secuencia de pasos a par máximo del motor. Realmente es una matriz que representa la tabla del unipolar que he mostrado antes
int paso [4][4] =
{
  {1, 1, 0, 0},
  {0, 1, 1, 0},
  {0, 0, 1, 1},
  {1, 0, 0, 1}
};

void setup()
{
  // Todos los pines se configuran como salida, ya que el motor no enviará señal a Arduino
  pinMode(IN1, OUTPUT);
  pinMode(IN2, OUTPUT);
  pinMode(IN3, OUTPUT);
  pinMode(IN4, OUTPUT);
}

// Bucle para hacerlo girar
void loop()
{ 
    for (int i = 0; i < 4; i++)
    {
      digitalWrite(IN1, paso[i][0]);
      digitalWrite(IN2, paso[i][1]);
      digitalWrite(IN3, paso[i][2]);
      digitalWrite(IN4, paso[i][3]);
      delay(10);
    }
}


Бъдете първите, които коментират

Оставете вашия коментар

Вашият имейл адрес няма да бъде публикуван. Задължителните полета са отбелязани с *

*

*

  1. Отговорен за данните: Мигел Анхел Гатон
  2. Предназначение на данните: Контрол на СПАМ, управление на коментари.
  3. Легитимация: Вашето съгласие
  4. Съобщаване на данните: Данните няма да бъдат съобщени на трети страни, освен по законово задължение.
  5. Съхранение на данни: База данни, хоствана от Occentus Networks (ЕС)
  6. Права: По всяко време можете да ограничите, възстановите и изтриете информацията си.