Arm_Robot - Poster
-
Upload
akash-saha -
Category
Documents
-
view
12 -
download
0
Transcript of Arm_Robot - Poster
The goal of this project was to control an Arm Robot to pick and place objects with the
additional assistance of FSRs (Force Sensitive Resistors) and Accelerometer. An Arduino
Uno communicating with the FSRs and the Accelerometers is responsible for driving the
servos. Using this configuration, the arm robot was able to pick and place objects at
particular positions. Accelerometers so placed help in determining the position of different
joints with respect to X, Y and Z axes. Also FSRs are used in order to determine the change
in the value of resistance when force is applied on every finger thereby helping in the pick
and place functionality.
The hardware that were used in this project are as follows:-
1. Arduino Uno
2. Accelerometers
3. Force Sensitive Resistor(FSRs)
4. SSC-32
The Arduino will collect the values from the sensors (accelerometers and the FSRs) as
analog values and then send the same to the arm robot readily available in the lab. The arm
robot s used to replicate the actions done by the humans using their hand
The delta robot was successful in pick and place the object as given to the arm robot. While
it was successful, certain times the arm robot was not moving as and when the human arm
was moving . The inverse kinematic algorithms were successful in moving the arm robot in
the desired direction. For the majority of the test runs, the delta robot was able to pick and
correctly place the dominos on the outlined map. The only back drop of the result is that we
were unable to program the robot to move up and down.
While the inverse kinematics proved to be accurate to a certain degree, to increase accuracy
it is necessary to calibrate the robot. This will allow better performance and allow the robot
to operate faster. For future advancements, the “move” functions can also be optimized in
terms of trajectory and accelerations to optimize the overall speed of the robot. Again, in
order to safely operate the robot at faster speeds, more advanced calibration would be
required.
As a part of the future works the same could be implemented using the BAXTER Research
robot or any other industrial robot. This would reduce the amount of human accidents as the
human is not within the workspace of the robot and can easily control the same .
Mission Statement
Rochester Institute of Technology
Principle of Robotics Project – Fall 2016
Hardware
FACULTY ADVISOR
Dr. Ferat Sahin
STUDENT
Karthik Sivarama Krishnan, Akash Saha
People
Software
Conclusion
Results
Kinematic Analysis
Arm Robot –Arduino
An Arduino Uno is used to receive analog values from the
FSRs and the accelerometers. The Arduino will take this data
and drive the appropriate servos using PWM signals.
Arduino Code
An Arduino Uno is used to receive analog signals from the FSRs and the Accelerometer.
The Arduino is responsible for parsing the incoming signals and assigning each of these
values to drive the servos. This servo value corresponds to the duty cycle of the PWM
signal the Arduino is sending.
Arm Robot – FSRs
A force-sensing resistor is used because its resistance changes
when a force or pressure is applied which can be used for the
gripper. They are also known as "force-sensitive resistor" and
are sometimes referred to by the initialism "FSR“.
Arm Robot –Accelerometers
An accelerometer gives the X, Y and Z axes at a particular
position and thereby it helped in moving the arm robot with
respect to the movement of the hand
SSC32
This board is specifically used to control the servo motors. No specific codes wee written
for the board. All the header files of the SSC32 were inherited into the Arduino code.
MABL Arm Controller
This as made in Matlab and was used to
check the angles of the joints. In other
words the position of the servo motors was
determined as in the center point and the
maximum and minimum point to which the
robot could move.
Home Position Position 2
Position 3
The inverse kinematics was used in order to make easy movement from one position to
another position. All the movements were made with respect to the x-axis as a result
rotational calculation was made only in the z axis with the following formula. There was
translational motion in the x and y axis.
Rotational matrix for
rotation along z axis