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
20 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

Select any filter and click on Apply to see results

Các bài viết cùng tác giả

Giới thiệu về CNC Plotter Mini

Xin chào mọi người! Hôm nay mình xin giới thiệu với các bạn về chiếc máy CNC Plotter Mini mà mình đã được nhận ở tháng 3. Ngắn gọn vậy thôi nha, vào phần chính luôn :D.

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

Phát hiện vật cản bằng hồng ngoại - Tại sao không? Khi ta đã có cảm biến E18-D80NK

Lâu nay, chúng ta đã quen với việc sử dụng cảm biến siêu âm để phát hiện vật cản, tuy nhiên điểm yếu của nó là dễ bị nhiễu, để khắc phục điểm yếu trên, hôm nay mình xin giới thiệu với các bạn một cách phát hiện vật cản khác. Đó chính là sử dụng hồng ngoại, mà cụ thể hơn là mình muốn giới thiệu với các bạn con cảm biến E18-D80NK.

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