Động cơ RC Servo là gì?

Động cơ RC Servo là gì?

Động cơ RC Servo là gì?

servo-arduino

Động cơ RC Servo là động cơ có tốc độ thấp, mô-men xoắn cao, có nhiều kích cỡ khác nhau. Không giống như động cơ DC và Stepper, Động cơ RC Servo thường không xoay ở góc 360 độ. Thay vào đó, nó bị giới hạn trong phạm vi 180, 270 hoặc 90 độ.

Một tín hiệu điều khiển được gửi đến servo để điều chỉnh trục ở góc mong muốn. Với một tín hiệu duy nhất làm cho nó đơn giản và được sử dụng rộng rãi trong các ứng dụng Arduino.

Điều khiển Động cơ Servo bằng PWM

Trong các động cơ Analog Servo, tín hiệu PWM có cho kỳ 20ms được sử dụng để điều khiển động cơ.

Một tín hiệu 20ms có tần số 50Hz.

Độ rộng của xung được thay đổi trong khoảng từ 1 đến 2ms để điều khiển vị trí trục động cơ.

servo-pwm
  • Độ rộng xung 1,5ms sẽ làm cho trục servo nằm ở vị trí 90 độ.
  • Độ rộng xung 1ms sẽ làm cho trục servo nằm ở vị trí 0 độ.
  • Độ rộng xung 2ms sẽ làm cho trục servo nằm ở vị trí 180 độ.

Việc thay đổi độ rộng xung giữa 1ms và 2ms sẽ di chuyển trục servo qua góc giới hạn 180 độ. Bạn có thể điều chỉnh ở bất kỳ góc nào bạn muốn bằng cách điều chỉnh độ rộng xung cho phù hợp.

Thời gian Động cơ Servo quay liên tục

Động cơ RC servo quay liên tục, gửi các tín hiệu PWM giống nhau sẽ khiến động cơ hoạt động khác nhau.

thoi-gian-dong-co-quay-lien-tuc
  • Độ rộng xung 1,5ms sẽ làm cho servo ngừng quay.
  • Độ rộng xung 1ms sẽ làm cho servo quay với tốc độ tối đa theo chiều ngược kim đồng hồ.
  • Độ rộng xung 2ms sẽ làm cho trục servo quay với tốc độ tối đa theo chiều kim đồng hồ.

Thay đổi độ rộng xung giữa 1ms và 1,5ms sẽ làm cho động cơ quay ngược chiều kim đồng hồ với độ rộng xung ngắn hơn làm cho động cơ quay nhanh hơn.

Thay đổi độ rộng xung giữa 1,5ms và 2ms sẽ làm cho động cơ quay theo chiều kim đồng hồ với các xung dài hơn dẫn đến tốc độ nhanh hơn.

Tốc độ

Tốc độ của động cơ RC servo được xác định là thời gian cần thiết để có thể di chuyển trục của servo bằng 60 độ.

toc-do-dong-co

Ví dụ 0,25 giây / 60 độ, nghĩa là phải mất một phần tư giây để di chuyển tới góc 60 độ.

Mô-men xoắn

Mô-men xoắn là một đại lượng rất quan trọng, dùng để xác định mức độ mạnh mẽ của động cơ.

Đơn vị tính bằng ounce-inch hoặc kilogam-cm. Bạn có thể quy đổi như sau:

  • Nhân số kilogam-centimet với 13,88 để có được ounce-inch.
  • Chia ounce-inch 13,88 để có được kilogam-cm.

Để hiểu hơn các con số mô-men xoắn các bạn xem ví dụ sau:

mo-men-xoan-dong-co

Một động cơ servo chịu được tải là 5kg-cm. Đồng nghĩa là sẽ chịu được 69,4 oz-in (5 x 13,88 = 69,4).

Động cơ servo có thể chịu được tải 5 kg ở khoảng cách 1 cm tính từ tâm của trục.

Khi tăng gấp đôi khoảng cách, tải sẽ giảm đi một nửa, do đó cách trục 2cm và chịu được tải là 2,5kg.

Một nửa khoảng cách nhân đôi tải trọng có thể chịu được 10kg.

