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?
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
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
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:
-
AZDelivery Servo MG90S Mikro: mendukung hingga 13.4 kg.
- Inovasi-EU: hingga 25 kg / cm.
- Inovasi-EU: model tahan air lain, dan dengan berat hingga 35kg / cm.
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
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:
- Buka Arduino IDE.
- Buka Program.
- Kemudian Include Library.
- 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); } }