Group Project

Machine Design: Fab Academy 2018

Group Assignment:

Group Assignment Part2: Machine Design

In the previous week we completed the mechanical part of group assignment. This week , we have to control and program the robotic arm and set the initial positions of servo motors, then include the pick and drop functionality . Firstly, the robotic arm will be controlled via HM-10 BLE 4.0 Bluetooth and then it will be made to work automatically.

Wiring of the hardware components:

For testing purpose, we connected the wiring to each hardware component. All the VCCs and GNDs were made common.

Wiring of robot


Controling the Servo Motors:

There are seven Steppers used in making the robotic Arm. The necessary details about each servo is given below:

  1. The 1st servo or the 1st degree of freedom is obtained through Hking HK15138 Aanalog Servo, is attached below the base, and it is able to rotate from 0 to 180 degrees. Its main function is the rotation of the whole robotic arm.
  2. The 2nd and 3rd servos combinely render the 2nd degree of freedom through Hking HK15138 Aanalog Servo and are attached at the shoulder joint . They rotate from 0 to 180 degrees. Their main function is to lift the robotic arm from ground to initial position that we have set.
  3. The 4th servo render the 3rd degree of freedom through Hking HK15138 Aanalog Servo and is attached at the Elbow joint . It rotates from 0 to 180 degrees. Its main function is to support the upper part or the end factor.
  4. The 5th servo is responsible for 4th degree of freedom is obtained through Hking HK15138 Aanalog Servo. It is attached at the wrist joint, and it is able to rotate from 0 to 180 degrees. Its responsible for the linear movement of wrist.
  5. The 6th servo is responsible for 5th degree of freedom, obtained through Corona CS-939MG Aanalog Servo. It is attached at the wrist joint, and it is able to rotate from 0 to 180 degrees. Its responsible for the angular movement of wrist.
  6. The 7th servo or the 6th degree of freedom is obtained through Corona CS-939MG Aanalog Servo, is attached at the gripper, and it is able to rotate from 0 to 180 degrees. Its main function is to pick and release the object. This is responsible for the movementof base.

The microcontroller used is Arduino Leonardo with (ATMEGA32U4 : 8-bit Microcontroller with 16/32K Bytes of ISP Flash and USB Controller).Arduino Leonardo is a customized version of Arduino, having 44 pins as shown below:

ATMEGA32U4 Microcontroller

The Leonardo gives almost the same functionality as Arduino UNO but Leonardo has an extra serial communication pins. Since we are not allowed to use commercialized boards , so one of our colleagues Mr.Nadir Ali had made his leonardo board in week 9. To read more about this board, the link of his version of leonardo is given HERE

Arduino Leonardo Microcontroller

The whole functionality of the robotic arm is electrically manipulated using the Arduino Leonardo board. Following pins of Arduino Leonardo are used to connect and control the Servo motors and the Bluetooth module.

Name of Motor / BT pin Wire Color Arduino Leonardo Pin
a Brown 3
b White 5
c Orange 13
d Yellow 9
e Green 6
f Dark Yellow 10
RX Yellow 0
TX Orange 1

Table1 : Pin configuration for wiring and Programming

Programming :

The programming has been done in C language using the Arduino IDE. The bluetooth module(HM-10 BLE V 4.0) has been interfaced and Bluettoth Serial Terminal application has been used for giving the commands from the android phone. The arduino codes have been attached at the end of the documentation .

Working of Robotic Arm

Initially we were controling the robotic arm using the HM-10 BLE 4.0 Bluetooth module, for obtaining the values of servos to set the initial positions. Once we achieved the initial positions then we moved to programming it in a way so that it performs the task of pick and drop the object automatically. The video showing the working of robotic arm is attached at the top of page:


Group Picture with our Instructor Sir Sohail Ahmed Soomro after successful demonstration of project

Further Improvements:

Although the robotic arm works ery well but still it needs to be improved in following terms:

Conclusion:

This was our first group Project of Fab Academy, so it was a nice experience of collaborating together to make something. Moreover, we learnt about the working and controling a robotic arm; the basic factors like its kinematics, degrees of freedom, selection of hardware components like servos, and its limitations.

Click on Complete Documentation of Group Assignment to see the complete documentation of group project.