TỔNG QUAN
Giới thiệu chung
Ngày nay, robot học đã có những bước tiến vượt bậc trong ngành sản xuất công nghiệp, với các cánh tay robot hoạt động nhanh chóng, chính xác và liên tục, từ đó nâng cao năng suất lao động đáng kể Chúng có khả năng làm việc trong những môi trường độc hại như hàn, phun sơn, nhà máy hạt nhân, và lắp ráp linh kiện điện tử cho điện thoại, máy tính, yêu cầu sự tỉ mỉ và độ chính xác cao Tuy nhiên, một hạn chế chung của các robot này là không gian làm việc bị giới hạn bởi số bậc tự do của tay máy và vị trí gắn kết Ngược lại, robot tự hành lại thể hiện khả năng hoạt động linh hoạt trong nhiều môi trường khác nhau.
Robot tự hành là loại robot di động có khả năng hoạt động độc lập mà không cần sự can thiệp của con người, nhờ vào các cảm biến giúp chúng nhận biết môi trường xung quanh Chúng ngày càng trở nên quan trọng trong nhiều lĩnh vực như công nghiệp, thương mại, y tế, và các ứng dụng khoa học, phục vụ đời sống con người Sự phát triển của ngành Robot học đã cho phép robot tự hành hoạt động hiệu quả trong nhiều môi trường khác nhau, với nhiều loại hình như robot sơn, robot hàn, robot cắt cỏ, robot thám hiểm đại dương, và robot làm việc ngoài vũ trụ Tuy nhiên, sự tiến bộ này cũng đặt ra những thách thức mới cho các nhà nghiên cứu trong việc phát triển và cải tiến công nghệ robot tự hành.
Robot tự hành phải giải quyết vấn đề nhận biết môi trường và thực hiện nhiệm vụ, trong đó di chuyển là yếu tố quan trọng nhất Việc lựa chọn phương thức di chuyển và cơ cấu phù hợp là cần thiết để tối ưu hóa khả năng hoạt động Nghiên cứu và chế tạo robot tự hành hiện nay tập trung vào hai hướng chính trong việc phát triển hệ thống điều hướng hiệu quả.
Robot tự hành là một công nghệ tiên tiến có khả năng điều hướng ở tốc độ cao nhờ thông tin từ cảm biến Chúng có thể hoạt động hiệu quả trong cả môi trường trong nhà và ngoài trời Để đạt được điều này, loại robot này cần có khả năng tính toán mạnh mẽ và được trang bị cảm biến nhạy bén với dải đo lớn, cho phép điều khiển di chuyển an toàn trong những địa hình phức tạp.
Hướng thứ hai tập trung vào việc giải quyết các vấn đề liên quan đến robot tự hành hoạt động trong môi trường trong phòng Loại robot này có cấu trúc đơn giản hơn và chủ yếu thực hiện những nhiệm vụ cơ bản.
Bài toán điều hướng cho robot tự hành được phân thành hai loại chính: bài toán toàn cục (global) và bài toán cục bộ (local) Trong bài toán toàn cục, môi trường làm việc của robot được xác định rõ ràng, với đường đi và vật cản đã biết trước Ngược lại, bài toán cục bộ đề cập đến những môi trường chưa được biết hoặc chỉ được nhận diện một phần Các cảm biến và thiết bị định vị đóng vai trò quan trọng, giúp robot nhận diện vật cản và xác định vị trí của nó trong môi trường, từ đó hướng tới mục tiêu một cách hiệu quả.
Điều hướng cho robot tự hành khác biệt so với các loại robot khác, yêu cầu quyết định theo thời gian thực dựa vào thông tin liên tục từ cảm biến trong môi trường Robot tự hành cần khả năng tự quyết định phương thức di chuyển để hoàn thành nhiệm vụ Các khả năng cần thiết bao gồm: di chuyển đến vị trí đã định, phản ứng với sự kiện bất ngờ như vật cản, xác định vị trí trên bản đồ, lập kế hoạch để đạt đích hoặc tránh tình huống không mong muốn, và thích nghi với sự thay đổi của môi trường hoạt động.
Việc điều hướng gặp nhiều khó khăn do các vấn đề phức tạp, bao gồm hạn chế trong ước tính năng lượng, khó khăn trong phát hiện và nhận biết đối tượng, cũng như tránh xung đột với các đối tượng khác Thêm vào đó, việc sử dụng thông tin từ môi trường cũng tạo ra nhiều thách thức trong quá trình điều hướng.
Phân loại robot tự hành
Robot tự hành được phân thành hai loại chính: robot di chuyển bằng chân và robot di chuyển bằng bánh Bên cạnh đó, còn có các loại robot hoạt động trong môi trường đặc biệt như dưới nước hoặc trên không, được trang bị cơ cấu di chuyển riêng biệt.
1.2.1 Robot tự hành di chuyển bằng chân (Legged Robot) Ưu điểm lớn nhất của loại robot này là có thể thích nghi và di chuyển trên các địa hình gồ ghề Hơn nữa chúng còn có thể đi qua những vật cản như hố, vết nứt sâu
Nhược điểm lớn nhất của robot loại này là quá trình chế tạo phức tạp, do chân robot có nhiều bậc tự do, dẫn đến trọng lượng tăng và tốc độ di chuyển giảm Các kỹ năng như cầm, nắm và nâng tải cũng làm giảm độ cứng vững của robot Hơn nữa, độ linh hoạt cao của robot đồng nghĩa với chi phí chế tạo tăng lên.
Robot tự hành di chuyển bằng chân được thiết kế dựa trên mô phỏng các loài động vật, với nhiều loại như robot có 1 chân, 2 chân, 4 chân, 6 chân và thậm chí nhiều hơn Dưới đây là một số loại robot điển hình sử dụng phương thức di chuyển này.
Hình 1.1 Robot SDR-4X, chế tạo năm 2003 của hãng Sony
Hình 1.3 Mô hình robot 4 chân
1.2.2 Robot tự hành di chuyển bằng bánh (Wheel Robot)
Bánh xe là cơ cấu chuyển động phổ biến nhất trong công nghệ robot tự hành Trong các robot di chuyển bằng bánh, vấn đề cân bằng thường không được chú trọng Tuy nhiên, cấu trúc ba bánh có khả năng duy trì sự cân bằng hiệu quả.
Robot có thể được thiết kế với nhiều loại bánh xe khác nhau, trong đó bánh xe tiêu chuẩn, bánh lái và bánh Swedish là ba loại cơ bản Bánh xe tiêu chuẩn có 2 bậc tự do, cho phép quay quanh trục bánh và điểm tiếp xúc Bánh lái cũng có 2 bậc tự do, có khả năng quay quanh khớp lái Trong khi đó, bánh Swedish với 3 bậc tự do có thể quay quanh trục bánh, trục lăn và điểm tiếp xúc, giúp cải thiện khả năng di chuyển Đối với robot có số bánh nhiều hơn 3, việc thiết kế hệ thống treo là cần thiết để duy trì sự tiếp xúc của tất cả các bánh xe với mặt đất, đảm bảo lực kéo, độ ổn định và khả năng điều khiển chuyển động.
Hình 1.4 Các loại bánh xe dùng trong Robot tự hành [7]
Sơ đồ bánh xe của robot tự hành 2 bánh, 3 bánh, 4 bánh và 6 bánh được liệt kê trong bảng dưới đây:
Bảng 1.1: Sơ đồ bánh xe của Robot tự hành [7]
Số bánh Sắp xếp Miêu tả
Một bánh lái phía trước, một bánh phía sau
Hai bánh truyền động với trọng tâm ở bên dưới trục bánh xe
Hai bánh truyền động ở giữa và có điểm thứ 3 tiếp xúc
Hai bánh truyền động độc lập ở phía sau và một bánh lái ở phía trước
Hai bánh truyền động được nối với trục ở phía sau, một bánh lái ở phía trước
Hai bánh quay tự do ở phía sau, bánh trước vừa là bánh truyền động vừa là bánh lái
3 bánh Swedisk được đặt ở các đỉnh của một tam giác đều, kết cấu này cho phép robot di chuyển theo đa hướng
2 bánh chủ động ở phía sau, hai bánh lái ở phía trước
Hai bánh phía trước vừa là bánh lái vừa là bánh chủ động
Cả 4 bánh đều là bánh truyền động và lái
Hai bánh truyền động độc lập ở phía trước/sau,
2 bánh lái đa hướng ở phía sau/trước
Hai bánh chuyển động vi sai và thêm 2 điểm tiếp xúc
4 bánh vừa là truyền động vừa là bánh lái
Hai bánh truyền động ở giữa, thêm 4 bánh đa hướng ở xung quanh
Hai bánh truyền động vi sai ở giữa, bốn bánh đa hướng ở 4 góc
Bảng 1.2 Kí hiệu các loại bánh xe [7] :
Kí hiệu các loại bánh xe
Bánh đa hướng không truyền động
Bánh truyền động Swedish(đa hướng)
Bánh quay tự do tiêu chuẩn
Bánh truyền động tiêu chuẩn
Bánh vừa truyền động vừa là bánh lái
Các bánh xe được nối với nhau
Một số loại robot chuyển động bằng bánh:
Hình 1.5 Robot Sojourner được sử dụng thám hiểm sao Hỏa năm
1997 Hầu hết các hoạt động được điều khiển ở trái đất Tuy vậy nó vẫn phải sử dụng các cảm biến để phát hiện vật cản
Hình1.6 Robot AIRDUCT với kết cấu nhỏ gọn, nó được gắn camera để thu hình ảnh, có thể nhìn nghiêng, đi dọc theo tường, tránh vật cản
Hình 1.7 Robot Mbari’s Altex Auv (Autonomous Underware Vehicle) được sử dụng để hoạt động dưới đáy biển sâu ở Bắc Cực
Hình 1.8 Robot Khepera dùng để nghiên cứu và học tập Nó có đường kính 60mm, được tích hợp nhiều modun khác nhau như camera, tay kẹp
Hình 1.9 Robot dẫn đường AGU (Autonomous Guided Vehicle) được sử dụng trong các bệnh viện
Phương pháp điều hướng cho robot tự hành
Kỹ thuật điều hướng sử dụng trí thông minh nhân tạo trong robot tự hành được chia thành hai loại chính: điều hướng có tính toán và điều hướng theo phản ứng Điều hướng có tính toán là phương pháp lập kế hoạch, trong khi điều hướng theo phản ứng thực hiện các phản ứng tức thời dựa trên môi trường xung quanh Bên cạnh đó, phương pháp điều hướng lai ghép kết hợp cả hai phương pháp này nhằm xây dựng một bộ điều khiển thông minh hơn.
1.3.1 Phương pháp điều hướng có tính toán
Phương pháp điều hướng có tính toán bao gồm ba bước chính: quan sát, lập kế hoạch và hành động Một hệ thống điều hướng thường có năm khâu quan trọng: nhận thức, mô hình thế giới, lập kế hoạch, thực hiện công việc và điều khiển động cơ.
Các khâu này hình thành một chuỗi các "lát mỏng theo phương thẳng đứng", trong đó tín hiệu từ cảm biến bên trái được xử lý và truyền tới các khâu chấp hành bên phải.
Sơ đồ 1.1 Sơ đồ cấu trúc của phương pháp điều khiển có tính toán
Khâu nhận thức đóng vai trò quan trọng trong việc điều khiển các thiết bị cảm ứng, giúp thu thập thông tin về môi trường xung quanh Những thiết bị này được kết nối với robot, cung cấp dữ liệu cần thiết để quan sát và phân tích môi trường.
- Khâu mô hình thế giới: chuyển các tín hiệu từ cảm biển thành mổ tả mối liên quan giữa robot với mô hình bên trong môi trường
- Khâu lập kế hoạch: cố gắng xây dựng kế hoạch thực hiện của robot sao cho đạt được mục tiêu phù hợp với tình trạng thế giới hiện thời
- Khâu thực hiện công việc: chia kế hoạch vừa được xây dựng thành các lệnh điều khiển chuyển động chi tiết
- Khâu điều khiển động cơ: dùng để thực hiện các lệnh này
Mỗi hệ thống con trong một robot là một khâu phức tạp, yêu cầu hoạt động đồng bộ với các bộ phận khác Để đạt được điều này, cần trang bị cảm biến và thiết bị đo để thu thập thông tin từ môi trường hoặc dự đoán thông tin từ bản đồ toàn cục Thông tin thu thập được sẽ được sử dụng để cải thiện hiệu suất hoạt động của robot.
Nhận thức Mô hình thế giới Lập kế hoạch Thực hiện công việc Điều khiển động cơ
Các tín hiệu từ cảm biến
Để tối đa hóa khả năng đạt được mục tiêu, robot cần được trang bị một bản đồ môi trường và sử dụng thuật toán lập kế hoạch để tạo ra quỹ đạo chuyển động giúp tránh vật cản Tuy nhiên, sự phức tạp của môi trường làm tăng thời gian nhận diện, xây dựng mô hình và lập kế hoạch, dẫn đến bất lợi cho phương pháp này Phương pháp này rất hiệu quả trong các tình huống mà môi trường làm việc tương đối tĩnh, nơi các vật cản và đối tượng như tường chắn, hành lang và điểm đích có vị trí cố định trong bản đồ.
Trong phương pháp điều hướng có tính toán, lập kế hoạch đường đi cho robot đóng vai trò cực kỳ quan trọng, bao gồm hai giai đoạn: lập kế hoạch toàn cục và lập kế hoạch cục bộ Lập kế hoạch toàn cục giúp robot di chuyển qua một môi trường lớn và tùy ý, trong khi lập kế hoạch cục bộ đưa ra quyết định khi robot gặp phải vật cản trong môi trường tĩnh, như hành lang hay chướng ngại vật Kế hoạch cục bộ tập trung vào việc tìm ra lộ trình ngắn nhất và an toàn nhất để tránh va chạm, trước khi robot tiếp tục thực hiện kế hoạch toàn cục nhằm đạt được đích đến.
1.3.2 Phương pháp điều hướng robot theo phản ứng [10, 11]
Phương pháp điều hướng có tính toán mang lại nhiều lợi ích cho việc điều hướng robot di động, nhưng yêu cầu khối lượng tính toán lớn và không tối ưu khi môi trường hoạt động của robot thay đổi.
Phương pháp điều hướng theo phản ứng được phát triển để giải quyết các vấn đề trong môi trường không xác định hoặc thường xuyên thay đổi, giúp khắc phục những hạn chế của phương pháp điều hướng tính toán Nó giảm khối lượng tính toán và tăng tốc độ xử lý trong các môi trường phức tạp Phương pháp này tự động kết hợp các phản ứng với kích thích từ cảm biến để điều khiển robot một cách an toàn và hiệu quả Đặc biệt, nó phù hợp với các ứng dụng trong môi trường hoàn toàn động hoặc không biết trước, như trong không gian hoặc dưới nước Các thiết bị vệ tinh thám hiểm kiểu robot đã áp dụng phương pháp này, vì điều hướng tính toán yêu cầu lập kế hoạch phức tạp và nhiều phép tính, bị giới hạn bởi khả năng bộ nhớ và tốc độ tính toán Điều hướng theo phản ứng chỉ cần dựa vào trạng thái hiện tại của robot và yêu cầu rất ít phép tính để tương tác với môi trường.
Phương pháp điều hướng theo phản ứng có nhiều hạn chế, đặc biệt là việc thiếu kế hoạch tổng thể, dẫn đến khó khăn trong quá trình điều khiển Mặc dù các hoạt động tối ưu cục bộ có thể đạt được nhờ phương pháp này, nhưng nó dễ gây ra hiện tượng lệch hướng toàn cục Ngược lại, trong phương pháp điều hướng theo tính toán, hệ thống luôn duy trì tầm nhìn về mục tiêu, trong khi các hệ thống điều hướng theo phản ứng cần phải chú ý đến các mục tiêu tức thời để giảm thiểu độ lệch hướng so với mục tiêu tổng thể.
Một lợi ích nổi bật của việc điều hướng theo phản ứng so với các phương pháp tính toán là khả năng mở rộng bộ điều khiển mà không cần điều chỉnh lại toàn bộ phần mềm Điều này cho phép dễ dàng bổ sung tính năng cho robot bằng cách thêm các hoạt động mới mà không làm thay đổi các hoạt động đã có Chẳng hạn, để robot phản ứng với tín hiệu từ một cảm biến mới, chỉ cần thêm một thành phần vào bộ điều khiển để xử lý tín hiệu đó Ngược lại, với các phương pháp tính toán, bạn sẽ phải xây dựng một thuật toán hoàn toàn mới để sử dụng dữ liệu từ cảm biến mới.
Trong giai đoạn đầu, các nhà nghiên cứu đã phát triển hệ thống điều hướng phản ứng dựa trên hành vi của côn trùng, áp dụng vào kỹ thuật robot Nhiều nghiên cứu về sinh học đã được ứng dụng vào điều khiển robot di động, với chuyển động của côn trùng làm cơ sở cho các thuật toán điều khiển Ví dụ, nghiên cứu hành vi của gián cho thấy chúng chỉ có một số hoạt động đặc trưng như tìm thức ăn, tránh ánh sáng và sinh sản Khi cảm thấy đói, gián sẽ tìm kiếm thức ăn, nhưng nếu gặp ánh sáng mạnh, chúng sẽ nhanh chóng tìm nơi trú ẩn Đây là minh chứng cho việc điều khiển theo phản ứng, nơi gián chọn hành động phù hợp dựa trên kích thích hiện tại mà không cần lập kế hoạch Điều này mở ra khả năng xây dựng các thuật toán điều khiển đơn giản cho robot, phản ánh lý thuyết cơ bản của kỹ thuật điều khiển dựa trên hành vi cho robot di động.
1.3.3 Phương pháp điều khiển lai ghép Điều hướng lai ghép là phương pháp kết hợp các ưu điểm của phương pháp điều hướng theo tính toán truyền thống với các hệ thống điều hướng dựa phản ứng Mỗi phương pháp đều có những nhược điểm mà phương pháp kia có thể khắc phục được Phương pháp điều hướng theo tính toán gặp phải khó khăn khi hoạt động trong các môi trường động, là nơi yêu cầu khả năng tính toán nhanh cũng như các kỹ năng tránh vật cản Nếu phương pháp điều hướng theo phản ứng không kết hợp với bất cứ quá trình lập kế hoạch chuyển động nào thì có thể sẽ không đưa robot theo quỹ đạo tối ưu Phương pháp điều khiển lai ra đời nhằm kết hợp các hoạt động có tính toán bậc cao với các hoạt động phản ứng bậc thấp Các hoạt động phản ứng giúp robot an toàn và xử lý các tình trạng khẩn cấp trong khi phần điều khiển có tính toán sẽ giúp robot đạt được mục đích cuối cùng Phương pháp điều khiển lai ghép có thể cho ta kết quả khả quan hơn khi chỉ sử dụng phương pháp điều hướng theo phản ứng hoặc điều hướng theo tính toán
Mục tiêu đề tài
Sau khi xác định đối tượng, chủ thể và giới hạn phạm vi nghiên cứu, việc thiết lập mục tiêu là bước quan trọng tiếp theo để định hướng cho quy trình thực hiện đề tài Mục tiêu của đề tài cần được cụ thể hóa để đảm bảo tính chính xác và hiệu quả trong quá trình nghiên cứu.
Xây dựng mô hình robot tự hành có khả năng tự định hướng và vẽ lại sơ đồ đường đi cũng như biên dạng vật cản
Ngoài khả năng tự định hướng, robot phải tránh được các vật cản có trên quãng đường di chuyển
Giải thuật tránh vật cản cho robot theo yêu cầu của đề tài.
Nội dụng đề tài
Thiết kế mô hình robot tự hành bao gồm khung bằng nhựa mica, mạch công suất, vi điều khiển và các cảm biến Robot sẽ giao tiếp và truyền nhận dữ liệu thông qua máy tính, giúp điều khiển và vẽ sơ đồ đường đi của robot thông qua kết nối Bluetooth.
Giới hạn của đề tài
Hệ thống được thực hiện bằng mô hình đơn giản
Đề tài chỉ tập trung vào việc điều khiển và tránh vật cản của robot
Phụ thuộc vào không gian và độ nhiễu của cảm biến.
Phương pháp, đối tượng nghiên cứu
1.7.1 Phương pháp nghiên cứu Để thực hiện đề tài nhóm đã tham các tài liệu trong sách, trên internet và dựa trên hệ thống, yêu cầu thực tế để xây dựng lại mô hình đáp ứng được những yêu cầu đó Các bước nhóm thực hiện:
Đề ra mục tiêu và hướng đi cụ thể
Thiết kế hệ thống đáp ứng được các yêu cầu đã đề ra
Nghiên cứu các tài liệu liên quan
Viết chương trình điều khiển, giám sát
Các thiết bị cảm biến siêu âm, cảm biến la bàn số HMC5583L
Phần mềm điều khiển và giám sát Visual Studio
Các thuật toán định hướng của Mobile robot trong môi trường tĩnh
CƠ SỞ LÝ THUYẾT
Mô hình động học cho robot
Động học là nghiên cứu cốt lõi để hiểu quy trình hoạt động của hệ thống cơ khí, đặc biệt trong lĩnh vực robot di động Việc tìm hiểu đặc tính cơ của robot là cần thiết để thiết kế phù hợp với các nhiệm vụ cụ thể, đồng thời cũng giúp xác định phương pháp thiết kế phần mềm điều khiển tương thích với từng phần cứng của robot.
Đề tài này nghiên cứu điều khiển mô hình robot tự hành 4 bánh, trong đó hai bánh sau được điều khiển bởi hai động cơ độc lập, còn bánh trước là bánh lái Robot di chuyển trên mặt phẳng với giả định bánh xe lăn không trượt, và tốc độ của robot được xác định bởi tốc độ trung điểm giữa hai bánh sau Khối lượng và quán tính của bánh xe được coi là không đáng kể và có thể bỏ qua.
2.1.1 Mô hình bánh xe robot
Mô hình bánh xe robot được mô tả như hình 2.1, trong đó bánh xe quay quanh trục Y và di chuyển theo phương X Khi hoạt động ở tốc độ thấp, ảnh hưởng của sự trượt giữa bánh xe và mặt đường có thể được bỏ qua.
Các thông số của bánh xe: r: bán kính bánh xe v: vận tốc dài của bánh w: vận tốc góc của bánh xe
Hình 2.1 Mô hình bánh xe đã được lý tưởng hóa
2.1.2 Phương trình động học robot
Hình 2.2 Mô hình robot tự hành [7]
Hình 2.2 thể hiện vị trí của robot trong hệ trục tọa độ (x,y), với tọa độ (x c ,y c ) là điểm giữa trục bánh xe Góc θ biểu thị góc giữa phương chính của robot và phương ngang, trong khi v là vận tốc tuyến tính của robot Giả sử robot hoạt động theo nguyên lý "quay không trượt", nó sẽ thỏa mãn điều kiện nonholonomic, được biểu diễn bằng phương trình: sin(θ) * cos(θ) - y * θ = 0.
Chuyển động của robot được mô tả bởi các phương trình sau: cos xv (2.2) sin yv (2.3)
Trong đó w là vận tốc góc.
Phương pháp dẫn động cho robot tự hành
Do giới hạn của đề tài, robot chỉ di chuyển trên địa hình tương đối bằng phẳng Để đảm bảo tính tổng quát, chúng ta có thể mô tả chuyển động của robot trong mặt phẳng xOy.
Tại thời điểm thứ i, robot có tọa độ (x y i, i) trong hệ trục xOy Hệ trục tọa độ gắn liền với robot tại thời điểm đó cũng được xác định là (x y i, i), trong đó x i tương ứng với phương di chuyển của robot.
Hình 2.3 Mặt phẳng chuyển động của robot y i1 y i x i1
Xét một đường cong trơn trong mặt phẳng Oxy, quỹ đạo di chuyển của robot có thể được chia thành nhiều đoạn thẳng nhỏ Chuyển động của robot từ điểm M x y i (i, i) đến điểm M i 1 (x i 1, y i 1) được đơn giản hóa thành hai chuyển động cơ bản: quay và tịnh tiến Dựa trên hai loại chuyển động này, chúng ta có ba phương pháp dẫn động cho robot.
2.2.1 Tịnh tiến trước và quay sau
Với phương pháp dẫn động tịnh tiến trước-quay sau thì robot sẽ tịnh tiến theo trục x i một đoạn d i x 2 y 2 , sau đó quay một góc 1
theo chiều dương (với quy ước chiều dương là chiều ngược chiều kim đồng hồ), tiếp tục tịnh tiến một đoạn 2d sin i i 2 d
để đến điểm M i i Tuy nhiên khi đó phương của nó lệch với trục x i 1 một góc 2
, nên phải quay theo chiều âm một góc 2 Minh họa phương pháp này trên hình 2.4
Hình 2.4 Phương pháp dẫn động tịnh tiến trước – quay sau
2.2.2 Tịnh tiến và quay đồng thời
Theo phương pháp này, robot thực hiện chuyển động song phẳng, giúp quỹ đạo di chuyển của robot bám sát quỹ đạo mong muốn Tuy nhiên, việc phối hợp chuyển động của hai bánh xe khá phức tạp, do đó phương pháp này không thường được áp dụng Hình 2.5 minh họa cho phương pháp này.
Hình 2.5 Phương pháp dẫn động tịnh tiến và quay đồng thời
2.2.3 Quay trước và tịnh tiến sau
Phương pháp này cho phép robot quay một góc Δθ tại điểm Mi, sau đó di chuyển theo trục xi+1 một đoạn di để đến điểm Mi+1 Đây là phương pháp đơn giản nhất trong ba phương pháp đã đề cập Hình 2.6 minh họa rõ ràng phương pháp này.
Hình 2.6 Phương pháp dẫn động quay trước – tịnh tiến sau
1 cos cos( ) cos cos sin sin i i i i i i i i i x d d d d
Do qũy đạo chuyển động được chia thành nhiều đoạn vi cấp nên một cách gần đúng ta có:
Thay (2.6) vào (2.5), ta có: x i 1 (d i d) cos i cos (d i d)sin i sin cos cos sin sin (cos cos sin sin ) cos sin cos( ) i i i i i i i i i d d d x y d
Biểu diễn dưới dạng ma trận trong hệ trục tọa độ Oxy
Trong bài toán thực tế, hai bánh chủ động của robot được điều khiển bởi hai động cơ servo, và để xác định góc quay của robot, cần biết góc quay của bánh dẫn động bên trái và bên phải Giả thiết rằng các bánh lăn không trượt và vận tốc quay của các bánh là hằng số, chúng ta sẽ xem xét cặp bánh dẫn động như trong hình vẽ.
Hình 2.7 Sự chuyển động của cặp bánh chủ động khi robot quay
Theo hình 2.7 ta có O là tâm quay của robot Giả sử ta muốn robot quay một góc
Bánh dẫn động bên trái quay một cung có tâm O với chiều dài cung S left và bán kính R-b, trong khi bánh dẫn động bên phải quay một cung có tâm O với chiều dài S right và bán kính R+b.
Mặc khác, tâm robot quay một cung có chiều dài
Với là góc quay của robot
S xấp xỉ khoảng cách mà robot di chuyển 2b là khoảng cách giữa 2 bánh xe robot
Trong trường hợp tâm quay robot trùng với tâm đối xứng, khi đó 2 bánh sẽ được dẫn động quay đồng tốc và ngược chiều nhau, ta có:
Khi tịnh tiến một đoạn d
Một số phương pháp dẫn đường cho robot di động
Di chuyển là một yếu tố quan trọng đối với robot di động Để thực hiện quá trình di chuyển, robot cần thực hiện nhiều tác vụ khác nhau, mỗi tác vụ liên quan đến một phần cụ thể trong bài toán di chuyển.
“di chuyển”, bao gồm các khâu sau:
- Nhận thức: robot phải dịch các tín hiệu từ cảm biến để thu được dữ liệu có nghĩa
- Định vị: robot phải xác định được vị trí của nó trong môi trường hoạt động
- Khả năng tri thức: robot phải quyết định hành động như thế nào để đạt được mục đích
- Điều khiển chuyển động: robot phải điều chỉnh các thông số đầu ra động cơ để đạt được quỹ đạo mong muốn
Cập nhập vị trí (đánh giá)
Dự đoán vị trí Encoder
Dữ liệu từ bản đồ
So sánh xem có phù hợp?
Dữ liệu quan sát được phù hợp
Dữ liệu thu được từ cảm biến
Vị trí được dự đoán
Sơ đồ 2.1 Sơ đồ nguyên lý của khâu định vị trong mobile robot
Phương pháp định vị cho robot tự hành
Trong lĩnh vực ứng dụng robot, hai phương pháp định vị phổ biến được sử dụng là phương pháp định vị tuyệt đối (APM) và phương pháp định vị tương đối (RPM).
Phương pháp định vị tương đối chủ yếu dựa trên bài toán Dead-reckoning, là phương pháp dẫn đường phổ biến nhất cho robot di động Phương pháp này mang lại độ chính xác cao trong thời gian ngắn, chi phí thấp và tốc độ lấy mẫu nhanh chóng.
Phương pháp dead-reckoning chuyển đổi số vòng quay bánh xe thành độ dịch chuyển tuyến tính của robot, nhưng do nguyên tắc tích lũy thông tin về gia số chuyển động theo thời gian, dẫn đến sự tích lũy sai số Sai số này theo hướng sẽ làm tăng sai số vị trí, tỷ lệ thuận với khoảng cách di chuyển của robot.
Hầu hết các nhà nghiên cứu đều thống nhất rằng dead-reckoning là yếu tố quan trọng trong hệ thống dẫn đường của robot Việc cải thiện độ chính xác của phương pháp dead-reckoning sẽ giúp đơn giản hóa các lệnh dẫn đường.
Phương pháp định vị tuyệt đối sử dụng nhiều cảm biến bổ sung ngoài encoder, bao gồm cột mốc chủ động, so sánh bản đồ cục bộ với bản đồ toàn cục và định vị bằng vệ tinh (GPS) Mỗi phương pháp định vị tuyệt đối áp dụng các thuật toán và cảm biến khác nhau, nhưng chủ yếu được sử dụng cho robot di động hiện nay Theo kinh nghiệm, người ta thường áp dụng phương pháp định vị tương đối để xác định phạm vi xử lý trước khi chuyển sang phương pháp định vị tuyệt đối nhằm xác định vị trí chính xác của robot.
Phân tích ưu nhược điểm của phương pháp định vị tuyệt đối cho robot cho thấy rằng phương pháp sử dụng cột mốc (beacons) chỉ phù hợp trong môi trường nội thất, trong khi định vị GPS chỉ hoạt động hiệu quả ngoài trời nhưng có thể gây ra sai số lớn lên đến hàng mét Ngoài ra, một số phương pháp khác sử dụng cảm biến la bàn hoặc con quay hồi chuyển để định hướng robot dựa vào từ trường của Trái Đất.
Dù áp dụng bất kỳ phương pháp định vị nào, dead-reckoning luôn là lựa chọn hàng đầu Một lý luận thú vị là để điều khiển robot di động, cần giải bài toán động học của robot Nếu đã giải được bài toán này, tại sao không sử dụng phương pháp dead-reckoning để hạn chế phạm vi xử lý cho các phương pháp định vị tuyệt đối khác?
Phương pháp tránh vật cản
2.5.1 Phương pháp bám tường (wall-following method) [8] Ở phương pháp này, robot di chuyển dọc theo vật cản với một khoảng cách định trước Phương pháp này [8] thích hợp khi chúng ta không có một bản đồ cụ thể môi trường hay một sự định vị rõ ràng Phương pháp này còn được áp dụng khi chỉ có những thông tin không đầy đủ, đại loại như “hành lang này sẽ dẫn đến cánh cửa kia”, robot có thể sử dụng tường để định hướng quỹ đạo hoàn tất nhiệm vụ
Phương pháp bám tường sử dụng thuật toán dựa trên sự biểu diễn nhận thức, khai thác thông tin từ cảm biến siêu âm để tạo ra cái nhìn tổng quát về môi trường xung quanh Thay vì xác định vị trí chính xác của vật cản và hướng tường, các thông tin này giúp robot nhận diện bản thân theo những hướng hợp lý như phía trước bên trái hoặc ở đằng xa Việc mô tả này được thực hiện thông qua logic mờ, đóng vai trò quan trọng trong quá trình nhận thức của robot.
Một nghiên cứu tại trung tâm robotic IKERLAN ở Tây Ban Nha đã chứng minh rằng robot bám tường có khả năng tránh mọi chướng ngại vật trong nhiều thử nghiệm Robot hoạt động hiệu quả ở khoảng cách 0.6 m từ tường và đạt tốc độ 0.45 m/s, với điều kiện không bị "mù" và các vật cản phải tĩnh Robot nhận diện vật cản như một phần của tường và sẽ bỏ qua nếu khoảng cách giữa vật cản và tường quá lớn.
Cảm biến siêu âm có nhược điểm về độ phân giải hướng kém, mặc dù chúng chính xác trong việc đo khoảng cách đến vật cản gần nhất thông qua tính phản xạ Vật cản có thể nằm ở bất kỳ vị trí nào trong góc quét của cảm biến, và khoảng cách này còn phụ thuộc vào bề mặt, khoảng cách và độ nghiêng của vật cản so với trục cảm biến Điều này làm cho việc mô tả môi trường xung quanh từ dữ liệu cảm biến trở nên khó khăn, chẳng hạn như việc xác định độ cong của bức tường Khái niệm nhận thức tổng quát giúp giải quyết vấn đề này bằng cách không yêu cầu phác thảo chính xác môi trường, mà thay vào đó, nó tập trung vào việc tạo ra một nhận thức chung về môi trường xung quanh từ dữ liệu cảm biến, được biểu diễn dưới dạng vector nhận thức tổng quát.
Để đáp ứng yêu cầu, mỗi cảm biến siêu âm i được gán một vector nhận thức p i, với hướng trùng với trục của cảm biến Độ dài của vector này là một hàm của khoảng cách d i, được tính theo công thức: p i = (d i - d min) / (d max - d min).
Khoảng cách phát hiện của một vật cản được xác định bởi hai giá trị d max và d min, trong đó d max là khoảng cách xa nhất và d min là khoảng cách gần nhất Giá trị p i được giới hạn trong khoảng từ 0 đến 1 theo công thức đã được quy định.
Vector tổng quát p được cấu thành từ các vectơ thành phần p i, với hướng của p tương ứng với tổng hướng các vectơ thành phần Chiều dài của p được xác định bằng chiều dài của vectơ thành phần dài nhất Độ biến thiên của vector tổng quát theo thời gian được tính bằng đại lượng vô hướng p theo công thức.
Biến thiên nhận thức, ký hiệu là \( p_{\text{max}} \), xảy ra khi robot di chuyển trực diện tới vật cản với vận tốc tối đa \( v_{\text{max}} \) Chỉ các giá trị dương của \( p_i \) được xem xét, do đó, biến thiên nhận thức tương đối của cảm biến được tính toán dựa trên công thức \( d_{\text{max}} - d_{\text{min}} \).
Giá trị lớn nhất của biến thiên tương đối của các cảm biến kí hiệu là:
Hình 2.8 Robot tự hành trong 3 tình huống bám biên [8]
Hình ảnh minh họa khái niệm nhận thức tổng quát của robot trong ba tình huống bám biên Tình huống đầu tiên, khi robot tiếp cận góc tường (trường hợp a), nhận thức tổng quát được thể hiện qua ba vector, trong đó một cảm biến nhận diện cạnh tường gần hơn, trong khi hai cảm biến còn lại nhận diện cạnh tường xa hơn, dẫn đến mức độ nhận thức không đồng đều Tình huống thứ hai là khi robot ở vị trí "dead-end" (hình b), nơi robot di chuyển dọc theo tường bên phải; khi đến cuối đường, vector nhận thức thay đổi nhanh hơn về phía trước, với tốc độ biến thiên phụ thuộc vào vận tốc di chuyển của robot Cuối cùng, trong trường hợp góc tường mở (hình c), sự biến thiên nhận thức mạnh hơn ở phía sau bên phải.
Khái niệm nhận thức tổng quát rất phù hợp để mô tả ngôn ngữ trong nhiều tình huống của robot Mô tả này đơn giản và đi kèm với chuyển động của robot, đồng thời được sử dụng làm ngõ vào cho bộ luật trong thuật toán logic mờ Trong trường hợp này, độ chính xác của cảm biến không còn là yếu tố quan trọng Nhờ vào thuật toán này, robot có khả năng bám theo tường một cách hiệu quả, ngay cả khi chỉ trang bị một cảm biến để phát hiện tường.
Khái niệm nhận thức tổng quát là sự tổng hợp từ các cảm biến, bao gồm cả những cảm biến chuyển động hướng về phía sau, mà có thể bị xem nhẹ nhưng vẫn đóng góp quan trọng vào nhận thức tổng quát Nếu bỏ qua các cảm biến không được cho là hữu ích, robot có thể di chuyển sai hướng Ví dụ, nếu không chú ý đến dữ liệu từ cảm biến 1 và 8, góc giữa vector nhận thức và vận tốc sẽ nhỏ hơn 90 độ, dẫn đến robot di chuyển sang bên phải và xa bức tường Khi robot tiến gần bức tường đối diện, vector sẽ thay đổi hướng do sự biến động của các cảm biến, khiến robot di chuyển qua lại giữa hai bức tường, vì bức tường mà robot bám theo luôn bị xem là ở phía sau do thiếu sót trong việc sử dụng các cảm biến cần thiết.
Hình 2.9 Robot sẽ di chuyển qua lại hai bức tường nếu ta không xét đến các cảm biến p 8 và p 1 [8] b Kết quả thực nghiệm:
Hình 2.10 robot đi vào góc nhỏ và có những khe hở nhỏ giữa các bức tường, robot tìm được đường đi ngược lại [8]
Hình 2.11 Robot gặp vật cản khi bám tường, khi đó robot thay đổi quỹ đạo vòng qua vật cản (B-C) rồi trở lại nhiệm vụ bám tường ( C-D) [8]
2.5.2 Phương phát phát hiện cạnh (edge-detection)
Một phương pháp phổ biến trong điều khiển robot là phát hiện cạnh (edge-detection), trong đó thuật toán xác định vị trí các cạnh để robot có thể di chuyển quanh các vật cản Đường nối giữa hai cạnh được coi là biên của vật cản, và phương pháp này cũng có thể kết hợp với cảm biến siêu âm để phát hiện vật cản Tuy nhiên, nhược điểm của phương pháp này là robot cần dừng lại để thu thập thông tin trước khi tiếp tục di chuyển, mặc dù điều này có thể được cải thiện với sự phát triển của các máy tính xử lý nhanh trong tương lai.
Trong phương pháp sử dụng cảm biến siêu âm, robot thực hiện quét toàn cảnh môi trường làm việc khi đứng yên Sau khi áp dụng các thuật toán line-fitting, một kế hoạch chuyển động tổng thể được thiết lập cho quỹ đạo tiếp theo của robot.
Hạn chế thường gặp của phương pháp này là độ chính xác của cảm biến siêu âm, thường rơi vào các nguyên nhân sau :
Khả năng định hướng kém có thể hạn chế việc xác định vị trí cạnh trong không gian, điều này phụ thuộc vào khoảng cách tới vật cản và góc giữa bề mặt và trục phát sóng.
Hiện tượng đọc chéo xảy ra do nhiễu sóng siêu âm từ các nguồn bên ngoài hoặc do sự can thiệp lẫn nhau giữa các cảm biến Những nhiễu này thường rất khó để loại bỏ, gây khó khăn trong quá trình thực hiện các thuật toán.
THUẬT TOÁN DẪN HƯỚNG THÍCH NGHI (ADAPTIVE NAVIGATION) [5] 32 1 Mô hình robot và kĩ thuật dẫn hướng thích nghi
Thuật toán được trình bày trong tài liệu tham khảo [5] là một kỹ thuật dẫn hướng cục bộ, trong đó vị trí ban đầu và đích đã được xác định Robot sử dụng ba cảm biến đo khoảng cách để phát hiện vật cản ở ba hướng khác nhau Hướng di chuyển của robot được xác định dựa trên hướng đến đích và hướng tránh vật cản đã tính toán Phương pháp này yêu cầu các vật cản phải đứng yên và có ưu điểm là chỉ cần ít thông tin về môi trường xung quanh so với các phương pháp khác, đồng thời luật dẫn hướng cũng đơn giản và linh hoạt hơn so với phương pháp trường thế.
2.6.1 Mô hình robot và kĩ thuật dẫn hướng thích nghi
Bài toán dẫn hướng hai chiều (2D) được xem xét trong hệ tọa độ Decac với vị trí và vận tốc của robot được biểu diễn dưới dạng (x(t), y(t), v(t)), trong đó t là thời gian Điểm khởi đầu và điểm kết thúc của robot lần lượt là (x0, y0) và (0,0) Hướng di chuyển của robot được xác định bởi góc θ(t), với 0 ≤ θ(t) < 2π và giá trị ban đầu là θ0 Do có khả năng xuất hiện vật cản trên đường đi, mục tiêu chính là dẫn hướng robot đến đích mà vẫn đảm bảo tránh được các vật cản Một số giả định được đưa ra để giải quyết bài toán này.
Robot chỉ di chuyển về phía trước với vận tốc hằng số, trừ khi tiến đến gần đích Khi cần thay đổi hướng, robot có khả năng rẽ trái hoặc phải với bán kính nhỏ nhất.
Hình 2.16 Mô hình bài toán dẫn hướng thích nghi
Phương trình chuyển động của robot :
Giả định A2 được biểu diễn bằng bất đẳng thức : min
Xét biểu thức dạng toàn phương :
E t 2 t t (2.37) với * ( )t là góc điều khiển robot đến đích hoặc tránh vật cản
Nếu không có vật cản và giả định A2 không được xét đến, robot sẽ ngay lập tức quay về phía đích từ lúc bắt đầu và tiếp tục di chuyển đến đó Mặc dù đây là lộ trình tối ưu, nhưng lại không khả thi với điều kiện hoạt động của robot Vì vậy, một luật dẫn hướng mới đã được đề xuất.
Phương pháp suy giảm Gradient được sử dụng để xác định góc dẫn hướng nhằm tối thiểu hóa E(t), trong đó θ*(t) là góc định hướng điều kiện Để làm rõ vấn đề, chúng ta xem xét trường hợp dẫn hướng không có vật cản, trong đó θ*(t) được coi là góc định hướng giúp robot di chuyển đến đích Trong tình huống này, ta có θ*(t) = θ*t.
𝑥(𝑡), 0( )t 2 với ( )t là góc vị trí (gốc tọa độ trùng điểm đích)
Khi robot ở xa đích, góc điều chỉnh (t) tiến về giá trị mục tiêu t*(t) một cách đơn điệu theo dạng bước, với giá trị lớn nhất của (t) là (0) = ((0) - t*(t)) Mặc dù có vẻ robot sẽ lập tức quay về hướng đích, nhưng sự thay đổi của (t) so với tọa độ của robot (x(t), y(t)) và sự biến đổi của t*(t) theo thời gian cần được xem xét Khi robot gần đích, cần đánh giá thêm về sự ổn định của luật dẫn hướng này.
Robot được trang bị ba cảm biến khoảng cách để đo khoảng cách đến vật cản, bao gồm các khoảng cách d_c (giữa), d_l (trái) và d_r (phải) Hai cảm biến bên trái và phải được đặt lệch một góc α so với cảm biến giữa Các giả thiết liên quan đến cảm biến và vật cản cũng được thiết lập để đảm bảo tính chính xác trong quá trình đo lường.
(A4) : Khoảng đo được lớn nhất là d max , nếu cảm biến không phát hiện vật cản hoặc khoảng cách lớn hơn d max thi ngõ ra cảm biến là -1
(A5) : Các vật cản được mô hình là các đa giác lồi với các góc ở đỉnh phải lớn hơn
(A6) : Khoảng cách giữa các vật cản thì lớn hơn d max
Giả định (A4) mô tả một tình huống thực tế, trong khi mục đích của giả định (A5) là đảm bảo rằng cả ba cảm biến đều có khả năng phát hiện vật cản Giả định (A6) đóng vai trò quan trọng trong việc tránh va chạm với vật cản, điều này sẽ được giải thích chi tiết sau Trong trường hợp cả ba cảm biến đều phát hiện vật cản, việc xử lý tình huống sẽ được thực hiện một cách hiệu quả.
Hình (2.10) minh họa các tình huống phát hiện vật cản Khi vật cản được phát hiện ở cả ba hướng và d l ≥ d r như trong hình (a), khoảng cách đến vật cản bên trái lớn hơn bên phải, do đó robot nên rẽ trái Với là góc trong hình vẽ (a), robot sẽ rẽ một góc tương ứng.
2 để tránh vật cản và tương tự cho trường hợp d l d r Đem phản ứng này vào luật dẫn hướng, ta được:
Hình 2.17 Các trường hợp phát hiện vật cản của robot [5] b Trường hợp 2 cảm biến phát hiện vật cản :
Khi một vật cản được phát hiện phía trước robot (d c > 0), nếu d c > d r cosα và d l < 0, hoặc tương tự là d c > d l cosα và d r < 0, điều này cho thấy một khoảng trống không vật cản đang mở ra phía bên trái Luật dẫn hướng trong trường hợp này được xác định dựa trên các điều kiện trên.
Trong trường hợp d c < d l cosα và d r < 0, không gian bên phải có vẻ thoáng hơn bên trái Tuy nhiên, có thể tồn tại vật cản bên phải mà robot chưa phát hiện Để đảm bảo an toàn và tránh va chạm, robot nên rẽ trái một góc.
2 (như trong hình c) và luật dẫn hướng giống như công thức (2.40)
Khi d c < 0, việc chuyển hướng của robot không cần thiết do không có vật cản trên đường di chuyển Do đó, góc điều chỉnh là θ a * = θ(t) Tuy nhiên, nếu một cảm biến phát hiện vật cản, robot sẽ cần điều chỉnh hướng di chuyển.
Có hai trường hợp được xét đến trong hình e và hình f Trong trường hợp đầu việc chuyển hướng là không cần thiết do d c 0, nên a * ( ) t
Khi robot gặp tình huống với d c > 0, nó cần phải chuyển hướng Tuy nhiên, vì cả d l và d r đều âm, việc rẽ trái hay rẽ phải đều giống nhau Do đó, chúng ta quyết định cho robot rẽ trái 90 độ.
Trong mọi trường hợp từ a đến f, thông tin từ ba cảm biến không thể hoàn toàn bao quát sơ đồ các vật cản trong không gian Tuy nhiên, nhờ vào việc cập nhật liên tục các thông số d c, d l và d r, cùng với giả định A5, robot có khả năng tránh vật cản trong hầu hết các tình huống.
2.6.3 Xây dựng thuật toán dẫn hướng thích nghi
Khi phát hiện vật cản, ưu tiên hàng đầu là tránh vật cản đó thay vì chỉ đơn giản là đến đích Tuy nhiên, nếu mục tiêu đến đích cũng bao gồm việc tránh vật cản, robot vẫn có thể thực hiện hành trình đến đích theo công thức đã được xác định Trong một số trường hợp, việc chuyển hướng là cần thiết để tránh vật cản, như thể hiện trong các hình 2.17 a, b, c và f Để đảm bảo an toàn, các bất đẳng thức liên quan cần được duy trì trong quá trình di chuyển của robot.
(2.46) hoặc t * ( ) t a * ( ) t ( ) t (2.47) thì việc chuyển hướng đến đích đủ để tránh vật cản Do đó góc điều khiển là:
Trong hình 2.17e, chuyển hướng là không cần thiết * ( )t tiếp tục được gán bằng t * ( ) t nếu điều kiện này xảy ra :
Tổng kết các phương pháp tránh vật cản
Các phương pháp điều khiển robot đều có ưu nhược điểm và phạm vi áp dụng khác nhau Phương pháp điều khiển bám biên giúp giảm sai số của cảm biến siêu âm thông qua khái niệm nhận thức tổng quát và giải thuật mờ, nhưng chỉ cho phép robot di chuyển theo quỹ đạo cố định, không phù hợp với môi trường phức tạp Phương pháp phát hiện cạnh yêu cầu cảm biến siêu âm quét toàn bộ môi trường làm việc trước khi tính toán quỹ đạo, dẫn đến phản ứng chậm của robot Trong khi đó, phương pháp biểu diễn vật cản bằng sơ đồ lưới cần nhiều cảm biến để bao quát khu vực hoạt động, nhưng khắc phục được nhược điểm góc mở lớn của cảm biến siêu âm bằng cách sử dụng hàm xác suất Cuối cùng, phương pháp trường thế yêu cầu biết trước tọa độ đích, không thích hợp cho các mục tiêu di chuyển.
Phương pháp Optical Flow cho phép phát hiện vật cản chỉ bằng một camera, tuy nhiên yêu cầu lập trình phức tạp và thời gian xử lý lâu do phải tính toán gradient cho các điểm trên hình Ngược lại, phương pháp dẫn hướng thích nghi chỉ cần ba cảm biến siêu âm và thuật toán đơn giản, phù hợp với môi trường không phức tạp, có vật cản tĩnh và kích thước lớn Mặc dù trong thuật toán gốc, tọa độ đích đến được xác định trước, nhưng có thể cải tiến để áp dụng cho các mục tiêu di động.