- ПВМ (модулација ширине импулса):
- Серво мотор и ПВМ:
- Компоненте потребне:
- Кружни дијаграм:
- Објашњење рада и програмирања:
Распберри Пи је плоча заснована на АРМ архитектури заснована за електронске инжењере и хобисте. ПИ је сада једна од најповерљивијих платформи за развој пројеката. Са већом брзином процесора и 1 ГБ РАМ-а, ПИ се може користити за многе пројекте високог профила попут обраде слика и Интернета ствари.
За извођење било ког од пројеката високог профила треба разумети основне функције ПИ-а. У овим упутствима ћемо покрити све основне функционалности Распберри Пи- а. У сваком упутству разговараћемо о једној од функција ПИ-а. До краја ове уџбеничке серије Распберри Пи моћи ћете сами да радите пројекте високог профила. Прођите кроз водиче у наставку:
- Први кораци са Распберри Пи
- Конфигурација Распберри Пи
- ЛЕД Блинки
- Интерфејс на тастеру Распберри Пи
- Распберри Пи ПВМ генерација
- Управљање једносмерним мотором помоћу Распберри Пи
- Управљање корачним мотором са Распберри Пи
- Повезивање Схифт регистра са Распберри Пи
- Водич за АДЦ за Распберри Пи
У овом упутству ћемо управљати серво мотором помоћу Распберри Пи. Пре него што пређемо на серво, хајде да разговарамо о ПВМ-у јер концепт управљања серво мотором долази из њега.
ПВМ (модулација ширине импулса):
Раније смо много пута говорили о ПВМ у: Модулација ширине импулса са АТмега32, ПВМ са Ардуино Уно, ПВМ са 555 ИЦ тајмером и ПВМ са Ардуино Дуе. ПВМ је скраћеница од „Модулација ширине импулса“. ПВМ је метода која се користи за добијање променљивог напона из стабилног напајања. За боље разумевање ПВМ узмите у обзир коло испод,
На горњој слици, ако је прекидач непрекидно затворен током одређеног временског периода, ЛЕД ће током тога времена непрекидно бити УКЉУЧЕН. Ако је прекидач затворен на пола секунде и отворен у наредних пола секунде, тада ће ЛЕД светлити само у првој половини секунде. Сада се пропорција за коју је ЛЕД укључена током укупног времена назива радни циклус и може се израчунати на следећи начин:
Радни циклус = Вријеме УКЉУЧЕЊА / (Вријеме УКЉУЧИВАЊА + Вријеме искључивања)
Радни циклус = (0,5 / (0,5 + 0,5)) = 50%
Тако ће просечни излазни напон бити 50% напона батерије.
Како повећавамо брзину УКЉУЧИВАЊА и ИСКЉУЧЕЊА на ниво, видећемо да се ЛЕД лампица пригушује уместо да се УКЉУЧИ и ИСКЉУЧУЈЕ. То је зато што наше очи не могу јасно да ухвате фреквенције веће од 25Хз. Размотрите циклус од 100 мс, ЛЕД се искључује за 30мсец, а ОН за 70мсец. На излазу ћемо имати 70% стабилног напона, тако да ће ЛЕД непрекидно светлити са 70% интензитета.
Однос дужине креће се од 0 до 100. „0“ значи потпуно ИСКЉУЧЕНО, а „100“ потпуно УКЉУЧЕНО. Овај однос дужине је веома важан за серво мотор. Положај серво мотора одређује се овим односом дужине. Проверите ово за демонстрацију ПВМ-а са ЛЕД и Распберри Пи.
Серво мотор и ПВМ:
Серво мотор је комбинација једносмерног мотора, система за контролу положаја и брзина. Серво уређаји имају много примена у савременом свету и са тим су доступни у различитим облицима и величинама. У овом упутству ћемо користити СГ90 Серво Мотор, један је од популарних и најјефтинијих. СГ90 је серво од 180 степени. Дакле, са овим сервом можемо да поставимо осу од 0-180 степени.
Серво мотор углавном има три жице, једна је за позитивни напон, друга је за масу, а последња за подешавање положаја. Црвена жица је повезан на напајање, Браун жица је повезан са земљом и Иеллов жице (или бела) је повезан са сигналом.
У серво-у имамо систем управљања који узима ПВМ сигнал са сигналног пина. Декодира сигнал и од њега добија однос дужине. Након тога упоређује однос са унапред дефинисаним вредностима позиција. Ако постоји разлика у вредностима, он прилагођава положај серво управљача у складу с тим. Дакле, положај осе серво мотора је заснован на омјеру радне снаге ПВМ сигнала на сигналном пину.
Учесталост ПВМ (Пулсе Видтх Модулатед) сигнала може се разликовати у зависности од врсте серво мотора. За СГ90 фреквенција ПВМ сигнала је 50Хз. Да бисте сазнали учесталост рада вашег серво-уређаја, погледајте технички лист за тај модел. Дакле, када је фреквенција изабрана, друга важна ствар овде је ДУЖНИ ОДНОС ПВМ сигнала.
Табела у наставку приказује положај серво погона за тај однос дужине. Одабиром вредности у складу са тим можете добити било који угао између. Дакле, за 45º сервоа однос дежурства треба да буде '5' или 5%.
ПОЛОЖАЈ |
ДУЖНИ ОДНОС |
0º |
2.5 |
90º |
7.5 |
180º |
12.5 |
Пре него што повежете серво мотор са Распберри Пи, можете да тестирате свој серво уз помоћ овог склопа за испитивање серво мотора. Такође погледајте наше серво пројекте у наставку:
- Управљање серво мотором помоћу Ардуина
- Управљање серво мотором са Ардуино Дуе
- Интерфејс серво мотора са микроконтролером 8051
- Управљање серво мотором помоћу МАТЛАБ-а
- Управљање серво мотором помоћу Флек сензора
- Серво контрола положаја са тежином (сензор силе)
Компоненте потребне:
Овде користимо Распберри Пи 2 Модел Б са Распбиан Јессие ОС. Сви основни хардверски и софтверски захтеви су претходно разматрани, можете их потражити у Уводу о Распберри Пи, осим онога што нам је потребно:
- Прикључне игле
- 1000уФ кондензатор
- Серво мотор СГ90
- Бреадбоард
Кружни дијаграм:
А1000µФ мора бити повезан преко напонске мреже + 5В, у супротном би се ПИ могао насумично искључити док контролише серво.
Објашњење рада и програмирања:
Једном када је све повезано према схеми кола, можемо УКЉУЧИТИ ПИ да напишемо програм у ПИХТОН-у.
Разговараћемо о неколико команди које ћемо користити у програму ПИХТОН, Увешћемо ГПИО датотеку из библиотеке, доња функција омогућава нам програмирање ГПИО пинова ПИ. Такође смо преименовали „ГПИО“ у „ИО“, па ћемо у програму кад год желимо да се упутимо на ГПИО пинове користити реч „ИО“.
увоз РПи.ГПИО као ИО
Понекад, када ГПИО пинови, које покушавамо да користимо, можда раде неке друге функције. У том случају добићемо упозорења током извршавања програма. Испод наредба говори ПИ-у да занемари упозорења и настави са програмом.
ИО.сетварнингс (Фалсе)
ГПИО пинове ПИ можемо упутити било бројем пина на плочи или бројем њихове функције. Као и „ПИН 29“ на плочи је „ГПИО5“. Дакле, овде кажемо или ћемо овде представљати пин са '29' или '5'.
ИО.сетмоде (ИО.БЦМ)
Постављамо ПИН39 или ГПИО19 као излазни пин. Из овог пина добићемо ПВМ излаз.
ИО.сетуп (19, ИО.ОУТ)
Након подешавања излазног пина, морамо га подесити као ПВМ излазни пин, п = ИО.ПВМ (излазни канал, фреквенција ПВМ сигнала)
Горња команда је за подешавање канала, а такође и за подешавање фреквенције канала “. 'п' овде је променљива која може бити било шта. Користимо ГПИО19 као ПВМ „излазни канал. „Фреквенција ПВМ сигнала“ изабраћемо 50, јер је СГ90 радна фреквенција 50Хз.
Испод се користи наредба за покретање генерисања ПВМ сигнала. „ ДУТИЦИЦЛЕ “ служи за подешавање односа „Укључи“ како је претходно објашњено, п.старт (ДУТИЦИЦЛЕ)
Испод наредба се користи као форевер лооп, с овом наредбом ће се изрази унутар ове петље континуирано извршавати.
Док је 1:
Овде програм за управљање серво- мотором помоћу Распберри Пи пружа ПВМ сигнал на ГПИО19. Однос дужине ПВМ сигнала се мења између три вредности током три секунде. Тако се сваке секунде серво окреће у положај одређен односом дужине. Серво се непрекидно окреће на 0º, 90º и 180º у три секунде.