618 123105 1403179198 0

1. Giới thiệu

Servo là một dạng động cơ điện đặc biệt quan trọng. Không giống như động cơ thường thì cứ cắm điện vào là quay liên tục, servo chỉ quay khi được điều khiển và tinh chỉnh ( bằng xung PPM ) với góc quay nằm trong khoảng chừng bất kỳ từ 0 o – 180 o. Mỗi loại servo có size, khối lượng và cấu trúc khác nhau. Có loại thì nặng chỉ 9 g ( hầu hết dùng trên máy bay mô mình ), có loại thì chiếm hữu một momen lực bá đạo ( vài chục Newton / m ), hoặc có loại thì khỏe và nhông sắc chắc như đinh, …
Bạn muốn tự làm app android tinh chỉnh và điều khiển Servo qua Internet ? ! ? Bơi vào xem ngay .

Động cơ servo được phong cách thiết kế những mạng lưới hệ thống hồi tiếp vòng kín. Tín hiệu ra của động cơ được nối với một mạch điều khiển và tinh chỉnh. Khi động cơ quay, tốc độ và vị trí sẽ được hồi tiếp về mạch điều khiển và tinh chỉnh này. Nếu có bầt kỳ nguyên do nào ngăn cản hoạt động quay của động cơ, cơ cấu tổ chức hồi tiếp sẽ nhận thấy tín hiệu ra chưa đạt được vị trí mong ước. Mạch tinh chỉnh và điều khiển liên tục chỉnh rơi lệch cho động cơ đạt được điểm đúng chuẩn. Các động cơ servo tinh chỉnh và điều khiển bằng liên lạc vô tuyến được gọi là động cơ servo RC ( radio-controlled ). Trong trong thực tiễn, bản thân động cơ servo không phải được tinh chỉnh và điều khiển bằng vô tuyến, nó chỉ nối với máy thu vô tuyến trên máy bay hay xe hơi. Động cơ servo nhận tín hiệu từ máy thu này .

618 123105 1403179198 0

Hình 1 : Loại micro servo Tower Pro 9 g thông dụng

619 123105 1403179254 0 servo2

Hình 2: Bên trong một micro servo

2. Lắp mạch

Chuẩn bị

620 123105 1403180953 0

Hình 3 : Sơ đồ mạch breadboard

Thư viện Servo đã có sẵn trong hệ thống thư viện mặc định của Arduino nên bạn không cần phải download một thư viện mới về.

Copy và dán code sau

#include       // Thư viện điều khiển servo

// Khai báo đối tượng myservo dùng để điều khiển servo
Servo myservo;          

int bientro = A0;       // Khai báo chân analog đọc biến trở điều khiển servo
int servoPin = 9;       // Khai báo chân điều khiển servo

void setup ()
{
    // Cài đặt chức năng điều khiển servo cho chân servoPin
    myservo.attach(servoPin); 
    
    Serial.begin(9600); // Mở giao tiếp Serial ở baudrate 9600
}

void loop ()
{
    int value = analogRead(bientro);// Đọc giá trị biến trở
    
    // Chuyển giá trị analog (0-1023) đọc được từ biến trở sang số đo độ (0-180độ)
    // dùng để điều khiển góc quay cho servo
    int servoPos = map(value, 0, 1023, 0, 180);
    
    // Cho servo quay một góc là servoPos độ
    myservo.write(servoPos);
    
    Serial.println(servoPos);
    
    delay(100);
}

3. Kết luận

Bạn trọn vẹn hoàn toàn có thể làm rất nhiều thứ với Servo. Theo tớ được biết, Servo được dùng trong dự án Bất Động Sản kBOT – Wifi Robot đã được tác giả Ngô Huỳnh Ngọc Khánh dùng trong việc kiểm soát và điều chỉnh camera, cánh tay robot và radar địa hình. Còn bạn thì sao ? Hãy dùng Arduino UNO R3 và Servo tạo ra sự những ứng dụng độc lạ !
Đừng quên một chai nước ngọt khi bí nhé !

Leave a Reply

Email của bạn sẽ không được hiển thị công khai.