Kaj je regulator servo motorja?
Definicija regulatorja servo motorja
Regulator servo motorja (ali pogon servo motorja) se definira kot vezje, ki se uporablja za nadzor položaja servo motorja.
Vezje pogona servo motorja
Vezje pogona servo motorja vključuje mikrokontroller, napajalno napravo, potenciometer in konektorje, ki zagotavljajo natančen nadzor motorja.
Vloga mikrokontrollerja
Mikrokontroller generira PWM impulze na določenih intervalih, da natančno nadzira položaj servo motorja.
Napajanje
Razvrstitev napajanja za regulator servo motorja je odvisna od števila povezanih motorjev. Servo motorji običajno uporabljajo napajanje z 4,8 V do 6 V, pri čemer je 5 V standard. Prekoračitev napetosti napajanja lahko poškoduje motor. Potreben tok se spreminja glede na torke in je nižji v stanju miru ter višji med delovanjem. Maksimalni tok, znan tudi kot stojni tok, lahko doseže do 1 A za nekatere motorje.
Za nadzor enega motorja uporabite napajalnik, kot je LM317, s toplotnim disipatorjem. Za več motorjev je potrebno visokokakovostno napajanje z višjim tokom. Dobra izbira je SMPS (napajalnik z preklopnim načinom).
Skica spodaj prikazuje povezave v pogonu servo motorja

Nadzor servo motorja
Servo motor ima tri terminala.
Pozicijski signal (PWM impulzi)
Vcc (iz napajalne naprave)
Masna točka

Kotni položaj servo motorja se nadzira z uporabo PWM impulzov določenih širin. Trajanje impulza sega od približno 0,5 ms za rotacijo na 0 stopinj do 2,2 ms za rotacijo na 180 stopinj. Impulze je treba podati na frekvencah okoli 50 Hz do 60 Hz.
Za ustvarjanje PWM (modulacija širine impulza) valovnega oblika, kot je prikazano na spodnjem prikazu, lahko uporabite notranji PWM modul mikrokontrollerja ali pa lahko uporabite števce. Uporaba PWM bloka je bolj prožna, saj je večina družin mikrokontrollerjev tako dizajnirana, in ta PWM blok bolje ustreza potrebam aplikacij, kot je servo motor. Za različne širine PWM impulzov moramo programirati notranje registre ustrezno.
Sedaj moramo tudi povedati mikrokontrollerju, kako veliko naj se vrte. Za to namen lahko uporabimo preprost potenciometer in ADC za pridobivanje kota vrtenja ali za bolj kompleksne aplikacije lahko uporabimo akcelerometer.

Programska postopek
Naj bomo izrazili program za nadzor enega servo motorja, kjer je vhod za položaj dan preko potenciometra, povezanega na pin kontrolnika.
Inicializirajte pini portov za vhod/izhod.
Preberite ADC za želeni položaj servo motorja.
Programirajte registre PWM za željeno vrednost.
Ko aktivirate PWM modul, gre izbrani pin PWM kanala na visoko (logično 1) in ko je dosežena zahtevana širina, gre spet na nizko (logično 0). Torej, ko aktivirate PWM, morate začeti števec s zamudo približno 19 ms in počakati, dokler se števec prepolni. Pojdite na korak 2.
Na voljo je več načinov PWM, ki jih lahko uporabite glede na izbran mikrokontroller. V kodiranju bi morali opraviti nekaj optimizacij za nadzor servo motorja.
Če načrtujete uporabo več kot enega servo motorja, boste potrebovali toliko PWM kanalov. Vsakemu servo motorju lahko zaporedno podate PWM signal. Vendar morate paziti, da ohranite frekvenco ponavljanja impulzov za vsak servo motor. Sicer bo servo motor izgubil sinhronizacijo.