golf : Autonomous Putting Robot
MEAM510 at UPenn
Fall 2014
MEAM510: Design of Mechatronic Systems is a notoriously grueling crash course in integrated design of robots. We were challenged to design and build a self-contained device that could autonomously track an IR target and hit it with a golf ball - with only one week to complete the project. The target could be up to 1m away and within a 180° field of view.

My partner and I decided that it would be more fun to design a robot with a 360° range, so we could hit the target regardless of our initial orientation. I was in charge of electronics and coding. As always in this course, we used the custom MAEVARM M2 microcontroller module (built around the ATmega32U4 processor). We designed the robot for continuous rotation on the 50-tooth gear, laser-cut acrylic base. To avoid incorrect target identification, I used an IR phototransistor scope to scan the entire field of range before deciding on a target. I designed a solenoid firing circuit that used a 30V boost regular circuit and 5600μF capacitor to kick the golf ball nearly 1.5m away on the astroturf putting green.

MAEVARM M2 PINOUT DIAGRAM

DETAIL OF PERF BOARDS
Even though the project was only a week long, we had a functional golfer a couple days before the deadline. To further improve the performance, I modified a momentary SPDT switch to ride next to the gear base and act as an encoder and added code to estimate the position of the target. After finishing the scanning pass, the golfer would aim at the target via the shortest path. We got the maximum possible score on demo day: a hole-in-one in each of the four attempts.

UNDERSIDE OF GOLF ROBOT WITH DRIVE GEAR AND ENCODER

DRIVE MOTOR ON LEFT OF GOLF ROBOT