Posted on August 14, 2014
DEFCON 22 Robot Competition 3rd Place
I first started with a design similar to the reference robot using servos and a laser cut platform. I also used the Arduino and Processing code from Project Sentry Gun. I simply modified the Arduino code to handle a laser module instead of an air-soft gun. I really liked the interface and the ability to lead the target, but the resolution (ability to move in small steps) wasn’t good enough. At ten feet away from the target, one step of the servo resulted in about 4 inches of movement of the laser dot.
I then laser cut some gears and some mounting hardware to try and increase the resolution. While this did work, it resulted in a serious decrease in speed/responsiveness.
I then decided to purchase a RAMPS 1.4 board and some NEMA 17 stepper motors. I a quite familiar with this equipment and figured I could always make another 3D printer with the parts after the contest.
After quite a bit of experimentation, I determined that a direct-drive gimble was the way to go (the bracket of the tilt motor was mounted directly to the shaft of the pan motor and the laser/camera bracket was mounted directly to the tilt motor shaft).
After quite a bit of code writing and debugging, I got it working. I was amazed at the accuracy and responsiveness, but had to play with the code to get the robot to “lead” the target to compensate for image processing/motor movement delays.