Servo: cara menggunakan motor servo dengan Arduino

servo, motor servo

Jika Anda ingin menggunakan file motor servo, atau servo, Dengan Arduino, di artikel ini Anda akan mempelajari apa yang Anda butuhkan untuk memulai. Kami telah melihat di artikel lain apa yang perlu digunakan motor listrik, motor stepper, dan juga konsep lain yang diperlukan untuk memahami pengoperasian perangkat jenis ini, seperti artikel di PWM.

Sekarang, Anda dapat menambahkan komponen elektronik baru ke daftar perangkat dianalisis dan Anda bisa pergi mengintegrasikan proyek DIY Anda untuk menambahkan fungsionalitas baru.

Apa itu servo?

servo

Un motor servo, atau sederhananya servo, adalah motor elektronik dengan kemiripan dengan motor DC konvensional, tetapi dengan beberapa elemen yang membuatnya istimewa. Dalam hal ini, ia memiliki kemampuan untuk menahan posisi yang diindikasikan, sesuatu yang tidak diizinkan oleh motor listrik.

Di sisi lain, servo juga bisa kontrol yang tepat kecepatan putaran, berkat rangkaian roda gigi internal dan sistem yang memungkinkan kontrol yang jauh lebih baik daripada yang dapat dilakukan pada jenis motor lain.

Fitur-fitur ini membuatnya sangat menarik aplikasi robotika, atau untuk perangkat lain yang diperlukan untuk mengontrol gerakan dan posisi, seperti printer, atau mobil yang dikendalikan dari jarak jauh. Pada jenis mobil yang dikendalikan radio ini terdapat motor konvensional untuk menggerakkan mobil, dan servo untuk kemudi, yang dapat digunakan untuk mengontrol belokan dengan tepat.

Perbedaan antara motor stepper dan motor servo

nema 17

Jika Anda bertanya-tanya perbedaan antara motor servo dan motor stepper, sebenarnya mereka bisa bingung, karena di motor stepper, atau stepper, rotasi juga bisa dikontrol dengan sangat tepat, dan aplikasinya sangat mirip dengan servo. Sebaliknya, ada beberapa perbedaan.

Dan itulah yang biasanya digunakan oleh servomotor magnet tanah jarang, sedangkan motor stepper menggunakan magnet yang lebih murah dan lebih konvensional. Oleh karena itu, servo dapat mencapai pengembangan torsi yang lebih tinggi, meskipun tetap kompak. Oleh karena itu, gaya belok akan sangat tinggi.

fitur teknis

Setiap kali Anda membeli servo, Anda harus berkonsultasi dengan lembar teknis atau lembar datanya. Dengan begitu, Anda akan memastikan file karakteristik teknis memiliki, tetapi juga batasan yang dapat Anda gunakan, seperti tegangan, intensitas, beban maksimum, torsi, dll. Ingatlah bahwa setiap model bisa sangat berbeda.

Misalnya, jika Anda melihat salah satu yang paling populer, Micro Servo 9G SG90 dari perusahaan Tower Pro yang terkenal, maka Anda akan memiliki beberapa karakteristik yang sangat aneh, meskipun pemrograman dan koneksi model kurang lebih sama dan semua yang dikatakan di sini berguna bagi siapa saja.

Dalam kasus model ini, ini adalah motor berkualitas tinggi, dengan sudut putar yang memungkinkan a menyapu antara -90 dan 90º, artinya, putaran total 180º. Resolusi yang bisa Anda capai sangat tinggi, jadi Anda bisa maju sedikit demi sedikit. Misalnya, dengan batasan sinyal PWM Arduino UNO, Anda bahkan bisa mendapatkan uang muka dari satu kelas ke kelas lain.

Demikian juga, sinyal PWM juga akan memberlakukan batas lain, yaitu berapa kali setiap posisi dapat berubah per satuan waktu. Misalnya, karena pulsa bekerja antara 1 dan 2 ms dan dengan Periode 20 ms (50Hz), maka servo dapat bergerak sekali setiap 20 ms.

Selain itu, ia akan memiliki berat 9 gram dan, meskipun berat dan ukurannya kompak, ia dapat mengembangkan a torsi atau torsi 1.8 kg / cm dengan 4.8v. Itu berkat set gigi POM-nya.

Akhirnya, Anda sudah tahu bahwa, tergantung pada apa yang ingin Anda capai, Anda harus memilih satu atau model lain, sehingga memiliki fitur yang diperlukan untuk proyek Anda. Artinya, tidak sama bahwa Anda menginginkan motor untuk memindahkan beban X, dari satu untuk XX ...

Tempat membeli servo

motor servo

Jika Anda ingin mulai menggunakan motor servo jenis ini, Anda dapat menemukannya dengan harga murah di banyak toko khusus, dan Anda juga bisa mendapatkannya secara online di Amazon. Misalnya, berikut beberapa contoh produk yang direkomendasikan yang mungkin menarik bagi Anda:

Semuanya memiliki sudut putar yang cukup bagus, tetapi pada dasarnya berbeda dalam torsi yang dapat ditoleransi oleh masing-masing. Saya telah memasukkan tiga model berbeda. Yang pertama, dan lebih murah, mungkin cukup untuk sebagian besar aplikasi. Tetapi jika Anda membutuhkan satu dengan kekuatan yang lebih besar untuk aplikasi lain, Anda memiliki 25 dan 35, yang sudah sangat luar biasa ...

Integrasi dengan Arduino

servo arduino

Seperti yang Anda lihat pada gambar di atas, servo terhubung dengan sangat mudah ke Arduino. Ini hanya memiliki tiga kabel, yang dapat Anda sambungkan dengan cara ini:

  • Merah dengan 5V
  • Hitam dengan GND
  • Kuning dengan pin PWM Arduino, dalam hal ini dengan -9.

Untuk memprogram sketsa untuk mulai menggunakan jenis mesin ini, Anda memiliki beberapa opsi. Tapi, pertama-tama, untuk memulai, Anda harus melakukannya tambahkan pustaka Arduino IDE untuk menggerakkan motor servo jenis ini:

  1. Buka Arduino IDE.
  2. Buka Program.
  3. Kemudian Include Library.
  4. Servo

Mengenai kode sketsa, bisa sesederhana itu di mana servo akan melalui posisinya dengan berhenti di 0º, 90º dan 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);
}

Sekarang jika Anda mau pindahkan dari derajat ke derajat, maka akan menjadi seperti ini:

// 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);
  }
}


Jadilah yang pertama mengomentari

tinggalkan Komentar Anda

Alamat email Anda tidak akan dipublikasikan. Bidang yang harus diisi ditandai dengan *

*

*

  1. Penanggung jawab data: Miguel Ángel Gatón
  2. Tujuan data: Mengontrol SPAM, manajemen komentar.
  3. Legitimasi: Persetujuan Anda
  4. Komunikasi data: Data tidak akan dikomunikasikan kepada pihak ketiga kecuali dengan kewajiban hukum.
  5. Penyimpanan data: Basis data dihosting oleh Occentus Networks (UE)
  6. Hak: Anda dapat membatasi, memulihkan, dan menghapus informasi Anda kapan saja.