DC servo motor: konstrukcija, delovanje, vmesnik z Arduinom in njegove aplikacije

Preizkusite Naš Instrument Za Odpravo Težav





A servo motor ali servo je ena vrsta električnega motorja, ki se uporablja za vrtenje delov stroja z visoko natančnostjo. Ta motor vključuje krmilno vezje, ki zagotavlja povratno informacijo o trenutni lokaciji gredi motorja, tako da ta povratna informacija preprosto omogoča, da se ti motorji vrtijo z visoko natančnostjo. Servo motor je koristen pri vrtenju predmeta na določeno razdaljo ali kot. Ta motor je razvrščen v dve vrsti AC servo motorja in DC servo motorja. Če servo motor za delovanje uporablja enosmerno napajanje, se motor imenuje enosmerni servo motor, če pa deluje z izmeničnim tokom, je znan kot izmenični servo motor. Ta vadnica ponuja kratke informacije o DC servo motor – delo z aplikacijami.


Kaj je enosmerni servo motor?

Servomotor, ki uporablja enosmerni električni vhod za ustvarjanje mehanskih rezultatov, kot so položaj, hitrost ali pospešek, se imenuje enosmerni servomotor. Na splošno se te vrste motorjev uporabljajo kot glavni pogoni v numerično krmiljenih strojih, računalnikih in mnogih drugih, kjer koli se izvajajo zagoni in zaustavitve natančno in zelo hitro.



  DC servo motor
DC servo motor

Konstrukcija in delovanje enosmernega servo motorja

DC servo motor je sestavljen iz različnih komponent, ki so podane v naslednjem blokovnem diagramu. V tem diagramu je vsaka komponenta in njena funkcija obravnavana spodaj.

  Blok diagram enosmernega servo motorja
Blok diagram enosmernega servo motorja

Motor, uporabljen pri tem, je tipičen motor na enosmerni tok, vključno z navitjem polja, ki se vzbuja ločeno. Glede na naravo vzbujanja jih lahko nadalje kategoriziramo kot servo motorje, ki jih krmili armatura in polje.



Obremenitev, uporabljena pri tem, je preprost ventilator ali industrijska obremenitev, ki je preprosto povezana z mehansko gredjo motorja.

Menjalnik v tej konstrukciji deluje kot mehanski pretvornik za spreminjanje izhodne moči motorja, kot so pospešek, položaj ali hitrost, odvisno od uporabe.

  PCBWay

Glavna funkcija senzorja položaja je pridobiti povratni signal, enakovreden trenutnemu položaju tovora. Na splošno je to potenciometer, ki se uporablja za zagotavljanje napetosti, ki je sorazmerna z absolutnim kotom gredi motorja skozi zobniški mehanizem.

Funkcija primerjalnika je primerjati o/p senzorja položaja in referenčne točke, da proizvede signal napake in ga posreduje ojačevalniku. Če enosmerni motor deluje z natančnim nadzorom, potem ni napake. Senzor položaja, menjalnik in primerjalnik bodo sistem naredili zaprto zanko.

Funkcija ojačevalnika je, da ojača napako iz primerjalnika in jo napaja na enosmerni motor. Torej deluje kot proporcionalni krmilnik povsod, kjer je ojačanje okrepljeno za ničelno napako v stabilnem stanju.

Nadzorovani signal daje vhod v PWM (modulator širine impulza), odvisno od povratnega signala, tako da modulira vhod motorja za natančen nadzor, sicer nična napaka v stanju dinamičnega ravnovesja. Poleg tega ta modulator širine impulza uporablja referenčno valovno obliko in primerjalnik za ustvarjanje impulzov.

Z izdelavo zaprtozančnega sistema se pridobi pospešek, hitrost ali natančen položaj. Kot že ime pove, je servo motor krmiljen motor, ki zagotavlja želeno moč zaradi povratne informacije in učinka krmilnika. Signal napake se preprosto ojača in uporabi za pogon servo motorja. Glede na naravo proizvajanja krmilnega signala in modulatorja širine impulza imajo ti motorji boljše nadzorovane metode s čipi FPGA ali procesorji digitalnih signalov.

