Bối cảnh và vấn đề nghiên cứu

Trong bối cảnh khoa học kỹ thuật phát triển nhanh chóng, tự động hóa trong lĩnh vực dịch vụ đang trở thành xu hướng nhằm giảm áp lực chi phí nhân công, tối ưu hóa quy trình vận hành và mang lại trải nghiệm mới cho khách hàng. Vận chuyển món ăn từ khu vực chế biến đến bàn ăn là công việc mang tính lặp lại, tốn nhiều sức lao động nhưng hoàn toàn có thể tự động hóa. Trên thị trường quốc tế, nhiều giải pháp robot phục vụ thương mại đã được thương mại hóa thành công như BellaBot của Pudu Robotics (Trung Quốc), Servi của Bear Robotics (Mỹ) hay các sản phẩm từ SoftBank Robotics (Nhật Bản). Tuy nhiên, tại Việt Nam, phần lớn thiết bị robot phục vụ đều phải nhập khẩu với giá thành cao, gây khó khăn cho việc tiếp cận của các nhà hàng, quán ăn quy mô vừa và nhỏ. Đồ án "Nghiên cứu và chế tạo Robot phục vụ nhà hàng" được nhóm tác giả thực hiện nhằm giải quyết bài toán tự chủ công nghệ, chế tạo sản phẩm trong nước với chi phí hợp lý.

Mục tiêu chung của đề tài là nghiên cứu, thiết kế và chế tạo một mô hình robot di động có khả năng tự động di chuyển, vận chuyển thức ăn đến vị trí chỉ định, tránh vật cản và hoạt động ổn định trong điều kiện thực tế. Nhóm nghiên cứu xác định 5 nhiệm vụ nghiên cứu cụ thể:

  1. Tìm hiểu tổng quan về các mẫu robot phục vụ hiện có và công nghệ đang áp dụng trên thế giới cũng như trong nước.
  2. Thiết kế hệ thống cơ khí phù hợp với không gian di chuyển thực tế của môi trường nhà hàng.
  3. Tính toán, lựa chọn linh kiện phần cứng, thiết bị điều khiển, máy tính nhúng và hệ thống cảm biến đáp ứng yêu cầu kỹ thuật.
  4. Xây dựng cấu trúc phần mềm, viết chương trình điều khiển phân tầng cho robot hoạt động theo mục tiêu đề ra.
  5. Chạy thử nghiệm thực tế và đánh giá hiệu năng hoạt động của toàn bộ hệ thống.

Đối tượng nghiên cứu của đồ án là robot di động phục vụ (mobile robot) định hướng hoạt động tại các quán ăn nhanh, cụ thể là mô hình quán bán gà rán; đồng thời nghiên cứu quy trình phục vụ của nhân viên và hành vi tiếp nhận món ăn của khách hàng để tối ưu hóa thiết kế giao diện tương tác. Phạm vi nghiên cứu bao gồm việc tính toán cơ khí, thiết kế hệ thống mạch điện, lập trình firmware điều khiển động cơ trên vi điều khiển, triển khai thuật toán định vị, lập bản đồ và điều hướng trên hệ điều hành ROS 2, cùng việc thử nghiệm trong không gian nhà hàng mô phỏng với các bài kiểm tra bám quỹ đạo và tránh vật cản.

Cơ sở lý thuyết và phương pháp

Đồ án ứng dụng mô hình động học của hệ dẫn động vi sai hai bánh chủ động (Differential Wheeled Robot) kết hợp hai bánh xe tự dẫn hướng (bánh xe bị động) để giữ thăng bằng. Robot hoạt động trên mặt phẳng 2D với 2 bậc tự do chuyển động cơ bản gồm chuyển động tịnh tiến và chuyển động quay quanh trục thẳng đứng $Z$. Dựa trên sai lệch tốc độ giữa hai bánh chủ động, hệ thống tính toán ước lượng trạng thái chuyển động (odometry) theo phương pháp dead reckoning từ số liệu xung thu nhận được của bộ giải mã vòng quay (encoder) quang học gắn trên động cơ DC servo.

