Mục lục:

Robot theo dòng để dạy thuật toán điều khiển: 3 bước
Robot theo dòng để dạy thuật toán điều khiển: 3 bước

Video: Robot theo dòng để dạy thuật toán điều khiển: 3 bước

Video: Robot theo dòng để dạy thuật toán điều khiển: 3 bước
Video: Hướng dẫn giải bài toán động học thuận, quy tắc DH - Robot Công Nghiệp 2024, Tháng mười một
Anonim
Image
Image
Robot theo dòng để dạy các thuật toán điều khiển
Robot theo dòng để dạy các thuật toán điều khiển
Robot theo dòng để dạy các thuật toán điều khiển
Robot theo dòng để dạy các thuật toán điều khiển

Tôi đã thiết kế robot theo dòng này cách đây vài năm khi tôi còn là một giáo viên dạy robot. Mục tiêu của dự án này là dạy sinh viên của tôi cách viết mã một dòng theo sau rô bốt cho một cuộc thi và cũng so sánh giữa điều khiển If / Else và PID. Và không kém phần quan trọng, cơ chế và chiều dài của robot ảnh hưởng như thế nào đến các thuật toán điều khiển này. Mục tiêu là làm cho nó nhanh hơn và đáng tin cậy.

Tôi đã làm cho nó được lập trình với Arduino IDE, nhưng cũng có thể sử dụng IDE phát triển mà bạn thích. Nó có PIC32 mạnh mẽ với bộ nạp khởi động USB, vì vậy bạn không cần lập trình viên. Nó cũng có công tắc BẬT / TẮT, thiết lập lại và nút khởi động / chương trình. Các đèn LED được kết nối với tín hiệu PWM của động cơ, vì vậy bạn có thể thấy công suất mà bạn đang sử dụng một cách dễ dàng.

Robot hoàn toàn là mô-đun để thử nghiệm và dễ dàng sửa chữa trong trường hợp bạn gặp tai nạn với nó. Điều đó làm cho robot này trở thành công cụ hoàn hảo để học lập trình một cách rất thú vị. Các sinh viên của tôi đã sử dụng nó trong một thời gian dài và mỗi lần học đều có những điều mới, thậm chí cả điều khiển PID. Chưa kể rằng thanh cảm biến sử dụng một thuật toán để trả về một số nguyên, giá trị âm mà robot ở bên trái, dương ở bên phải và cero ở giữa dòng.

Quân nhu

2x 6V hộp số kim loại siêu nhỏ với giá đỡ mở rộng (Bất kỳ tỷ số truyền nào cũng được, của tôi là 10: 1)

Bảng cảm biến dòng 1x

1x Bộ điều khiển chính

1x 20 qua dây dẹt, khoảng cách 1mm. Mỏ dài 20 cm.

1x Acrylic linker (cắt bằng acrylic trong suốt 3mm)

1x 1/8 caster ball (tôi là kim loại)

Bánh xe cao su 2x, đường kính 3 cm.

1x pin Lipo. Bạn có thể cấp nguồn cho rô-bốt lên đến 10v, nhưng hãy nhớ rằng động cơ được đánh giá là 6v.

Một số vít và đai ốc M2 để gắn mọi thứ với nhau.

Nếu bạn muốn tự tạo các tệp thiết kế, sơ đồ và mọi thứ để xây dựng nó được đính kèm ở bước tiếp theo.

Bước 1: Phần cứng

Phần cứng
Phần cứng
Phần cứng
Phần cứng
Phần cứng
Phần cứng
Phần cứng
Phần cứng

Như bạn có thể thấy trong hình, tất cả các thành phần đều là SMD, là cơ hội hoàn hảo để thực hành kỹ năng hàn của bạn. Robot này được hàn bởi 3 sinh viên của tôi, vì vậy bạn có thể làm điều đó mà không gặp khó khăn. Tất cả các tệp thiết kế được đính kèm, bạn có thể xem các tệp bằng EAGLE. Gerber cũng được bao gồm nếu bạn muốn các bo mạch đến nhà sản xuất PCB yêu thích của bạn.

