B-BOT
What is It?
B-BOT is a Bartender Bot. Our team of four designed, built, and programmed B-BOT to mix drinks based on preconfigured recipes.
My main contributions included:
- Programming the manipulator’s Dynamixel motors to execute trajectories using the Dynamixel Python API and ROS Control
- Design and CAD of the gripper and robot links between motor joints
- 3D printing all of the parts
Preconfigured Trajectories
For our first demo, we built B-BOT to mix drinks based on preconfigured trajectories. The environment is made favorable to the robot – the ingredient cups and mixing cups are all at a priori known positions, so the robot runs a pre-planned trajectory to drop the contents of two ingredient cups in the mixing cup.
The above demo was the result of a six-week sprint to design, build, and program the robot for our first quarter class: MAE 263A Kinematics of Robotic Systems.
Dynamic Trajectories
Expanding on our first quarter progress, a subset of the original team went on to implement a more advanced Proportional Integral controller for the manipulator joints. This controller was tasked with mixing drinks in a less favorable environment – the robot and the cups were placed at positions NOT known a priori. This meant that the robot had to figure out where the cups were in relation to itself in real-time. To do this, we used some good old pose estimation via aruco markers.
Well, at least all that was the plan. This is what we ended up with:
No drinks :/ but we learned a lot.