Về mặt điều khiển tự động, thuật toán PID (Proportional - Integral - Derivative) vòng kín được triển khai để kiểm soát vận tốc góc của từng bánh xe, hạn chế tối đa sai lệch giữa vận tốc đặt từ máy tính nhúng và vận tốc phản hồi thực tế. Hệ thống sử dụng cảm biến 2D LiDAR với nguyên lý đo lường khoảng cách tam giác (triangulation) có tần số quét 4000 phép đo mỗi giây và bán kính phát hiện 8 mét, cung cấp dữ liệu đám mây điểm 2D phục vụ xây dựng bản đồ môi trường thông qua kỹ thuật SLAM (Simultaneous Localization and Mapping). Trên nền tảng hệ điều hành Robot Operating System 2 (ROS 2), thuật toán định vị thích nghi Monte Carlo (AMCL) kết hợp cùng hệ thống quản lý khung tọa độ (tf) và bản đồ chi phí (Costmap) được sử dụng để xác định vị trí thực tế của robot. Giải thuật tìm đường toàn cục Dijkstra cùng giải thuật tránh vật cản cục bộ DWA (Dynamic Window Approach) hoặc DWB (Dynamic Window Base Approach) thuộc gói Nav2 được áp dụng để tối ưu lộ trình.

Phương pháp nghiên cứu thực hiện qua bốn bước chính:

  • Phương pháp nghiên cứu lý thuyết: Thu thập tài liệu chuyên ngành về động học robot di động, hệ thống điều hướng tự hành, lý thuyết điều khiển phản hồi PID và cấu trúc gói phần mềm trong ROS 2.
  • Phương pháp phân tích và thiết kế: Mô hình hóa cơ khí bằng phần mềm 3D, phân tích ứng suất và biến dạng; thiết kế mạch in (PCB) phân phối nguồn điện; hoạch định kiến trúc phần mềm phân tầng.
  • Phương pháp thực nghiệm: Thi công cơ khí, lắp ráp hệ thống điện, nạp chương trình điều khiển cho vi điều khiển STM32 và cấu hình các node trên máy tính nhúng Raspberry Pi.
  • Phương pháp kiểm thử và đánh giá: Thử nghiệm thực tế trong mô hình nhà hàng giả lập, kiểm tra độ ổn định của hệ thống bám tốc độ, độ chính xác khi dừng đỗ tại bàn ăn và khả năng phát hiện vật cản.

Thiết kế và triển khai

Hệ thống được thiết kế theo cấu trúc cơ điện tử tích hợp, phân tách rõ ràng giữa phần cứng cơ khí, hệ thống điện - điện tử và kiến trúc phần mềm điều khiển.

Hạng mục Thông số / Linh kiện lựa chọn
Khối lượng tổng thể 28 kg
Chiều cao trung bình 1600 mm (ghi chú 1600 cm theo danh mục đồ án)
Kích thước phần thân dưới 55 cm
Vận tốc di chuyển định mức 0,5 m/s
Khay chứa đồ phục vụ 3 tầng bằng vật liệu mica, thiết kế nghiêng chống trượt
Cơ cấu di chuyển 2 bánh xe chủ động bằng nhôm bọc cao su, 2 bánh dẫn hướng đơn
Nguồn cấp năng lượng Khối pin Li-ion từ cell Samsung 35E
Thời gian vận hành liên tục Khoảng 3 giờ
Cảm biến môi trường Cảm biến 2D D200 LiDAR Kit (tầm quét 8m, quét 360 độ)
Máy tính nhúng cấp cao Raspberry Pi 4 Model B (RAM 8GB)
Vi điều khiển cấp thấp STM32F401CCU6
Mạch công suất điều khiển động cơ Driver cầu H BTS7960
Bộ chuyển đổi nguồn hạ áp Mạch hạ áp XL4016E (24VDC), mạch hạ áp XL4015 (5VDC)
Màn hình hiển thị Màn hình cảm ứng kích thước 10.1 inch
Phần mềm và hệ điều hành ROS 2, giao thức UART, kiến trúc RESTful API (Flask và FastAPI)

