Hình 4 .2 Cấu trúc phần cứng điều khiển FWOMR
Hình 4.7 Thơng số inflation_radius=0,55
Từ các kết quả đã được trình bày ở Chương 2 và Chương 3, luận án tiến hành thử nghiệm thuật tốn với các kịch lấy thơng tin bản bản đồ và xác định vị trí robot. Sau đó, thực hiện bài toán điều hướng tránh vật cản (tĩnh và động) theo quỹ đạo cục bộ với yêu cầu đảm bảo bám theo quỹ đạo toàn cục ban đầu.
(a) (b)
Hình 4.8. Mơi trường thực nghiệm cho robot
Môi trường thực tế được dùng thử nghiệm với các kịch bản là địa hình sảnh chính của tịa nhà (hình 4.8a) với kích thước 6 mét x 8 mét và dãy hành lang chung (hình 4.8b) trong phạm vi 12 mét x 2,4 mét có đoạn rẽ gấp khúc qua cửa lối đi chính. Q trình thực nghiệm sẽ được tiến hành theo các mục dưới đây.
4.3.1. Thực nghiệm robot lấy thơng tin bản đồ
Hình 4.9 cho thấy bản đồ được xây dựng trên Gazebo bao gồm những bức tường và những lối đi robot có thể di chuyển xung quanh để có được dữ liệu cần thiết xây dựng bản đồ. Bản đồ được chia thành các ô lưới thể hiện tọa độ đã được tạo ra.
Hình 4.9. Bản đồ ảo được xây dựng trên Gazebo
Hình 4.10a các đường màu đỏ là tín hiệu quét laser được tạo ra từ RPlidar và vị trí hiện tại của robot được cập nhật bằng cách sử dụng các phép đo hình học. Các đường bao bên ngồi màu tím là các vật cản (bờ tường) đã thu nhận được khi quét bản đồ. Hình 4.10b là bản đồ được quan sát trực quản bởi Rviz giống môi trường được tạo trên Gazebo. Đường màu đỏ là dữ liệu quét của Camera.
(a) (b)
Hình 4.10. Bản đồ quan sát trên Rviz
Sau khi bản đồ khu vực được tạo, vị trí bắt đầu của robot được xác định trên bản đồ đó bằng cách sử dụng kết hợp gói AMCL và thơng tin hình học thu nhận được. Việc quét bản đồ có thể được thực hiện thủ cơng khi điều khiển cho robot di chuyển lần lượt qua các vị trí trên bản đồ hoặc thực hiện tự động. Hình 4.10b là ảnh thu nhận của cảm biến khi quét các vị trí robot cần lấy bản đồ và các vật cản trong môi trường hoạt động.
Kết quả bản đồ thực tế sau khi thực hiện bản đồ hóa hồn chỉnh như hình 4.11.
Hình 4.11. Bản đồ ơ lưới thu được
4.3.2. Thực nghiệm robot tránh vật cản tĩnh
Quá trình điều hướng được thực hiện bằng việc lập kế hoạch đường đi của robot. Quỹ đạo toàn cục được sử dụng để tạo ra con đường ngắn nhất đến mục tiêu thể hiện qua đường màu xanh.
Quỹ đạo tồn cục được lập dựa trên tính tốn đường đi ngắn nhất cho robot. Khi quỹ đạo toàn cục đã được tạo ra, quỹ đạo cục bộ sẽ chuyển con đường này thành các lệnh vận tốc cho động cơ robot. Việc tránh vật cản phát sinh trong quá trình di chuyển phụ thuộc vào quỹ đạo của robot, khi xuất hiện vật cản trên đường di chuyển, robot sẽ chuyển sang quỹ đạo cục bộ nhằm tính tốn thơng số trên gói Gmapping để lựa chọn lệnh vận tốc và hướng nhằm thay đổi quỹ đạo di chuyển tránh vật cản phù hợp.
Hình 4.12 cho thấy mơi trường hoạt động với các vật cản tĩnh là các vách tường, các khối hộp khác nhau và bất kỳ vật cản nào đã quét được từ bước tạo bản đồ. Khi hoạt động, các cảm biến cập nhật bản đồ với các vật cản mới phát hiện được. Quỹ
đạo cục bộ căn cứ vào vật cản gặp phải và xuất ra kế hoạch di chuyển với khoảng cách có thể thay đổi.
Hình 4.12. Điều hướng cho robot
Trên nền ROS, luận án đã xây dựng một bảng điều khiển System Control bao gồm các vị trí 1,2,3,4 tương ứng với các điểm đích cần đi đến của robot. Hình 4.12 mơ tả trạng thái ban đầu của robot đang ở vị trí bất kỳ, khi nhận lệnh điểm đến số 4, hệ thống sẽ tính tốn lập ra quỹ đạo toàn cục (đường màu xanh lá cây) và quỹ đạo cục bộ (đường màu đỏ) phát sinh khi robot gặp vật cản động (vật cản mới phát sinh). Sau khi tránh vật cản, robot sẽ lại di chuyển bám theo quỹ đạo toàn cục trong thời gian ngắn nhất để đi tới mục tiêu (Goal) đã định.
Kết quả thực nghiệm tham số cost_factor= 0,01; inflaction_radius= 1,5 cho thấy với bộ tham số đã chọn, vật cản tĩnh (là người đứng yên phát sinh sau khi thiết lập bản đồ) robot lựa chọn quỹ đạo cục bộ tối ưu (đường màu đỏ). Tuy nhiên, với giá trị inflaction_radius= 1,5 tăng bán kính an tồn xung quanh vật cản, do đó làm hẹp khoảng cách của hành lang, vì vậy robot khơng thể thực hiện theo quỹ đạo ban đầu.
Hình 4.14. Robot khơng thể di chuyển theo quỹ đạo cục bộ
Thực nghiệm tương tự với tham số cost_factor= 0,01; inflaction_radius= 0,55, robot có thể di chuyển theo quỹ đạo tránh sang trái vật cản tĩnh (người đứng yên). Quỹ đạo cục bộ mới (màu đỏ) của robot bám sát đường quỹ đạo toàn cục (màu xanh lá cây) tối ưu di chuyển đến đích (Hình 4.15).
Hình 4.15. Robot chuyển hướng di chuyển
Kịch bản thực nghiệm với vật cản tĩnh bố trí theo đường zíc zắc:
Với tham số đã chọn, tiến hành xây dựng kịch bản thực nghiệm robot di chuyển tránh vật cản tĩnh (được bố trí theo đường zíc zắc) với quãng đường di chuyển 13 mét, khoảng cách các vật cản liên tiếp là 1,5 mét (Hình 4.16). Sử dụng phần mềm
giám sát trực quan Rviz theo dõi quỹ đạo chuyển động của robot với quỹ đạo tham chiếu (đường màu xanh) khi di chuyển đến đích đồng thời tránh các vật cản trên quỹ đạo di chuyển. Quỹ đạo cục bộ (đường màu đỏ) phát sinh khi robot gặp vật cản và điều hướng di chuyển tránh vật cản với khoảng cách an tồn 0,5 mét (Hình 4.17a).
Đích Vị trí ban đầu Hành lang thực nghiệm (10mx2,4m) Robot Vật cản 1 Vật cản 2 Vật cản 3 Vật cản 4 Vật cản 5 Hình 4.16. Sơ đồ bố trí vật cản thực nghiệm (a) (b) Hình 4.17. Robot di chuyển tránh vật cản tĩnh a) Quan sát trên Rviz; b) Trong thực tế
Xét trường hợp xây dựng mơi trường có các vật cản có chiều cao khác nhau (Hình 4.17b). Quan sát trên Rviz, đường nét đứt (màu đỏ) thể hiện tầm quét của cảm biến lidar, các vật cản chiều cao thấp sẽ khơng được qt bởi lidar. Vì vậy, việc kết
hợp sử dụng camera quét vật cản tầm thấp giúp robot phát hiện các vật cản có chiều cao khác nhau (Hình 4.18).
Hình 4.18. Kết quả thực nghiệm robot tránh vật cản tĩnh theo hình zíc zắc Kết quả việc tiến hành thực nghiệm được ghi lại thời gian xử lý các nhiệm vụ Kết quả việc tiến hành thực nghiệm được ghi lại thời gian xử lý các nhiệm vụ tránh vật cản và tổng thời gian di chuyển đến đích được mơ tả trong Bảng 4.1. Tổng thời gian di chuyển là 17 giây, robot đã thực hiện tránh qua 5 vật cản đáp ứng yêu cầu khơng va chạm với thời gian trung bình 2,5 giây, quá trình xử lý điều hướng với các góc cua hẹp nhưng vẫn đảm bảo bám theo quỹ đạo tham chiếu.
Bảng 4.1. Thời gian tiến hành thực nghiệm Thời gian Vật cản Vật cản Thời gian Vật cản Vật cản 1 Vật cản 2 Vật cản 3 Vật cản 4 Vật cản 5
Thời gian xử lý (giây) 2,5 3,0 3,5 2,0 2,0
Thời gian di chuyển (giây) 17
4.3.3. Thực nghiệm robot tránh vật cản động
Tiến hành thực nghiệm cho robot di chuyển tránh vật cản động với kịch bản xuất phát từ hành lang rộng 2,4 mét rẽ phải sang sảnh chính qua cửa rộng 1,6 mét, quãng đường di chuyển là 13,5 mét. Trong kịch bản này, robot cần đảm bảo tránh vật cản động phát sinh vừa đảm bảo bám theo đường quỹ đạo tồn cục (Hình 4.19).
Đích Vị trí ban đầu Hành lang thực nghiệm (10mx2,4m) Robot Vật cản động 1 Vật cản động 2 Vật cản động 3 Hình 4.19. Sơ đồ bố trí vật cản động (a) (b) Hình 4.20. Robot rẽ phải tránh vật cản động (a) Quan sát trên Rviz; (b) Trong thực tế
Giả thiết tốc độ vật cản động bằng tốc độ di chuyển trung bình của người trưởng thành (khoảng 5 km/giờ), các kịch bản xây dựng khi robot di chuyển cho thấy hiệu suất tốt khi cho robot đi theo đường đi được tạo bởi quỹ đạo toàn cục và tránh các vật cản động không biết trước theo quỹ đạo cục bộ (Hình 4.20). Tuy nhiên, khi gặp vật cản động tại cửa chính robot sẽ tính tốn quỹ đạo cục bộ mới, việc xử lý tính quỹ đạo mới làm robot dừng lại khoảng 2,5 giây, sau đó tiếp tục di chuyển theo quỹ đạo cục bộ mới (Hình 4.21a và Hình 4.21b).
(a) (b) Hình 4.21. Robot di chuyển theo quỹ đạo mới
a) Quan sát robot trên Rviz; b) Quan sát robot trong thực tế
Hình 4.22 là qua trình thực nghiệm cho robot tránh vật cản động được thực hiện với tốc độ di chuyển của các vật cản thay đổi tốc độ nhanh hơn tốc độ người đi bộ (khoảng 8-10 km/giờ).
Kết quả thực nghiệm cho thấy khi robot gặp vật cản 2, robot mất khoảng hơn 4 giây xử lý dừng và lùi lại lấy khoảng cách để thay đổi quỹ đạo cục bộ tránh vật cản. Với các vật cản khác cho thấy khả năng đáp ứng của robot khi di chuyển linh hoạt để tránh vật cản, tính tốn quỹ đạo cục bộ tối ưu và điều hướng di chuyển theo quỹ đạo cục bộ mới với khoảng cách và cự li cho phép.
Tuy nhiên, khả năng xử lý và tránh vật cản trong trường hợp này còn gặp sai số khi tốc độ xử lý và khả năng phát hiện vật cản động (di chuyển nhanh hơn 5 km/giờ) còn cần phải cải thiện hơn nữa.
Hình 4.22. Thực nghiệm robot tránh gặp vật cản động
Kết quả việc tiến hành thực nghiệm được ghi lại thời gian xử lý các nhiệm vụ tránh vật cản và di chuyển đến đích mơ tả trong bảng 4.2.
Bảng 4.2. Thời gian tiến hành thực nghiệm tránh vật cản động
Thời gian Vật cản Vật cản 1 Vật cản 2 Vật cản 3 Vật cản 4
Thời gian xử lý (giây) 3,5 4,3 3,1 2,3
Thời gian di chuyển (giây) 30
Với kết quả mơ phỏng thuật tốn đã sử dụng trên phần cứng lựa chọn, robot được chạy thử nghiệm trên mơ hình mơ phỏng Gazebo và giám sát trên phần mềm Rviz cho thấy các kết quả thu được khi mơ phỏng và thực nghiệm có sai lệch khơng đáng kể.
Kết quả thực nghiệm với kịch bản tránh vật cản tĩnh cho thấy robot hoạt động linh hoạt khi tránh vật cản tĩnh thể hiện ở quỹ đạo và thời gian xử lý tại các đoạn cong tại đường zíc zắc. Với kịch bản tránh vật cản động, cho thấy robot đã thực hiện tránh các vật cản ngẫu nhiên, tuy nhiên khả năng đáp ứng còn chưa nhanh, linh hoạt khi gặp các vật cản động di chuyển nhanh (Vật cản 2).
Tuy nhiên khi di chuyển, robot còn gặp phải hiện tượng sai lệch nhỏ do kết cấu cơ khí cũng như khả năng tránh vật cản động khi thực nghiệm tại hiện trường. Việc điều chỉnh bộ tham số là rất cần thiết nhằm tăng tính linh hoạt cũng như giảm thời gian quá độ khi robot gặp vật cản động (di chuyển nhanh hơn người đi bộ).
Với thuật toán điều khiển dự báo đã cho thấy robot di chuyển rút ngắn thời gian quá độ khi gặp vật cản động dẫn đến khả năng thích nghi và bám nhanh của robot trong bản đồ tồn cục. Thuật tốn đề xuất đã hạn chế độ quá điều chỉnh, đáp ứng yêu cầu bám nhanh vào quỹ đạo toàn cục của robot tiến tới mục tiêu trong thời gian yêu cầu. Kết quả được thể hiện trong công bố [CT1], [CT2], [CT3], [CT4], [CT5].
KẾT LUẬN
Lập kế hoạch bản đồ và điều hướng cùng với điều chỉnh và xác định các tham số bộ điều khiển là mối quan tâm lớn trong bài toán điều khiển FWOMR. Việc xây dựng bộ điều khiển và lựa các thông số phù hợp đảm bảo đổi hướng kịp thời và kiểm soát được tốc độ của FWOMR là bài tốn khơng dễ dàng. Luận án đã kết hợp việc giải bài toán điều hướng cục bộ và lựa chọn giải pháp điều khiển phù hợp, lựa chọn vi điều khiển có tốc độ tính tốn cao để giải quyết bài tốn này. Các tham số của bộ điều khiển được chỉnh định trong quá trình thực nghiệm.
Trước tiên, luận án đã đề xuất nghiên cứu thiết kế và xây dựng hệ thống bản đồ hóa và điều hướng thơng minh cho FWOMR trong môi trường phẳng bất định. Trên cơ sở tiến hành cả trên mơ hình mơ phỏng và thực nghiệm cho thấy hệ thống nhận thức của robot có thể bản đồ hóa mơi trường và đồng thời tự định vị được trong môi trường thực tế. Hơn nữa, hệ thống nhận thức cịn cung cấp thơng tin về vật cản xuất hiện trong quá trình robot di chuyển, từ đó thơng tin này được sử dụng để tính tốn quỹ đạo cho robot trong hệ thống điều hướng gồm tính tốn quỹ đạo tồn cục và quỹ đạo cục bộ.
Điều hướng tránh vật cản tĩnh và động trong môi trường bất định là vấn đề quan trọng trong bài toán điều khiển robot, việc sử dụng thuật tốn TEB có ưu điểm trong điều hướng cục bộ với tính chất tối ưu hóa đa mục tiêu áp dụng cho nhiều nền tảng robot có cấu trúc vật lý khác nhau được lựa chọn kết hợp TEB với một bộ điều khiển dự báo MPC ngắn hạn nhằm giảm thời gian quá độ khi điều hướng cục bộ cho robot đáp ứng thời gian thực. Kết quả mơ phỏng và thực nghiệm đã chứng minh thuật tốn MPC với u cầu tính tốn trong miền dự báo ngắn hạn đáp ứng chỉ tiêu bám nhanh theo quỹ đạo tồn cục so với các thuật tốn SMC và DSC.
Hơn nữa, luận án tập trung vào việc nghiên cứu FWOMR có khả năng tự trị thơng minh có nghĩa là có khả năng tự xây dựng quỹ đạo phù hợp với địa hình có vật cản và có khả năng chuyển động tránh các vật cản đồng thời bám đạo chuyển động đến đích. Luận án đã lựa chọn được thuật toán, các hệ vi xử lý phù hợp để giả quyết bài tốn nghiên cứu đã đặt ra đó là lập bản đồ thơng minh để xây dựng quỹ đạo tồn cục, điều hướng cục bộ trên nền tảng TEB, cài đặt NMPC trong hệ vi xử lý Jetson
TX2 của Nvidia kết hợp với việc lập trình hệ thống trên hệ điều hành ROS, hệ điều hành chuyên dụng và mới nhất cho robot.
Những đóng góp mới của luận án
Luận án có hai đóng góp mới sau đây:
- Phát triển thuật toán EKF-SLAM tạo dữ liệu cho hệ thống điều hướng và điều khiển robot tự hành bốn bánh đa hướng.
- Đề xuất thuật toán điều khiển MPC cho robot tự hành bốn bánh đa hướng tránh vật cản tĩnh.
Xây dựng mơ hình FWOMR vật lý để kiểm chứng các đề xuất mới trong luận án. Các kết quả thu được từ mô phỏng và thực nghiệm cho thấy tính đúng đắn của các giải pháp đã được đề xuất trong luận án và khả năng ứng dụng thực tế của các giải pháp này.
Hướng nghiên cứu tiếp theo
Việc xây dựng bài tốn điều hướng robot trong mơi trường bất định gặp nhiều khó khăn khi khả năng định vị bị hạn chế bởi nhiều nguyên nhân khách quan. Trong tương lai, luận án cùng các cộng sự sẽ nghiên cứu mở rộng nhằm xây dựng các thuật toán SLAM cho mơi trường 3D trên các địa hình đặc thù (như địa hình khơng bằng phẳng, dưới nước .v.v.).
Hơn nữa việc kết hợp thuật toán NMPC với các thuật tốn điều khiển thơng minh để giải quyết bài tốn điều khiển cho mơ hình phi tuyến, bất định cũng là hướng nghiên cứu tiếp theo để nâng cao chất lượng điều khiển cho nhiều loại robot trong thực tế.
DANH MỤC CÁC CƠNG TRÌNH KHOA HỌC ĐÃ CÔNG BỐ
CT1. Đỗ Quang Hiệp, Ngô Mạnh Tiến, Nguyễn Mạnh Cường, Lê Trần Thắng, Phan Xuân Minh (2020), Xây dựng hệ thống nhận thức môi trường cho robot tự hành Omni 4 bánh dựa trên thuật tốn EKF-SLAM và hệ điều hành ROS, “Tạp chí nghiên
cứu KH&CN Quân sự”, Số đặc san Hội thảo Quốc gia FEE, pp. 30-37.
CT2. Hiep Do Quang, Tien Ngo Manh, Cuong Nguyen Manh, Dung Pham Tien, Manh Tran Van, Duyen Ha Thi Kim, Van Nguyen Thi Thanh, Duan Dam Hong (2019), Mapping and Navigation with Four-wheeled Omnidirectional Mobile Robot based on Robot Operating System, “International Conference on MechatrOnics,