Phần 12: ĐỘNG CƠ VÀ CHUYỂN ĐỘNG

No Comments

Phần 12: ĐỘNG CƠ VÀ CHUYỂN ĐỘNG

 

Trong phần này bạn sẽ:

  • Sử dụng một động cơ servo để tạo một nhiệt kế tương tự
  • Tìm hiểu cách điều khiển tốc độ và hướng của các động cơ điện
  • Sử dụng một mạch Arduino điều khiển động cơ (Arduino motor shield)
  • Bắt đầu làm việc trên một robot xe tăng có gắn các động cơ
  • Sử dụng các microswitch (công tắc hành trình mini) để tránh vật cản
  • Sử dụng cảm biến khoảng cách hồng ngoại và siêu âm để tránh vật cản

 

Nội dung của chương là các dự án:

Project #38: Dựng một đồng hồ nhiệt tương tự

Project #39: Điều khiển động cơ

Project #40: Dựng và điều khiển một robot xe tăng

Project #41: Robot xe tăng phát hiện vật cản với một công tắc hành trình mini

Project #42: Robot xe tăng phát hiện vật cản với cảm biến khoảng cách hồng ngoại.

Project #43: Robot xe tăng phát hiện vật cản với cảm biến khoảng cách siêu âm

Thực hiện chuyển động nhỏ với Servos

Một servo (cách viết ngắn gọn của servomechanism) chứa một động cơ điện, có thể được điều khiển để quay tới một vị trí góc xác định. Ví dụ, bạn có thể sử dụng một servo để điều khiển bánh lái của một xe điều khiển từ xa bằng cách kết nối servo tới một horn (horn – là một cánh tay nhỏ hoặc một thanh nhỏ mà servo quay). Một ví dụ của horn là một kim đồng hồ trong đồng hồ tương tự (khác với đồng hồ số). Hình 12-1 thể hiện một servo và 3 dạng của horn:

Hình 12-1: Servo và các loại horn

 

Chọn một servo

Khi bạn chọn một servo, bạn cần xem xét một vài thông số sau:

  • Speed (Tốc độ): thởi gian cần để servo quay, thường được đo bằng giây trên độ.
  • Rotational range (Phạm vi quay): Phạm vi góc mà servo có thể quay – ví dụ, 180 độ hoặc 360 độ.
  • Current (cường độ dòng): dòng mà servo kéo là bao nhiêu. Khi sử dụng một servo với một Arduino, bạn cần phải sử dụng một nguồn ngoài cho servo.
  • Torque (mô men quay): Giá trị lực mà servo có thể gây ra khi quay. Mô men càng lớn, servo có thể điều khiển được vật càng nặng. Momen gây ra là tương ứng với giá trị của dòng điện sử dụng.

Servo được thể hiện trong hình 12-1 là hexTronik HXT900. Nó không đắt và có thể quay lên tới 180 độ, được thể hiện trong hình 12-2.

Hình 12-2: Ví dụ phạm vi quay của servo

Kết nối với một servo

Rất dễ kết nối một servo tới một Arduino vì chỉ có 3 dây liên quan. Nếu bạn đang sử dụng HXT900, dây có màu tối nhất nối với GND, dây ở giữa nối với 5V, và dây sáng nhất (dây xung) nói với chân tín hiệu số. Nếu bạn đang sử dụng servo khác, kiểm tra bảng thông số (datasheet) để nối dây chính xác.

 

Đặt một servo để làm việc

Bây giờ hãy cùng đặt servo của chúng ta làm việc. Trong sketch này, servo sẽ quay qua phạm vi quay của nó. Kết nối servo với Arduino của bạn như được mô tả, với dây tín hiệu xung nối với chân số 4, và sau đó nhấn enter và nạp sketch trong Listing 12-1.

Listing 12-1: Sketch thể hiện servo

Trong sketch này, chúng ta sử dụng thư viện servo có trong Arduino IDE và tạo một ví dụ của servo như sau:

#include <Servo.h>

Servo myservo;

Sau đó, trong hàm void setup(), chúng ta có thể báo cho Arduino chân dùng để điều khiển servo.

myservo.attach(4); //chan dieu khien la chan so 4

Bây giờ, chúng ta di chuyển đơn giản servo như sau:

myservo.write(x);

Ở đây, x là một số nguyên giữa 0 và 180 độ – vị trí góc mong muốn servo sẽ quay đến. Khi đang cạy sketch trong Listing 12-1, servo sẽ quay qua phạm vi tối đa của nó, dừng lại tại các điểm cực (0 độ hoặc 180 độ) và tại vị trí ở giữa (90 độ). Khi nhìn vào servo của bạn, lưu ý rằng vị trí 180 độ phía bên trái còn vị trí 0 độ phía bên phải.

Ngoài việc đẩy hoặc kéo vật thể, servo cũng có thể được sử dụng để truyền dữ liệu tương tự như máy đo tương tự. Ví dụ, bạn có thể sử dụng một servo như một đồng hồ nhiệt, như bạn sẽ thấy trong Project 38.

Sản phẩm được quan tâm

Nhận bài viết mới

Các bài viết chia sẻ đến cộng đồng rất chât lượng, mang lại rất nhiều kiến thức mới. Đừng bỏ lỡ bất kỳ bài viết nào của chung tối, hãy đăng ký để nhận bài viết mới qua Mail của bạn

Đăng ký để không bỏ lỡ bài viết nào!

Fields marked with an * are required

Danh mục




More from our blog

See all posts
No Comments
 

Leave a Comment