Waiter Robot Guidance and Navigation

Waiter Robot Guidance and Navigation

This project is part of the course Guidance and Navigation of Robots at the Technical University of Madrid (UPM). It involves the simulation of a waiter robot in a Japanese restaurant environment. The simulation is implemented using MATLAB in conjunction with the Apolo simulation software. The robot employed in the project is the Pioneer 3-AT, which has a differential drive system and uses various sensors, including a laser rangefinder and ultrasonic sensors, to navigate the restaurant and serve food to customers. Here is a demo of the project:

Key Features

  • Robot: The Pioneer 3-AT, a differential drive robot, is equipped with four wheels—two drive wheels and two castor wheels. It is chosen for its simplicity, cost-effectiveness, and ease of control.
  • Sensors:
    • Laser Rangefinder (LMS100): This sensor is used in beacon detection mode to locate the robot within the restaurant.
    • Ultrasonic Sensors: Three ultrasonic sensors are used to perform reactive control, helping the robot avoid obstacles such as patrons or objects in the restaurant.
  • Localization: The robot uses an Extended Kalman Filter (EKF) to estimate its position and orientation based on its proprioceptive and exteroceptive sensors. The laser rangefinder detects beacons placed throughout the restaurant to assist with localization.
  • Path Planning: The A* algorithm is used to generate collision-free trajectories that guide the robot from the kitchen to customer tables and back.
  • Control: A reactive control algorithm enables the robot to dynamically adjust its path in response to detected obstacles.

Simulation Environment

The restaurant layout was modeled in the Apolo simulator using XML. It includes various areas like a dining hall, reception, kitchen, and tatami rooms, as well as detailed furniture arrangements such as tables and chairs. The robot serves a maximum of four commands per trip, delivering food to designated tables and returning to the kitchen once its tasks are completed.

Results

The project successfully demonstrates the waiter robot navigating through the restaurant environment, delivering food, and avoiding obstacles. Key algorithms implemented include sensor calibration, localization with EKF, path planning with A*, and a reactive control system for collision avoidance.

Conclusion and Future Work

This project effectively integrates robot guidance and navigation concepts into a real-world application scenario. Future improvements could include higher resolution mapping for more precise planning, enhanced obstacle avoidance strategies, and the implementation of a simultaneous localization and mapping (SLAM) algorithm for better real-time adaptability.

Code


© 2024. All rights reserved.