Xem danh mục

Điều khiển động cơ Servo

1. Mục tiêu bài học #

Sau bài này, bạn sẽ:

  • Hiểu servo SG90 hoạt động như thế nào
  • Điều khiển servo quay đến các góc khác nhau
  • Tạo hiệu ứng quét qua lại
  • Kết hợp servo với robot Arduino

2. Giới thiệu động cơ Servo SG90 #

Servo SG90 là loại động cơ mini có thể:

  • Quay chính xác theo góc
  • Giữ nguyên vị trí
  • Điều khiển dễ dàng bằng Arduino

Thông thường servo SG90 quay được khoảng:

  • 90°
  • 180°

Servo thường dùng để:

  • Xoay camera
  • Gắp đồ vật
  • Điều khiển tay robot
  • Quét cảm biến siêu âm

3. Sơ đồ kết nối #

Nhận biết dây Servo SG90

Màu dâyChức năng
Nâu/ĐenGND
Đỏ5V
Cam/VàngSignal

Kết nối với Arduino

Servo Arduino
GNDGND
5V5V
Signal A5

4. Code quay Servo đến các góc #

#include <Servo.h>

Servo myServo;

void setup() {
  myServo.attach(A5);
}

void loop() {

  // Quay về 0 độ
  myServo.write(0);
  delay(1000);

  // Quay đến 90 độ
  myServo.write(90);
  delay(1000);

  // Quay đến 180 độ
  myServo.write(180);
  delay(1000);
}

5. Giải thích code #

Khai báo thư viện

#include <Servo.h>

Dùng thư viện điều khiển Servo.

Tạo đối tượng Servo

Servo myServo;

Gắn Servo vào chân A5

myServo.attach(A5);

Điều khiển góc quay

myServo.write(90);

Servo sẽ quay đến góc 90 độ.

6. Hiệu ứng quét qua lại #

Code dưới đây giúp servo quay từ trái sang phải liên tục.

#include <Servo.h>

Servo myServo;

void setup() {
  myServo.attach(A5);
}

void loop() {

  // Quay từ 0 -> 180
  for(int angle = 0; angle <= 180; angle++) {

    myServo.write(angle);
    delay(10);
  }

  // Quay từ 180 -> 0
  for(int angle = 180; angle >= 0; angle--) {

    myServo.write(angle);
    delay(10);
  }
}

8. Điều chỉnh tốc độ Servo #

Servo càng delay lớn → quay càng chậm.

Ví dụ:

delay(5);

Quay nhanh hơn.

delay(20);

Quay chậm hơn.

9. Ứng dụng thực tế trên robot #

Servo thường dùng để:

  • Xoay cảm biến HC-SR04
  • Làm tay gắp
  • Xoay camera ESP32-CAM
  • Điều khiển cơ cấu robot

Ví dụ:

  • Servo quay trái → đo khoảng cách
  • Servo quay phải → đo khoảng cách
  • Robot chọn hướng tránh vật cản

10. Một số biến thể khác #

11. Tổng kết #

Trong bài này bạn đã học:

  • Cách dùng servo SG90
  • Điều khiển góc quay
  • Tạo chuyển động quét
  • Ứng dụng servo trên robot Arduino