Chế tạo Robot tránh vật cản – Hướng dẫn chi tiết cụ thể
Trong chuỗi bài viết DIY tất cả chúng ta sẽ làm quen với các ứng dụng đầy tính phát minh sáng tạo như : Robot tránh vật cản, mạng lưới hệ thống tưới cây tự động hóa, mạng lưới hệ thống tự động hóa đếm người ra vào … Sẽ giúp cho đọc giả hiểu hơn về ngôn từ lập trình Arduino, là nền tảng giúp sức hội đồng cùng nhau tăng trưởng.
Các linh phụ kiện thiết yếu để làm Robot tránh vật cản
Lắp ráp Robot tránh vật cản
Hàn thêm tụ 100 nF vào đầu của động cơ.
Hoàn thiện quy trình lắp linh phụ kiện vào khung Robot.
Sơ đồ đấu nối
Đấu nối
Đấu nối cảm ứng tránh vật cản vào Shield Motor
VCC | 5V |
GND | GND |
TRIG | A4 |
ECHO | A5 |
Đấu nối Servo vào Shield Motor
Dây tín hiệu (màu vàng) | S |
VCC (Màu đỏ) | + |
GND (Màu đen) | – |
Giải thích Code
Để chương trình hoạt động giải trí và không báo lỗi khi nạp chương trình. Bước tiên phong tất cả chúng ta cần tải thư viện và Add thư viện vào Arduino IDE.
Thêm thư viện trên Arduino IDE : https://cachlam.org/huong-dan-them-moi-thu-vien-trong-arduino-ide
Thư viện Motor Shield : https://github.com/adafruit/Adafruit-Motor-Shield-library
Thư viện NewPing : https://bitbucket.org/teckel12/arduino-new-ping/wiki/Home#!download-install
//////////////////////////////////////////////
// Arduino ROBOT v0.1 //
// //
// http://www.educ8s.tv //
/////////////////////////////////////////////
#include
#include
#include
Tiếp theo, tất cả chúng ta khai báo chân liên kết cho cảm ứng tránh vật cản và hiệu chỉnh vận tốc của động cơ, các bạn hoàn toàn có thể đổi khác thông số kỹ thuật vận tốc động cơđến255.
#define TRIG_PIN A4
#define ECHO_PIN A5
#define MAX_DISTANCE 200
#define MAX_SPEED 190 // sets speed of DC motors
#define MAX_SPEED_OFFSET 20
Khai báo biến cho hàm Servo và khởi tạo liên kết động cơ trên thư viện AFMotor.
AF_DCMotor motor1(1, MOTOR12_1KHZ);
AF_DCMotor motor2(3, MOTOR12_1KHZ);
Servo myservo;
Tiếp theo trong hàm setup ( ), tất cả chúng ta khai báo liên kết cho chân servo, ở đây tất cả chúng ta liên kết servo vào chân 9 của board mạch, góc xoay servo đặt là 115 độ. Các bạn hoàn toàn có thể tự thử nghiệm ra góc quay tương thích cho robot tránh vật cản của mình.
void setup() {
myservo.attach(9);
myservo.write(115);
delay(2000);
distance = readPing();
delay(100);
distance = readPing();
delay(100);
distance = readPing();
delay(100);
distance = readPing();
delay(100);
}
Trong hàm loop ( ) đưa các giá trị đo về 0 và triển khai chương trình sau 40 ms. Nếu khoảng chừng cáchcảm biến đo được nhỏ hơn hoặc bằng 15 cm thì Robot tránh vật cản sẽ dừng lại trong khoảng chừng thời hạn 100 ms và lùi lại phía sau 300 ms, dừng lại trong 200 ms. Robot quay đầunhìn sang trái, sang phải và đo khoảng cách. Nếu khoảng cách đo bên nàolớn hơn hoặc bằng thì robot sẽ quayvề hướng lớn nhất và vận động và di chuyển về phía trước.
void loop() {
int distanceR = 0;
int distanceL = 0;
delay(40);
if(distance=distanceL)
{
turnRight();
moveStop();
}else
{
turnLeft();
moveStop();
}
}else
{
moveForward();
}
distance = readPing();
}
Tải Code
Cảm ơn các bạn đã đọc và theo dõi arduinokit.vn, trong quy trình thực thi có gì vướng mắc các bạncomment bên dưới để được mình tương hỗ tốt nhất. Nếu thấy bài viết hay và có ích thìđừng ngần ngại cho mình 1 Like và Share bài viết để nhiều người cùng tham gia sản xuất.
Chúc các bạn thành công xuất sắc!
Trân trọng.
Share
Pin
1
1 Shares
Như vậy cachlam.org đã chia sẻ với bạn bài viết Chế tạo Robot tránh vật cản – Hướng dẫn chi tiết. Hy vọng bạn đã có được 1 cách làm hay và chúc bạn có được nhiều thành công trong cuộc sống hơn nữa!
Xem thêm các hướng dẫn và mẹo vặt hay: https://cachlam.org/huong-dan