Phần khung gầm chịu lực được gia công bằng kim loại cứng vững nhằm hạ thấp trọng tâm, hạn chế rung lắc khi di chuyển. Thân robot bố trí 3 tầng khay mica với độ dốc nghiêng nhẹ về phía sau giúp giữ thức ăn và đồ uống không bị trượt khi robot tăng tốc hoặc phanh.

Kiến trúc điều khiển phân tầng gồm hai cấp riêng biệt:

  • Tầng điều khiển cấp thấp (Low-level Control): Đảm nhiệm bởi vi điều khiển STM32F401CCU6. Vi điều khiển trực tiếp tiếp nhận tín hiệu encoder theo chế độ x4 để đo đạc chính xác vòng quay, thực thi thuật toán PID vòng kín điều khiển tốc độ động cơ DC servo thông qua driver BTS7960, tính toán số liệu odometry ban đầu và đóng gói truyền lên tầng cấp cao qua chuẩn giao tiếp UART.
  • Tầng điều khiển cấp cao (High-level Control): Hoạt động trên máy tính nhúng Raspberry Pi 4 Model B. Thiết bị này thu nhận dữ liệu quét từ cảm biến LiDAR D200 qua cổng giao tiếp nối tiếp, tiếp nhận gói dữ liệu odometry từ STM32, thực thi các thuật toán SLAM tạo bản đồ, triển khai node AMCL định vị vị trí robot trong hệ tọa độ bản đồ, tính toán quỹ đạo chuyển động thông qua ROS 2 Nav2 và xuất lệnh vận tốc tức thời xuống STM32.

Kiến trúc phần mềm kết nối người dùng ứng dụng mô hình RESTful API theo cấu trúc MVC. Client được xây dựng bằng framework Flask (Python) hiển thị giao diện trên màn hình cảm ứng 10.1 inch hoặc thiết bị cầm tay của nhân viên. Giao diện cung cấp chức năng điều khiển thủ công, thiết lập và lưu trữ tọa độ bàn ăn, quản lý danh sách đơn hàng. Server xử lý API chạy trên Raspberry Pi sử dụng framework FastAPI để tiếp nhận các yêu cầu HTTP (POST, GET) chứa chuỗi dữ liệu JSON, sau đó chuyển hóa thành các lệnh điều khiển điều hướng tương ứng cho hệ thống ROS 2.

Nội dung chính theo từng chương

CHƯƠNG 1: GIỚI THIỆU VỀ ĐỀ TÀI

Chương 1 thiết lập cơ sở khoa học cho đề tài thông qua việc phân tích thực trạng công nghệ robot dịch vụ trên thế giới và tại Việt Nam. Tác giả nêu rõ mục tiêu tổng quát, 5 nhiệm vụ cụ thể, đối tượng khảo sát là mô hình nhà hàng thức ăn nhanh, phạm vi nghiên cứu từ phần cứng cơ điện tử đến thuật toán phần mềm ROS 2, đồng thời phác thảo phương pháp nghiên cứu và bố cục tổng thể của báo cáo tốt nghiệp.

CHƯƠNG 2: TỔNG QUAN VỀ ROBOT PHỤC VỤ NHÀ HÀNG

Chương 2 tổng hợp các khái niệm cơ bản về robot dịch vụ, phân tích trường hợp ứng dụng thực tế tại một số chuỗi nhà hàng lớn. Tác giả lập bảng so sánh ưu nhược điểm giữa robot phục vụ và lao động con người dựa trên các tiêu chí: hiệu suất làm việc, chi phí, tính ổn định, tính linh hoạt và tốc độ. Nội dung chương đồng thời nêu định hướng phát triển của robot phục vụ về tính năng điều hướng trong không gian hẹp, tối ưu chi phí và khả năng tích hợp vào hệ thống quản lý ẩm thực.

CHƯƠNG 3: CƠ SỞ LÝ THUYẾT

Chương 3 trình bày toàn bộ cơ sở lý thuyết nền tảng cho hệ thống. Nội dung bao gồm nguyên lý truyền động vi sai 2 bánh, phân tích động cơ DC servo và mạch cầu H, phương pháp đọc encoder x1, x2, x4, nguyên lý cảm biến LiDAR 2D sử dụng phương pháp tam giác đạc, giao thức truyền thông nối tiếp không đồng bộ UART (cấu trúc start bit, data bit, parity bit, stop bit), cấu trúc bộ điều khiển PID, tính toán odometry, nền tảng hệ điều hành ROS 2 kết hợp thư viện Nav2 và kiến trúc giao tiếp mạng RESTful API qua HTTP/JSON. Chương này khép lại bằng bảng thông số kỹ thuật thiết kế mục tiêu của robot.

