Категорије: Склопови микроконтролера
Број прегледа: 19709
Коментари на чланак: 0

Мотор и серво управљање са Ардуино

 

Код једноставних дизајна система за аутоматизацију често је потребно не само очитавање очитавања сензора, већ и постављање механизама за кретање. За то се користе разни електромотора. Најједноставнија и најпопуларнија опција је ДЦ мотор. Љубав љубавника освојио је својом приступачношћу, лакоћом подешавања брзине. Ако је задатак помицање било ког механизма у заданом углу или удаљености, прикладно је користити серво погон или степпер мотор.

У овом ћемо чланку гледати сервос и мале истосмјерне моторе, спајајући их на Ардуино плочу и прилагођавајући ДЦТ.

Мотор и серво управљање са Ардуино

ДЦ мотор

Најчешћи електромотор који се користи у преносивим уређајима, играчкама, радио-управљаним моделима и другим уређајима. Стални магнети су фиксирани на малом електромотору на статору, а намотају на ротору.

ДЦ мотор

Струја се доводи до намотаја преко склопа четке. Четке су од графита, понекад се могу наћи и бакарни клизни контакти. Четке клизе по ламелама које се налазе на једном крају ротора. Ако не улазите у детаље, тада његова брзина ротације зависи од струје навијања арматуре.

Сидро за сакупљаче мотора

На великим истосмјерним моторима на статору долази до узбудног намотаја, који је повезан на намот ротора (кроз склоп четке) на одређени начин (секвенцијално, паралелно или мешано побуђење). Тако се постиже жељени обртни момент и број обртаја.


Контрола брзине

Електрични ДЦ мотор

Кад је спојен на мрежу, ДЦ мотор се почиње вртети номиналном брзином. Да бисте смањили брзину, морате да ограничите струју. Да бисте то учинили, уводе се баластни отпори, али то смањује ефикасност инсталације у целини и појављује се вишак извора топлоте. За ефикаснију регулацију напона и струје користи се друга метода - ПВМ регулација.

ПВМ регулација

Метода контроле сигнала (напона) који модулира ширину импулса је генерисање жељене вредности напона променом ширине импулса, са константним трајањем периода (фреквенције).

Односно, период је подељен на два дела:

1. Време импулса.

2. Време паузе.

Однос времена импулса и укупног времена периода назива се радним циклусом:

Кс = ти / тпер

реципрочно се назива "циклус рада":

Д = 1 / КЗ = тпер / т и

За опис начина рада регулатора ПВМ користе се оба концепта: и радни и деловни циклус.

Тренутна потрошња мотора зависи од његове снаге. Као што је речено, број обртаја зависи од струје. Струја се може подесити променом величине напона на намотаје. У ствари, када се напаја напоном који премашује називну вредност према пасошу мотора, његова брзина ће такође прећи номиналну брзину. Међутим, такви начини рада су опасни за мотор, јер већа струја тече у намотима, што узрокује њихово појачано загревање.

Ако је оштећење мотора од краткорочних импулса или вишекратно краткотрајни режим рада минималан, тада ће се током дуготрајног рада на високом напону и обртајима изгарати или ће се његови лежајеви загрејати и клинити, а потом ће намотаји изгорети ако напајање не буде искључено.

Ако је улазни напон пренизак, мали мотор једноставно нема довољно снаге за кретање. Стога је потребно експериментално открити нормалну брзину и напон за одређени мотор који не прелази називне.


Повезујемо се са ардуином

Имао сам мали мотор, чини се из касетофона, што значи да ће његов називни напон бити испод 5 волти, тада ће излазна снага ардуина бити довољна. Напајат ћу га са 5В пина, тј. од излаза линеарног стабилизатора који се налази на плочи. Према шеми коју видите доле.

Не знам струју овог мотора, па сам га повезао са напајањем, а између мотора и утикача инсталирао је пољски транзистор са ефектом поља, на капију на који је примењен сигнал са ПВМ излаза, може се користити било који од расположивих.

Дијаграм повезивања ДЦ мотора Ардуино

Да бих подесио брзину, у круг сам додао променљиви отпорник, повезујући га са аналогним улазом А0. За брзу везу користио сам плочу без лемљења, која се још назива и крушна плоча.

