V tej vadnici bomo upravljali servo motor ARDUINO UNO. Servo motorji se uporabljajo tam, kjer je potrebno natančno premikanje ali položaj gredi. Te niso predlagane za visoke hitrosti. Predlagane so za nizko hitrost, srednji navor in natančno uporabo položaja. Ti motorji se uporabljajo v robotskih strojih za roke, krmiljenju leta in nadzornih sistemih.
Servo motorji so na voljo v različnih oblikah in velikostih. Servo motor bo imel večinoma žice, ena je za pozitivno napetost, druga za ozemljitev in zadnja za nastavitev položaja. RDEČA žica je priključena na napajanje, črna žica je priključena na maso, RUMENA žica pa na signal.
Servo motor je kombinacija enosmernega motorja, sistema za nadzor položaja, zobnikov. Položaj gredi enosmernega motorja prilagodi krmilna elektronika v servo, na podlagi razmerja obratovanja PWM signala zatiča SIGNAL.
Preprosto rečeno krmilna elektronika prilagodi položaj gredi z upravljanjem enosmernega motorja. Ti podatki o položaju gredi se pošljejo skozi zatič SIGNAL. Podatke o položaju krmilniku je treba poslati v obliki PWM signala skozi signalni zatič servo motorja.
Frekvenca PWM (Pulse Width Modulated) signala se lahko razlikuje glede na vrsto servo motorja. Tu je najpomembnejše razmerje dolžnosti signala PWM. Na podlagi tega DOLŽNEGA ODNOSA krmilna elektronika prilagodi gred.
Kot je prikazano na spodnji sliki, mora biti gred, ki jo je treba premakniti na uro 9 °, VSEBINA VKLOPA 1 / 18.ie. 1 ms časa vklopa in 17 ms časa izklopa v signalu 18 ms.
Da se gred premakne na uro 12 °, mora biti čas vklopa signala 1,5 ms, čas izklopa pa 16,5 ms. To razmerje dekodira krmilni sistem v servo in na podlagi tega prilagodi položaj. Ta PWM tukaj je ustvarjen z uporabo ARDUINO UNO.
Komponente vezja
Strojna oprema: ARDUINO UNO, napajalnik (5v), kondenzator 100uF, gumbi (dva kosa), upor 1KΩ (dva kosa), servo motor (ki ga je bilo treba preizkusiti).
Programska oprema: arduino IDE (Arduino nightly).
Diagram in razlaga servo motorja Arduino
V običajnih primerih moramo za nastavitev frekvence in za pridobitev zahtevanega koeficienta obratovanja za natančen nadzor položaja servo krmilnika, v ARDUINO teh stvari ni treba početi.
V ARDUINO imamo vnaprej določene knjižnice, ki bodo po klicanju ali vključitvi datoteke glave ustrezno nastavile frekvence in razmerja dolžnosti. V ARDUINO moramo preprosto navesti položaj servo servo, ki ga potrebuje, in UNO samodejno prilagodi PWM.
Stvari, ki jih moramo storiti, da dobimo natančen položaj servo, so:
|
Najprej moramo nastaviti frekvenco PWM signala in za to poklicati »#include
Zdaj moramo definirati ime za servo "Servo sg90sevo", tukaj je izbrano ime "sg90servo", tako da bomo med pisanjem napitkov uporabili to ime, ta funkcija nam pride prav, ko imamo na voljo veliko servo naprav, s tem lahko nadzorujemo kar osem servo.
Zdaj povemo UNO, kje je priključen signalni zatič servo servera ali kje mora generirati PWM signal. Za to imamo “Sg90.attach (3);”, tukaj sporočamo UNO, da smo signalni zatič servo priključili na PIN3.
Levo je še, da nastavimo položaj, položaj servo nastavimo z uporabo "Sg90.write (30);", s tem ukazom se servo kazalka premakne za 30 stopinj, tako da je to to. Potem, ko moramo spremeniti položaj servo-pogona, moramo poklicati ukaz "Sg90.write (required_position_ angle);". V tem vezju bomo imeli dva gumba, en gumb poveča položaj servo servo, drugi pa za zmanjšanje položaja servo.
Nadzor Navodila za Arduino Servo Motor je razloženo v koraku s korakom oznako C spodaj.