Delovanje enosmernega servo motorja je; kadarkoli se vhodni signal uporabi za enosmerni motor, vrti gred in zobnike. V bistvu se vrtenje izhoda zobnikov vrne nazaj na senzor položaja (potenciometer), katerega gumbi se obračajo in spreminjajo svoj upor. Kadarkoli se spremeni upor, se spremeni napetost, ki je signal napake, ki se dovaja v krmilnik in posledično se ustvari PWM.

Če želite izvedeti več o vrstah enosmernih servo motorjev, si oglejte to povezavo: Različne vrste servo motorjev .

Prenosna funkcija enosmernega servo motorja

Prenosno funkcijo lahko definiramo kot razmerje Laplaceove transformacije (LT) spremenljivke o/p in LT ( Laplaceova transformacija ) spremenljivke i/p. Na splošno enosmerni motor spremeni energijo iz električne v mehansko. Dobavljena električna energija na armaturnih sponkah se spremeni v nadzorovano mehansko energijo.

Spodaj je prikazana funkcija prenosa enosmernega servo motorja, ki ga krmili armatura.

  Blok diagrama enosmernega servo motorja z armaturo
Blok diagrama enosmernega servo motorja z armaturo

θ(s)/Va(s) = (K1/(Js2 + Bs)*(Las + Ra)) /1 + (K1KbKs)/(Js2 + Bs)*(Las+Ra)

Spodaj je prikazana prenosna funkcija enosmernega servomotorja, ki ga krmili polje.

  Field Controlled DC Servo Motor Block Diagram
Field Controlled DC Servo Motor Block Diagram

θ(s)/Vf (s) = Kf / (sLf + Rf) * (s2J + Bs)

Enosmerni servo motor, ki ga krmili armatura, zagotavlja vrhunsko zmogljivost zaradi zaprtozančnega sistema v primerjavi s terensko krmiljenim enosmernim servo motorjem, ki je odprtozančni sistem. Poleg tega je hitrost odziva v sistemu za nadzor polja počasna. V primeru krmiljenja armature je induktivnost armature zanemarljiva, medtem ko v primeru krmiljenja polja ni enaka. Toda pri krmiljenju znotraj polja izboljšanega dušenja ni mogoče doseči, medtem ko ga je pri nadzoru armature mogoče doseči.

Specifikacije

Servo motor na enosmerni tok zagotavlja specifikacije delovanja, ki vključujejo naslednje. Te specifikacije je treba uskladiti glede na potrebe po obremenitvi aplikacije za pravilno dimenzioniranje motorja.

  • Hitrost gredi preprosto definira hitrost, pri kateri se gred vrti, izraženo v RPM (vrtljaji na minuto).
  • Običajno je hitrost, ki jo ponuja proizvajalec, hitrost v prostem teku pogonske gredi ali hitrost, pri kateri je izhodni navor motorja enak nič.
  • Priključna napetost je konstrukcijska napetost motorja, ki določa hitrost motorja. To hitrost enostavno nadzirate s povečanjem ali zmanjšanjem dobavljene napetosti motorja.
  • Rotacijsko silo, kot je navor, ustvarja gred enosmernega servo motorja. Torej je zahtevani navor za ta motor preprosto določen s karakteristikami vrtilne frekvence in navora različnih obremenitev, do katerih pride znotraj ciljne aplikacije. Ti navori so dve vrsti začetnega navora in neprekinjenega navora.
  • Začetni navor je potreben navor med zagonom servo motorja. Ta navor je običajno večji v primerjavi z neprekinjenim navorom.
  • Trajni navor je izhodni navor, ki je zmogljivost motorja v stalnih pogojih delovanja.
  • Ti motorji morajo imeti zadostno hitrost in zmogljivost navora za uporabo, vključno z 20 do 30-odstotnim odstopanjem med potrebnimi obremenitvami in ocenami motorja, da se zagotovi zanesljivost. Ko te marže presežejo preveč, se učinkovitost stroškov zmanjša specifikacije 12 V DC brezjedrnega DC servo motorja podjetja Faulhaber so:
  • Razmerje menjalnika je 64: l Tristopenjski planetarni menjalnik.
  • Obremenitveni tok je 1400 mA.
  • Moč je 17W.
  • Hitrost je 120RPM.
  • Tok brez obremenitve je 75 mA.
  • Vrsta kodirnika je optični.
  • Ločljivost kodirnika je 768CPR O/P gredi.
  • Premer je 30 mm.
  • Dolžina je 42 mm.
  • Skupna dolžina je 85 mm.
  • Premer gredi je 6 mm.
  • Dolžina gredi je 35 mm.
  • Navor zastoja je 52 kgcm.