CHƯƠNG 4: THIẾT KẾ CƠ KHÍ CỦA ROBOT

Chương 4 tập trung vào việc hiện thực hóa mô hình cơ khí. Tác giả phân tích không gian làm việc giới hạn 2 bậc tự do của robot di động, trình bày cấu trúc bản vẽ 3D từ cụm khung gầm kim loại, cụm gắn động cơ, vị trí đặt pin, giá đỡ hệ thống điện đến khung lắp màn hình 10.1 inch và các khay chứa đồ bằng mica nghiêng chống trượt. Chương này cũng phân tích mô hình động học vi sai, tính toán thanh trục chịu lực bánh xe, lựa chọn bánh xe chủ động bọc cao su, bánh xe tự dẫn hướng đơn và kiểm nghiệm độ bền phân bố ứng suất, chuyển vị của khung vỏ trên phần mềm chuyên ngành.

CHƯƠNG 5: THIẾT KẾ HỆ THỐNG ĐIỆN CỦA ROBOT

Chương 5 thuyết minh chi tiết quá trình tính toán công suất và lựa chọn thiết bị điện. Các linh kiện được tính chọn bao gồm động cơ DC servo Planet, mạch công suất BTS7960, vi điều khiển STM32F401CCU6, máy tính nhúng Raspberry Pi 4 Model B (8GB RAM), cảm biến LiDAR D200 kit và khối nguồn pin Li-ion Samsung 35E. Tác giả tính toán mạch phân phối điện áp sử dụng board giảm áp XL4016E và XL4015, lựa chọn tiết diện dây dẫn theo bảng cường độ dòng điện, đồng thời công bố sơ đồ nguyên lý và layout mạch in hoàn thiện.

CHƯƠNG 6: XÂY DỰNG HỆ THỐNG ĐIỀU KHIỂN CỦA ROBOT

Chương 6 là phần trọng tâm về điều khiển và phần mềm. Tác giả phân tích chi tiết quy trình xử lý cảm biến, thuật toán điều khiển PID vận tốc động cơ trên STM32 và truyền dữ liệu odometry lên ROS 2 qua UART. Tiếp đó là quá trình mô tả mô hình robot bằng định dạng URDF, thiết lập cây biến đổi tọa độ tf, cấu hình thuật toán định vị AMCL, lập bản đồ Costmap, so sánh và tích hợp giải thuật hoạch định quỹ đạo Dijkstra (toàn cục) và DWA/DWB (tránh vật cản cục bộ). Cuối chương trình bày chi tiết giao diện web người dùng viết bằng Flask kết hợp FastAPI theo mô hình MVC, cho phép lưu vị trí bàn, chọn đích đến và quản lý đơn hàng.

CHƯƠNG 7: KẾT QUẢ VÀ THỰC NGHIỆM

Chương 7 trình bày quá trình thực nghiệm trong không gian giả lập nhà hàng. Tác giả ghi nhận các kết quả thực tế qua ảnh chụp robot hoàn thiện, giao diện điều khiển, biểu đồ đánh giá sai lệch giữa vận tốc thực tế và vận tốc mong muốn, độ bám quỹ đạo sau điều hướng và quá trình robot tự động phát hiện vật cản tĩnh/động, tính toán đường đi thay thế để di chuyển chính xác đến bàn số 6 đã lưu trước đó.

CHƯƠNG 8: KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN

Chương 8 tổng kết mức độ hoàn thành nhiệm vụ nghiên cứu so với mục tiêu ban đầu, xác nhận robot đã vận hành tự động ổn định và đáp ứng các thông số thiết kế. Chương này cũng chỉ ra các mặt hạn chế còn tồn tại về phần cứng, dung lượng pin và tính linh hoạt khi giao tiếp, từ đó đề xuất hướng phát triển hệ thống trong tương lai.

