I was tasked by the local high school to design a robot arm for their robotics class. The idea was that all the custom parts for it could be cut out on the class laser cutter and assembled by the students using stock fasteners, motors, and controller. Here's a photo of the completed prototype:
Constructed of 1/8" MDF and acetal copolymer, it has has three controllable axes with a manually-adjustable wrist joint. The controller is a Parallax Activity Board. The three axes are driven by Parallax Servo 360s, which are externally geared down to provide more torque. The gripper, which can be removed to allow other kinds of end effectors, is driven by a cheap 9G servo from HobbyKing. The Z-axis bearing is a cheap 4" lazy-susan ball-bearing unit from McMaster-Carr. The arm bearings consist of acetal sleeves riding on shoulder screws. There is no friction against the MDF to cause wear. Once I was happy with the design, I wrote an assembly manual (too big to attach, unfortunately) so the students could assemble their own arms from parts they cut on the laser. The CAD files for the arm parts are in Rhino3D format, although I actually designed them in CorelDraw.
Once I had an operational arm, I had to come up with some driver software for it. Since the class has been using BlocklyProp, that was an easy choice of platform. But, boy!, was I in for a learning adventure! I had never really used Blockly, so had to learn that (which was really easy). But I wanted custom blocks just for the robot, and that's where things began to get complicated. However, thanks to some amazing and incredibly patient and generous support from Matt Matz, along with some custom Blockly internals he provided, I was able to create custom blocks and get them into the toolbox. The driver software is written in C -- not my favorite language by a long shot, but more than adequate for the job -- and ported to my Blockly Solo repository on github, from which it runs -- another learning adventure. Here's a screen shot of BlocklyProp with the robotic arm tool flyout from the toolbox:
I still have some servo driver issues to fine tune, but the arm looks like it will perform well in the class (assuming classes in Washington State start up again before June). Once it has been proven in the classroom, I'll post the CAD files, a bill-of-materials, and other documents here in the forum.