ROBOT ARM Using Atmega32


ROBOT ARM Using Atmega32

Our project is a twenty four and half inch aluminum frame robotic arm with four degrees of freedom.
In our project we made the arm the second player in the classic game of Tic-Tac-Toe to demonstrate its programmable repeatable motion.  The arm consists of five servo motors, four to control the motion and one to control the end effecter (gripper). The arm moves tic-tac-toe pieces onto a board for its opponent and itself to give the user interactive control over the arm.
This project was a five week design project for ECE 476.  Video of the arms ranging from motion, game play, and feats of strength are below in the results section.

High Level Design


We are both members of the CU Snake Arm team so we were aware that the 2008 CU Snake Arm was lacking a delivery vehicle. Typical snake arms are attached to industrial robotic arms.  So we both thought that it would be nice to build a scale model for a possible delivery system or a possible end attachment for a future snake arm.

Background Math

This project does not implement inverse kinematics calculation on the mcu but we did make use of forward kinematics to aid in programming position.  The forward kinematics determines the location and angle of the end effecter.   To begin the calculation find the position of the first joint (x1,y1).  Assuming that the turntable is at position (x0,y0) and the length of the segments of the arm are L1 and L2 receptivity the calculations go as follows.
x1= L1cos(theta1) + x0
y1 =L1sin(theta1) + y0
The position of the second joint is given by:
x2 =x1 + L2cos(180-theta1-theta2)
y2= y2 + L2sin(180-theta1- theta2)

We define the angles to be those formed by two segments next to another, making them more easily observed.  Theta3 in our project was desired to be perpendicular to the horizontal axis and was (270 –theta1 –theta2) in the first quadrant.
Patents, Copyrights and Trademarks
Although a servo controlled robotic arm and Tic-Tac-Toe are not new ideas, there are no patent, copyright, or trademark issues involved with the project.  The arm was designed by the CU Snake Arm Team.
Program/Hardware Design

Logical Structure

The logical structure of the design is shown below:
Mechanical Details
Below is a CAD picture of the arm.  The complete CAD assembly and part files are in appendix B.  These files contain all the measurement data. The parts for the arm were machined in Emerson Lab at Cornell University.   The completed arm was just screwed to a table top to act as a base.
Hardware/Software Tradeoffs
The hardware tradeoffs we were considering involved the use of Hitec-5995TG servo motors with an average holding torque limit of approximately 2.2 ft lbs, as opposed to perhaps building a smaller arm with less powerful motors which would require less voltage to operate. We decided to go with the larger arm which was just within the limit of the more powerful servos. To get the power supply voltage at least up to 6 V, we decided to use a 6.4 V, 2 A current DC adapter.
The software tradeoff involved thinking about whether we needed to create manual PWM waveforms with a delay of at least 20 ms between pulses or use the in-built timers in the Mega32. For the most part we decided to use the timers because we discovered that it didn’t make any difference as to what delay we supplied between pulses. However, we ran out of timers to use once we got to servo 4, and so we had to generate a manual PWM waveform for the gripper servo.
ROBOT ARM Using Atmega32 Schemetic
The applicable standards were set by our own snake arm team. Any robotic arm built by us would have to use servo motors, and would have to have repeatable control with programmability.

Parts List:

Item Part # Quantity Price Total Price Location
Aluminum 8975K22 1 11.24 11.24 McMaster
Aluminum 8975K91 1 11.59 11.59 McMaster
Aluminum 9008K151 1 16.90 16.90 McMaster
Turn Table 6031K16 1 1.87 1.87 McMaster
Bearings 57155K352 3 7.50 22.50 McMaster
Dowel Pins (10) 90145A508 1 6.37 6.37 McMaster
Machine Screws (30) 91771A126 1 6.18 6.18 McMaster
Set Screws (25) 92778A117 1 6.18 6.18 McMaster
HS5955-TG Servos ———— 5 Borrowed
( $85)
———— Snake Arm
Gripper 358811 1 14.85 14.85
Servo Extenders ———— 4 Borrowed ———— Snake Arm
STK 500 ———— 1 Rent 15 476 Lab
Mega 32 ———— 1 Rent 8 476 Lab
330 Resistor ———— 5 ———— ———— 476 Lab
1K Resistor ———— 5 ———— ———— 476 Lab
1 M Resistor ———— 5 ———— ———— 476 Lab
Phototransistor 4n35 5 ———— ———— 476 Lab
White Board ———— 1 ———— ———— 476 Lab
Diodes 1N4001 5 ———– ———– 476 Lab
16 MHz Crystal ———— 1 ———— ———— 476 Lab
6.4V 2.0 Amps Power Supply ———— 1 Borrowed ———— Snake Arm
Wood Table Top ———— 1 10 10 Lowes
Wood Mount ———— 1 7 7 Walmart
Total 131.31

For more detail: ROBOT ARM Using Atmega32

About The Author

Ibrar Ayyub

I am an experienced technical writer holding a Master's degree in computer science from BZU Multan, Pakistan University. With a background spanning various industries, particularly in home automation and engineering, I have honed my skills in crafting clear and concise content. Proficient in leveraging infographics and diagrams, I strive to simplify complex concepts for readers. My strength lies in thorough research and presenting information in a structured and logical format.

Follow Us:

Leave a Comment

Your email address will not be published. Required fields are marked *

Scroll to Top