- Khái niệm về người theo dòng
- Giải thích mạch
- Hoạt động của Robot theo dòng bằng Arduino
- Sơ đồ mạch
- Giải thích chương trình
- Các thành phần bắt buộc
Robot đi theo đường là một robot rất đơn giản đi theo một đường, có thể là đường đen hoặc đường trắng. Những loại robot này được chế tạo rất đơn giản và thường là lựa chọn đầu tiên cho những người mới bắt đầu làm quen với robot. Về cơ bản, có hai loại robot theo đường: một là người theo đường đen đi theo đường đen và thứ hai là người theo dõi đường trắng theo đường trắng. Người theo dõi dòng thực sự cảm nhận được dòng và theo dõi nó. Mặc dù ý tưởng nghe có vẻ đơn giản, nhưng với sự phát triển hơn một chút, những robot tương tự như thế này thực tế được sử dụng trong nhiều ứng dụng như robot quản lý sàn nhà máy hoặc robot kho hàng.
Khái niệm về người theo dòng
Khái niệm làm việc của người theo dòng liên quan đến ánh sáng. Chúng tôi sử dụng ở đây hành vi của ánh sáng trên bề mặt đen và trắng. Khi ánh sáng rơi trên bề mặt trắng, nó gần như bị phản xạ hoàn toàn và trong trường hợp bề mặt đen thì ánh sáng bị hấp thụ hoàn toàn. Hành vi ánh sáng này được sử dụng trong việc xây dựng một robot theo dõi đường thẳng.
Trong rô bốt theo dòng dựa trên Arduino này , chúng tôi đã sử dụng Bộ phát hồng ngoại và bộ thu IR còn được gọi là điốt quang. Chúng được sử dụng để gửi và nhận ánh sáng. IR truyền đèn hồng ngoại. Khi tia hồng ngoại rơi trên bề mặt trắng, nó bị phản xạ trở lại và bị bắt bởi các điốt quang tạo ra một số thay đổi điện áp. Khi ánh sáng hồng ngoại rơi trên bề mặt đen, ánh sáng bị bề mặt đen hấp thụ và không có tia nào bị phản xạ trở lại, do đó điốt quang không nhận được bất kỳ ánh sáng hoặc tia nào. Ở đây trong robot theo dõi dòng Arduino này khi cảm biến cảm nhận bề mặt trắng thì Arduino nhận 1 làm đầu vào và khi cảm nhận đường đen, Arduino nhận 0 làm đầu vào.
Vì rô bốt theo dòng là một dự án mới bắt đầu thú vị, chúng tôi cũng đã xây dựng nó bằng cách sử dụng các bảng phát triển khác ngoài Arduino, bạn cũng có thể kiểm tra chúng bằng cách sử dụng liên kết bên dưới nếu quan tâm
- Robot theo dòng sử dụng Vi điều khiển 8051
- Robot theo dòng sử dụng Raspberry Pi
- Người theo dõi dòng dựa trên Launchpad Texas MSP430
- Người theo dõi dòng đơn giản sử dụng Vi điều khiển PIC
- Người theo dõi dòng sử dụng Vi điều khiển ATmega16 AVR
Giải thích mạch
Toàn bộ robot theo dòng Arduino có thể được chia thành 3 phần: phần cảm biến, phần điều khiển và phần trình điều khiển.
Phần cảm biến:
Phần này chứa điốt IR, chiết áp, Bộ so sánh (Op-Amp) và đèn LED. Chiết áp được sử dụng để thiết lập điện áp tham chiếu tại một đầu cuối của bộ so sánh và cảm biến IR được sử dụng để cảm nhận đường dây và cung cấp sự thay đổi điện áp tại đầu cuối thứ hai của bộ so sánh. Sau đó, bộ so sánh sẽ so sánh cả hai điện áp và tạo ra tín hiệu kỹ thuật số ở đầu ra. Ở đây trong mạch theo dòng này , chúng tôi đã sử dụng hai bộ so sánh cho hai cảm biến. LM 358 được sử dụng như một bộ so sánh. LM358 có sẵn hai Op-amps tiếng ồn thấp.
Phần kiểm soát:
Arduino Pro Mini được sử dụng để điều khiển toàn bộ quá trình của robot theo dõi đường dây. Đầu ra của bộ so sánh được kết nối với chân số 2 và 3 của Arduino. Arduino đọc các tín hiệu này và gửi lệnh đến mạch trình điều khiển để chạy theo người theo dõi.
Phần trình điều khiển:
Phần trình điều khiển bao gồm trình điều khiển động cơ và hai động cơ DC. Trình điều khiển động cơ được sử dụng để điều khiển động cơ vì Arduino không cung cấp đủ điện áp và dòng điện cho động cơ. Vì vậy chúng ta lắp thêm mạch điều khiển động cơ để có đủ điện áp và dòng điện cho động cơ. Arduino gửi lệnh tới trình điều khiển động cơ này và sau đó nó điều khiển động cơ.
Hoạt động của Robot theo dòng bằng Arduino
Việc xây dựng một robot theo dõi Line bằng Arduino rất thú vị. Robot theo dõi dòng cảm nhận một vạch đen bằng cách sử dụng một cảm biến và sau đó gửi tín hiệu đến Arduino. Sau đó, Arduino điều khiển động cơ theo đầu ra của cảm biến.
Ở đây trong dự án này, chúng tôi đang sử dụng hai mô-đun cảm biến hồng ngoại là cảm biến bên trái và cảm biến bên phải. Khi cả cảm biến bên trái và bên phải cảm nhận màu trắng thì robot sẽ di chuyển về phía trước.
Nếu cảm biến bên trái có vạch đen thì rô bốt quay bên trái.
Nếu cảm biến bên phải cảm nhận được vạch đen thì rô bốt quay sang phải cho đến khi cả hai cảm biến đến bề mặt màu trắng. Khi bề mặt trắng xuất hiện, robot lại bắt đầu di chuyển về phía trước.
Nếu cả hai cảm biến trên vạch đen, rô bốt sẽ dừng lại.
Sơ đồ mạch
Các sơ đồ mạch hoàn chỉnh cho Arduino Robot dòng đi theo được trình bày trong hình trên. Như bạn có thể thấy đầu ra của bộ so sánh được kết nối trực tiếp với chân kỹ thuật số 2 và 3. Và chân đầu vào của trình điều khiển động cơ 2, 7, 10 và 15 được kết nối tương ứng với chân số 4, 5, 6 và 7 của Arduino. Và một động cơ được kết nối ở chân đầu ra của trình điều khiển động cơ 3 và 6 và một động cơ khác được kết nối ở chân 11 và 14.
Giải thích chương trình
Trong chương trình, trước hết, chúng tôi xác định chân đầu vào và đầu ra, sau đó trong vòng lặp, chúng tôi kiểm tra đầu vào và gửi đầu ra theo đầu vào đến chân đầu ra cho động cơ truyền động. Để kiểm tra chân đầu vào, chúng tôi đã sử dụng câu lệnh "if". Bạn có thể tìm thấy mã rô bốt theo dòng đầy đủ ở cuối trang này.
Có bốn điều kiện trong dòng này sau robot mà chúng tôi đọc được bằng cách sử dụng Arduino. Chúng tôi đã sử dụng hai cảm biến là cảm biến bên trái và cảm biến bên phải.
Đầu vào |
Đầu ra |
Chuyển động Của Robot |
||||
Cảm biến trái |
Cảm biến bên phải |
Động cơ bên trái |
Động cơ bên phải |
|||
LS |
RS |
LM1 |
LM2 |
RM1 |
RM2 |
|
0 |
0 |
0 |
0 |
0 |
0 |
Dừng lại |
0 |
1 |
1 |
0 |
0 |
0 |
Rẽ phải |
1 |
0 |
0 |
0 |
1 |
0 |
Rẽ trái |
1 |
1 |
1 |
0 |
1 |
0 |
Ở đằng trước |
Chúng tôi viết mã theo dòng arduino theo các điều kiện được hiển thị trong bảng trên.
Các thành phần bắt buộc
Arduino
Trong Dự án của chúng tôi, chúng tôi đã sử dụng một bộ vi điều khiển để điều khiển toàn bộ quá trình của hệ thống là ARDUINO. Arduino là một phần cứng mã nguồn mở và rất hữu ích cho việc phát triển dự án. Có rất nhiều loại arduino như Arduino UNO, arduino mega, arduino pro mini, Lilypad, v.v. có sẵn trên thị trường. Ở đây chúng tôi đã sử dụng arduino pro mini trong dự án này vì arduino pro mini nhỏ và tương thích với breadboard. Để ghi mã arduino rô bốt theo dòng, chúng tôi đã sử dụng một ổ ghi FTDI.
Trình điều khiển động cơ L293D
L293D là một IC điều khiển động cơ có hai kênh để điều khiển hai động cơ. L293D có hai cặp Transistor Darlington có sẵn để khuếch đại dòng điện và một chân cấp nguồn riêng để cung cấp nguồn bên ngoài cho động cơ.
Mô-đun IR:
IR Module là mạch cảm biến bao gồm IR LED / cặp photodiode, chiết áp, LM358, điện trở và LED. Cảm biến IR truyền ánh sáng hồng ngoại và điốt quang nhận ánh sáng hồng ngoại.
Nguồn cấp
Tôi đã thêm một bộ điều chỉnh điện áp để có được 5 volt cho Arduino, bộ so sánh và trình điều khiển động cơ. Và một pin 9 volt được sử dụng để cung cấp năng lượng cho mạch.