Уградио сам отпорник на ограничавање струје у транзисторском ожичењу (да смањим струју пуњења врата, ово ће спасити лук од сагоревања и напајања микроконтролера од утапања и замрзавања) за 240 Охма и повукао га у земљу помоћу отпорника од 12 кОхм, то треба учинити да би био стабилнији резервоар за затвараче је радио и брже се празнио.

Појединости о описаним транзисторима са ефектом поља у чланку на нашој веб локацији. Користио сам моћан, уобичајен и не превише скуп мосфет с н-каналом и уграђеном ИРФ840 реверзном диодом.

Извршни и дефинирајући дио склопа

Овако изгледа склоп мог лабораторијског сталка:

ДЦ мотор и ардуино

ПВМ функција управљања позива се при писању на одговарајуће излазне (3, 5, 6, 9, 10, 11) вриједности од 0 до 255 помоћу наредбе АналогВрите (пин, вриједност). Логика њеног рада приказана је на графовима у наставку.

ПВМ функција управљања

Такав сигнал се примењује на капију транзистора:

Такав сигнал се примењује на капију транзистора

Програмски код срамоте је кратак и једноставан, детаљно су описане све ове функције у претходним чланцима о ардуину.

инт сенсорПин = А0; // улаз са потенциометра

инт моторПин = 3; // ПВМ излаз на капију камере

воид сетуп () {

пинМоде (моторПин, ОУТПУТ);

}

воид лооп () {

аналогВрите (моторПин, мапа (аналогРеад (сенсорПин), 0, 1023, 0, 256));

}

У функцији аналогВрите доделим вредност ПВМ излазу, помоћу команде мап, њена употреба омогућава уклањање неколико линија кода и једну променљиву.


Ово је радна шема и одлична је за посматрање процеса приликом подешавања снаге оптерећења, светлине ЛЕД-ова, брзине мотора, само морате да повежете жељено оптерећење уместо мотора. У исто време, уместо 5В, на оптерећење може да се примени било какав напон, на пример 12В, не заборавите да на контакт прикључите минус напајање, на пример 12В, не заборавите да прикључите минус напајање на ГНД пин на плочи микроконтролера.

У ардуину, ПВМ фреквенција, када се позива преко аналогВрите функције, износи само 400 Хз, при минималним вредностима напона, звук одговарајуће фреквенције чуо се из намотаја мотора.

Ардуино и серво

Сервос

Мотор који може бити у унапред одређеном положају и када је изложен спољним факторима, на пример, присилним одступањем осовине, задржава свој положај непромењен - назива се серво погон. Опћенито, дефиниција звучи мало другачије:

Серво је негативни повратни мотор.

Обично из серво погона излазе три жице:

  • Плус снаге.

  • Мање снаге.

  • Контролни сигнал.

Серво погон се састоји од:

  • Једносмерни мотор (или мотор без четкица);

  • Накнаде за управљање;

  • Сензор положаја (кодер за серво-моторе са углом ротације од 360 ° или потенциометар за серво-моторе са углом ротације од 180 °);

  • Смањивање степена преноса (смањује број обртаја мотора и повећава обртни момент на погонском вратилу).

Управљачка јединица упоређује сигнал на уграђеном сензору положаја и сигнал који је долазио кроз управљачку жицу, ако се разликују, тада постоји ротација под углом под којим се разлика између сигнала изравнава.

Принцип рада серва

Главне карактеристике серво:

  • Брзина окретања (време током којег се осовина ротира кроз угао од 60 °);

  • Обртни момент (кг / цм, тј. Колико килограма мотор може издржати на ручици 1 цм од вратила);

  • Напон напајања;

  • Тренутна потрошња;

  • Методом контроле (аналогна или дигитална) нема значајне разлике, али дигитална је бржа и стабилнија).

Обично је период сигнала 20 мс, а трајање контролног пулса:

  • 544 μс - одговара 0 °;

  • 2400 μс - одговара углу од 180 °.

У ретким случајевима дужина импулса може се разликовати, на пример, 760 и 1520 μс, односно ове информације могу се разјаснити у техничкој документацији за погон. Један од најпопуларнијих серво хобија је Товер Про СГ90 и слични модели.Јефтин - око 4 долара.

Севропривод за ардуино

На осовини држи 1,8 кг / цм, а у комплету са њом су причврсни вијци и полуге са шипкама за осовину. У ствари, ова беба је прилично јака и веома је проблематично зауставити је једним прстом - сам погон почиње да испада из прстију - таква је његова снага.


Серво контрола и Ардуино

