The purpose of the project is to use the Franka Emika Panda arm to brew a cup of pour-over coffee.
Computer vision and AprilTags were used to find the location of each object, and a custom wrapper package for
MoveIt was written to control the robot. This project was done by a group of five in 3 weeks.
Group Members:
Anuj Natraj,
Carter DiOrio,
Stephen Ferro,
Kyle Wang
camera_localizer: localizes the D435 and D405 cameras and publishes transforms for AprilTags seen by the cameras from the robot base.
coffee_grounds: controls the actions for picking up and dumping the coffee scoop.
cup_detection: handles detection of the coffee cup in the cup holder and triggers the rest of the routine. Also publishes a transform to the top of the coffee cup.
delay_node: handles the delay service, which is used to pause the robot for a specified time at certain points in the routine.
grasp_node: offers the grasp_process action, which is used to grasp the "standard" handle used for the kettle, pot, and filter.
handle_detector: tracks the blue and green tape on the handles of the objects using the D405 camera and publishes a TF for the object handle.
kettle: handles action for picking up, pouring, and placing the kettle.
pick_filter: offers the action to pick up the coffee filter.
pot: handles action for picking up, pouring, and placing the coffee pot.
pouring: offers the pour action, which is used by the kettle to create spiral motions.
run_botrista: the main node which offers the make_coffee action.
grasp_planner: handles planning and execution of grasp actions.
moveitapi: a wrapper class for sending MoveIt commands to a robot like the Franka.