
Tuyển tập Hội nghị Khoa học thường niên năm 2024. ISBN: 978-604-82-8175-5
51
ĐIỀU KHIỂN VÀ LẬP BẢN ĐỒ CHO ROBOT DI ĐỘNG
Triệu Thị Minh Thu
Trường Đại học Thủy lợi, email: thutrieu@tlu.edu.vn
1. GIỚI THIỆU CHUNG
Robot di động thông minh đang được
nghiên cứu, phát triển và đưa vào sử dụng
phục vụ xã hội ngày càng trở nên phổ biến
như: robot bán hàng tự động, robot nấu ăn,
robot chăm sóc sức khỏe cho người bệnh,
robot hút bụi, robot giữ nhà, robot thám
hiểm... Định vị và xây dựng bản đồ - SLAM
(Simultaneous Localization and Mapping)
hiện nay được sử dụng ngày càng nhiều cho
các robot di động thông minh phục vụ đời
sống con người. Lập bản đồ (Mapping) là quá
trình mô hình hóa môi trường làm việc cho
robot giúp robot xác định được vị trí của mình
cũng như các chướng ngại vật xuất hiện trong
môi trường làm việc. Dựa vào bản đồ được
tạo ra, robot có thể điều hướng tự động, từ đó
ứng dụng trong các lĩnh vực phục vụ đời sống
xã hội. Đã có nhiều công trình nghiên cứu về
định vị và lập bản đồ cho robot di động ứng
dụng trong các môi trường thực tế và cũng
được các tác giải xây dựng và thực thi trên
nền tảng ROS. Tuy nhiên việc sử dụng hệ
thống nhiều cảm biến cho việc xây dựng bản
đồ cho robot phải di chuyển linh hoạt trong
các môi trường sẽ làm tăng độ phức tạp, chi
phí và thời gian xử lý của hệ thống. Đề tài đưa
ra giải pháp xây dựng bản đồ cho robot dựa
vào một cảm biến duy nhất là cảm biến Lidar
A1M8, robot có khả năng tránh vật cản và thu
thập dữ liệu từ môi trường xung quanh dựa
vào cảm biến này từ đó thiết lập bản đồ ảo
một cách nhanh hơn và chính xác nhất. Robot
được ứng dụng cảm biến Lidar cùng nhiều
công nghệ hiện đại giúp Robot hoạt động
thông minh và hiệu quả. Tác giả chế tạo một
mô hình robot tự hành với hệ thống điều khiển
gọn nhẹ, bo mạch điều khiển trung tâm là
Raspberry Pi để kiểm nghiệm kết quả nghiên
cứu và làm chủ điều khiển mô hình khi nghiên
cứu. Robot được điều khiển bằng hai chế độ:
điều khiển robot bằng tay cầm Xbox 360 và
điều khiển robot tự động di chuyển bằng cách
điều hướng trực tiếp trên bản đồ 2D. Khi
robot di chuyển sẽ tự động cập nhật bản đồ
của môi trường xung quanh và xác định được
các vật cản. Bài báo này tác giả tập trung trình
bày nghiên cứu xây dựng bản đồ 2d cho robot,
thiết kế và lập trình hệ thống điều khiển robot.
Hình 1. Các thiết bị phần cứng hệ thống
2. NỘI DUNG NGHIÊN CỨU
2.1. Hệ thống điều khiển robot
Hoạt động của hệ thống: Dữ liệu từ môi
trường xung quanh robot được thu thập và xử
lý dựa vào cảm biến phát hiện ánh sáng và
phạm vi Lidar. Dữ liệu sau khi được xử lý sẽ
được gửi đến máy tính dựa vào Raspberry Pi3.
Phân tích dữ liệu, xây dựng bản đồ, định vị và
điều hướng robot trên máy tính dựa vào nền
tảng ROS và các thuật toán SLAM. Mô phỏng
bản đồ và hoạt động của robot hiển thị trên
máy tính dựa vào phần mềm Rviz. Máy tính
nhận và xử lý tín hiệu điều khiển của hai chế

Tuyển tập Hội nghị Khoa học thường niên năm 2024. ISBN: 978-604-82-8175-5
52
độ: một là điều hướng robot trực tiếp từ bản
đồ 2d trên máy tính, hai là điều khiển robot di
chuyển bằng bằng tay cầm Joystick. Sau đó
máy tính gửi tín hiệu điều khiển đến
Raspberry, tại đây bo mạch trung tâm này sẽ
xử lý và gửi tín hiệu điều khiển đến Driver
động cơ để điều khiển các động cơ hoạt động
nhằm mục đích điều robot di chuyển theo quỹ
đạo yêu cầu. Driver điều khiển động cơ trong
hệ thống điều khiển là mô đun L298, bốn
động cơ sử dụng là động cơ một chiều 12V.
Hình 2. Sơ đồ khối cấu trúc
hệ thống điều khiển
2.2. Các phần mềm sử dụng
2.2.1. ROS và Rviz
Phần mềm chính mà tác giả lựa chọn để
xây dựng bản đồ 2d cho mô hình robot là hệ
điều hành Robot (ROS), được cài đặt trên
máy tính xách tay. Để sử dụng được nền tảng
này, cần có hệ điều hành Ubuntu trên máy
tính để chạy ROS. ROS sử dụng hệ thống
quản lý quy trình, giao diện người dùng, hệ
thống tệp và tiện ích lập trình của hệ điều
hành. Bản đồ sẽ hiển thị trong ứng dụng
RViz hiển thị trong Hình 3.
Hình 3. Bản đồ 2d trên Rviz
2.2.2. Ubuntu và Vision studioCode
Tác giả lựa chọn hệ điều hành Ubuntu,
phiên bản Ubuntu 20.04 cho Raspberry và
máy tính. Để cài đặt và truy cập hệ điều hành
này cần sử dụng thể nhớ, phần mềm
balenaEtcher và phần mềm putty. Để viết
chương trình điều khiển robot hoạt động theo
quỹ đạo yêu cầu tác giả sử dụng ngôn ngữ lập
trình Python và viết trên phần mềm Visual
studio code. Sau khi cài đặt đầy đủ các phần
mềm trên, ta có thể sử dụng Visual studio
code để đăng nhập vào ubuntu serve để viết
chương trình điều khiển.
Hình 4. Lưu đồ thuật toán điều khiển robot
2.3. Xây dựng bản đồ 2d Robot
Cảm biến Lidar A1M8 thu thập và xử lý
dữ liệu của môi trường xung quang robot
hoạt động, sau đó gửi tín hiệu về Rasberry,
bo mạch điều khiển này nhận và xử lý tín
hiệu đó để gửi về máy tính nhằm mục đích
xây dựng bản đồ cho robot. Để máy tính
nhận được các dữ liệu mà cảm biến thu thập
được để xây dựng được bản đồ thì ta cần phải
chạy các lệnh yêu cầu trên các Terminal
trong ubuntu và Ros. Trên mạch điều khiển:
Terminal 1 để thiết lập môi trường cho Ros
master và Ros ip cho mạch điều khiển và
máy tính. Terminal 2 để xuất dữ liệu thu
được từ cảm biến lidar. Terminal 3 để đọc
dữ liệu từ tay cầm joystick. Trên máy tính:

Tuyển tập Hội nghị Khoa học thường niên năm 2024. ISBN: 978-604-82-8175-5
53
Terminal 1 để thiết lập môi trường cho Ros
master và Ros ip để thiết lập ip cho máy tính
và cổng máy chủ ros, dùng hector slam để lập
bản đồ 2d. Terminal 2 để khởi tạo lệnh để có
thể điều khiển bằng joystick.
3. KẾT QUẢ NGHIÊN CỨU
Hình 5 trình bày hoạt động robot đang di
chuyển, thu thập dữ liệu và lập bản đồ 2d cho
phòng ký túc xá của đại học thủy lợi, bản đồ
được mô phỏng trên Rviz. Robot đang được
điều khiển ở chế độ tay cầm Xbox 360. Hình
6 trình bày bản đồ mà robot thu thập và xây
dựng được ở phòng thí nghiệm PLC của đại
học Thủy lợi, robot hoạt động ở chế độ điều
hướng trực tiếp từ bản đồ. Từ hình ảnh kết
quả nghiên cứu cho thấy việc xây dựng bản
đồ 2D cho robot di động dựa vào cảm biến
Lidar và nền tảng Ros cho độ rõ nét và chính
xác của bản đồ xây dựng được. Các vật cản
động của môi trường được thể hiện là các
điểm xanh, các vật cản cố định được thể hiện
là các vệt màu đen trên bản đồ. Hình ảnh rõ
nét sau 3 lần thiết lập và lấy mẫu.
Hình 5. Robot hoạt động
tại phòng ký túc xá Đại học Thủy lợi
Hình 6. Robot hoạt động
tại phòng PLC Đại học Thủy lợi
4. KẾT LUẬN
Bài báo đã trình bày chi tiết về xây và lập
trình hệ thống điều khiển mô hình robot di
động là xe tự hành bốn bánh di chuyển trong
môi trường trong nhà. Tác giả đã trình bày
các phần mềm và phương pháp xây dựng bản
đồ 2d cho robot. Kết quả của nghiên cứu có
thể ứng dụng cho các robot di động hoạt
động trong các nhà máy, vận chuyển hàng
hóa trong nhà, robot phục vụ trong nhà hàng,
bệnh viện, các môi trường độc hại có không
gian khép kín. Bản đồ 2D còn có thể ứng
dụng cho các robot di động có tích hợp các
cơ cấu chấp hành hoặc tay máy robot. Nhờ
đó, ngoài việc di chuyển tự động, robot có
thể thực hiện các nhiệm vụ tương tác cụ thể
trong không gian hoạt động. Kết quả nghiên
cứu của bài báo hy vọng đóng góp cho sự
phát triển các sản phẩm robot thông minh có
giá thành rẻ để ứng dụng rộng rãi vào phục
vụ xã hội.
5. TÀI LIỆU THAM KHẢO
[1] Đoàn Văn Ban (1999): Phân tích và thiết kế
hướng đối tượng. Nhà xuất bản Khoa học
và kỹ thuật.
[2] Nguyễn Ngọc Giang, Phan Xuân Vọng
(2022): Đường vào lập trình Python. Nhà
xuất bản Đại học Quốc gia Hà Nội.
[3] S. Park and G. Lee, "Mapping and
localization of cooperative robots by ROS
and SLAM in unknown working area," in
2017 56th Annual Conference of the
Society of Instrument and Control
Engineers of Japan (SICE), 2017.