Lập trình Arduino không cần viết code - Phần 4: Điều khiển Servo

Đây là phần 4 của chuỗi bài "Lập trình Arduino không cần viết code"

Xem lại phần 3 tại đây

Xin chào mọi người! Trước tiên mình xin cảm ơn ý kiến đóng góp của bạn Tran Thanh ở phần 1 , nhờ ý kiến của bạn mà mình đã nghĩ ra cách viết bài mới. rất mong những ý kiến đóng góp từ các bạn để mình cải tiến bài viết hơn. Còn bây giờ chúng ta hãy bắt đầu phần 4 của chuỗi bài.

Mục tiêu: Giúp các bạn newbie làm quen với servo và cách điều khiển nó.

Servo là gì

Servo là một dạng động cơ điện đặc biệt. Không giống như động cơ thông thường cứ cắm điện vàolà quay liên tục, servo chỉ quay khi được điều khiển (bằng xung PWM) với góc quay nằm trong khoảng bất kì từ 0 độ - 180 độ. Mỗi loại servo có kích thước, khối lượng và cấu tạo khác nhau.

Trích: Giới thiệu Servo và cách điều khiển bằng biến trở 

Nó có 3 chân gồm: Chân 5V, chân GND, chân điều khiển (nối với chân PWM arduino). Chúng ta sẽ điều khiển nó bằng thư viện Servo có sẵn trong arduino, nên không cần cài đặt.

Thực hành

Chuẩn bị

  • Arduino
  • Servo bất kì
  • Dây nối đực-đực để nối servo với arduino.

Sơ đồ nối:

Các bạn nối servo như mình đã nói ở phần "Servo là gì".

Lập trình bằng bằng mBlock

Trước tiên ta chọn board, chọn COM và chọn Chế độ arduino mode nha, chưa biết thì xem lại phần 3 nha.

Sau đó ta tạo một biến để lưu trữ góc của servo. Bằng cách nhấn vào tab Data&Blocks, chọn Make a Variable, nhập tên biến và chọn Ok.

Sau đó bạn lập trình kéo thả theo sơ đồ sau, để tìm các đối tượng lệnh thì bạn chỉ cần nhìn màu của nó và tìm trong tab có màu giống màu đấy.

Tuy nhiên phần mềm mBlock không tự động thêm thư viện cho ta, nên phải tự thêm bằng cách nhấn vào Edit with Arduino IDE

Thêm dòng code "#include <Servo.h>" (không có dấu "" đâu nhé :3)

Lập trình bằng Arduino IDE

Đây chính là điểm mới trong cách viết của mình, với cách này sẽ giúp các bạn newbie dần dần tiếp cận với arduino chuyên nghiệp.

Code đây:

#include <Servo.h>
int pos;
Servo servo_9;

void setup(){
  servo_9.attach(9);
}

void loop(){
  pos=0;
  servo_9.write(pos);
  pos=90;
  servo_9.write(pos);
  pos=180;
  servo_9.write(pos);
}

Kết luận

Chúng ta vừa tìm hiểu xong servo và cách điều khiển nó bằng cả 2 môi trường lập trình đó là mBlock và Arduino IDE. Mình hi vọng rằng bài viết này nói riêng và chuỗi bài này nói chung sẽ mang lại nhiều kiến mới cho các bạn newbie. Chúc các bạn thành công. Xin cảm ơn

lên
23 thành viên đã đánh giá bài viết này hữu ích.
Các dự án được truyền cảm hứng

Một dự án được truyền cảm hứng với "LED RGB chung cực dương"

Sau khi đọc xong bài viết "Làm thế nào để điều khiển được LED RGB", mình cũng muốn làm thử. Tuy nhiên khi đặt mua thì lại nhận được loại LED RGB có cực dương chung. Vậy làm sao áp dụng được?

 

lên
33 thành viên đã đánh giá bài viết này hữu ích.
Các bài viết cùng tác giả

Tự làm bộ led nháy theo nhạc không cần IC chuyên dùng

Xin chào các bạn, từ thí nghiệm này mình đã nghiên cứu và tạo ra một bộ led nháy theo nhạc khá thú vị, mặc dù không được chuẩn như mấy con IC chuyên làm led nghe nhạc cheeky, nhưng mong rằng các bạn sẽ thấy thích nó :). Ta cùng bắt tay vào làm thôi.
lên
21 thành viên đã đánh giá bài viết này hữu ích.

Lịch sử phát triển của vi điều khiển và vi xử lí

Ở bài trước mình đã so sánh sự khác nhau giữa vi xử lí và vi điều khiển (Bạn có thể xem lại tại đây). Ở bài này mình sẽ nói về lịch sử phát triển của chúng để trọn bộ luôn ha. Ok

lên
19 thành viên đã đánh giá bài viết này hữu ích.