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.
Email: ,
2
Viện Vật lý, Viện Hàn lâm Khoa học và Công nghệ Việt Nam
Email:
3
Trường Đại học Công nghiệp Hà Nội
Email: , ,
1
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ừ q trình
SLAM. Thử nghiệm các thuật tốn điều hướng chuyển
động cho robot trong môi trường phẳng không xác định,
sử dụng cơng cụ lập trình là hệ điều hành cho robot (Robot
Operating System - ROS). Từ các thông tin về bản đồ mơi
trường, vị trí của robot và vật cản (Simultaneous
Localization and Mapping - SLAM) để tính tốn quỹ đạo
cho robot trong hệ thống điều hướng. Hệ thống điều
hướng tính tốn quỹ đạo tồn cục sử dụng thuật tốn A*
và tính tốn quỹ đạo cục bộ cho robot có sử dụng thuật
tốn TEB. Các kết quả mơ phỏng và đặc biệt chạy 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.
I. GIỚI THIỆU
Trong công nghiệp Robot tự hành là một lĩnh vực
thu hút được nhiều sự chú ý của cộng đồng khoa học bởi
vai trị quan trọng của nó trong cuộc sống hàng ngày,
cũng như trong công việc sản xuất và các dây chuyền tự
động tại các nhà máy cơng nghiệp. Ngồi việc tâp trung
vào các thuật toán và phương pháp điều khiển Robot tự
hành hoạt động chính xác cao, thời gian thực và hoạt
động thích nghi trước những nhiễu bất định của mơi
trường, thì việc thay đổi cơ cấu chuyển động như sử
dụng nhiều cấu trúc tiên tiến của các bánh xe truyền
động đã được nghiên cứu và chế tạo để giúp robot có thể
di chuyển nhanh nhẹn, linh hoạt hơn. Trong các cơ cấu
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
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
giúp robot có thể di chuyển cơ động hơn [1,2].
Trong những năm gần đây, vấn đề điều khiển chuyển
động của robot đã thu hút đáng kể các nhà nghiên cứu,
điều đó dẫn đến sự gia tăng mạnh mẽ các vấn đề tính
tốn và u cầu tốc độ xử lý phần cứng đáp ứng các
nhiệm vụ phức tạp hơn đối với các ứng dụng robot. Với
mục đích giải quyết những thách thức này, ROS được
coi là môi trường hiệu quả cho các dự án robot. Đây là
một hệ điều hành dựa trên Linux, chịu trách nhiệm đồng
bộ hóa các bộ phận của robot với nhau, thu thập dữ liệu
để thiết kế bản đồ định vị, điều hướng. Với các cơng cụ
mạnh mẽ và thư viện được tích hợp trong ROS, người
dùng có thể thuận tiện triển khai các dự án robot, xây
dựng, viết code và chạy chúng trên các máy tính.
Trong điều khiển chuyển động của robot tự hành bao
gồm 2 phần chính: hệ thống lập quỹ đạo và hệ thống điều
khiển bám quỹ đạo. Trong đó việc thiết kế một hệ thống
có khả năng cung cấp thông tin về môi trường đã được
tập trung nghiên cứu trong [3], [4], [5] và [6]. Các
nghiên cứu này tập trung cho hệ robot nonholonomic,
các hệ robot có bánh lái hoặc khơng có bánh lái. Bản đồ
hố mơi trường hoạt động và ước tính vị trí của robot
trong mơi trường (SLAM) là hai loại thông tin quan
Keywords: Robot Operating System (ROS), GAZEBO,
RVIZ, Simultaneous Localization and Mapping (SLAM),
Mecanum Robot, Navigation.
Ký hiệu
Ký hiệu
M,G,Q,
ξ
x,xr,
v
wi
r
hi
H,H’
Đơn vị
Ý nghĩa
Ma trận mơ hình và vectơ
(m,m,ra
d)
(m/s,m/s
,rad/s)
rad/s
m
H1
L1, L2
m
m
J
Fη , Tη
kg
kg.m2
N
Fc, Tc
N
Fx, Fy, T
N
ISBN 978-604-80-5958-3
Trạng thái vector
Điều khiển vector
Vận tốc động cơ
Bán kính bánh xe
Vectơ hàng biến đổi
Ma trận động học thuận và
nghịch đảo
Ma trận biến đổi
Khoảng cách hình thức
trung tâm của robot đến
mỗi bánh xe
Khối lượng robot
Mô men quán tính
Lực ma sát nhớt và mơ-men
xoắn
Lực ma sát Coulomb và
mơ-men xoắn
Lực kéo và mô-men xoắn
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 tốn ra các
giá trị cho việc bản đồ hoá và định vị robot. Bên cạnh
đó, 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 tố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
SLAM cho robot, và từ bản đồ thu được từ quá trình
SLAM, sẽ thử nghiệm các thuật toán điều hướng chuyển
động cho robot. Phần 1 bài báo là mơ hình động học, mơ
hình động học, phần cứng robot, phần 2 là xây dựng hệ
bản đồ hóa và định vị, phần 3 là thử nghiệm lập trình hệ
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.
Hình 2. Cấu trúc bánh xe Mecanum
Xét mơ hình của bánh xe trong hình 3:
Hình 3. Mơ hình bánh xe Mecanum
Giả sử Robot có n bánh xe Mecanum, ma trận động
học nghịch đảo được trình bày như sau
hi
(1)
H = nx 3
hn
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
động bởi một động cơ độc lập.
II. MƠ HÌNH MECANUM ROBOT
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
số của Robot như trong Bảng 1:
Bảng 1. Thông số của các bánh xe mecanum
Wheel i
1
2
3
4
𝛾𝑖
− / 4
− / 4
/4
/4
Do đó, ma trận động học nghịch đảo như sau:
1 −1 − L1 − L2
v
L1 + L2 x
1 1 1
vy
u = H v =
(2)
r 1 −1 L1 + L2
1 1 − L1 − L2
ma trận động học thuận là:
Hình 1. Ảnh phần cứng MecanumRobot
Khi động cơ truyền động cho bánh xe quay, bánh xe
chạy theo phương vng góc với trục truyền động, đồng
thời, các con lăn dọc theo ngoại vi của bánh xe chạy tự
do quanh trục tương ứng. Các con lăn của bánh xe có
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 độ
và hướng tương ứng của mỗi bánh xe, kết quả đảm bảo
chuyển động cần thiết của Robot theo bất kỳ hướng nào.
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
trọng nhất và đóng vai trị then chốt trong điều hướng
robot. Vì vậy đã thu hút được sự quan tâm lớn của đông
đảo các nhà khoa học. Vấn đề SLAM được mô tả tổng
quát trong quá trình khi robot di chuyển để lập bản đồ
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
với những đối tượng xung quanh. Kỹ thuật SLAM sẽ
cung cấp thông tin bản đồ về môi trường đồng thời sử
dụng bản đồ này ước tính tư thế riêng (vị trí và hướng)
của robot dựa vào các tín hiệu thu được từ các cảm biến
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
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
đến node Gmapping.
✓ Teleop: node này là thuật tốn điều khiển để
Robot có thể di chuyển theo ý muốn của người dùng.
Sau đó tiến hành gửi vận tốc góc và vận tốc di chuyển
cho core dựa trên tín hiệu thu được.
✓ Core: node này nhận được vận tốc di chuyển và
vận tốc góc. Trong khi Publishes “odom”, đó là tư thế
được đo và ước tính của Robot. Bên cạnh đó cịn
publishes tọa độ của robot đã được chuyển đổi theo thứ
tự:
✓ OdomBase_footprintBase_linkBase_sca
n. Sau đó những dữ liệu này sẽ được gửi đến topIC tf.
✓ Gmapping: node này sẽ tạo ra bản đồ dựa trên
thông tin đo đạc khoảng cách từ tín hiệu laser scan và
thơng tin từ topIC tf, đó là tư thế của Robot.
✓ Map_server: node này tiến hành tạo file
“map.gpm” và file “map.yaml”, 2 file này chứa các
thông tin của bản đồ thu được.
1
1
1
1
r
H = −1
1
−1
1
(3)
4
1
1
1
− 1
−
L1 + L2 L1 + L2 L1 + L2
L1 + L2
Trong đó xác định là vị trí của Robot trong khung
tọa độ. Ta thu được:
x cos − sin 0
(4)
x = y = sin cos 0 v = H1v
0
0
1
B. Cấu trúc phần cứng của Mecanum Robot
Hình 5. Cấu trúc phần cứng của Mecanum Robot
Mơ hình Robot được xây dựng với 3 thành phần
chính: Phần xử lý trung tâm, phần cảm biến và phần
điều khiển cơ cấu chấp hành. Về cấu trúc bộ phận di
chuyển là 4 bánh xe mecanum giúp việc di chuyển linh
hoạt và dễ dàng hơn. Máy tính nhúng Jetson TX2 đóng
vai trị là bộ xử lý trung tâm được cài đặt hệ điều hành
ROS cùng với các node tính tốn thuật tốn SLAM và
điều hướng. Sau khi tính tốn xong, Jetson TX2 gửi
lệnh điều khiển cho bộ phận điều khiển cơ cấu chấp
hành là mạch STM32. RPLidar quét laser 360o giúp
Robot xây dựng bản đồ và nhận diện vật cản tầm cao
với khoảng cách xa. Astra Camera sử dụng Deep
Camera giúp nhận diện vật cản tầm trung và tầm thấp ở
phía trước Robot.
III. SLAM - BẢN ĐỒ HÓA VÀ ĐỊNH VỊ ĐỒNG
THỜI CHO ROBOT
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 tồ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à
lập quỹ đạo cục bộ (Local planner). Việc xây dựng quỹ
đạo cục bộ cho robot dựa vào các dữ liệu bên ngoài
được đọc về từ các cảm biến qua đó robot có thể phát
Hình 6. Sơ đồ tín hiệu xây dựng bản đồ, định vị và điều
hướng robot
Trong lĩnh vực robotics, vấn đề định vị đồng thời
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)
✓ Lidar: node giao tiếp với lidar, xuất ra dữ liệu
laser scan với topic /laser_scan
✓ 3D camera: node giao tiếp với camera 3D, xuất
ra dữ liệu các điểm đám mây 3D với topic /point_cloud
✓ Map: bản đồ hố mơi trường, thu dữ liệu từ lidar
/laser_scan và xuất ra bản đồ 2D môi trường robot hoạt
động với topic /map
✓ Global costmap: bản đồ có giá trị ảnh hưởng đến
việc điều hướng robot trong toàn bộ bản đồ, nhận dữ
liệu từ bản đồ thu được /map và vật cản tĩnh môi trường
trong bản đồ /obstacle, xuất ra dữ liệu trực tiếp đến node
Global planner
✓ Local costmap: bản đồ có giá trị ảnh hưởng đến
việc điều hướng robot trong phạm vi một vùng hình
vng xung quanh robot, nhận dữ liệu từ vật cản động
và vật cản tĩnh /obstacle, xuất ra dữ liệu trực tiếp đến
node Local planner
✓ Global planner: lập quỹ đạo toàn cục từ vị trí
hiện tại của robot đến vị trí đích, nhận dữ liệu từ vị trí
robot /pose và vị trí đích /goal. Quỹ đạo này được dùng
làm tham chiếu cho node Local planner
✓ Local planner: lập quỹ đạo cục bộ, điều chỉnh
quỹ đạo phù hợp cho robot, nhận dữ liệu từ local
costmap và tham chiếu quỹ đạo toàn cục.
hiện và tránh các chướng ngại vật đồng thời bám theo
quỹ đạo đặt được sinh ra từ bản đồ toàn cục.
A. Lập quỹ đạo toàn cục
Phần lập quỹ đạo toàn cục cho robot sử dụng thơng
tin về bản đồ mơi trường, vị trí robot từ hệ thống nhận
thức hay là kỹ thuật SLAM được sử dụng. Trước tiên,
robot cần xác định được vị trí của nó trong bản đồ tại
thời điểm hiện tại. Lúc này robot sẽ có những nhận thức
về mơi trường xung quanh, đặc biệt là bản đồ bao gồm
những vật cản tĩnh đã xác định được ở hệ thống nhận
thức. Tiếp đến, vị trí đích được xác định và được đặt
trong vùng phạm vi đã xác định của bản đồ. Từ đó, các
thuật tốn tính tốn quỹ đạo sẽ tính tốn để đảm bảo
robot có thể di chuyển tới vị trí đích với quỹ đạo ngắn
nhất.
Phần lập quỹ đạo tồn cục được thiết kế sử dụng
thuật toán A* [11] dựa trên nền tảng ROS.
Phần lập quỹ đạo tồn cục sẽ tính tốn ra quỹ đạo
ngắn nhất cho robot từ vị trí hiện tại tới vị trí đích trong
khi đảm bảo robot có thể tránh được vật cản cố định
trong bản đồ. Tuy nhiên, nó khơng xét đến những ràng
buộc động học của mơ hình robot. Do đó, quỹ đạo tồn
cục khơng phải là quỹ đạo trực tiếp đặt cho robot mà nó
chỉ được sử dụng làm quỹ đạo tham chiếu cho phần lập
quỹ đạo cục bộ.
B. Lập quỹ đạo cục bộ
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
cho phần lập quỹ đạo cục bộ để đảm bảo robot có thể di
chuyển tới vị trí đích. Hơn nữa, phần lập quỹ đạo cục
bộ sẽ xét đến cả những ràng buộc động học của robot
như là những giới hạn về vận tốc và gia tốc.
Một trong những thuật toán nổi bật cho việc lập quỹ
cục bộ cho robot là thuật toán dải đàn hồi thời gian TEB
[11]. Thuật toán TEB là một phương pháp tránh vật cản
thời gian thực cho việc tối ưu quỹ đạo cục bộ. Phần lập
quỹ đạo cục bộ sử dụng TEB sẽ tối ưu cục bộ quỹ đạo
của robot, giảm thiểu thời gian di chuyển, đảm bảo
robot tránh vật cản trong khi di chuyển và có xét tới các
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
V. KẾT QUẢ MÔ PHỎNG VÀ CHẠY THỬ
NGHIỆM
A. Kết quả mô phỏng
Phần mềm mô phỏng Gazebo được tích hợp để có
thể sử dụng trong ROS. Mơi trường trong Gazebo được
tối ưu sao cho các điều kiện vật lý giống với mơi trường
thực tế nhất. Mơ hình robot bốn bánh mecanum được
xây dựng như hình 7, với các tham số mô phỏng và thực
nghiệm giống nhau:
- Tốc độ lớn nhất theo phương x và y: 1.5 m/s
- Tốc độ góc lớn nhất: 0.5 rad/s
- Bán kính robot: 0.40 m
- Bán kính bánh xe: 0.15 m
- Tham số cho cảm biến lidar: Phạm vi quét lớn
o
o
nhất: 0.2 ÷10 m, Độ phân giải: 1 , Góc qt: 360
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ướ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ản môi trường xung quanh. Bên cạnh đó là mơi trường
3D được xây dựng để tiến hành mơ phỏng hệ thống điều
Hình 7. Cấu trúc hệ thống điều hướng trên ROS
Cấu trúc hệ thống lập quỹ đạo được thiết kế gồm 2
phần chính: lập quỹ đạo tồn cục và lập quỹ đạo cục bộ
(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.
Quá trình SLAM để lấy bản đồ mơi trường hoạt
động chúng tơi sử dụng gói Gmapping cho mecanum
robot (như đã trình bày tại mục III) bằng việc thu các
dữ liệu từ RPLidar, Astra camera. Q trình chạy mơ
phỏng, thử nghiệm được thể hiện trên hình 9.
đỏ, khi quỹ đạo tồn cục đã được tạo ra thì 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. Khi robot đi tới một góc tường, nhận
thấy có khả năng robot sẽ va chạm với vật cản này, phần
lập quỹ đạo cục bộ ngay lập tức điều chỉnh lại quỹ đạo
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
Q trình tiếp theo là điều hướng chuyển động cho
robot, tính tố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 tố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 tốn
quỹ đạo cho robot di chuyển tới điểm địch. Hệ thống
điều hướng sẽ tính tố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
tố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ỹ
đạ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
bảo robot tiến tới vị trí đích. Khi robot đi tới một góc
tường, nhận thấy có khả năng robot sẽ va chạm với vật
cản này, phần lập quỹ đạo cục bộ ngay lập tức điều
chỉnh lại quỹ đạo 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
nó hướng tới quỹ đạo tồn cục
B. Mơ phỏng với vật cản
Để kiểm chứng khả năng linh hoạt của robot trong
việc tránh vật cản, robot được thử nghiệm trong tình
huống có vật cản động.
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
Hình 12. Robot tránh vật cản xuất hiện khi di chuyển
Kịch bản thử nghiệm thứ 2 là khi vật cản thấp hơn
vùng quét của lidar, lúc này tín hiệu laser scan từ lidar
khơng thể nhận dạng được vật cản. Khi đó, dữ liệu point
cloud 3D thu được từ Astra camera sẽ thay thế tín hiệu
laser scan để phát hiện vật cản này, đưa nó vào phần
phát hiện vật cản của hệ thống nhận thức. Tiếp đến,
phần lập quỹ đạo cục bộ sẽ tính tốn và đưa ra quỹ đạo
phù hợp cho robot để tránh được các loại vật cản này,
thể hiện tại đường màu xanh. Sau khi vượt qua vật cản,
đường quỹ đạo cục bộ sẽ được tự động tính tốn và hợp
nhất với đường quỹ đạo tồn cục đã tính.
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).
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 ROScompatible 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.
[9] R. K. e. a. Megalingam, "ROS based autonomous
indoor navigation simulation using SLAM
algorithm," Int. J. Pure Appl. Math, (2018), pp.
199-205.
[10] P. e. a. Marin-Plaza, "Global and local path
planning study in a ROS-based research platform
for autonomous vehicles," Journal of Advanced
Transportation, (2018).
[11] C. F. H. a. T. B. Rösmann, "Online trajectory
planning in ROS under kinodynamic constraints
with timed-elastic-bands," Robot Operating
System (ROS). Springer, Cham, (2017), pp. 231261.
[6]
Hình 13. Robot tránh vật cản với các kích thước khác nhau
VI. KẾT LUẬN
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
SLAM cho robot đa hướng sử dụng loại bánh xe
Mecanum và từ bản đồ thu được từ quá trình SLAM,
xây dựng các thuật tốn điều hướng chuyển động cho
robot trong môi trường phẳng không xác định, sử dụng
công cụ lập trình là hệ điều hành cho robot ROS. Từ các
thơng tin về bản đồ mơi trường, vị trí của robot và vật
cản (SLAM), hệ thống điều hướng tính tốn quỹ đạo
tồn cục sử dụng thuật tốn A* và tính tốn quỹ đạo cục
bộ cho robot có sử dụng thuật tố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
[2]
[3]
[4]
[5]
four-wheeled mobile robot with Mecanum
wheels,” ZAMM Zeitschrift fur Angew. Math. und
Mech. 26 October 2019
H. Taheri, B. Qiao and N. Ghaeminezhad,
“Kinematic Model of a Four Mecanum Wheeled
Mobile Robot,” Int. J. Comput. Appl. No. 3,
March 2015
R. L. e. a. Guimarães, "ROS navigation: Concepts
and tutorial," Springer, Cham, (2016), pp. 121160.
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.
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