RoboBarista - Autonomy of a Franka Arm for Coffee-Making

A coffee-making robotic arm engineered to handle liquids with exceptional efficiency, utilizing precise pouring techniques and real-time weight feedback for consistently perfect results.

This work presents the design and implementation of an autonomous coffee-making system using a Franka robotic manipulator arm, aimed at advancing automation in the food and beverage industry. The system is capable of preparing various coffee beverages by autonomously detecting, grasping, and pouring ingredients into a user’s mug according to specified recipes. Key challenges addressed include careful manipulation of ingredient cups to avoid spillage, ensuring accurate pouring to meet quantitative requirements for each recipe, and localizing all obstacles and the output cup to operate in a mobility-constrained environment. To simulate liquid handling in a controlled setting, colored beads were used as a proxy for liquid ingredients. The methodology integrates computer vision for output cup localization, precise grasping strategies, and constrained trajectory planning using MoveIt, with additional real-time feedback from a weighing scale and force-torque sensors to ensure accurate ingredient dispensing. A custom pouring controller was developed to map cup weight to tilt angle and pour-stop thresholds, achieving pour accuracy within 5 grams of the target amount and a pour success rate exceeding 88\% . The system demonstrated robust perception and motion planning, with failures occurring only rarely. This work provides a framework adaptable to other beverage automation tasks, promoting use of robotics in the food and beverage industry. Future improvements include supporting a broader ingredient set, developing an interactive user interface, and refining motion planning to further increase reliability and versatility.

The complete research outcome of this project can be found in the paper shown below:

This project is still in progress, but the complete code will eventually be published in the below mentioned repository: