Inspiration

We wanted a beer serving robot, but I guess the arm could do other things too.

What it does

Mechanic Ted can drive around with his arm, picking up anything 3lbs or less. The arm moves in and out at a 15deg angle meaning it can lift and place things. A suction cup at the end of the arm grabs anything smooth and holds it securely.

The goal was to end to end learn to pick up a beer bottle, we had a training pipeline using a spacemouse and a diffusion policy ready to train.

How we built it

We used PrimeArm, a telescopic arm made only from parts on Amazon Prime that coincidentally was opensourced the night before the hackathon. The arm didn't have any mounting or gripper designed, so we did that right away. We designed a mount to hold the arm at 15deg so that as it retracted it also lifted, as well as making a mount for a suction system and vacuum pump - and printed it all at comma. We modified the CAN passing from the 3X to the body to include messages for the arm. We used the extra "arm" CAN port on the body board and broke out the connections.

Challenges we ran into

  1. The USB C cable we used to breakout the extra body CAN port didn't have the right connections. After endlessly debugging we swapped the cable and it magically worked.
  2. We were forced to use an A4988 stepper driver because the teensy logic level is 3.3v. But we could never get this driver working at all and just made the stepper vibrate. The work around for this was using an Arduino Uno as a coprocessor, running a more legit TB6600 stepper driver at 5V and communicating to teensy using UART.
  3. Hardware is hard. We had so many breakout boards and PCBs floating around with a ton of wires hanging. Right after we got the arm running a dangling wire brushed by the body PCB and sparked. After that the body refused to boot :(

Accomplishments that we're proud of

We got all the hardware working momentarily, 24 hours before submission! It met all the criteria we wanted, was able to hold beer and actuate the beer bottle. Its also pretty cool that we got a very clean analog joystick tele-op working that gave us really high quality imitation learning data.

What we learned

Be very careful with hardware, especially with so much wiring organization is key. We probably should've taken it slower, and worked with the power off more often.

What's next for mechanic ted's bicep

Productization 😎

  1. Since the wiring we did was to prototype and get something working, we have the invalueable knowledge to design a PCB that would encapsulate all the functionality we desire on one board.

Built With

  • arduino
  • can
  • diffusion
  • il
  • pneumatics
  • teensy
Share this project:

Updates