Waiter Robot
A TurtleBot-based waiter designed to take drink orders and deliver them to guests autonomously.

Overview
For a university robotics course, my team built a robotic waiter intended to move among party guests, collect drink orders, return to a bartender for loading, and deliver drinks to the right guests. The task combined indoor navigation, perception, and interaction with people in a changing environment.
Approach
We built on a TurtleBot mobile base and used ROS to connect sensing, navigation, and robot behavior. An ASUS Xtion Pro depth camera supplied obstacle information, while a Logitech C920 webcam supported people and visual-marker detection. We used OpenCV and the ar_track_alvar ROS package for visual perception and localization.
The team added a serving tray and a vacuum-formed John Harvard mask. A speaker behind the mask provided voice output during guest interactions.

Results
In an idealized setting, the robot took multiple orders, returned to the bar, and found guests for delivery when they stayed near their original locations. A busier design-fair demonstration exposed practical limits: guests moved their visual markers, making them harder to detect, and the speaker was difficult to hear over the room noise. These tests showed that the interaction design and venue mattered as much as the navigation software.