Kết quả và đóng góp

Đồ án đạt được các kết quả kỹ thuật cụ thể thông qua quá trình thử nghiệm thực tế:

  • Chế tạo hoàn thiện mô hình robot phục vụ nhà hàng với đầy đủ cơ cấu cơ khí, khối lượng 28 kg, kích thước phần thân dưới 55 cm, mang được 3 khay phục vụ và tích hợp màn hình cảm ứng 10.1 inch.
  • Hệ thống điều khiển tốc độ động cơ DC servo sử dụng thuật toán PID trên STM32F401CCU6 cho khả năng đáp ứng tốt, đường cong vận tốc thực tế bám sát vận tốc đặt định mức 0,5 m/s.
  • Dữ liệu odometry từ encoder được xử lý ổn định, kết hợp cùng cảm biến 2D D200 LiDAR Kit qua thuật toán AMCL giúp robot tự định vị chính xác trong bản đồ nhà hàng giả lập.
  • Thử nghiệm chức năng điều hướng tự động bằng Nav2 cho thấy robot di chuyển thành công tới các vị trí bàn ăn được chỉ định trước (như bàn số 6); khi xuất hiện vật cản đột xuất, thuật toán DWA/DWB tự động tính toán lại lộ trình để né tránh an toàn.
  • Xây dựng thành công hệ thống giao diện web điều khiển trên nền tảng Flask và FastAPI, cho phép người dùng thao tác trực quan: lưu không gian hoạt động, lưu tọa độ bàn ăn, giám sát trạng thái di chuyển và quản lý đơn phục vụ.

Về mặt đóng góp, đề tài đã xây dựng thành công một giải pháp tích hợp hoàn chỉnh từ phần cứng cơ khí, mạch điện tử công suất đến phần mềm điều khiển thông minh dựa trên nền tảng ROS 2 mã nguồn mở. Đồ án chứng minh tính khả thi của việc chế tạo robot phục vụ "Made in Viet Nam", tạo tiền đề cho các giải pháp tự động hóa dịch vụ trong nước với chi phí sản xuất thấp hơn nhiều so với thiết bị nhập ngoại.

Hạn chế và hướng nghiên cứu tiếp

Theo văn bản báo cáo, đề tài còn tồn tại một số hạn chế:

  • Thời gian hoạt động của khối pin còn giới hạn trong khoảng 3 giờ, chưa đáp ứng được ca làm việc kéo dài của các nhà hàng lớn nếu không sạc bổ sung.
  • Khả năng di chuyển và tốc độ vận hành của robot bị suy giảm khi không gian có quá nhiều người qua lại hoặc mật độ vật cản dày đặc.
  • Tính năng giao tiếp với khách hàng mới dừng lại ở mức cơ bản thông qua màn hình hiển thị cảm ứng và giao diện web, chưa hỗ trợ nhận dạng và tương tác linh hoạt bằng giọng nói tự nhiên như con người.

Hướng phát triển tiếp theo được tác giả đề xuất:

  • Nghiên cứu nâng cấp thuật toán định vị và điều hướng nhằm tăng độ chính xác trong các không gian phức tạp và đông đúc.
  • Tích hợp thêm các module tương tác thông minh như nhận dạng giọng nói, xử lý ngôn ngữ tự nhiên để tăng tính thân thiện khi tiếp xúc với thực khách.
  • Tối ưu hóa chi phí sản xuất và quy trình bảo trì phần cứng.
  • Mở rộng phần mềm quản lý để kết nối trực tiếp với hệ thống điều phối, gọi món và thanh toán tập trung của toàn bộ nhà hàng.

Giá trị tham khảo

Đồ án là tài liệu tham khảo giá trị cho sinh viên, học viên cao học và kỹ sư thuộc các chuyên ngành Công nghệ Kỹ thuật Cơ điện tử, Kỹ thuật Điều khiển và Tự động hóa, Kỹ thuật Robot và Công nghệ Thông tin.