Značilnosti

The značilnosti enosmernega servo motorja vključujejo naslednje.

  • Zasnova enosmernega servo motorja je podobna enosmernemu motorju s trajnim magnetom ali ločeno vzbujenemu enosmernemu motorju.
  • Nadzor hitrosti tega motorja poteka s krmiljenjem napetosti armature.
  • Servo motor je zasnovan z visoko odpornostjo armature.
  • Zagotavlja hiter odziv na navor.
  • Stopenjska sprememba napetosti armature povzroči hitro spremembo hitrosti motorja.

Servo motor AC proti servo motorju DC

Razlika med servo motorjem DC in servo motorjem AC vključuje naslednje.

AC servo motor

DC servo motor

Ena vrsta servomotorja, ki uporablja električni vhod AC za ustvarjanje mehanske moči, se imenuje AC servo motor. Ena vrsta servomotorja, ki uporablja enosmerni električni vhod za ustvarjanje mehanske moči, se imenuje enosmerni servo motor.
AC servo motor zagotavlja nizko izhodno moč. DC servo motor zagotavlja visoko izhodno moč.
Ti motorji so nastavljivi za pogoje delovanja pri visokih hitrostih. Ti motorji so nastavljivi za pogoje delovanja pri nizki hitrosti.
Te vrste motorjev razvijejo visok navor. Te vrste motorjev razvijejo nizek navor.
Delovanje tega motorja je stabilno, tekoče in temelji na manj hrupa. Delovanje tega motorja je manj stabilno in hrupno.
Ti motorji imajo manjšo učinkovitost. Ti motorji imajo visoko učinkovitost.
Ti motorji imajo manj težav s stabilnostjo. Ti motorji imajo več težav s stabilnostjo.
Pri teh motorjih ni težav z elektronskim hrupom. Pri teh motorjih obstaja težava z elektronskim hrupom zaradi prisotnosti ščetk.
Vzdrževanje teh motorjev je manj. Vzdrževanje teh motorjev je visoko zaradi prisotnosti ščetk in komutatorja.
Ti so lahki in majhnih velikosti. Te so težke in velike.
Ti motorji so primerni za aplikacije z nizko porabo energije. Ti motorji so primerni za uporabo z visoko močjo.

Povezovanje enosmernega servo motorja z Arduinom

Za krmiljenje enosmernega servo motorja pod točnim in zahtevanim kotom je mogoče uporabiti ploščo Arduino/kateri koli drug mikrokrmilnik. Ta plošča ima analogni o/p, ki generira signal PWM za obračanje servo motorja pod natančnim kotom. Položaj kota servo motorja lahko premikate tudi s potenciometrom ali gumbi z uporabo Arduina.

Servo motor lahko upravljate tudi z IR daljinskim upravljalnikom, ki je takoj na voljo. Ta daljinski upravljalnik je v pomoč pri premikanju enosmernega servo motorja na določen kot ali linearnem povečevanju ali zmanjševanju kota motorja z IR daljinskim upravljalnikom.

Tukaj bomo razpravljali o tem, kako premakniti servo motor z uporabo IR daljinskega upravljalnika z uporabo Arduina pod določenim kotom in povečati ali zmanjšati kot servo motorja z daljinskim upravljalnikom v smeri urinega kazalca in nasprotni smeri urinega kazalca. Spodaj je prikazan diagram povezovanja enosmernega servo motorja z Arduinom in IR daljinskim upravljalnikom. Povezave tega vmesnika so naslednje:

  Povezovanje enosmernega servo motorja z Arduinom
Povezovanje enosmernega servo motorja z Arduinom

Ta vmesnik v glavnem uporablja tri bistvene komponente, kot so enosmerni servo motor, plošča Arduino in IR senzor TSOP1738. Ta senzor ima tri terminale, kot so Vcc, GND in izhod. Priključek Vcc tega senzorja je priključen na 5 V plošče Arduino Uno, priključek GND tega senzorja je povezan s priključkom GND na plošči Arduino in izhodni priključek je povezan s pinom 12 (digitalni vhod) plošče Arduino.

