- Trang Chủ
- Tự động hoá
- Xây dựng hệ thống điều hướng dựa trên bản đồ hóa SLAM cho Robot Mecanum đa hướng trên nền hệ điều hành ROS
Xem mẫu
- Hội nghị Quốc gia lần thứ 24 về Điện tử, Truyền thông và Công nghệ Thông tin (REV-ECIT2021)
Xây dựng hệ thống điều hướng dựa trên bản đồ hóa SLAM cho
Robot Mecanum đa hướng trên nền hệ điều hành ROS
Nguyễn Minh Đông1*, Đỗ Quang Hiệp1, Ngô Mạnh Tiến2,
Hà Thị Kim Duyên 3, Lê Mạnh Long3, Trần Bá Hiến3
Trường Đại học Kinh tế- Kỹ thuật Công nghiệp.
1
Email: nmdong@uneti.edu.vn, dqhiep@uneti.edu.vn
2
Viện Vật lý, Viện Hàn lâm Khoa học và Công nghệ Việt Nam
Email: nmtien@iop.vast.ac.vn
3
Trường Đại học Công nghiệp Hà Nội
Email: ha.duyen@haui.edu.vn, lemanhlong@haui.edu.vn, hienbn3333@gmail.com
Abstract: Bài báo trình bày về xây dựng phần cứng, mô
hình hóa, xây dựng hệ thống bản đồ hóa và định vị đồng
thời SLAM cho robot và từ bản đồ thu được từ quá trình I. GIỚI THIỆU
SLAM. Thử nghiệm các thuật toán điều hướng chuyển
động cho robot trong môi trường phẳng không xác định, Trong công nghiệp Robot tự hành là một lĩnh vực
sử dụng công cụ lập trình là hệ điều hành cho robot (Robot thu hút được nhiều sự chú ý của cộng đồng khoa học bởi
Operating System - ROS). Từ các thông tin về bản đồ môi vai trò quan trọng của nó trong cuộc sống hàng ngày,
trường, vị trí của robot và vật cản (Simultaneous cũng như trong công việc sản xuất và các dây chuyền tự
Localization and Mapping - SLAM) để tính toán quỹ đạo
cho robot trong hệ thống điều hướng. Hệ thống điều
động tại các nhà máy công nghiệp. Ngoài việc tâp trung
hướng tính toán quỹ đạo toàn cục sử dụng thuật toán A* vào các thuật toán và phương pháp điều khiển Robot tự
và tính toán quỹ đạo cục bộ cho robot có sử dụng thuật hành hoạt động chính xác cao, thời gian thực và hoạt
toán TEB. Các kết quả mô phỏng và đặc biệt chạy thử động thích nghi trước những nhiễu bất định của môi
nghiệm đã cho thấy tính hiệu quả thực tế của hệ thống trường, thì việc thay đổi cơ cấu chuyển động như sử
điều hướng đã xây dựng. dụng nhiều cấu trúc tiên tiến của các bánh xe truyền
Keywords: Robot Operating System (ROS), GAZEBO,
động đã được nghiên cứu và chế tạo để giúp robot có thể
RVIZ, Simultaneous Localization and Mapping (SLAM), di chuyển nhanh nhẹn, linh hoạt hơn. Trong các cơ cấu
Mecanum Robot, Navigation. mới đó, robot tự hành sử dụng bánh xe mecanum là một
dạng robot đó, bánh meacanum là một loại bánh xe đa
Ký hiệu hướng linh hoạt, robot được sử dụng với 4 bánh xe
mecanum, mỗi bánh xe có các con lăn đặt lệch góc 45o
Ký hiệu Đơn vị Ý nghĩa giúp robot có thể di chuyển cơ động hơn [1,2].
M,G,Q, Trong những năm gần đây, vấn đề điều khiển chuyển
Ma trận mô hình và vectơ
ξ động của robot đã thu hút đáng kể các nhà nghiên cứu,
x,xr, (m,m,ra điều đó dẫn đến sự gia tăng mạnh mẽ các vấn đề tính
Trạng thái vector
d) toán và yêu cầu tốc độ xử lý phần cứng đáp ứng các
v (m/s,m/s nhiệm vụ phức tạp hơn đối với các ứng dụng robot. Với
Điều khiển vector
,rad/s) mục đích giải quyết những thách thức này, ROS được
wi rad/s Vận tốc động cơ coi là môi trường hiệu quả cho các dự án robot. Đây là
r m Bán kính bánh xe một hệ điều hành dựa trên Linux, chịu trách nhiệm đồng
hi Vectơ hàng biến đổi bộ hóa các bộ phận của robot với nhau, thu thập dữ liệu
H,H’ Ma trận động học thuận và để thiết kế bản đồ định vị, điều hướng. Với các công cụ
nghịch đảo mạnh mẽ và thư viện được tích hợp trong ROS, người
H1 Ma trận biến đổi dùng có thể thuận tiện triển khai các dự án robot, xây
L1, L2 m Khoảng cách hình thức dựng, viết code và chạy chúng trên các máy tính.
trung tâm của robot đến Trong điều khiển chuyển động của robot tự hành bao
mỗi bánh xe gồm 2 phần chính: hệ thống lập quỹ đạo và hệ thống điều
m kg Khối lượng robot khiển bám quỹ đạo. Trong đó việc thiết kế một hệ thống
J kg.m2 Mô men quán tính có khả năng cung cấp thông tin về môi trường đã được
Fη , Tη N Lực ma sát nhớt và mô-men tập trung nghiên cứu trong [3], [4], [5] và [6]. Các
xoắn nghiên cứu này tập trung cho hệ robot nonholonomic,
Fc, Tc N Lực ma sát Coulomb và các hệ robot có bánh lái hoặc không có bánh lái. Bản đồ
mô-men xoắn hoá môi trường hoạt động và ước tính vị trí của robot
Fx, Fy, T N Lực kéo và mô-men xoắn trong môi trường (SLAM) là hai loại thông tin quan
ISBN 978-604-80-5958-3 365
- Hội nghị Quốc gia lần thứ 24 về Điện tử, Truyền thông và Công nghệ Thông tin (REV-ECIT2021)
trọng nhất khi robot hoạt động trong môi trường không
biết trước. Các kỹ thuật sử dụng xác suất robotic được
nghiên cứu để đưa ra kỹ thuật xử lý vấn đề SLAM trong
[9], [10] và [11]. Khi hệ điều hành ROS ra đời, việc xây
dựng các hệ thống robot sử dụng kỹ thuật SLAM để bản
đồ hoá và định vị ngày càng phổ biến như trong [5], [6],
[7] và [8]. Các kỹ thuật xử lý vấn đề SLAM lấy giá trị
thông tin đầu vào từ các cảm biến độ sâu, cảm biến
khoảng cách, các điểm ảnh 3D và từ đó tính toán ra các Hình 2. Cấu trúc bánh xe Mecanum
giá trị cho việc bản đồ hoá và định vị robot. Bên cạnh
Xét mô hình của bánh xe trong hình 3:
đó, các tín hiệu từ cảm biến thu về trong quá trình di
chuyển cũng được sử dụng để phát hiện những vật cản
động, vật cản bất ngờ xuất hiện. Có thể thấy việc SLAM
cho robot sử dụng bánh Mecanum là chưa có nhiều.
Từ các thông tin SLAM, việc xây dựng các thuật
toán xây dựng quỹ đạo tối ưu cho robot, hay là điều
hướng cho robot. Bài báo tập trung vào xây dựng hệ
thống điều hướng tính toán quỹ đạo toàn cục và quỹ đạo
cục bộ cho robot, kỹ thuật lập trình dựa trên phần mềm
ROS.
Bài báo trình bày về xây dựng phần cứng, mô hình
hóa, xây dựng hệ thống bản đồ hóa và định đồng thời Hình 3. Mô hình bánh xe Mecanum
SLAM cho robot, và từ bản đồ thu được từ quá trình Giả sử Robot có n bánh xe Mecanum, ma trận động
SLAM, sẽ thử nghiệm các thuật toán điều hướng chuyển học nghịch đảo được trình bày như sau
động cho robot. Phần 1 bài báo là mô hình động học, mô hi
hình động học, phần cứng robot, phần 2 là xây dựng hệ H = nx 3 (1)
bản đồ hóa và định vị, phần 3 là thử nghiệm lập trình hệ
hn
thống điều hướng cho robot trên nền tảng ROS, phần 4
là các kết quả mô phỏng và chạy thử nghiệm. Mô hình Robot sử dụng bốn bánh xe Mecanum với
cách sắp xếp như trong hình 3. Mỗi bánh xe được dẫn
II. MÔ HÌNH MECANUM ROBOT
động bởi một động cơ độc lập.
A. Mô hình động học của Mecanum Robot
Robot đa hướng sử dụng bánh xe mecanum bao gồm
4 bánh xe chủ động được gắn cố định, mỗi bánh tiêu
chuẩn cố định với các con lăn thụ động được gắn vào
chu vi bánh xe. Mỗi con lăn được đặt lệch góc 45 độ so
với trục của bánh xe chủ động [1,2].
Hình 4. Robot với 4 bánh xe Mecanum trong khung tọa
độ
Với cách sắp xếp trên hình 4, ta thu được các thông
Hình 1. Ảnh phần cứng MecanumRobot số của Robot như trong Bảng 1:
Khi động cơ truyền động cho bánh xe quay, bánh xe Bảng 1. Thông số của các bánh xe mecanum
chạy theo phương vuông góc với trục truyền động, đồng Wheel i 1 2 3 4
thời, các con lăn dọc theo ngoại vi của bánh xe chạy tự 𝛾𝑖 − / 4 /4 − / 4 /4
do quanh trục tương ứng. Các con lăn của bánh xe có Do đó, ma trận động học nghịch đảo như sau:
dạng hình trụ, biến đổi một phần lực lái của một bánh xe
thành lực trượt của nó và sau đó tạo ra tổng hợp tốc độ 1 −1 − L1 − L2
v
và hướng tương ứng của mỗi bánh xe, kết quả đảm bảo 1 1 1 L1 + L2 x
u = H v = vy (2)
chuyển động cần thiết của Robot theo bất kỳ hướng nào. r 1 −1 L1 + L2
1 1 − L1 − L2
ma trận động học thuận là:
ISBN 978-604-80-5958-3 366
- Hội nghị Quốc gia lần thứ 24 về Điện tử, Truyền thông và Công nghệ Thông tin (REV-ECIT2021)
xây dựng bản đồ SLAM là một trong những vấn đề quan
1 1 1 1 trọng nhất và đóng vai trò then chốt trong điều hướng
r robot. Vì vậy đã thu hút được sự quan tâm lớn của đông
H = −1 1 −1 1 (3) đảo các nhà khoa học. Vấn đề SLAM được mô tả tổng
4
− 1 1 1 1 quát trong quá trình khi robot di chuyển để lập bản đồ
−
L1 + L2 L1 + L2 L1 + L2 L1 + L2 những nơi con người không thể hoặc không muốn tiếp
cận, đồng thời robot tự xác định được vị trí của nó so
Trong đó xác định là vị trí của Robot trong khung
với những đối tượng xung quanh. Kỹ thuật SLAM sẽ
tọa độ. Ta thu được:
cung cấp thông tin bản đồ về môi trường đồng thời sử
x cos − sin 0 dụng bản đồ này ước tính tư thế riêng (vị trí và hướng)
x = y = sin cos 0 v = H1v (4) của robot dựa vào các tín hiệu thu được từ các cảm biến
0 0
1 tầm nhìn bao gồm Rplidar và 3D camera.
Để thực hiện SLAM, chúng tôi sử dụng gói
B. Cấu trúc phần cứng của Mecanum Robot
Gmapping cho mecanum robot. Bằng việc thu các dữ
liệu từ RPLidar, Astra camera và chyển đổi Deep to
Laser với cấu trúc các phần như hình 6.
Gói Gmapping ước tính vị trí của Robot và xây
dựng bản đồ dựa trên dữ liệu thu được và các phép đo
hình học của nó.
✓ Thư viện TF được thiết kế và cung cấp các tiêu
chuẩn để theo dõi các khung tọa độ và chuyển đổi dữ
liệu trong toàn bộ hệ thống.
✓ RPLidar: node này thực hiện chạy cảm biến
RPLidar và gửi thông tin “scan” cần thiết cho SLAM
Hình 5. Cấu trúc phần cứng của Mecanum Robot đến node Gmapping.
Mô hình Robot được xây dựng với 3 thành phần ✓ Teleop: node này là thuật toán điều khiển để
chính: Phần xử lý trung tâm, phần cảm biến và phần Robot có thể di chuyển theo ý muốn của người dùng.
điều khiển cơ cấu chấp hành. Về cấu trúc bộ phận di Sau đó tiến hành gửi vận tốc góc và vận tốc di chuyển
chuyển là 4 bánh xe mecanum giúp việc di chuyển linh cho core dựa trên tín hiệu thu được.
hoạt và dễ dàng hơn. Máy tính nhúng Jetson TX2 đóng ✓ Core: node này nhận được vận tốc di chuyển và
vai trò là bộ xử lý trung tâm được cài đặt hệ điều hành vận tốc góc. Trong khi Publishes “odom”, đó là tư thế
ROS cùng với các node tính toán thuật toán SLAM và được đo và ước tính của Robot. Bên cạnh đó còn
điều hướng. Sau khi tính toán xong, Jetson TX2 gửi publishes tọa độ của robot đã được chuyển đổi theo thứ
lệnh điều khiển cho bộ phận điều khiển cơ cấu chấp tự:
✓ OdomBase_footprintBase_linkBase_sca
hành là mạch STM32. RPLidar quét laser 360o giúp
n. Sau đó những dữ liệu này sẽ được gửi đến topIC tf.
Robot xây dựng bản đồ và nhận diện vật cản tầm cao
✓ Gmapping: node này sẽ tạo ra bản đồ dựa trên
với khoảng cách xa. Astra Camera sử dụng Deep
thông tin đo đạc khoảng cách từ tín hiệu laser scan và
Camera giúp nhận diện vật cản tầm trung và tầm thấp ở
thông tin từ topIC tf, đó là tư thế của Robot.
phía trước Robot.
✓ Map_server: node này tiến hành tạo file
III. SLAM - BẢN ĐỒ HÓA VÀ ĐỊNH VỊ ĐỒNG “map.gpm” và file “map.yaml”, 2 file này chứa các
THỜI CHO ROBOT thông tin của bản đồ thu được.
IV. HỆ THỐNG ĐIỀU HƯỚNG MECANUM
ROBOT
Hệ thống điều hướng cho robot phải đảm bảo được
nó có thể di chuyển tự động và an toàn trong môi trường
thực tế, tránh các vật cản động cũng như vật cản tĩnh
của môi trường trong suốt quá trình di chuyển, đồng
thời phải bám sát quỹ đạo từ vị trí ban đầu đến vị trí
mong muốn trong môi trường. Vị trí đích chỉ có thể
được đặt trong vùng môi trường đã xác định.
Hệ thống điều hướng cho robot bao gồm 2 phần
chính là phần lập quỹ đạo toàn cục (Global planner) và
Hình 6. Sơ đồ tín hiệu xây dựng bản đồ, định vị và điều lập quỹ đạo cục bộ (Local planner). Việc xây dựng quỹ
hướng robot đạo cục bộ cho robot dựa vào các dữ liệu bên ngoài
Trong lĩnh vực robotics, vấn đề định vị đồng thời được đọc về từ các cảm biến qua đó robot có thể phát
ISBN 978-604-80-5958-3 367
- Hội nghị Quốc gia lần thứ 24 về Điện tử, Truyền thông và Công nghệ Thông tin (REV-ECIT2021)
hiện và tránh các chướng ngại vật đồng thời bám theo ✓ Lidar: node giao tiếp với lidar, xuất ra dữ liệu
quỹ đạo đặt được sinh ra từ bản đồ toàn cục. laser scan với topic /laser_scan
A. Lập quỹ đạo toàn cục ✓ 3D camera: node giao tiếp với camera 3D, xuất
Phần lập quỹ đạo toàn cục cho robot sử dụng thông ra dữ liệu các điểm đám mây 3D với topic /point_cloud
tin về bản đồ môi trường, vị trí robot từ hệ thống nhận ✓ Map: bản đồ hoá môi trường, thu dữ liệu từ lidar
thức hay là kỹ thuật SLAM được sử dụng. Trước tiên, /laser_scan và xuất ra bản đồ 2D môi trường robot hoạt
robot cần xác định được vị trí của nó trong bản đồ tại động với topic /map
thời điểm hiện tại. Lúc này robot sẽ có những nhận thức ✓ Global costmap: bản đồ có giá trị ảnh hưởng đến
về môi trường xung quanh, đặc biệt là bản đồ bao gồm việc điều hướng robot trong toàn bộ bản đồ, nhận dữ
những vật cản tĩnh đã xác định được ở hệ thống nhận liệu từ bản đồ thu được /map và vật cản tĩnh môi trường
thức. Tiếp đến, vị trí đích được xác định và được đặt trong bản đồ /obstacle, xuất ra dữ liệu trực tiếp đến node
trong vùng phạm vi đã xác định của bản đồ. Từ đó, các Global planner
thuật toán tính toán quỹ đạo sẽ tính toán để đảm bảo ✓ Local costmap: bản đồ có giá trị ảnh hưởng đến
robot có thể di chuyển tới vị trí đích với quỹ đạo ngắn việc điều hướng robot trong phạm vi một vùng hình
nhất. vuông xung quanh robot, nhận dữ liệu từ vật cản động
Phần lập quỹ đạo toàn cục được thiết kế sử dụng và vật cản tĩnh /obstacle, xuất ra dữ liệu trực tiếp đến
thuật toán A* [11] dựa trên nền tảng ROS. node Local planner
Phần lập quỹ đạo toàn cục sẽ tính toán ra quỹ đạo ✓ Global planner: lập quỹ đạo toàn cục từ vị trí
ngắn nhất cho robot từ vị trí hiện tại tới vị trí đích trong hiện tại của robot đến vị trí đích, nhận dữ liệu từ vị trí
khi đảm bảo robot có thể tránh được vật cản cố định robot /pose và vị trí đích /goal. Quỹ đạo này được dùng
trong bản đồ. Tuy nhiên, nó không xét đến những ràng làm tham chiếu cho node Local planner
buộc động học của mô hình robot. Do đó, quỹ đạo toàn ✓ Local planner: lập quỹ đạo cục bộ, điều chỉnh
cục không phải là quỹ đạo trực tiếp đặt cho robot mà nó quỹ đạo phù hợp cho robot, nhận dữ liệu từ local
chỉ được sử dụng làm quỹ đạo tham chiếu cho phần lập costmap và tham chiếu quỹ đạo toàn cục.
quỹ đạo cục bộ. V. KẾT QUẢ MÔ PHỎNG VÀ CHẠY THỬ
B. Lập quỹ đạo cục bộ NGHIỆM
Quỹ đạo toàn cục được đưa ra bởi phần lập đường
đi toàn cục sẽ được đưa vào làm quỹ đạo tham chiếu A. Kết quả mô phỏng
cho phần lập quỹ đạo cục bộ để đảm bảo robot có thể di Phần mềm mô phỏng Gazebo được tích hợp để có
chuyển tới vị trí đích. Hơn nữa, phần lập quỹ đạo cục thể sử dụng trong ROS. Môi trường trong Gazebo được
bộ sẽ xét đến cả những ràng buộc động học của robot tối ưu sao cho các điều kiện vật lý giống với môi trường
như là những giới hạn về vận tốc và gia tốc. thực tế nhất. Mô hình robot bốn bánh mecanum được
Một trong những thuật toán nổi bật cho việc lập quỹ xây dựng như hình 7, với các tham số mô phỏng và thực
cục bộ cho robot là thuật toán dải đàn hồi thời gian TEB nghiệm giống nhau:
[11]. Thuật toán TEB là một phương pháp tránh vật cản - Tốc độ lớn nhất theo phương x và y: 1.5 m/s
thời gian thực cho việc tối ưu quỹ đạo cục bộ. Phần lập - Tốc độ góc lớn nhất: 0.5 rad/s
quỹ đạo cục bộ sử dụng TEB sẽ tối ưu cục bộ quỹ đạo - Bán kính robot: 0.40 m
của robot, giảm thiểu thời gian di chuyển, đảm bảo - Bán kính bánh xe: 0.15 m
robot tránh vật cản trong khi di chuyển và có xét tới các - Tham số cho cảm biến lidar: Phạm vi quét lớn
o
nhất: 0.2 ÷10 m, Độ phân giải: 1 , Góc quét: 360
o
ràng buộc động học như là vận tốc và gia tốc.
C. Lập trình hệ thống điều hướng cho mecanum robot
trên ROS
Hình 8. Xây dựng mô hình robot mecanum trên ROS
Mô hình mô phỏng 3D được xây dựng mô phỏng lại
mô hình thực tế của robot với 4 bánh mecanum đa
Hình 7. Cấu trúc hệ thống điều hướng trên ROS hướng đặt xung quanh cách đều nhau (hình 8). Rplidar
được đặt ở trên cùng để quét 360 độ các giá trị đến vật
Cấu trúc hệ thống lập quỹ đạo được thiết kế gồm 2 cản môi trường xung quanh. Bên cạnh đó là môi trường
phần chính: lập quỹ đạo toàn cục và lập quỹ đạo cục bộ 3D được xây dựng để tiến hành mô phỏng hệ thống điều
(hình 7). Trong hệ thống này bao gồm các node chính:
ISBN 978-604-80-5958-3 368
- Hội nghị Quốc gia lần thứ 24 về Điện tử, Truyền thông và Công nghệ Thông tin (REV-ECIT2021)
hướng cho robot. đỏ, khi quỹ đạo toàn cục đã được tạo ra thì quỹ đạo cục
Quá trình SLAM để lấy bản đồ môi trường hoạt bộ sẽ chuyển con đường này thành các lệnh vận tốc cho
động chúng tôi sử dụng gói Gmapping cho mecanum động cơ robot. Khi robot đi tới một góc tường, nhận
robot (như đã trình bày tại mục III) bằng việc thu các thấy có khả năng robot sẽ va chạm với vật cản này, phần
dữ liệu từ RPLidar, Astra camera. Quá trình chạy mô lập quỹ đạo cục bộ ngay lập tức điều chỉnh lại quỹ đạo
phỏng, thử nghiệm được thể hiện trên hình 9. cho robot. Quỹ đạo này khiến robot di chuyển vòng xa
góc tường hơn nhưng vẫn đảm bảo bám sát tới quỹ đạo
toàn cục.
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. Costmap sử dụng thông
tin từ cảm biến tạo ra bản đồ cục bộ xung quanh Robot
Omni. Khối lập quỹ dạo cục bộ căn cứ vào vật cản gặp
phải và thuật toán TEB sẽ cho ra kế hoạch di chuyển với
khoảng cách có thể thay đổi, ở đây khoảng cách được
chọn là 0,5m. Như trong hình 11,12 thì sau khi tránh vật
cản thì Robot sẽ có thể lại di chuyển theo con đường
mong muốn trong thời gian ngắn và đi tới mục tiêu.
Hình 9. Quá trình SLAM và lấy bản đồ môi trường hoạt
động cho mecanum robot
Quá trình tiếp theo là điều hướng chuyển động cho
robot, tính toán quỹ đạo sao cho robot di chuyển tới vị
trí đích bất kì được đặt trước trên bản đồ và đồng thời
tránh được vật cản trong quá trình di chuyển.
Hình 11. Robot tránh vật cản xuất hiện khi di chuyển
Hình 10. Tính toán quỹ đạo di chuyển tối ưu cho robot
Hình 10 cho thấy việc hệ thống điều hướng tính toán
quỹ đạo cho robot di chuyển tới điểm địch. Hệ thống
điều hướng sẽ tính toán 2 loại quỹ đạo. Đường màu đỏ
là quỹ đạo toàn cục cho robot, đây là quỹ đạo được tính
toán sao cho nó là quỹ đạo ngắn nhất từ vị trí hiện tại
của robot tới đich. Quỹ đạo cục bộ là đường màu xanh
là quỹ đạo đặt cho việc điều khiển hệ thống robot. Quỹ
Hình 12. Robot tránh vật cản xuất hiện khi di chuyển
đạo này sẽ điều chỉnh quỹ đạo của robot sao cho robot
có thể di chuyển an toàn, tránh va chạm mà vẫn đảm Kịch bản thử nghiệm thứ 2 là khi vật cản thấp hơn
bảo robot tiến tới vị trí đích. Khi robot đi tới một góc vùng quét của lidar, lúc này tín hiệu laser scan từ lidar
tường, nhận thấy có khả năng robot sẽ va chạm với vật không thể nhận dạng được vật cản. Khi đó, dữ liệu point
cản này, phần lập quỹ đạo cục bộ ngay lập tức điều cloud 3D thu được từ Astra camera sẽ thay thế tín hiệu
chỉnh lại quỹ đạo cho robot. Quỹ đạo này khiến robot laser scan để phát hiện vật cản này, đưa nó vào phần
di chuyển vòng xa góc tường hơn nhưng vẫn đảm bảo phát hiện vật cản của hệ thống nhận thức. Tiếp đến,
nó hướng tới quỹ đạo toàn cục phần lập quỹ đạo cục bộ sẽ tính toán và đưa ra quỹ đạo
B. Mô phỏng với vật cản phù hợp cho robot để tránh được các loại vật cản này,
Để kiểm chứng khả năng linh hoạt của robot trong thể hiện tại đường màu xanh. Sau khi vượt qua vật cản,
việc tránh vật cản, robot được thử nghiệm trong tình đường quỹ đạo cục bộ sẽ được tự động tính toán và hợp
huống có vật cản động. nhất với đường quỹ đạo toàn cục đã tính.
Hình 11,12 thể hiện chuyển động của robot trong
khi có vật cản. Trong hình thể hiện 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 đích thể hiện qua con đường màu
ISBN 978-604-80-5958-3 369
- Hội nghị Quốc gia lần thứ 24 về Điện tử, Truyền thông và Công nghệ Thông tin (REV-ECIT2021)
Machine Vision, vol. 10341 (2016).
[6] Z. e. a. An, "Development of Mobile Robot
SLAM Based on ROS," International Journal of
Mechanical Engineering and Robotics Research,
(2016), pp. 47-51.
[7] R. e. a. Giubilato, "An evaluation of ROS-
compatible stereo visual SLAM methods on a
nVidia Jetson TX2," Measurement, (2019), pp.
161-170.
[8] R. N. a. M. K. B. Darmanin, "Autonomous
Exploration and Mapping using a Mobile Robot
Running ROS," ICINCO, 2016.
Hình 13. Robot tránh vật cản với các kích thước khác nhau [9] R. K. e. a. Megalingam, "ROS based autonomous
indoor navigation simulation using SLAM
algorithm," Int. J. Pure Appl. Math, (2018), pp.
VI. KẾT LUẬN 199-205.
Bài báo trình bày về xây dựng phần cứng, mô hình [10] P. e. a. Marin-Plaza, "Global and local path
hóa, xây dựng hệ thống bản đồ hóa và định đồng thời planning study in a ROS-based research platform
SLAM cho robot đa hướng sử dụng loại bánh xe for autonomous vehicles," Journal of Advanced
Mecanum và từ bản đồ thu được từ quá trình SLAM, Transportation, (2018).
xây dựng các thuật toán điều hướng chuyển động cho [11] C. F. H. a. T. B. Rösmann, "Online trajectory
robot trong môi trường phẳng không xác định, sử dụng planning in ROS under kinodynamic constraints
công cụ lập trình là hệ điều hành cho robot ROS. Từ các with timed-elastic-bands," Robot Operating
thông tin về bản đồ môi trường, vị trí của robot và vật System (ROS). Springer, Cham, (2017), pp. 231-
cản (SLAM), hệ thống điều hướng tính toán quỹ đạo 261.
toàn cục sử dụng thuật toán A* và tính toán quỹ đạo cục
bộ cho robot có sử dụng thuật toán TEB. Các kết quả
mô phỏng, thử nghiệm đã cho thấy tính hiệu quả thực
tế của hệ thống điều hướng đã xây dựng cho robot đa
hướng sử dụng loại bánh xe Mecanum.
LỜI CẢM ƠN
Bài báo này được hoàn thành với sự tài trợ của Đề
tài cấp Quốc gia thuộc chương trình phát triển Vật lý
2021-2025: "Nghiên cứu phát triển robot tự hành thông
minh sử dụng các công nghệ sensor khác nhau và nền
tảng IoT, AI, định hướng ứng dụng trong quan trắc môi
trường phóng xạ", 2022-2024.
TÀI LIỆU THAM KHẢO
[1] I. Zeidis and K. Zimmermann, “Dynamics of a
four-wheeled mobile robot with Mecanum
wheels,” ZAMM Zeitschrift fur Angew. Math. und
Mech. 26 October 2019
[2] H. Taheri, B. Qiao and N. Ghaeminezhad,
“Kinematic Model of a Four Mecanum Wheeled
Mobile Robot,” Int. J. Comput. Appl. No. 3,
March 2015
[3] R. L. e. a. Guimarães, "ROS navigation: Concepts
and tutorial," Springer, Cham, (2016), pp. 121-
160.
[4] A. a. P. A. Pajaziti, "SLAM–map building and
navigation via ROS," International Journal of
Intelligent Systems and Applications in
Engineering, vol. 2(4) (2014), pp. 71-75.
[5] A. I. A. a. E. M. Buyval, "Comparative analysis of
ROS-based monocular SLAM methods for indoor
navigation," Ninth International Conference on
ISBN 978-604-80-5958-3 370
nguon tai.lieu . vn