У овом упутству ћемо управљати серво мотором компаније АРДУИНО УНО. Серво мотори се користе тамо где постоји потреба за тачним кретањем или положајем осовине. Они нису предложени за велике брзине. Они су предложени за малу брзину, средњи обртни моменат и тачну примену положаја. Ови мотори се користе у роботским машинама за управљање рукама, контролама лета и системима управљања.
Серво мотори су доступни у различитим облицима и величинама. Серво мотор ће углавном имати жице, једна је за позитивни напон, друга је за масу, а последња за подешавање положаја. ЦРВЕНА жица је повезана на напајање, црна жица је повезана на масу, а ЖУТА жица је повезана на сигнал.
Серво мотор је комбинација једносмерног мотора, система за контролу положаја, брзина. Положај осовине једносмерног мотора подешава се помоћу управљачке електронике у серво-у, на основу односа радне снаге ПВМ сигнала СИГНАЛ пин.
Једноставно речено, управљачка електроника подешава положај вратила управљајући једносмерним мотором. Ови подаци о положају осовине шаљу се кроз СИГНАЛ пин. Подаци о положају на команду треба да се шаљу у облику ПВМ сигнала кроз сигналну иглу серво мотора.
Фреквенција ПВМ (Пулсе Видтх Модулатед) сигнала може се разликовати у зависности од врсте серво мотора. Овде је најважнији ОДНОС ДУЖНОСТИ ПВМ сигнала. На основу овог ДУЖНОГ ОДНОСА управљачка електроника подешава вратило.
Као што је приказано на доњој слици, да би се вратило могло померити на сат од 9, ОДНОС УКЉУЧИВАЊА мора бити 1 / 18.ие. 1 мс времена укључења и 17 мс времена искључења у сигналу од 18 мс.
Да би се осовина помакнула на сат од 12 °, УКЉУЧЕНО вријеме сигнала мора бити 1,5 мс, а искључено 16,5 мс. Овај однос се декодира управљачким системом у серво систему и на основу њега подешава положај. Овај ПВМ овде је генерисан коришћењем АРДУИНО УНО.
Компоненте склопа
Хардвер: АРДУИНО УНО, напајање (5в), кондензатор 100уФ, дугмад (два комада), отпорник 1КΩ (два комада), серво мотор (који је требало тестирати).
Софтвер: ардуино ИДЕ (Ардуино сваке ноћи).
Шема и објашњење Ардуино серво мотора
У нормалним случајевима морамо да идемо у регистре контролера за подешавање фреквенције и за добијање потребног односа радне снаге за тачну контролу положаја серво-система, у АРДУИНО не морамо да радимо те ствари.
У АРДУИНО имамо унапред дефинисане библиотеке, које ће у складу с тим подесити фреквенције и омјере дужине када се датотека заглавља позове или укључи. У АРДУИНО једноставно морамо да наведемо положај серво сервера који је потребан и УНО аутоматски прилагођава ПВМ.
Ствари које треба да урадимо да бисмо добили тачан положај серво-система су:
|
Прво треба да подесимо фреквенцију ПВМ сигнала и за то треба да позовемо „#инцлуде
Сада треба да дефинишемо име за серво „Серво сг90сево“, овде је изабрано име „сг90серво“, па док пишемо за напитак користићемо ово име, ова функција добро дође када имамо много серво сервера, овиме можемо да контролишемо чак осам серво-сервоа.
Сада кажемо УНО-у где је сигнални пин сервоа повезан или где треба да генерише ПВМ сигнал. Да бисмо то урадили, имамо „Сг90.аттацх (3);“, овде кажемо УНО-у да смо повезали сигнални пин сервоа на ПИН3.
Преостало је само да поставимо положај, ми ћемо поставити положај серво-а помоћу „Сг90.врите (30);“, овом командом серво казаљка се помера за 30 степени, па је то то. После тога кад год треба да променимо положај сервоа, потребно је да позовемо команду „Сг90.врите (потребан_положај_кут);“. У овом колу ћемо имати два дугмета, једно дугме повећава положај серво-а, а друго је за смањење положаја серво-сервоа.
Ардуино серво мотор цонтрол туториал је објашњено у кораку кораку Ц кода датог у наставку.