Động cơ servo càng lớn có xu hướng mô-men xoắn càng lớn và động cơ có mô-men xoắn lớn hơn thì giá thành càng cao.

Bạn sẽ học được gì

  • Có kiến thức cơ bản về Robotics
  • Chế tạo Robot dò đường thông minh
  • Đánh thức nhà khoa học bên trong bạn
  • Tìm hiểu thêm về Robotics, các thuật toán Robot tự động
  • Kiến thức nền tảng để chế tạo các máy móc tự động phục vụ đời sống sinh hoạt, lao động sản xuất
  • Kiến thức để chế tạo sản phẩm, tham gia các cuộc thi khoa học công nghệ trong nước và quốc tế

KHÓA HỌC
CHẾ TẠO ROBOT DÒ ĐƯỜNG

Đã có 284 học viên đăng ký

Điện áp hoạt động

Hầu hết các động cơ có điện áp hoạt động từ 4,8 đến 6 Volt.

Ngoài ra trên thị trường hiện nay có rất nhiều servo có điện áp hoạt động từ 7,5 đến 8,5 volt. Và ngày càng phổ biến hơn do sự xuất hiện của pin Lipo 7.4 volt để đáp ứng cho nhu cầu chơi: máy bay mô hình, tàu thuyền, quadcopters…

Sơ đồ chân Động cơ RC Servo

Thông thường RC servo có 3 chân. Màu sắc của dây được đánh khác nhau tùy thuộc vào nhà sản xuất. Tuy nhiên vị trí của các chân được đồng nhất với nhau trong quá trình thiết kế.

sơ đồ chân động cơ servo
  • Ground: Chân nối đất (Mass).
  • Power: Chân cấp nguồn cho servo.
  • Control: Chân gửi tín hiệu điều khiển.

Ứng dụng điều khiển Động cơ Servo SG90 sử dụng Arduino Uno

Động cơ Servo SG90 là một loại động cơ được sử dụng để điều khiển vị trí của các thiết bị trong các ứng dụng như robot, máy in 3D, máy bay điều khiển từ xa, v.v. Trong ứng dụng này, chúng ta sẽ sử dụng Arduino Uno để điều khiển động cơ Servo SG90.

Sơ đồ kết nối:

  • Chân GND của Arduino kết nối với chân GND của động cơ Servo.
  • Chân 5V của Arduino kết nối với chân VCC của động cơ Servo.
  • Chân 9 của Arduino kết nối với chân sinyal (chân trung tâm) của động cơ Servo.

Để điều khiển động cơ Servo SG90, chúng ta cần sử dụng thư viện Servo.h có sẵn trong Arduino IDE. Bạn có thể cài đặt thư viện này bằng cách vào menu Sketch -> Include Library -> Servo.

Sau đây, là đoạn code để điều khiển động cơ Servo SG90:

#include <Servo.h>

Servo servo;  // Khai báo đối tượng servo

void setup() {
  servo.attach(9);  // Chân 9 được sử dụng để điều khiển động cơ Servo
}

void loop() {
  servo.write(0);      // Quay động cơ Servo đến góc 0 độ
  delay(1000);         // Đợi 1 giây
  servo.write(90);     // Quay động cơ Servo đến góc 90 độ
  delay(1000);         // Đợi 1 giây
  servo.write(180);    // Quay động cơ Servo đến góc 180 độ
  delay(1000);         // Đợi 1 giây
}

Trong đoạn mã lệnh trên, chúng ta khai báo đối tượng servo của thư viện Servo.h. Trong hàm setup(), chúng ta gọi phương thức attach(9) để thiết lập chân 9 của Arduino để điều khiển động cơ Servo SG90. Trong hàm loop(), chúng ta gọi phương thức write() của đối tượng servo để điều khiển động cơ Servo SG90 đến các góc khác nhau, và sử dụng hàm delay() để đợi 1 giây giữa mỗi lần điều khiển động cơ.

Sau khi nạp chương trình vào Arduino Uno, động cơ Servo SG90 sẽ được điều khiển để quay đến các góc khác nhau theo thời gian được thiết lập.

Câu hỏi thường gặp

Bài viết liên quan

Subscribe
Notify of
guest

0 Comments
Inline Feedbacks
View all comments