Као што је већ поменуто, контрола се врши променом трајања импулса, али немојте бркати ову методу са ПВМ (ПВМ), њен тачан назив је ПДМ (Пулсе Дуратион Модулација). Мала одступања у фреквенцији сигнала (20 мс - трајање, фреквенција 50 Хз) не играју посебну улогу. Али, не одступајте од фреквенције за више од 10 Хз, мотор може да крене или изгара.

Серво контрола и Ардуино

Прикључак на ардуино уређај је прилично једноставан, а погон можете напајати и са 5В пина, али није пожељно. Чињеница је да у старту постоји мали скок струје, то може проузроковати искључење струје и Лажни излази микроконтролера. Иако је могућ 1 мали погон (тип СГ90), али не више.

За контролу таквих серво-а са ардуино-ом, имате Серво библиотеку уграђену у ИДЕ, она има мали скуп команди:

  • аттацх () - додајте променљиву на пин. Пример: име погона.аттацх (9) - спојите серво на пин 9. Ако ваш погон треба нестандардне дужине контролних импулса (544 и 2400 μс), они се могу одредити одвојеним зарезом након броја ПИН-а, на пример: серво.аттацх (пин, мин угао (μс, макс. Угао у ИСС));

  • врите () - поставља угао ротације вратила у степенима;

  • вритеМицросецондс () - поставља угао кроз дужину пулса у микросекундама;

  • реад () - одређује тренутни положај осовине;

  • у прилогу () - Провера да ли је затич повезан са серво-спојем;

  • детацх () - откажи наредбу за придруживање.

Ова библиотека омогућава вам контролу 12 серво-уређаја са УНО, Нано и сличних плоча (мега368 и 168), док могућност коришћења ПВМ-а на пин 9 и 10 нестаје. Ако имате МЕГА, можете да контролишете 48. сервере, али ПВМ на пиновима 11 и 12 ће нестати, ако користите до 12 сервова, тада ПВМ ће остати у потпуности функционалан на свим контактима.

Ако сте повезали ову библиотеку, нећете моћи да радите са 433 МХз пријемницима / предајницима. За то постоји библиотека Серво2, која је иначе идентична.

Серво2 Либрари

Ево примера кода који сам користио за експерименте са серво погоном, налази се у стандардном сету примера:

#инцлуде <Серво.х> // повежите библиотеку

Серво мисерво; // декларирано име варијабле за мисерво серво

инт потпин = 0; // пин за повезивање потенциометра за подешавање

инт вал; // променљива да сачува резултате очитања сигнала са потенциометра

воид сетуп () {

мисерво.аттацх (9); // поставите 9 пина као контролни излаз за серво

}

воид лооп () {

вал = аналогРеад (потпин); // резултати очитања потенциометра сачуваног у транс. вал, они ће бити у опсегу од 0 до 1023

вал = мапа (вал, 0, 1023, 0, 180); // превести распон мјерења са аналогног улаза 0-1023

// у распону задатака за серво 0-180 степени

мисерво.врите (вал); // проћи конверзију сигнал од пот-ра за контролу серво улаз

кашњење (15); // кашњење је потребно за стабилан рад система

 

Спајамо серво на Ардуино

Закључак

Употреба најједноставнијих електромотора упарених са ардуином је прилично једноставан задатак, док савладавање овог материјала проширује ваше могућности у области аутоматизације и роботике. Најједноставнији роботи или радио-контролисани модели аутомобила састоје се од таквих мотора, а сервос се користи за контролу ротације точкова.

У разматраним примерима потенциометар је коришћен за подешавање угла ротације или брзине ротације, уместо њега може се користити било који други извор сигнала, на пример, ротација или промена брзине могу се догодити као резултат информација примљених од сензора.

Пример употребе серво-уређаја у алтернативној енергији: праћење угла појављивања сунчеве светлости и прилагођавање положаја соларних панела у електранама.

Да бисте имплементирали такав алгоритам, можете користити неколико фоторесистори или други оптоелектронски уређаји за мерење количине упадне светлости и, у зависности од њихових очитања, постављају угао ротације соларног панела.

Погледајте и на електрохомепро.цом:

  • Како је серво уређен и функционише
  • Ардуино и степпер мотор: основе, шеме, повезивање и контрола
  • Садржи уређаје за повезивање са Ардуином
  • Како разликовати индукцијски мотор од једносмерног мотора
  • Како спојити инкрементални давач на Ардуино

  •