I. Khám phá hệ thống cơ điện tử Robot giải mê cung sumo
Thiết kế hệ thống cơ điện tử là một môn học nền tảng, cung cấp kiến thức cốt lõi cho kỹ sư tương lai về kết cấu, quy trình và nguyên lý vận hành máy móc. Đồ án này tập trung vào việc ứng dụng lý thuyết vào thực tiễn thông qua việc chế tạo một robot tự hành đa năng, có khả năng thực hiện hai nhiệm vụ phức tạp: giải mê cung và thi đấu sumo. Đây không chỉ là một bài tập kỹ thuật, mà còn là một sân chơi trí tuệ, mô phỏng các cuộc thi robotics chuyên nghiệp như cuộc thi robocon, thúc đẩy sinh viên hệ thống hóa kiến thức từ nhiều môn học liên quan như Chi tiết máy, Sức bền vật liệu, Vi xử lý và Kỹ thuật số.
Dự án chế tạo robot giải mê cung và đấu trường sumo đặt ra một bài toán tổng hợp, đòi hỏi sự kết hợp nhuần nhuyễn giữa ba lĩnh vực chính: cơ khí, điện tử và lập trình. Về cơ khí, robot phải có kết cấu vững chắc, tối ưu về trọng lượng và hình dáng để vừa linh hoạt trong mê cung, vừa vững chãi trên đấu trường. Về điện tử, hệ thống mạch điện tử phải được thiết kế để cung cấp nguồn ổn định, nhận tín hiệu từ cảm biến và điều khiển cơ cấu chấp hành một cách chính xác. Cuối cùng, phần hồn của robot nằm ở thuật toán, nơi các giải pháp lập trình thông minh quyết định khả năng định vị, tìm đường và đưa ra chiến thuật thi đấu. Việc tham gia các cuộc thi như “Đấu trường Robot” là cơ hội để sinh viên tiếp cận, giao lưu và phát huy sức sáng tạo, chuẩn bị hành trang vững chắc cho cuộc cách mạng công nghiệp 4.0, nơi các hệ thống nhúng và điều khiển tự động đóng vai trò trung tâm. Do đó, việc nghiên cứu và hoàn thiện một đồ án cơ điện tử như thế này mang lại giá trị thực tiễn vô cùng to lớn.
1.1. Tổng quan cuộc thi Đấu trường Robot và lợi ích thực tiễn
Cuộc thi “Đấu trường Robot” là một sân chơi học thuật do Trường Đại học Công nghiệp TP.HCM tổ chức, tạo điều kiện cho sinh viên các trường đại học, cao đẳng trên địa bàn thành phố cọ xát và ứng dụng kiến thức. Thể lệ cuộc thi yêu cầu mỗi đội sử dụng một robot duy nhất ở chế độ tự động để vượt qua hai vòng thi: giải mê cung và đấu sumo. Vòng một thử thách khả năng định vị và thuật toán tìm đường của robot. Vòng hai kiểm tra thiết kế cơ khí và chiến thuật thi đấu. Việc tham gia không chỉ giúp sinh viên nâng cao kỹ năng chuyên môn mà còn rèn luyện kỹ năng làm việc nhóm, giải quyết vấn đề và tư duy sáng tạo trong lĩnh vực robotics.
1.2. Phân tích yêu cầu Robot đa năng cho mê cung và sumo
Thách thức lớn nhất của đề tài là thiết kế một robot tự hành duy nhất có thể đáp ứng hai yêu cầu trái ngược nhau. Đối với nhiệm vụ giải mê cung, robot cần nhỏ gọn, linh hoạt, và được trang bị hệ thống cảm biến chính xác để dò đường. Ngược lại, trong đấu trường sumo, robot cần có trọng tâm thấp, kết cấu chắc chắn và công suất động cơ lớn để đẩy được đối thủ. Do đó, bài toán thiết kế phải cân bằng giữa các yếu tố: kích thước, trọng lượng, công suất, và sự phức tạp của hệ thống điều khiển để robot có thể hoàn thành xuất sắc cả hai nhiệm vụ mà không cần thay đổi cấu trúc phần cứng.
II. Bí quyết giải thuật cho robot Giải mê cung và đấu sumo
Linh hồn của một robot tự hành nằm ở thuật toán điều khiển. Để giải quyết bài toán mê cung, việc lựa chọn một giải thuật tìm đường hiệu quả là yếuovo. Hai phương pháp phổ biến được xem xét trong dự án này là Tìm kiếm theo chiều rộng (BFS - Breadth-First Search) và Tìm kiếm theo chiều sâu (DFS - Depth-First Search). DFS có ưu điểm là khám phá sâu vào một nhánh của mê cung, rất phù hợp cho giai đoạn đầu khi robot cần lập bản đồ toàn bộ không gian. Sau khi bản đồ được thiết lập, BFS phát huy thế mạnh của mình trong việc tìm ra đường đi ngắn nhất từ điểm xuất phát đến đích. Báo cáo này đề xuất một giải pháp kết hợp: sử dụng DFS để khám phá và lập bản đồ mê cung, sau đó áp dụng BFS trên bản đồ đã có để tìm ra lộ trình tối ưu. Đối với đấu trường sumo, thuật toán tập trung vào việc phản ứng nhanh. Robot cần liên tục quét đối thủ bằng cảm biến siêu âm hoặc cảm biến hồng ngoại, đồng thời dùng cảm biến vạch để không bị đẩy ra khỏi võ đài. Lưu đồ giải thuật cho robot sumo mini thường bao gồm các trạng thái chính: tìm kiếm đối thủ, tấn công trực diện khi phát hiện, và lùi lại hoặc xoay tròn khi chạm vạch trắng. Việc lập trình robot với các thuật toán này đòi hỏi tư duy logic chặt chẽ và khả năng tối ưu hóa mã nguồn để đảm bảo tốc độ xử lý của vi điều khiển.
2.1. Phương pháp tìm đường đi ngắn nhất Thuật toán DFS BFS
Báo cáo trình bày chi tiết cách hoạt động của hai thuật toán tìm đường là DFS và BFS. DFS hoạt động bằng cách ưu tiên đi sâu vào một nhánh cho đến khi gặp ngõ cụt, sau đó quay lui. Giải thuật này hiệu quả cho việc khám phá toàn bộ mê cung. Ngược lại, BFS duyệt qua các nút theo từng cấp độ, đảm bảo tìm ra đường đi ngắn nhất trong đồ thị không có trọng số. Mô hình đề xuất sử dụng DFS để robot di chuyển và ghi nhớ lại toàn bộ cấu trúc mê cung, sau đó BFS được áp dụng trên dữ liệu bản đồ này để tính toán con đường tối ưu nhất để di chuyển đến đích.
2.2. Xây dựng lưu đồ giải thuật cho robot sumo chiến đấu tự động
Đối với robot sumo mini, lưu đồ giải thuật được xây dựng dựa trên một vòng lặp liên tục kiểm tra trạng thái từ các cảm biến. Luồng hoạt động cơ bản gồm: (1) Quét tìm đối thủ bằng cách quay tròn tại chỗ. (2) Khi cảm biến phát hiện đối thủ, robot sẽ lao thẳng về phía trước với tốc độ tối đa. (3) Đồng thời, các cảm biến vạch đặt ở rìa robot liên tục kiểm tra. Nếu phát hiện vạch trắng của sàn đấu, robot sẽ ngay lập tức lùi lại và xoay hướng để tránh bị loại. Thuật toán này đơn giản nhưng hiệu quả, ưu tiên khả năng phản xạ và tấn công.
2.3. Tầm quan trọng của mô phỏng thuật toán trước khi triển khai
Trước khi nạp chương trình vào vi điều khiển, việc mô phỏng thuật toán trên phần mềm là bước cực kỳ quan trọng. Báo cáo đề cập đến việc sử dụng một phần mềm mô phỏng chuyên dụng, cho phép nạp file mô tả mê cung và file mã chương trình (viết bằng Python cho robot). Việc mô phỏng Proteus hoặc các công cụ tương tự giúp kiểm tra lỗi logic trong thuật toán, quan sát trực quan cách robot di chuyển và tinh chỉnh các tham số mà không cần tốn thời gian và công sức thử nghiệm trên robot thật. Điều này giúp rút ngắn đáng kể thời gian phát triển và tối ưu hóa hiệu suất của robot.
III. Hướng dẫn chọn linh kiện thiết kế hệ thống cơ điện tử
Việc lựa chọn linh kiện phần cứng là nền tảng quyết định đến hiệu suất và độ ổn định của toàn bộ hệ thống. Một thiết kế hệ thống cơ điện tử hoàn chỉnh được chia thành các khối chức năng rõ ràng. Khối nguồn có nhiệm vụ cung cấp năng lượng, đòi hỏi sự ổn định và công suất đủ lớn. Dự án sử dụng hai nguồn riêng biệt: một nguồn cho động cơ DC và một nguồn cho mạch điều khiển để tránh nhiễu. Khối điều khiển trung tâm là bộ não của robot, nơi vi điều khiển ESP32 được lựa chọn nhờ hiệu năng cao, tích hợp Wi-Fi/Bluetooth và có nhiều chân GPIO. Khối cảm biến đóng vai trò là các giác quan, bao gồm cảm biến siêu âm HC-SR04 để phát hiện vật cản và đối thủ, cùng với cảm biến dò line TCRT5000 để nhận biết vạch đen/trắng trong cả hai nhiệm vụ. Khối chấp hành, trái tim của sự chuyển động, sử dụng động cơ DC giảm tốc GA25-370 có tích hợp encoder để điều khiển chính xác tốc độ và quãng đường. Để điều khiển động cơ, driver động cơ L298N được sử dụng, cho phép điều khiển tốc độ và đảo chiều quay một cách dễ dàng. Cuối cùng, khối hiển thị sử dụng màn hình LCD1602 để theo dõi trạng thái hoạt động của robot. Sự phối hợp nhịp nhàng giữa các khối này tạo nên một robot tự hành mạnh mẽ và thông minh.
3.1. Lựa chọn khối điều khiển trung tâm Vi điều khiển ESP32
ESP32 được chọn làm vi điều khiển chính cho dự án. Đây là một lựa chọn mạnh mẽ so với các dòng Arduino truyền thống, với bộ xử lý lõi kép, tốc độ xử lý cao, và số lượng chân I/O dồi dào. Các chân này hỗ trợ nhiều chức năng như ADC, DAC, PWM, I2C, phù hợp để kết nối với tất cả các loại cảm biến và cơ cấu chấp hành cần thiết cho robot. ESP32 là một hệ thống nhúng mạnh mẽ, lý tưởng cho các ứng dụng đòi hỏi xử lý phức tạp như điều khiển tự động trong robotics.
3.2. Hệ thống cảm biến Cảm biến siêu âm và cảm biến vạch
Hệ thống cảm biến là "mắt thần" của robot. Cảm biến siêu âm HC-SR04 được dùng để đo khoảng cách tới các bức tường trong mê cung và phát hiện đối thủ trong trận đấu sumo. Cảm biến này hoạt động bằng cách phát một xung siêu âm và đo thời gian phản xạ lại. Trong khi đó, cảm biến dò line (hay cảm biến vạch) TCRT5000, bao gồm một cặp LED phát và thu hồng ngoại, được sử dụng để robot đi theo vạch (nếu có) hoặc để phát hiện rìa của võ đài sumo, giúp robot không di chuyển ra ngoài khu vực thi đấu.
3.3. Thiết kế khối chấp hành Động cơ DC và driver L298N
Khối chấp hành quyết định khả năng di chuyển của robot. Động cơ DC giảm tốc GA25-370 được lựa chọn vì momen xoắn cao và tốc độ phù hợp. Để điều khiển cặp động cơ DC này, mạch cầu H L298N là một giải pháp kinh tế và hiệu quả. Driver động cơ L298N cho phép vi điều khiển thay đổi chiều quay của động cơ bằng cách đảo cực điện áp và điều chỉnh tốc độ bằng phương pháp điều chế độ rộng xung (PWM). Sự kết hợp này mang lại khả năng kiểm soát chuyển động chính xác và mạnh mẽ cho robot.
IV. Cách xây dựng mô hình robot Từ Solidworks đến Arduino
Quá trình hiện thực hóa robot từ ý tưởng đến sản phẩm hoàn thiện là một chuỗi các công đoạn kỹ thuật đòi hỏi sự chính xác cao. Bước đầu tiên là thiết kế cơ khí robot trên phần mềm CAD 3D như Solidworks. Tại đây, từng chi tiết của khung gầm, vị trí lắp đặt động cơ, cảm biến và bo mạch được mô hình hóa một cách chi tiết. Thiết kế 3D cho phép kiểm tra sự phù hợp của các bộ phận, tối ưu hóa không gian và đảm bảo kết cấu cơ khí vững chắc trước khi tiến hành gia công. Sau khi hoàn thiện thiết kế, các bộ phận được chế tạo và lắp ráp thành một mô hình robot thực tế. Giai đoạn tiếp theo là thiết kế và đấu nối mạch điện tử. Sơ đồ nguyên lý và sơ đồ đi dây có thể được vẽ bằng các phần mềm như mô phỏng Proteus để đảm bảo tất cả các linh kiện được kết nối chính xác và an toàn. Cuối cùng là phần lập trình robot, sử dụng môi trường Arduino IDE. Nền tảng này hỗ trợ mạnh mẽ cho vi điều khiển ESP32 và cung cấp một thư viện phong phú, sử dụng ngôn ngữ lập trình C/C++ cho Arduino thân thiện. Toàn bộ thuật toán điều khiển, từ đọc dữ liệu cảm biến đến xuất tín hiệu PWM, đều được triển khai trong giai đoạn này, biến một mô hình cơ khí tĩnh thành một cỗ máy tự hành thông minh.
4.1. Thiết kế cơ khí robot chi tiết trên phần mềm Solidworks
Việc sử dụng Solidworks để thiết kế cơ khí robot mang lại nhiều lợi ích. Nó cho phép mô hình hóa 3D toàn bộ robot, từ khung xe, bánh xe đến giá đỡ cảm biến. Qua đó, người thiết kế có thể dễ dàng kiểm tra các vấn đề về va chạm cơ khí, phân bố trọng lượng để hạ thấp trọng tâm (quan trọng cho robot sumo), và tối ưu hóa vị trí lắp đặt của các linh kiện điện tử để dễ dàng đi dây và bảo trì. Bản vẽ kỹ thuật chi tiết sau đó được xuất ra để phục vụ cho việc gia công chính xác.
4.2. Lập trình robot với Arduino IDE Ngôn ngữ C C
Arduino IDE là môi trường phát triển tích hợp (IDE) mã nguồn mở, được lựa chọn để lập trình robot do sự đơn giản và cộng đồng hỗ trợ lớn. Mặc dù có thể sử dụng Python cho robot trên các nền tảng như Raspberry Pi, ngôn ngữ lập trình C/C++ cho Arduino vẫn là lựa chọn phổ biến cho các hệ thống nhúng yêu cầu hiệu suất và kiểm soát phần cứng ở mức độ thấp. Các thư viện có sẵn giúp việc giao tiếp với cảm biến và driver động cơ trở nên dễ dàng hơn, cho phép người lập trình tập trung vào việc xây dựng logic và thuật toán điều khiển.
V. Kết quả thiết kế robot tự hành Mô hình và sơ đồ đấu nối
Kết quả cuối cùng của đồ án cơ điện tử là một mô hình robot tự hành hoàn chỉnh, có khả năng thực thi hai nhiệm vụ đã đề ra. Về mặt vật lý, robot được lắp ráp dựa trên bản vẽ Solidworks, tích hợp đầy đủ các khối chức năng từ nguồn, điều khiển, cảm biến đến cơ cấu chấp hành. Hệ thống mạch điện tử được đấu nối gọn gàng, tuân thủ theo sơ đồ nguyên lý đã được thiết kế trên phần mềm mô phỏng Proteus. Sơ đồ đấu nối chi tiết là tài liệu quan trọng, mô tả rõ ràng cách mỗi chân của vi điều khiển ESP32 được kết nối tới các module như driver động cơ L298N, cảm biến siêu âm, và cảm biến dò line. Việc đấu nối chính xác là yếu tố tiên quyết để hệ thống hoạt động ổn định và tránh các sự cố chập cháy. Chương trình điều khiển sau khi được kiểm thử và gỡ lỗi đã được nạp thành công vào vi điều khiển thông qua Arduino IDE. Robot sau khi hoàn thiện đã được kiểm tra thực tế trên sa bàn mê cung và đấu trường sumo, cho thấy khả năng vận hành đúng với các thuật toán đã thiết kế. Quá trình này không chỉ tạo ra một sản phẩm cụ thể mà còn là minh chứng cho việc áp dụng thành công kiến thức lý thuyết vào giải quyết một bài toán kỹ thuật phức tạp trong lĩnh vực robotics.
5.1. Mô hình robot thực tế Tích hợp cơ khí và mạch điện tử
Mô hình robot thực tế là sự kết hợp giữa khung gầm được thiết kế cơ khí robot tối ưu và hệ thống mạch điện tử được bố trí khoa học. Các cảm biến được đặt ở các vị trí chiến lược: cảm biến siêu âm ở phía trước để dò đường và đối thủ, cảm biến vạch ở dưới gầm để phát hiện ranh giới. Khối nguồn pin 18650 và các bo mạch được đặt ở trung tâm và phía dưới để hạ trọng tâm, tăng độ ổn định cho robot.
5.2. Sơ đồ đấu nối chi tiết hệ thống sử dụng phần mềm Proteus
Sơ đồ đấu nối được thiết kế trên Proteus đóng vai trò như một bản thiết kế chi tiết cho phần điện. Nó chỉ rõ từng kết nối: các chân PWM của ESP32 nối vào chân ENA, ENB của L298N; các chân tín hiệu số nối vào chân IN1-IN4 để điều khiển chiều quay; chân Trigger và Echo của cảm biến siêu âm nối vào các chân digital của ESP32; và ngõ ra analog của cảm biến dò line nối vào các chân ADC. Sơ đồ này đảm bảo quá trình lắp ráp diễn ra chính xác và dễ dàng gỡ lỗi khi có sự cố.