Digitalni izhodni zatič 5 je preprosto povezan z vhodnim zatičem signala servo motorja za pogon motorja
Zatič enosmernega servo motorja +ve je povezan z zunanjim napajanjem 5 V, zatič GND servo motorja pa z zatičem GND Arduina.

Delo

IR daljinski upravljalnik se uporablja za izvajanje dveh dejanj 30 stopinj, 60 stopinj in 90 stopinj ter tudi za povečanje/zmanjšanje kota motorja od 0 do 180 stopinj.

Daljinski upravljalnik vsebuje veliko gumbov, kot so gumbi s številkami (0-9), gumbi za nadzor kota, gumbi s puščicami, gumbi gor/dol itd. Ko pritisnete kateri koli gumb s številkami od 1 do 5, se enosmerni servo motor premakne na to natančen kot in ko pritisnete gumb za kot gor/dol, lahko kot motorja natančno nastavite na ±5 stopinj.

Ko so gumbi določeni, je treba kode teh gumbov dekodirati. Ko pritisnete kateri koli gumb na daljinskem upravljalniku, bo poslal eno kodo za izvedbo zahtevanega dejanja. Za dekodiranje teh oddaljenih kod se uporablja IR oddaljena knjižnica iz interneta.

Naložite naslednji program v Arduino in povežite IR senzor. Zdaj postavite daljinski upravljalnik proti IR senzorju in pritisnite gumb. Po tem odprite serijski monitor in spremljajte kodo pritisnjenega gumba v obliki številk.

Koda Arduino

#include // dodaj IR oddaljeno knjižnico
#include // dodaj knjižnico servo motorjev
Storitev storitev1;
int IRpin = 12; // zatič za IR senzor
int motor_angle=0;
IRrecv irrecv(IRpin);
rezultati decode_results;
praznina nastavitev()
{
Serial.begin(9600); // inicializacija serijske komunikacije
Serial.println('IR daljinsko voden servo motor'); // prikaz sporočila
irrecv.enableIRIn(); // Zaženite sprejemnik
servo1.attach(5); // deklariraj zatič servo motorja
servo1.write(motor_angle); // premakni motor na 0 stopinj
Serial.println('Kot servo motorja 0 stopinj');
zamuda (2000);
}
void loop()
{
medtem ko(!(irrecv.decode(&rezultati))); // počakajte, da ne pritisnete nobenega gumba
if (irrecv.decode(&results)) // ko pritisnete gumb in prejmete kodo
{
if(results.value==2210) // preveri, če je pritisnjen gumb številka 1
{
Serial.println(“kot servo motorja 30 stopinj”);
kot_motorja = 30;
servo1.write(motor_angle); // premaknite motor na 30 stopinj
}
else if(results.value==6308) // če je pritisnjen gumb številka 2
{
Serial.println(“kot servo motorja 60 stopinj”);
kot_motorja = 60;
servo1.write(motor_angle); // premaknite motor na 60 stopinj
}
else if(results.value==2215) // enako velja za vse številske gumbe
{
Serial.println(“kot servo motorja 90 stopinj”);
kot_motorja = 90;
servo1.write(motor_angle);
}
sicer če(results.value==6312)
{
Serial.println(“kot servo motorja 120 stopinj”);
kot_motorja = 120;
servo1.write(motor_angle);
}
sicer če(results.value==2219)
{
Serial.println(“kot servo motorja 150 stopinj”);
kot_motorja = 150;
servo1.write(motor_angle);
}
else if(results.value==6338) // če je pritisnjen gumb za povečanje glasnosti
{
if(motor_angle<150) motor_angle+=5; // povečanje kota motorja
Serial.print('Kot motorja je ');
Serial.println(motor_angle);
servo1.write(motor_angle); // in premaknite motor pod ta kot
}
else if(results.value==6292) // če je pritisnjen gumb za zmanjšanje glasnosti
{
if(motor_angle>0) motor_angle-=5; // zmanjšanje kota motorja
Serial.print('Kot motorja je ');
Serial.println(motor_angle);
servo1.write(motor_angle); // in premaknite motor pod ta kot
}
zamuda (200); // počakajte 0,2 sekunde
irrecv.resume(); // spet bodite pripravljeni na sprejem naslednje kode
}
}

