Kaip susieti servo variklius su „Arduino“

Išbandykite Mūsų Instrumentą, Kaip Pašalinti Problemas





Šiame įraše mes sužinosime, kas yra servovariklis, kaip jis veikia, kaip sąveikauti su mikrovaldikliu ir kuo šis variklis yra ypatingas iš kitų variklių.

Būdami elektronikos entuziastu, būtume susidūrę su įvairiais varikliais, čia mes apžvelgsime specialų variklių tipą, vadinamą servovarikliu.



Kas yra „Servo“ variklis?

Servovariklis arba tiesiog servo yra specialus variklio tipas, skirtas tiksliai valdyti padėtį, pagreitį ir greitį. Skirtingai nuo visų kitų tipų variklių, servo serveris gali pasukti tik 180 laipsnių kampu. Jame yra mechaninės pavaros ir kamštis, kurie riboja servo kampinį sukimąsi.

Tipiškas servovariklis:

Servovarikliai naudojami robotikoje, vaizdo stebėjimo kamerose, RC automobiliuose, valtyse, žaisliniuose orlaiviuose ir kt. Servo servizai naudojami ten, kur mums nereikia tęsti sukamojo judesio, tačiau jie užsifiksuoja tam tikroje padėtyje arba valdomu greičiu perkelia tam tikrą apkrovą per judamą kampinę ribą.



Servo nėra vien tik variklis, kaip ir kitų tipų, tačiau tai yra modulis, kuris sujungia įprastą nuolatinės srovės / kintamosios srovės variklį, pavarų grupę, valdymo elektroniką ir grįžtamojo ryšio sistemą. Pažvelkime į kiekvieną paminėtą etapą išsamiai.

Nuolatinės srovės / kintamosios srovės variklis, naudojamas servo modulyje, gali būti be šepetėlių arba šepetėliu, daugumoje pomėgių servoservių naudojamas nuolatinės srovės variklis, o kintamosios srovės varikliai naudojami pramonėje. Variklis įjungia servo sukamąjį įėjimą. Servo viduje variklis sukasi keliais šimtais aps./min., O išėjimo sūkiai yra maždaug 50 ar daugiau kartų mažesni už jo apsisukimus.

Kitas etapas yra reduktoriaus surinkimas, valdantis servo kampinį sukimąsi ir greitį. Krumpliaratis gali būti pagamintas iš plastiko arba metalo, atsižvelgiant į tai, kokia apkrova yra didelių gabaritų. Paprastai nuolatinės srovės varikliai dirba dideliu apsisukimų dažniu, o esant mažam sukimo momentui, pavaros mazgas perteklinį sūkių skaičių pavers sukimo momentu. Taigi mažas variklis gali atlaikyti didžiulę apkrovą.

Kitas etapas yra valdymo elektronika, sudaryta iš MOSFET ir IC, skirtų valdyti variklio sukimąsi. Servovarikliuose visada yra grįžtamojo ryšio sistema, skirta sekti dabartinę pavaros padėtį.

Servoservisuose grįžtamojo ryšio komponentas yra potenciometras, tiesiogiai sujungtas su besisukančia pavara. Potenciometras veikia kaip įtampos daliklis, kuris tiekiamas į valdymo elektroniką. Šis grįžtamasis ryšys padeda valdyti elektroniką nustatant varikliui suteikiamą energijos kiekį.

Fiksuotoje padėtyje esantis servovariklis nenoriai judės iš savo dabartinės padėties, jei bet kokia išorinė jėga bandys trukdyti. Grįžtamojo ryšio sistema stebi esamą padėtį ir maitina variklį nuo išorinių trikdžių.

Pirmiau pateiktas scenarijus yra tas pats, kai servo valdiklis juda pavara. Valdymo sistema kompensuos išorinę jėgą ir judės nustatytu greičiu.

Dabar jūs jau žinote apie servovariklį ir jo veikimo mechanizmus. Pažiūrėkime, kaip valdyti servovariklius naudojant mikrovaldiklį.

Servo varikliai turi 3 gnybtus, skirtingai nei kiti varikliai, turintys 2 gnybtus, du tiekimui (5 V vardinis) ir vieną valdymo signalui. Laidai yra spalvoti, kad būtų lengviau identifikuoti gnybtus.

Servo valdymo signalai yra PWM 50Hz dažniu. Signalo impulso plotis lemia pavaros rankenos padėtį. Tipiškas pomėgio servo variklis veikia nuo 1 iki 2 milisekundžių impulso pločio.

Taikant 1 ms pulso pločio valdymo signalą, pavara bus 0 laipsnių padėtyje. Taikant 2 ms pulso pločio valdymo signalą, pavara bus laikoma 180 laipsnių padėtyje. Pritaikius signalus per 1-2 ms, pavara bus 0-180 laipsnių kampu. Tai galima geriau suprasti pateikiant žemiau pateiktą paveikslėlį.

Dabar jau būtumėte supratę, kaip servo valdomas impulsų pločio moduliacija (PWM).

Dabar sužinokime, kaip suderinti servo variklį su „Arduino“.

Grandinės schema:

kaip susieti servo variklį su Arduino.

Laidai yra lengvi ir savaime suprantami. Jei naudojate didelę servovariklį, jums reikia išorinio maitinimo šaltinio. Jei bandysite maitinti iš „arduino“ maitinimo šaltinio, galiausiai perkrausite USB prievadą kompiuteryje.

Jei turite panašų servo servisą, kuris pavaizduotas straipsnio pradžioje, galite jį maitinti iš „Arduino 5V“ maitinimo šaltinio, taip pat parodyto autoriaus prototipe.

Autoriaus prototipas:

„Arduino“ reikalinga servo biblioteka, kad ji būtų tvarkoma. Tai palengvino mūsų užduotį ir jau yra „Arduino IDE“.

Programa:

//--------Program developed by R.Girish--------//
#include
Servo motor
int pos = 0
int t=10
void setup()
{
motor.attach(7)
}
void loop()
{
A:
pos=pos+1
motor.write(pos)
delay(t)
if(pos==180) { goto B}
goto A
B:
pos=pos-1
motor.write(pos)
delay(t)
if(pos==0) { goto A}
goto B
}
//--------Program developed by R.Girish--------//

Pirmiau minėta programa pavers pavarą nuo 0 iki 180 laipsnių į dešinę ir nuo 180 iki 0 laipsnių į kairę, ir ciklas kartosis. Tai yra paprasta servo testavimo programa, kurią gali tekti parašyti savo kodą pritaikytoms programoms.




Pora: Dviejų vamzdžių vandens siurblio vožtuvų valdiklio grandinė Kitas: Suprasti motociklų įtampos reguliatoriaus laidus