• Product
  • Suppliers
  • Manufacturers
  • Solutions
  • Free tools
  • Knowledges
  • Experts
  • Communities
Search


Hvad er en servomotorcontroller?

Encyclopedia
Felt: Encyclopædi
0
China


Hvad er en servo motorcontroller?


Definition af servo motorcontroller


En servo motorcontroller (eller servo motordriver) defineres som et kredsløb, der bruges til at styre positionen på en servo motor.

 


Servo motordriverkredsløb


Kredsløbet for servo motordriver inkluderer en mikrocontroller, strømforsyning, potentiometer og forbindelser, hvilket sikrer præcis motorstyring.

 


Mikrocontrollers rolle


Mikrocontrolleren genererer PWM-pulser i specifikke intervaller for at kontrollere servo motorens position præcist.

 


Strømforsyning


Designet af strømforsyningen til en servo motorcontroller afhænger af antallet af forbundne motorer. Servo motorer bruger typisk en strømforsyning på 4,8V til 6V, med 5V som standard. Overskridelse af spændingsniveauet kan skade motoren. Strømforbruget varierer med drejningsmomentet og er lavere i inaktiv tilstand og højere under kørsel. Det maksimale strømforbrug, kendt som stopstrøm, kan nå op til 1A for nogle motorer.

 


Til kontrol af en enkelt motor, anvend en spændingsregulator som LM317 med en kulder. Til flere motorer er en højkvalitets strømforsyning med et højere strømniveau nødvendig. En SMPS (Switched Mode Power Supply) er en god valgmulighed.



Blokkdiagram nedenfor viser forbindelser i en servo motordriver

 


070200dd6b74d3a766ea99ada66c86b6.jpeg

 


Kontrol af servo motor


Servo motoren har tre terminaler.

 


  • Positionsignal (PWM-pulser)

  • Vcc (fra strømforsyning)

  • Jord

 

bd99e48d2428dc57f8d8cce455130a89.jpeg

 

Servo motorens vinkelposition styres ved at anvende PWM-pulser med specifikke bredde. Pulsdurationen varierer fra omkring 0,5ms for 0-graders rotation til 2,2ms for 180-graders rotation. Pulserne skal gives ved frekvenser omkring 50Hz til 60Hz.

 


For at generere PWM (Pulse Width Modulation) bølgeform, som vist på figuren nedenfor, kan man enten bruge den interne PWM-module i mikrocontrolleren eller tidsregistranter kan anvendes. Brugen af PWM-blokken er mere fleksibel, da de fleste mikrocontrollerfamilier er designet, og denne PWM-blok bedre passer til behovene for applikationer som en servo motor. For forskellige bredder af PWM-pulser, skal interne registre programmeres i overensstemmelse hermed.


Nu skal vi også fortælle mikrocontrolleren, hvor meget den skal rotere. Til dette formål kan vi bruge et simpelt potentiometer og anvende en ADC for at få rotationsvinklen, eller for mere komplekse applikationer kan en accelerometer anvendes.

 


3b0074e2-cb49-45d2-9bd2-24f43a18e605.jpg

 

Programalgoritme


Lad os designe programmet til at kontrollere en enkelt servo, og positionsindgangen er givet via potentiometeret, der er forbundet til en pin på controlleren.

 


  • Initialiser portpinsene for input/output.



  • Læs ADC for ønsket servoposition.



  • Programmer PWM-registre for det ønskede værdi.



  • Så snart du aktiverer PWM-modulen, går den valgte PWM-kanalpin op (logisk 1), og når den nødvendige bredde er nået, går den igen ned (logisk 0). Så efter at have aktiveret PWM, skal du starte en tidsregistrant med en forsinkelse på ca. 19 ms og vente, indtil tidsregistranten overskrides. Gå til trin 2


 


Der findes forskellige PWM-tilstande, som du kan bruge, afhængigt af den mikrocontroller, du vælger. Nogen grad af optimering skal udføres i koden for at kontrollere servo.

 


Hvis du planlægger at bruge mere end en servo, vil du have brug for lige så mange PWM-kanaler. Hver servo kan gives PWM-signal sekventielt. Men du skal passe på, at pulsgentagelseshastigheden for hver servo opretholdes. Ellers vil servo miste synkronisering.


Giv en gave og opmuntre forfatteren
Anbefalet
Send forespørgsel
Hent
Hent IEE Business-applikationen
Brug IEE-Business appen til at finde udstyr få løsninger forbinde med eksperter og deltage i branchesamarbejde overalt og altid fuldt ud understøttende udviklingen af dine energiprojekter og forretning