Napajanje enosmernega servo motorja poteka iz zunanjega 5 V, napajanje IR senzorja in plošče Arduino pa preko USB-ja. Ko se servo motorju napaja, se premakne na 0 stopinj. Po tem bo sporočilo na serijskem monitorju prikazano kot 'kot servo motorja je 0 stopinj'.

Zdaj na daljinskem upravljalniku, ko pritisnete gumb 1, se bo enosmerni servo motor premaknil za 30 stopinj. Podobno se motor premakne pod želenimi koti, kot so 60 stopinj, 90 stopinj, 120 stopinj ali 150 stopinj, ko pritisnete gumbe, kot je 2, 3, 4 ali 5. Zdaj bo serijski monitor prikazal položaj kota servo motorja kot 'kot servo motorja xx stopinj'

Ko pritisnete gumb za povečanje glasnosti, se bo kot motorja povečal za 5 stopinj, kar pomeni, da če je 60 stopinj, se bo premaknil na 65 stopinj. Tako bo položaj novega kota prikazan na serijskem monitorju.

Podobno, ko pritisnete gumb za navzdol, se bo kot motorja zmanjšal za 5 stopinj, kar pomeni, da se bo, če je kot 90 stopinj, premaknil na 85 stopinj. Signal iz IR daljinskega upravljalnika zazna IR senzor. Če želite izvedeti, kako zaznava in kako deluje IR senzor, kliknite tukaj

Tako bo položaj novega kota prikazan na serijskem monitorju. Zato lahko enostavno nadziramo kot enosmernega servo motorja z Arduino in IR daljinskim upravljalnikom.

Če želite vedeti, kako povezati enosmerni motor z mikrokrmilnikom 8051, kliknite tukaj

Prednosti enosmernega servo motorja

The prednosti enosmernih servo motorjev vključujejo naslednje.

  • Delovanje enosmernega servo motorja je stabilno.
  • Ti motorji imajo veliko večjo izhodno moč od velikosti in teže motorja.
  • Ko ti motorji delujejo pri visokih hitrostih, ne ustvarjajo hrupa.
  • To delovanje motorja je brez vibracij in resonance.
  • Te vrste motorjev imajo visoko razmerje med navorom in vztrajnostjo in lahko zelo hitro prevzamejo obremenitve.
  • Imajo visoko učinkovitost.
  • Dajo hitre odgovore.
  • Ti so prenosni in lahki.
  • Možno je delovanje štirih kvadrantov.
  • Pri visokih hitrostih so ti slišno tihi.

The slabosti enosmernih servo motorjev vključujejo naslednje.

  • Hladilni mehanizem enosmernega servo motorja je neučinkovit. Tako se ta motor hitro onesnaži, ko je prezračen.
  • Ta motor ustvari največjo izhodno moč pri višji vrtilni frekvenci in potrebuje redno prestavljanje.
  • Ti motorji se lahko poškodujejo zaradi preobremenitve.
  • Imajo zapleteno zasnovo in potrebujejo kodirnik.
  • Ti motorji potrebujejo nastavitev za stabilizacijo povratne zanke.
  • Zahteva vzdrževanje.

Aplikacije enosmernega servo motorja

The aplikacije enosmernih servo motorjev vključujejo naslednje.

  • DC servo motorji se uporabljajo v obdelovalnih strojih za rezanje in preoblikovanje kovin.
  • Uporabljajo se za pozicioniranje antene, tiskanje, pakiranje, obdelavo lesa, tekstila, proizvodnjo vrvi ali vrvi, CMM (koordinatni merilni stroji), ravnanje z materiali, poliranje tal, odpiranje vrat, mizo X-Y, medicinsko opremo in predenje rezin.
  • Ti motorji se uporabljajo v sistemih za nadzor letal, kjer omejitve prostora in teže zahtevajo motorje za zagotavljanje visoke moči za vsako prostornino enote.
  • Uporabljajo se tam, kjer je potreben visok začetni navor, kot so pogoni puhal in ventilatorji.
  • Uporabljajo se predvsem za robotiko, naprave za programiranje, elektromehanske aktuatorje, obdelovalne stroje, procesne krmilnike itd.

Torej, to je pregled dc servo motor - deluje z aplikacijami. Ti servo motorji se uporabljajo v različnih industrijah kot rešitev za številna mehanska gibanja. Zaradi lastnosti teh motorjev so zelo učinkoviti in močni. Tukaj je vprašanje za vas, kaj je AC servo motor?