Servo: kako koristiti servo motor sa Arduinom

servo, servo motor

Ako želite koristiti servo motor ili servosa Arduino, u ovom ćete članku naučiti što vam je potrebno za početak. Već smo vidjeli u drugim člancima šta je potrebno koristiti elektromotora, koračni motori, kao i druge koncepte neophodne za razumijevanje rada ove vrste uređaja, kao što je članak o PWM.

Sada možete dodati još jednu novu elektroničku komponentu listu uređaja analizirali i da možete ići integriranje vaših DIY projekata da dodate novu funkcionalnost.

Šta je servo?

servo

Un servomotor, ili jednostavno servo, je elektronički motor sličnih uobičajenim istosmjernim motorima, ali s nekim elementima koji ih čine posebnim. U ovom slučaju ima sposobnost da zadrži položaj koji je naznačen, nešto što elektromotori ne dopuštaju.

S druge strane, servo može takođe precizno kontrola brzinu rotacije, zahvaljujući nizu unutrašnjih zupčanika i sistemu koji omogućava mnogo bolju kontrolu nego što bi se to moglo učiniti kod drugih tipova motora.

Ove značajke čine ga posebno zanimljivim za aplikacije robotike, ili za druge uređaje na kojima je potrebno kontrolirati kretanje i položaj, poput štampača ili automobila na daljinsko upravljanje. U ovom tipu radio-upravljanih automobila postoji konvencionalni motor za upravljanje automobilom i servo za upravljanje, kojim se precizno kontrolira zavoj.

Razlika između koračnog motora i servo motora

nema 17

Ako se pitate razlika između servo motora i koračnog motora, istina je da se mogu zbuniti, jer se u koračnom motoru ili koraku rotacija također može kontrolirati prilično precizno, a primjene su vrlo slične servo. Umjesto toga, postoje neke razlike.

A to je što servomotori obično koriste magneti za rijetke zemlje, dok koračni motori koriste jeftinije i uobičajenije magnete. Stoga servo motor može postići veći obrtni moment, uprkos tome što ostaje kompaktan. Stoga će sila okretanja biti vrlo velika.

Tehničke karakteristike

Kad god kupujete servo, trebali biste pregledati njegov tehnički list ili tehnički list. Na taj ćete način osigurati tehničke karakteristike ima, ali i ograničenja kojima ga možete podvrgnuti, kao što su napon, intenzitet, maksimalno opterećenje, obrtni moment itd. Zapamtite da svaki model može biti prilično različit.

Na primjer, ako pogledate jedan od najpopularnijih, Micro Servo 9G SG90 od poznata firma Tower Pro, tada ćete imati neke vrlo neobične karakteristike, iako su programiranje i povezivanje modela više-manje isti i sve ovdje rečeno korisno je za bilo koga.

U slučaju ovog modela radi se o visokokvalitetnom motoru, sa uglom okretanja koji omogućava a pomeranje između -90 i 90º, to jest, ukupni zaokret od 180º. Rezolucija koju možete postići je vrlo visoka, tako da ćete moći napredovati vrlo malo po malo. Na primjer, s ograničenjima PWM signala od Arduino UNO, čak biste mogli dobiti i napredak od razreda do razreda.

Isto tako, PWM signal će također nametnuti drugo ograničenje i to je broj mogućih promjena svake pozicije u jedinici vremena. Na primjer, budući da impulsi rade između 1 i 2 ms i sa Periodi od 20 ms (50Hz), tada se servo može pomicati jednom u 20 ms.

Uz to će imati težinu od 9 grama i, unatoč toj težini i kompaktnoj veličini, može razviti a obrtni moment ili obrtni moment od 1.8 kg / cm sa 4.8v. To je zahvaljujući njegovom POM kompletu zupčanika.

Konačno, već znate da, ovisno o tome što želite postići, morate odabrati jedan ili drugi model, tako da on ima značajke potrebne za vaš projekt. Odnosno, nije isto što želite da motor pokreće teret X, nego onaj za XX ...