Hai tấm ván được ghép với nhau bằng một miếng acrylic, mẫu cắt laser cũng được bao gồm. Tôi đã sử dụng vít và đai ốc M2 để giữ nó ở đúng vị trí. Bánh xe đẩy bóng cũng được đặt ở đây. Và nếu bạn làm rơi robot, acrylic sẽ vỡ và bảo vệ bảng khỏi bị hư hại, rất lý tưởng để thử nghiệm! Dây dẹt được sử dụng để kết nối giữa CPU và bo mạch cảm biến. Các động cơ được kết nối dễ dàng bằng dây với bo mạch CPU.

Lưu ý: PIC sử dụng phần sụn tùy chỉnh, là phiên bản sửa đổi của phần sụn gốc DP32. Bạn có thể lấy phần sụn ở đây. Một kết nối ICSP được bao gồm ở dưới cùng của bo mạch CPU.

Bước 2: Phần mềm

Phần mềm
Phần mềm
Phần mềm
Phần mềm

Tôi khuyên bạn nên sử dụng Arduino IDE để lập trình robot. Như tôi đã nói với bạn trước đây, người theo dõi dòng này dựa trên PIC32MX250 và nó tương thích với chipKIT DP32. Bạn chỉ cần cài đặt gói chipKIT trên trình quản lý gói trên Arduino IDE và bạn đã sẵn sàng. Ngoài ra, bạn có thể lập trình nó trên MPLAB hoặc IDE mà bạn muốn, nhưng bạn có thể tìm hiểu cơ sở trên Arduino.

Phần còn lại giống như lập trình bất kỳ bảng Arduino nào khác. Cắm rô-bốt vào máy tính của bạn bằng cáp micro USB và nhấn nút chương trình ngay sau khi nhấn đặt lại. Sau đó gửi bản phác thảo bằng nút tải lên trong IDE.

Tôi đã bao gồm 3 bản phác thảo trong hướng dẫn này. Cái đầu tiên kiểm tra mảng cảm biến, cái thứ hai là người theo dõi dòng If / Else và cái cuối cùng là người theo dõi dòng PID. Mọi thứ đã hoạt động, tuy nhiên bạn sẽ cần điều chỉnh một số giá trị nếu bạn thay đổi thiết kế. Và cũng cảm thấy tự do để làm của riêng bạn! Có nhiều cách tốt hơn để thực hiện thuật toán theo dòng, thử nghiệm là chìa khóa thành công.

Bước 3: Thử nghiệm

Thử nghiệm
Thử nghiệm
Thử nghiệm
Thử nghiệm
Thử nghiệm
Thử nghiệm

Đây thực sự là phần quan trọng nhất, bạn nên thử tất cả các khả năng và tìm ra cái phù hợp với mình.

Hãy thử nghiệm với các bánh xe và vật liệu có đường kính khác nhau. Thay đổi chiều dài của robot sửa đổi khớp acrylic. Sử dụng pin khác, ngay cả với điện áp khác. Nó cũng có thể nhỏ hơn hoặc lớn hơn. Có thể là một tỷ số truyền khác cho động cơ.

Sửa đổi phần mềm để sử dụng ít cảm biến hơn hoặc thậm chí thử một thuật toán khác, bạn có thể ngạc nhiên về mức độ hiệu suất có thể thay đổi. Hoặc tại sao không, nếu bạn là người dùng nâng cao, hãy làm điều đó với MPLAB.

Bầu trời là giới hạn!

Như một mẹo bổ sung… Điều chỉnh mức tăng PID là một hành trình hấp dẫn, trong đó bạn có thể tìm hiểu các hiệu ứng trên robot khi đi theo dòng với các giá trị khác nhau của Kp, Kd và Ki. Giờ học đảm bảo !!! Những đứa trẻ sẽ không nhận thấy rằng chúng thực sự đang sử dụng toán học để thực hiện tất cả các nhiệm vụ được yêu cầu.

Tôi hy vọng bạn thích hướng dẫn này, nếu bạn cần điều gì đó hãy hỏi tôi trong phần bình luận. Cảm ơn đã đọc:)

Đề xuất: