Помогнете на развитието на сайта, споделяйки статията с приятели!

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

въведение

DC електрическата машина е една от най-лесните за експлоатация, благодарение на която тя често се използва в радиоелектрониката и роботните устройства. Тази популярност се дължи на простотата на мощността и контрола - за това се осигуряват два полюса от източника на ЕДС (отрицателен и положителен), а когато токът тече през намотките, валът се върти. При смяна на полярността на двигателя се извършва движение в обратна посока.

В радиоелектронните системи такива методи за контролиране на работата на двигателя се наричат широчинно-импулсна модулация (PWM). Такъв процес се характеризира с промяна в продължителността на приложеното напрежение или формата на неговия сигнал.

Как мога да променя скоростта на въртене, използвайки PWM?

Използвайки PWM метода, вие трябва да прилагате и изключвате напрежението на намотките на двигателя с висока честота. Честотата на импулсите може да достигне няколко килохерца.

Величината на средното напрежение, приложено към двигателя, зависи от формата на ШИМ. Формата на сигнала, от своя страна, се определя от работния цикъл, който може да бъде представен като отношението на времето на подаване на сигнала към общия период (сумата на времето за подаване на напрежение и спиране). Резултатът е безразмерно количество, което се изразява в проценти - колко време от общия период е приложено напрежението на двигателя. В системи с ниско напрежение от 5, 12, 24 или 36 V се прилага цикъл от 25%, 50%, 75% и 100%.

Импулсна ширина модулация

Управление на двигателя с Arduino и генериран PWM сигнал

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

На фигурата по-долу можете да видите пример на верига, в която мощността на двигателя се управлява от Arduino през транзистор. Както можете да видите, тук от изхода PWM се изпраща сигнал към основата на транзистора, а през колектора и напрежението на излъчвателя ще се прилага към намотката.

Концепцията на DC управление на двигателя

Arduino може да се програмира с помощта на компютър, като за целта се използват както специални програми, така и класически езици за програмиране. Когато програмирате работата на устройството, можете да използвате стандартен набор от команди, които ще осигурят достъп до най-простите команди. Или ги събирайте в комбинация, за да оформите специфичната логика на устройството.

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

Пълна скица на проекта:

DC моторно управление с Arduino UNO (340 байта, изтеглено: 84)

Използвани команди:

  • void setup - поле за настройка на работния изход от PWM порта;
  • void loop - поле за формиране на работния процес;
  • motorSpeed - настройва скоростта на въртене на двигателя;
  • analogWrite - настройва работата на конкретна изходна платка;
  • delay - задава стойността на интервала от време.

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

DC моторно управление с H-мост

Ако разгледаме принципа на действие, N-мостът е логическа схема от четири логически елемента (релеен или полупроводников тип), способни да преминат в две състояния (отворени и затворени). В този пример мостът е монтиран на полупроводници. С промяната на състоянието на двойките на тези елементи, двигателят ще се върти по един или друг начин, без да е необходимо да превключва контактите си.

Това устройство получи името си поради външната прилика с буквата “H”, където всяка двойка транзистори е разположена във вертикалните елементи на буквата, а самият контролиран двигател е хоризонтален. Пример за елементарен H-мост от четири транзистора е показан на фигурата по-долу. Чрез отваряне и затваряне на необходимите елементи на схемата по двойки, можете да преминете ток през намотките в противоположни посоки.

Разположение на H-моста

Вижте фигурата, в тази схема управлението на мощността на двигателя идва от терминалите А и В, към които се прилага потенциалът за управление.

Принципът за определяне на посоката на въртене в H-моста е както следва:

  • когато се прилага импулс към основите на транзистори Q1 и Q4, за да се отвори преход, токът преминава през намотките на двигателя в една посока;
  • когато към базите на транзистори Q2 и Q3 се приложи импулс за отваряне на прехода, токът ще тече в обратна посока, в сравнение с предишния, и ще се получи обратното движение;
  • двойно отваряне на транзисторите Q1 и Q3, Q2 и Q4 води до спиране на ротора;
  • отварянето на транзисторите в последователността Q1 и Q2 или Q3 и Q4 е напълно неприемливо, тъй като то ще предизвика късо съединение във веригата.

Използвайки H-мостовата верига, за да контролирате работата на DC мотор, можете да реализирате пълен набор от операции за електрическа машина, без да е необходимо да свързвате отново кабелите. С оглед на трудността при избора на транзистори и свързването им с H-мостовата верига е много по-лесно да се използват вече съществуващи драйвери, които имат тази функция. Сред тях най-популярните драйвери са L293D и L298N.

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

Какво е драйверът на L298N?