Gde kupiti servo

servomotor

Ako želite početi koristiti ovu vrstu servomotora, možete ga pronaći jeftino u mnogim specijaliziranim prodavnicama, a možete ga dobiti i na mreži na Amazonu. Na primjer, evo nekoliko primjera preporučeni proizvodi što bi vas moglo zanimati:

Svi imaju prilično dobar kut okretanja, ali u osnovi se razlikuje po obrtnom momentu koji svaki može podnijeti. Uključio sam tri različita modela. Prvi i jeftiniji možda su dovoljni za većinu aplikacija. Ali ako vam treba jedan s većom snagom za druge primjene, imate 25 i 35, koji su već prilično izvanredni ...

Integracija s Arduinom

arduino servo

Kao što vidite na gornjoj slici, servo se vrlo lako povezuje u Arduino. Ima samo tri kabela koja možete povezati na ovaj način:

  • Crvena sa 5V
  • Crna sa GND
  • Žuta sa Arduino PWM pinom, u ovom slučaju sa -9.

Da biste programirali skicu za početak korištenja ovih vrsta motora, imate nekoliko mogućnosti. Ali, prije svega, morate započeti dodati Arduino IDE biblioteku za pogon ove vrste servo motora:

  1. Otvorite Arduino IDE.
  2. Idite na Program.
  3. Zatim Uključi biblioteku.
  4. Servo

Što se tiče skica kodMože biti tako jednostavno u kojem će servo prolaziti kroz svoje položaje, zaustavljajući se na 0º, 90º i 180º:

//Incluir la biblioteca del servo
#include <Servo.h>
 
//Declarar la variable para el servo
Servo servoMotor;
 
void setup() {
  // Iniciar el monitor serie
  Serial.begin(9600);
 
  // Iniciar el servo para que use el pin 9 al que conectamos
  servoMotor.attach(9);
}
 
void loop() {
  
  // Desplazar a la posición 0º
  servoMotor.write(0);
  // Esperar 1 segundo
  delay(1000);
  
  // Desplazar a la posición 90º
  servoMotor.write(90);
  // Esperar 1 segundo
  delay(1000);
  
  // Desplazamos a la posición 180º
  servoMotor.write(180);
  // Esperar 1 segundo
  delay(1000);
}

Sad ako želite premjestite ga sa stupnja na stepen, onda bi to bilo ovako:

// Incluir la biblioteca servo
#include <Servo.h>
 
// Declarar la variable para el servo
Servo servoMotor;
 
void setup() {
  // Iniciar la velocidad de serie
  Serial.begin(9600);
 
  // Poner el servo en el pin 9
  servoMotor.attach(9);
 
  // Iniciar el servo en 0º
  servoMotor.write(0);
}
 
void loop() {
 
  // Los bucles serán positivos o negativos, en función el sentido del giro
  // Positivo
  for (int i = 0; i <= 180; i++)
  {
    // Desplazar ángulo correspondiente
    servoMotor.write(i);
    // Pausa de 25 ms
    delay(25);
  }
 
  // Negativo
  for (int i = 179; i > 0; i--)
  {
    // Desplazar el ángulo correspondiente
    servoMotor.write(i);
    // Pausa e 25 ms
    delay(25);
  }
}


Budite prvi koji komentarišete

Ostavite komentar

Vaša e-mail adresa neće biti objavljena. Obavezna polja su označena sa *

*

*

  1. Za podatke odgovoran: Miguel Ángel Gatón
  2. Svrha podataka: Kontrola neželjene pošte, upravljanje komentarima.
  3. Legitimacija: Vaš pristanak
  4. Komunikacija podataka: Podaci se neće dostavljati trećim stranama, osim po zakonskoj obavezi.
  5. Pohrana podataka: Baza podataka koju hostuje Occentus Networks (EU)
  6. Prava: U bilo kojem trenutku možete ograničiti, oporaviti i izbrisati svoje podatke.