Làm thế nào để Arduino Line Follower Robot ( Robot chạy theo đường)Robot chạy theo đừng vẽ.Robot chạy theo đừng vẽ.Robot chạy theo đừng vẽ.Robot chạy theo đừng vẽ.Robot chạy theo đừng vẽ.Robot chạy theo đừng vẽ.Robot chạy theo đừng vẽ.Robot chạy theo đừng vẽ.Robot chạy theo đừng vẽ.Robot chạy theo đừng vẽ.Robot chạy theo đừng vẽ.Robot chạy theo đừng vẽ.
Trang 1Làm thế nào để Arduino Line
Follower Robot?
Một Line Follower Robot, như tên cho thấy, là một chiếc xe có hướng dẫn tự động, đi theo một đường dây trực quan được nhúng trên sàn nhà hoặc trần nhà Thông thường, đường thị giác là con đường mà robot đi theo đường đi và nó sẽ là một đường màu đen trên một bề mặt trắng nhưng theo cách khác (đường trắng trên bề mặt đen) cũng có thể Một số Robot tiên tiến tiên tiến sử dụng trường từ vô hình làm đường dẫn của chúng
Các robot theo dõi dòng lớn thường được sử dụng trong các ngành công nghiệp để hỗ trợ quy trình sản xuất tự động Chúng cũng được sử dụng trong các ứng dụng quân sự, mục đích trợ giúp con người, các dịch vụ giao hàng vv
Người theo dõi đường dây Robot là một trong những robot đầu tiên mà người mới bắt đầu và sinh viên sẽ có được trải nghiệm robot đầu tiên Trong dự án này, chúng tôi đã thiết kế một Line Follower Robot đơn giản sử dụng Arduino và một số thành phần khác.
Trang 2Sơ đồ mạch
u cầu thành phần
• Arduino UNO (hoặc Arduino Nano)
• L293D Motor Driver IC
• Động cơ x 2
• Khung xe máy
• Mô-đun cảm biến hồng ngoại x 2
• Băng đen (băng cách điện)
• Kết nối dây
• Cung cấp năng lượng
Lưu ý : Chúng tôi đã sử dụng một bộ mô-đun cảm biến IR dựng sẵn bao gồm một đèn LED hồng ngoại và Diode Hình ảnh Nếu bạn không có điều này, chúng tôi đã giải thích làm thế nào để xây dựng một mình
Trang 3Sơ đồ khối của dự án
Robot đi theo dây được xây dựng trong dự án này được chia thành 4 khối Hình dưới đây cho thấy sơ đồ khối cho robot đi theo đường dây
Mô tả khối sơ đồ
Cảm biến (cảm biến hồng ngoại) : Chúng tôi đã sử dụng mô-đun cảm biến hồng ngoại làm cảm biến phát hiện dòng cho dự án Nó bao gồm một LED IR và một diode Photo
và một số thành phần khác như so sánh, đèn LED, vv
Trang 4Như đã đề cập trước đó, chúng tôi đã sử dụng bộ cảm biến hồng ngoại được lắp ráp trước Trong trường hợp bạn không có, bạn có thể làm cho cảm biến của riêng bạn bằng cách
sử dụng các mạch sau đây.
Việc làm việc của cảm biến hồng ngoại và phạm vi của nó trong dự án này sẽ được giải thích trong quá trình làm việc thực tế của Robot theo dõi đường dây
Bộ điều khiển (Arduino UNO) : Arduino UNO là bộ điều khiển chính trong dự án Các
dữ liệu từ các cảm biến (cảm biến hồng ngoại) sẽ được trao cho Arduino và nó đưa ra các tín hiệu tương ứng cho động cơ IC
Motor Driver (L293D) : L293D Motor Driver IC được sử dụng trong dự án này để điều
khiển động cơ của robot Nó nhận được tín hiệu từ Arduino dựa trên thông tin từ cảm biến hồng ngoại
Lưu ý : Nguồn cung cấp cho động cơ phải được cung cấp từ IC điều khiển động cơ Do
đó, chọn nguồn điện phù hợp đủ cho tất cả các thành phần bao gồm động cơ
Motors (Geared Motors): Chúng tôi đã sử dụng hai động cơ hướng ở phía sau của robot đi theo dòng Những động cơ này cung cấp nhiều mô-men xoắn hơn động cơ bình thường và có thể được sử dụng để mang một số tải là tốt
Trang 5Làm việc của Arduino Line Follower Robot
Trong dự án này, chúng tôi đã thiết kế một Arduino dựa Line Follower Robot Hoạt động của dự án khá đơn giản: phát hiện đường màu đen trên bề mặt và di chuyển dọc theo đường đó Việc làm chi tiết được giải thích ở đây
Như đã đề cập trong sơ đồ khối, chúng ta cần cảm biến để phát hiện đường Đối với logic phát hiện đường dây, chúng tôi sử dụng hai cảm biến hồng ngoại, bao gồm IR LED và Photodiode.Chúng được đặt trong một cách phản chiếu tức là cạnh nhau để bất cứ khi nào chúng đến gần một bề mặt phản chiếu, ánh sáng phát ra bởi đèn LED hồng ngoại sẽ được phát hiện bởi Diode ảnh
Hình dưới đây cho thấy hoạt động của một cảm biến hồng ngoại điển hình (IR LED - cặp Photodiode) ở phía trước của một bề mặt nhạt và một bề mặt màu đen Khi phản
xạ của bề mặt nhạt màu là cao, ánh sáng hồng ngoại phát ra bởi đèn LED hồng ngoại
sẽ phản xạ tối đa và sẽ được phát hiện bởi Photodiode
Trong trường hợp bề mặt đen, có tỷ lệ phản xạ thấp, ánh sáng được hấp thụ hoàn toàn bởi bề mặt đen và không tới được photodiode
Trang 6Sử dụng nguyên lý tương tự, chúng tôi sẽ thiết lập cảm biến hồng ngoại trên Line Follower Robot sao cho hai cảm biến hồng ngoại nằm ở hai bên của đường màu đen trên sàn nhà Thiết lập được hiển thị bên dưới
Khi robot di chuyển về phía trước, cả hai bộ cảm ứng đều chờ cho dây được phát hiện Ví dụ: nếu cảm biến hồng ngoại 1 trong hình trên phát hiện đường màu đen, điều
đó có nghĩa là có một đường cong đúng (hoặc quay) phía trước
Arduino UNO phát hiện sự thay đổi này và gửi tín hiệu cho trình điều khiển động cơ tương ứng Để rẽ phải, động cơ ở phía bên phải của robot được làm chậm bằng PWM, trong khi động cơ ở phía bên trái được chạy ở tốc độ bình thường
Trang 7Tương tự, khi cảm biến hồng ngoại 2 phát hiện đường màu đen đầu tiên, điều đó có nghĩa là có một đường cong trái phía trước và robot phải rẽ trái Để robot rẽ trái, động
cơ ở phía bên trái của robot bị chậm lại (hoặc có thể dừng hoàn toàn hoặc có thể xoay theo hướng đối diện) và động cơ ở phía bên phải được chạy ở tốc độ bình thường
Arduino UNO liên tục theo dõi dữ liệu từ cả hai cảm biến và biến robot theo đường dây phát hiện bởi chúng
Mã
int mot1=9;
int mot2=6;
int mot3=5;
int mot4=3;
int left=13;
int right=12;
int Left=0;
int Right=0;
void LEFT (void);
void RIGHT (void);
void STOP (void);
void setup()
{
pinMode(mot1,OUTPUT);
pinMode(mot2,OUTPUT);
pinMode(mot3,OUTPUT);
pinMode(mot4,OUTPUT);
pinMode(left,INPUT);
pinMode(right,INPUT);
digitalWrite(left,HIGH);
digitalWrite(right,HIGH);
}
void loop()
{
analogWrite(mot1,255);
analogWrite(mot2,0);
analogWrite(mot3,255);
analogWrite(mot4,0);
Trang 8{
Left=digitalRead(left);
Right=digitalRead(right);
if((Left==0 && Right==1)==1)
LEFT();
else if((Right==0 && Left==1)==1)
RIGHT();
}
}
void LEFT (void)
{
analogWrite(mot3,0);
analogWrite(mot4,30);
while(Left==0)
{
Left=digitalRead(left);
Right=digitalRead(right);
if(Right==0)
{
int lprev=Left;
int rprev=Right;
STOP();
while(((lprev==Left)&&(rprev==Right))==1) {
Left=digitalRead(left);
Right=digitalRead(right);
}
}
analogWrite(mot1,255);
analogWrite(mot2,0);
}
analogWrite(mot3,255);
analogWrite(mot4,0);
}
void RIGHT (void)
{
analogWrite(mot1,0);
analogWrite(mot2,30);
while(Right==0)
{
Left=digitalRead(left);
Right=digitalRead(right);
if(Left==0)
{
int lprev=Left;
int rprev=Right;
STOP();
while(((lprev==Left)&&(rprev==Right))==1) {
Trang 9Left=digitalRead(left);
Right=digitalRead(right);
}
}
analogWrite(mot3,255);
analogWrite(mot4,0);
}
analogWrite(mot1,255);
analogWrite(mot2,0);
}
void STOP (void)
{
analogWrite(mot1,0);
analogWrite(mot2,0);
analogWrite(mot3,0);
analogWrite(mot4,0);
}
Chú ý :
• Để tăng hiệu quả của việc phát hiện đường đen, số lượng các cảm biến có thể tăng lên Một mảng cảm biến sẽ chính xác hơn chỉ là hai cảm biến.
• Trong dự án này (nơi có hai cảm biến được sử dụng), vị trí của các cảm biến là rất quan trọng Chiều rộng của đường màu đen đóng một vai trò chính trong việc đặt các cảm biến.
• Các cảm biến để phát hiện đường dây cũng có thể được xây dựng bằng cách sử dụng một cặp LED và LDR.
Các ứng dụng của Robot theo Đường dây
• Robot đường dây Các robot thường được sử dụng cho quá trình tự động hóa trong các ngành công nghiệp, ứng dụng quân sự và các ứng dụng của người tiêu dùng.
• Họ rất hữu ích vì họ có thể làm việc mà không có bất kỳ giám sát tức là họ làm việc như
là phương tiện tự động hướng dẫn.
• Với các tính năng bổ sung như tránh chướng ngại vật và các biện pháp an ninh khác, robot người theo dõi đường dây có thể được sử dụng trong trình điều khiển xe ít hơn.