Những nội dung có giá trị tham khảo ứng dụng cao trong tài liệu bao gồm:

  • Thiết kế hệ thống nhúng phân tầng điều khiển kết hợp giữa vi điều khiển STM32 xử lý thời gian thực và máy tính nhúng Raspberry Pi chạy hệ điều hành ROS 2.
  • Phương pháp tính toán odometry từ encoder quang học kết hợp thuật toán PID điều khiển vận tốc động cơ DC servo.
  • Cấu hình và triển khai thực tế gói điều hướng ROS 2 Nav2, thuật toán định vị AMCL và cảm biến LiDAR 2D để xây dựng bản đồ và tránh vật cản.
  • Mô hình kiến trúc phần mềm tích hợp giao diện web điều khiển sử dụng RESTful API (Flask - FastAPI) kết nối với hệ thống robot tự hành qua mạng cục bộ.

Câu hỏi thường gặp

Hệ thống điều khiển của robot được phân chia cấu trúc như thế nào và mỗi tầng đảm nhận nhiệm vụ gì?
Hệ thống điều khiển được chia thành hai tầng rõ rệt: Tầng điều khiển cấp thấp chạy trên vi điều khiển STM32F401CCU6 chịu trách nhiệm đọc xung encoder, điều khiển tốc độ động cơ DC servo qua thuật toán PID và gửi dữ liệu odometry lên máy tính nhúng; Tầng điều khiển cấp cao chạy trên Raspberry Pi 4 (RAM 8GB) tiếp nhận dữ liệu LiDAR, thực thi thuật toán SLAM, AMCL, lập kế hoạch đường đi bằng ROS 2 Nav2 và xuất lệnh vận tốc xuống tầng cấp thấp qua chuẩn UART.

Cảm biến LiDAR sử dụng trên robot là loại nào và có thông số hoạt động ra sao?
Đề tài sử dụng cảm biến 2D D200 LiDAR Kit hoạt động theo nguyên lý đo lường khoảng cách tam giác (triangulation), có khả năng thực hiện 4000 phép đo mỗi giây với phạm vi quét phát hiện vật cản là 8 mét.

Giao tiếp giữa giao diện điều khiển người dùng và robot được thực hiện qua cơ chế nào?
Hệ thống sử dụng mô hình RESTful API theo kiến trúc MVC thông qua mạng nội bộ LAN. Giao diện phía người dùng (Client) được phát triển bằng Flask, gửi các yêu cầu HTTP (POST, GET) chứa dữ liệu định dạng JSON tới API Server viết bằng FastAPI chạy trên Raspberry Pi để truyền nhận lệnh điều khiển và phản hồi trạng thái hoạt động của robot.

Những thuật toán nào được lựa chọn để thực hiện điều hướng toàn cục và điều hướng cục bộ trong ROS 2?
Hệ thống sử dụng thuật toán Dijkstra để tìm kiếm và lập kế hoạch đường đi toàn cục (Global planner) trên bản đồ tĩnh, đồng thời sử dụng thuật toán cửa sổ động DWA (Dynamic Window Approach) hoặc biến thể DWB thuộc Nav2 để hoạch định quỹ đạo cục bộ (Local planner) và né tránh vật cản động phát sinh trong quá trình di chuyển.

Kết luận

Đồ án "Nghiên cứu và chế tạo Robot phục vụ nhà hàng" của nhóm sinh viên Trường Đại học Sư phạm Kỹ thuật TP.HCM đã thiết kế, chế tạo và thử nghiệm thành công một mô hình mobile robot phục vụ khép kín từ cơ khí, mạch điện tử công suất đến phần mềm điều khiển tự hành. Bằng việc kết hợp vi điều khiển STM32F401CCU6, máy tính nhúng Raspberry Pi 4 cùng hệ điều hành ROS 2, robot đã chứng minh khả năng di chuyển ổn định với vận tốc 0,5 m/s, tự định vị, tránh vật cản linh hoạt và đưa món ăn chính xác đến vị trí bàn ăn được chỉ định. Công trình không chỉ cung cấp một sản phẩm mẫu hoàn chỉnh đáp ứng nhu cầu thực tế của các cơ sở ẩm thực vừa và nhỏ mà còn là tài liệu kỹ thuật có giá trị tham khảo cao về tích hợp hệ thống cơ điện tử tự hành.