Тази платка съдържа микросхема и 15 изхода за генериране на контролни сигнали. Предназначен е за предаване на сигнали към работни елементи на индуктивен тип - намотки на двигатели, релетни бобини и др. Структурно L298N ви позволява да свързвате до два такива елемента, например, чрез него можете едновременно да контролирате два стъпкови двигателя.

Диаграмата по-долу показва пример за разпределение на щифта L298N от работния чип.

L298N. данни
  • Vss - захранване за логически схеми в 5V;
  • GND - нулев изход (известен още като тяло);
  • INPUT1, INPUT 2, INPUT 3, INPUT 4 - позволяват плавно да се увеличава и намалява скоростта на въртене на двигателя;
  • OUTPUT1, OUTPUT2 - проводници за захранване на първия индуктивен товар;
  • OUTPUT3, OUTPUT4 - проводници за захранване на втория индуктивен товар;
  • Vs - изход за захранване;
  • ENABLE A, B - щифтовете, с помощта на които каналите се управляват отделно, могат да установят активен и пасивен режим (с регулируема скорост на въртене и с установена скорост);
  • ТЕКУЩО ИЗСЛУШВАНЕ A, B - заключения за задаване на текущия режим.

Принципът на управление на двигателя с Arduino и драйвер L298N

Благодарение на вградения мост в драйвера L298N, тази платка позволява едновременното управление на две електрически машини от два чифта изводи едновременно. Логическата схема в това устройство работи от напрежение от 5V, а мощността на самите електрически машини може да бъде до 45V включително. Максимално допустимият ток за един канал на платката е 2А.

Като правило, този водач има модулна конструкция, благодарение на която модулът включва работните елементи, изходите и съединителите, необходими за предаването на управляващи сигнали. Пример за такъв драйвер е показан на фигурата по-долу:

Примерни драйвери L298N

Сега анализираме как се извършва управлението на двигателя с помощта на драйвера L298N. Двигателят е свързан към винтови клемни скоби - двойка за захранване на всеки двигател. Останалите клеми са предназначени да захранват плюс и минус, както и да получават понижено напрежение (захранват се с определено ниво на захранващо напрежение, от което работят двигателите, а вътрешният преобразувател го понижава до 5V за собствените си логически схеми). Входящите изходи на платката изпълняват широчинно-импулсна модулация при генериране на работни сигнали.

Захваща се там, където да се свържат двигателите

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

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

Един прост пример за Arduino с драйвера L298N

Сега ще разгледаме пример за проста схема за споделяне на Arduino и L298N. Тази опция ви позволява да контролирате скоростта на въртене на вала и неговата посока от DC мотора. За да направите това, на компютъра се създава специална програма, която ще определи генерирането на PWM сигнала от L298N и посоката на потока на електрически ток през H-моста. Разбира се, за формирането на схемата ще са необходими няколко допълнителни компонента, които ще позволят да се свържат водача, Arduino, компютъра и двигателите.

Схема за споделяне на Arduino и L298N

Списък на необходимите компоненти за сглобяване на схемата:

  • Arduino UNO - най-простият модел на линията, но неговата функционалност ще бъде повече от достатъчна. Ако използвате по-усъвършенствана версия, то ще свърши добре работата.
  • Драйверът на L298N не е най-достъпният драйвер, но не можете да го замените с друг, тъй като принципът на работа на подобни модели може да бъде напълно различен.
  • 12 V двигател - в този пример се използва електрическа DC машина.
  • Потенциометър 100 kΩ.
  • Бутон за превключване на веригата.
  • Захранване 12 V - всяка опция може да се появи, включително няколко пръста батерии.
  • Такса за монтажни елементи.
  • Свързващи проводници, за предпочитане с готови таткови / майки.
компонент спецификация Брой на Къде да купя
Arduino UNO Rev.3.0 1 връзка
шофьор L298N 1 връзка
Мини двигател 12V, DC, 6000 rpm 1 връзка
Захранващ блок 12 волта 1 връзка
бутон Микро SMD SMT 1 връзка
потенциометър 100 kΩ 1 връзка
Свързващи проводници Татко-мама връзка

Пълен код на проекта:

DC моторно управление с помощта на Arduino UNO (491 байта, изтеглено: 104)

Практическо приложение.

Програмирането на работата на електродвигателите е широко използвано в роботиката, например вашето изобретение, оборудвано с колела, ще може да се движи напред и в обратна посока. Както виждате, съвместната работа на Arduino и L298N драйвера ще може да реши този проблем без никакви проблеми. В същото време можете да осигурите едновременна работа на два двигателя наведнъж от един водач, тоест да контролирате едновременно два колела и независимо един от друг.

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

Помогнете на развитието на сайта, споделяйки статията с приятели!

Категория: