A robot barista, a new open source robot arm design, and a call for votes

This is a 5 degree of freedom (DOF) robot arm, with wrist tilt optional as a 6th. It is mostly 3D print ready in the way that most rep rap 3D printers are, meaning you still need a few stock pieces of metal, a lot of fasteners and rods, and some motors. I started this design with an all-nighter over thanksgiving break, and it’s nearly done. To explain why it’s called the Auto Barista, this is an entry in a contest called the smarter life challenge (I’m currently in 2nd place by only 33 votes for a trip to Germany and $1500, scroll to the bottom for how to vote) my entry was originally to make a smart coffee maker. I eventually decided that accomplishing the goal simply by piping ingredients from one process to another would be boring, after all this isn’t my work where I have to design the most efficient system possible, this is a contest, I can have some fun with it! So I decided to make a robot arm and have it run a coffee grinder, load the machine, pour the coffee, add cream ect. This approach is also modular since I can add new movements. When I thought of doing it this way it just seemed so much more exciting than doing it by making a big box, they have those at convenience stores, and besides this gives the maker community a new 3D printable robot arm design, and the PSoC platform (which sponsored the contest) software to run CNC machines.

The Design

Besides aiming to be easy for anyone with a 3D printer to replicate once I finish the design, I wanted to use some unique methods that I can’t usually put in my industrial designs, and to make everything reference back to the base. For that reason parallel bar linkages keep the wrist tilt aligned, and a linear rod which is almost a parallel bar linkage moves the elbow. If another screw were added on the linkage you could also motorize wrist tilt. For counterweight the wrist roll and grip motors are behind the elbow. A long drive rod with a 3D printed universal joint I designed runs the roll, through a set of gears, the wrist is held on with a large bearing which is clamped on the outside on one end and on the inside on the other.

To move the first link of the arm I made a large sector of a herringbone gear and mounted a motor on the first link which climbs along it. Besides being cool looking in my opinion, this gives me a 26:1 reduction in relatively little space without using an expensive gearbox. Since it was printed I webbed it out to make it more efficient to produce. Really this doesn’t hurt the strength since there are more thick walls in the directions where force is applied, though I haven’t done FEA to confirm that or anything.


exploded hand.JPG

The Build

The 3D printed parts (with exception of two small ones that need changes) are all done. I’ve machine the tubes for the body and cut all the rods, and I’ve wired up and mounted all of the motors. Software is also coming along quickly, the coordinated move hardware settings are working and I’m working on adding a communication stack to stream moves.

robot minimized.jpg

The Robot Arm In Motion

This video shows the robot arm with 3 of the axes of movement running in coordination. The motors for the grip and the upper arm are working, but I need to modify the motor couplers. I like how the parallel bar linkage and bearing on the wrist are working. I took some close-up video of the lower arm tilt gear because it’s one of my favorite details. It’s a 28:1 Herringbone gear, only the sector the robot needs is there and I webbed it out to reduce print time while keeping walls where it needed strength.

Currently the software is pretty simple. It is built on the method Max (an engineer from Cypress Semiconductor) provided in this thread. I haven’t yet added a USB stack or intelligence which would generate the moves. There is just a function called “GetNextMove” which currently gives back two positions alternately for all the axes, to show off the coordinated moves, and will later give back the next move from the com port. It will soon be able to do as many programmed motions as I want, and Coffee making steps will come soon after.

How the Milwaukee Makerspace Was Utilized

Most of the parts seen here were printed on my own 3D printer. Those that aren’t black were done at MMS, but one of the great resources I used was all of the parts I could freely try out to get things to fit. I scavenged most of the motors from the hack rack, got the metal beams from the rack in the metal shop, and pulled nuts and bolts from our hardware store shelves as needed. It really makes it faster (and cheaper) to not need a trip to the store every time you need a different bolt or nut. Plus you come up with some cool tricks, for example, the 3D printed claw is lined with rubber case feet, which give it excellent grip. I also used the mill to precision drill the mounting holes in the square tube, but that isn’t really required, I’m trying to make this design so that I can open source it when it’s done and if someone has a 3D printer and a drill, they can make it. One big change it will need to really work in that regard is a 3D print and off the shelf hardware based turn table, not everyone will be able to salvage a nice (though very used and worn) little one like I’m using. But that could have side benefits as other makers could probably use a design for a 3D printable turn table as well.

Please Vote!

I’m currently about 30 votes from the top in second place of the Smarter Life Challenge. The prize is a trip to Germany and $1500 in parts. So if you can, please take the time to create a user name and vote. It’s such a small margin!


Here’s the link to vote (you have to create an account on the forum), I’m 13th down “The Auto Barista – Paul Sisneros”

More on plans to open source it?

Does anyone have advice about how to go about doing this? It seems like something that other people might like to use. I’m happy to share it once it’s all done and make a few modifications to make it more generally usable.