0% found this document useful (0 votes)
21 views38 pages

Report

The project report details the design and development of a 6-DOF robotic arm with obstacle avoidance capabilities, aimed at enhancing industrial automation. The arm is engineered to perform precise pick-and-place tasks while adapting to dynamic environments, thereby improving efficiency and reliability. The report includes sections on mechanical design, kinematic analysis, and the overall significance of robotic arms in various applications.

Uploaded by

jverma0690
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
21 views38 pages

Report

The project report details the design and development of a 6-DOF robotic arm with obstacle avoidance capabilities, aimed at enhancing industrial automation. The arm is engineered to perform precise pick-and-place tasks while adapting to dynamic environments, thereby improving efficiency and reliability. The report includes sections on mechanical design, kinematic analysis, and the overall significance of robotic arms in various applications.

Uploaded by

jverma0690
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 38

Design and Development of a Robotic Arm with

obstacle avoidance
PROJECT REPORT

SUBMITTED IN PARTIAL FULFILLMENT OF THE REQUIREMENT FOR


THE AWARD OF THE DEGREE OF

BACHELOR OF TECHNOLOGY
Mechanical Engineering

SUBMITTED BY

Raj Vardhan - 20213033


Saurabh Kumar - 20213029
Pushpendra Verma - 20213145
Priyanshu Bhushan-20213026

Mechanical Engineering Department


MOTILAL NEHRU NATIONAL INSTITUTE OF TECHNOLOGY ALLAHABAD PRAYAGRAJ -
211004, INDIA
December 2024

Candidate's Declaration

We hereby certify that the work which is being presented in the project report entitled “Design and

Development of a Robotic Arm with obstacle avoidance” in partial fulfillment of requirements for

the award of degree of Bachelor of Technology in Mechanical Engineering at MOTILAL NEHRU

NATIONAL INSTITUTE OF TECHNOLOGY ALLAHABAD is an authentic record of our work

carried out during a period from August 2024 to December 2024 under the supervision of Dr. S.B.

Mishra. The matter embodied in the thesis has not been submitted to any other University / Institute

for the award of any degree.

Signature of the Students

Raj Vardhan - 20213033

Saurabh Kumar - 20213029

Pushpendra Verma - 20213145

Priyanshu Bhushan-20213026

This is to certify that the above statement made by the candidates is correct to the best of my

knowledge.

Signature of Supervisor (s)

Date: Dr. S.B. Mishra

Place:

[2]
Acknowledgements

We would like to express our sincere gratitude to the Mechanical Engineering Department of MNNIT

Allahabad for their continuous encouragement and support during this endeavour. Our initiative has

been greatly influenced by the department's commitment to creating a collaborative academic

environment, granting access to cutting-edge facilities, and receiving advice from renowned faculty

members.

We would especially want to express our gratitude to Dr. S.B. Mishra, our project mentor, for his

important advice, unwavering support, and wise recommendations during this project. Their

knowledge and guidance have been essential in helping us overcome obstacles and finish our task

successfully.

With deep appreciation, we recognize the crucial part the department and our mentor played in

supporting our academic and research endeavours and making this project possible.

Raj Vardhan - 20213033

Saurabh Kumar - 20213029

Pushpendra Verma - 20213145

Priyanshu Bhushan-20213026

[3]
Abstract

The design and development of a robotic arm with obstacle avoidance represents a significant

advancement in industrial automation and robotics. The goal of this project is to build a 6-DOF

robotic arm that can precisely pick and put objects and is adaptable to changing conditions. The arm is

designed to function well under a variety of circumstances, offering accuracy and flexibility while

performing its duties.

The design improves operating dependability, accuracy, and mechanical efficiency by building on

previous developments. Smooth, accurate motions are guaranteed by a strong linkage system that also

preserves structural integrity and reduces wear. The design maximizes performance by emphasizing

lightweight construction using 3D-printed PLA material. By pushing the limits of robotic arm

functioning with creative mechanical design and cutting-edge motion planning techniques for more

effective and flexible systems, the project has great potential for industrial automation, material

handling, and other precision-driven jobs.

[4]
Table of Contents

S. No. Title Page No.

1 Candidate's Declaration 2

2 Acknowledgements 3

3 Abstract 4

4 Table of Content 5-7

5 List of Figures 8

6 List of Tables 9

7 Chapter 1: Introduction 9-10

1.1 Background and Motivation 9

1.2 Objective of the Project 10

8 Chapter 2: Overview of Robotic Arm Technology 11-13

2.1 Key Features 11

2.2 Structure and Components 12

2.3 Applications of Robotic Arm 12

2.4 Advantages of Robotic Arm 13

9 Chapter 3: Mechanical Design of Robotic Arm 14-22

3.1 Key Design Specifications 14-15

3.2 Determination of Torque Requirement of Joints 16

3.2.1 Calculation Method 16

[5]
3.2.2 Torque at Each Joint 16-18

[6]
3.2.3 Value of torque for different payload 19

3.3 Motor Selection 20

3.4 Calculation for Maximum Payload 21

3.5 Range of the Robotic Arm 22

10 Chapter 4: Kinematic Analysis of Robotic Arm 22-27

4.1 Types of Joints 22

4.2 Kinematics 23

4.3 Denavit-Hartenberg (DH) Convention 24

4.3.1 Denavit-Hartenberg Convention to assign 24


frame
4.3.2 DH Parameters 25

4.3.3 Homogeneous Transformation Matrix 26

4.3.4 Steps to Apply DH Convention 27

11 Chapter 5: Approach to Robotic Arm Kinematics 28-30

5.1 Tools and Programming Environment 29

5.2 Kinematics Code Flow for Robotic Arm 29-30

5.3 Flowchart of Kinematics Code 31

12 Chapter 6: Results and Discussion 32

13 References 34

[7]
List of Figures

S. No. Figure Page No.

[8]
List of Tables

S. No. Table Page No.

1 Table 3.1: Table outlining the joint specifications of a

6-DOF robotic arm, including their movement types,

ranges of motion, and functional purposes.

[9]
Chapter 1

Introduction

Robotic arms are now essential in many industries because they can efficiently and

precisely carry out activities like material handling, assembly, and pick-and-place

operations. Obstacles in the arm's operating environment, however, provide a significant

barrier to industrial automation since they can disrupt operations, decrease task efficiency,

and possibly harm the robotic arm as well as nearby equipment. The efficacy of traditional

robotic arms in dynamic situations with frequent impediments is limited by their frequent

inability to identify and avoid obstructions.

This project aims to overcome these limitations by designing and developing a robotic arm

with obstacle avoidance capabilities. The project intends to enhance the arm's versatility,

accuracy, and overall efficiency by combining advanced motion planning techniques with

a robust mechanical design, making the arm a more reliable tool for industrial applications

where the environment may change quickly. The arm is designed to dynamically explore

its environment so that it can continuously carry out tasks like pick-and-place work.

1.1 Background and Motivation

Robotic arms have revolutionized industrial automation by performing repetitive and

precise tasks like pick-and-place operations, assembly, and material handling. Especially in

production environments, these technologies offer notable gains in productivity, accuracy,

and efficiency. However, robotic arms frequently operate in challenging and dynamic
[10]
surroundings in real-world settings, where obstructions may impede their progress and

cause them to pause their jobs.

Inefficiencies, possible harm to the arm and surrounding equipment, and a greater need for

human intervention result from the incapacity to recognize and steer clear of such

obstructions. The goal of this research is to overcome this constraint by creating a robotic

arm that can maneuver around obstructions and function smoothly under changing

conditions.

1.2 Objective of the Project

In order to assure its adaptability in dynamic contexts, the project's goal is to design and

construct a six-DOF robotic arm that can conduct pick-and-place tasks with high precision

and incorporate obstacle avoidance. The project's goal is to develop a mechanical design

that is dependable, effective, and capable of handling unforeseen challenges while in use.

The robotic arm will be able to identify barriers in its surroundings and change its course in

response by incorporating sophisticated motion planning techniques, guaranteeing optimal

task performance and continuous operation.

[11]
Chapter 2

Overview of Robotic Arm Technology

Robotic arm technology refers to programmable mechanical devices designed to replicate

the motion and functionality of human arms. They are integral to automation, offering

precision, repeatability, and efficiency in tasks ranging from industrial production to

advanced research.

2.1 Key Features

Degrees of Freedom (DOF):

Robotic arms typically feature multiple degrees of freedom, representing independent

movements. For industrial applications, 6-DOF arms are standard, allowing precise spatial

positioning and orientation.

Kinematics:

Forward Kinematics: Calculates the position of the end-effector based on joint angles and

link lengths.

Inverse Kinematics: Determines joint angles to achieve a desired position, critical for

precision tasks.

Control Systems:

Microcontrollers, PLCs (Programmable Logic Controllers), or specialized robotic software

can be used to drive robotic arms, allowing for real-time operation and flexibility.

[12]
2.2 Structure and Components

Base: Provides stability and houses motors for rotational motion.

Joints and Links: Allow rotational or translational movement, determining the range of

motion.

Actuators: Motors (servo, stepper, or pneumatic) that drive joint movements.

Sensors: Include ultrasonic, vision, and force sensors for feedback, obstacle detection, and

precise positioning.

End-Effector: Tools such as grippers, welders, or screwdrivers attached to the arm's

endpoint for performing tasks.

Controller: The processing unit that interprets commands and controls the arm's

movements.

2.3 Applications

Industrial Automation:

Robotic arms enhance manufacturing by carrying out repetitive tasks such as welding,

painting, assembly, and pick-and-place operations. They reduce human interaction in

dangerous situations, increasing efficiency, accuracy, and safety.

Healthcare:

High-precision minimally invasive surgical treatments are made possible by robotic arms

such as the Da Vinci system. In rehabilitation therapy, they help patients regain their

mobility, and in prostheses, they mimic natural movements.

Automotive Industry:

[13]
Robotic arms are essential to the welding, painting, and assembly of parts like doors and

engines in the automobile industry. Their purpose is to expedite production lines and

guarantee superior finishing.

Electronics Manufacturing:

Robotic arms can be utilized to assemble circuit boards by precisely handling small parts.

In high-tech settings, they carry out duties like soldering, microchip placement, and quality

control.

Agriculture:

High yield and less waste are ensured by the employment of robotic arms in tasks

including accurate planting, automated fruit and vegetable harvesting, and sensor-based

crop health monitoring.

2.4 Advantages of Robotic Arms

Precision and Accuracy:

Robotic arms can achieve high levels of precision, ensuring accurate and dependable

results. This is especially helpful in industries like electronics manufacturing where exact

tolerances are crucial.

Repeatability:

The ability of robotic arms to do repeated, boring tasks reduces the likelihood of errors and

ensures consistency in processes like painting or assembly.

Precision and Accuracy:

Robotic arms can achieve high levels of precision, ensuring accurate and dependable

results. This is especially helpful in industries like electronics manufacturing where exact

tolerances are crucial.

Repeatability:
[14]
Robotic arms can do repetitive, boring tasks, reducing the chance of error and ensuring

uniformity in processes like painting or assembly.

Chapter 3

Mechanical Design of Robotic Arm

The mechanical design of a robotic arm must have many essential phases to ensure that the

arm can do its intended tasks with accuracy, strength, and efficiency. The processes in the

mechanical design process are summarized below, together with payload, torque, weight,

and hardware selection calculations.

3.1 Key Design Specifications:

The design of a robotic arm begins with understanding the specific tasks the arm is

intended to perform and the environment in which it will operate. The key design

considerations are ensuring flexibility, precision, and strength while optimizing efficiency.

Degrees of Freedom (DOF):

Six degrees of freedom are built into the robotic arm's design to allow for complete spatial

movement. This enables the arm to rotate around each of the X, Y, and Z axes in addition

to moving along them. For intricate activities requiring a high degree of precision and

flexibility, including pick-and-place, a 6-DOF arm is perfect.

Range of Motion:

[15]
For a pick-and-place robotic arm, the standard range of motion for each joint is designed to

ensure maximum coverage of the workspace.

Table 3.1: Table outlining the joint specifications of a 6-DOF robotic arm, including
their movement types, ranges of motion, and functional purposes.

Joint Type of Movement Range of Purpose

Motion

Base Rotation Rotation around ±180° Provides horizontal

(Joint 1) vertical axis reach and full

workspace coverage.

Shoulder Rotation Vertical rotation ±90° Controls the arm’s

(Joint 2) elevation and vertical

movement.

Elbow Rotation Extension and ±135° Allows for extending

(Joint 3) retraction and retracting the arm

for reach and flexibility.

Wrist Pitch Pitch (tilt) of the ±90° Controls the pitch of the

(Joint 4) end-effector end-effector to precisely

place objects.

Wrist Yaw Rotation of the end- ±90° Provides rotational

(Joint 5) effector flexibility to orient

objects during

operations.

Wrist Roll Rotation around the ±180° Allows for orienting

[16]
(Joint 6) end-effector objects and fine

adjustments during

pick-and-place tasks.

3.2 Determination of Torque Requirement of Joints:

An actuator is installed at each joint in a robotic arm design to provide motion and

overcome the arm's links' resistance. The two main causes of motion resistance are inertia

and gravity. Each joint must have enough torque to counteract the resistive forces brought

on by these elements, especially gravity. To choose an actuator with the right torque rating,

it is essential to calculate the gravity-induced resistive torque operating on each link of the

robotic arm, which is covered in this section.

3.2.1 Calculation Method:

The resistive torque T due to gravity acting on a link can be calculated as:

Τ =r . W .sin (θ)

Where:

r = distance from the joint to the center of mass of the link (length of the link or lever arm).

W = weight of the link = 𝑚⋅g

θ = angle between the link and the direction of gravity (90° for horizontal, as gravity acts

directly downward).

3.2.2 Torque at Each Joint:

Base Joint (T1g):

[17]
The waist rotation does not cause motion of any link in the vertical plane (i.e. against

gravity).

T 1 g=0 Nm

Shoulder Joint (T2g):

The shoulder joint experiences the highest torque when the arm is fully extended

horizontally, as it has to support the weight of the entire arm, including the links attached

to the elbow and wrist.

T 2 g=W 2 (L2/2)+Wj 3(L 2)+W 3(L 2+ L 3/2)+(Wj 4 +W 4 +W 5+Wgripper +Wpayload)(L 2+ L 3)

Elbow Joint (T3g):

The elbow joint experiences torque based on the weight of the forearm. The torque at the

elbow will be highest when the arm is stretched out, and the forearm is extended.

T 3 g=W 3(L3 /2)+(Wj 4+ W 4+ W 5+Wgripper +Wpayload)(L 3)

Joint4 (T4g):

This joint experience torque based on the weight of the end-effector (gripper or tool) and

the wrist components. Similar to other joints, the torque will be greatest when the arm is

fully extended, with the end-effector farthest from the base.

T 4 g=W 4( L 4/2)+(W 5+Wgripper + Wpayload)(L 4)

Joint5 (T5g):

This joint experience torque based on the weight of the end-effector (gripper or tool) and

the wrist components.

T 5 g=(Wgripper +Wpayload )∗L 5

Joint6 (T6g):
[18]
Opening and closing of gripper jaws does not result in motion against gravity

T 6 g=0 N−m

Where:

T1g to T6g - The Resistive torques at each joint due to gravity

W1 to W5 - The weights of links L1 to L5

Wj1 to Wj5 - The weights of joints 1 to 5 (motor)

Wgripper - The weight of the gripper

Wpayload - The weight of the payload

L2 to L5 - The lengths of links L2 to L5

Table 3.2: Table showing the lengths and masses of the links in a robotic arm.

Link Length:

Link Length(mm)

L2 120

L3 90

L4 28

L5 88

Mass of Links:

Link Mass (gram) Weight (N)

W2 80 0.78748

[19]
W3 63 0.61797

W4 21 0.20601

W5 20 0.19622

Wgripper 26 0.25494

Wj 55 0.53955

[20]
3.2.3 Value of torque for different payload:

To determine the optimum payload for a 6-DOF robotic arm, calculate the torque required

at each joint for various payload weights using the provided formulas. When one or more

joints surpass their torque limits, the maximum payload is reached.

Table 3.3: Table showing the required joint torques for a robotic arm for two different

payload weights.

(i) For Wpayload=100g

Joint Torque(Nm) Joint Torque

T1g 0 T4g 0.043

T2g 0.671 T5g 0.054

T3g 0.224 T6g 0

[21]
(ii) For Wpayload=200g

Joint Torque(Nm) Joint Torque

T1g 0 T4g 0.043

T2g 0.671 T5g 0.054

T3g 0.224 T6g 0

(iii) For Wpayload=300g

Joint Torque(Nm) Joint Torque

T1g 0 T4g 0.0979

T2g 1.0832 T5g 0.1407

T3g 0.4004 T6g 0

3.3 Motor Selection:

In order to overcome the resistive forces at each joint, the robotic arm for this project needs

actuators that can produce enough torque. According to the torque calculations, the servo

motors listed below have been chosen.

MG996R Servo Motor:

The MG996R is chosen for its high torque capacity, making it ideal for supporting the

heavier links closer to the base, where the torque requirements are higher due to the

combined weight of the arm's links and payload.

SG90 Servo Motor:

The SG90 servo motor is selected for its compact size and lower torque requirement,

which is suitable for the wrist joints that experience lighter loads.

[22]
Table 3.4: Table comparing the torque and speed performance of two servo motors.

Torque Rating:

Motor Torque Rating-(at 4.8V) Torque Rating-(at 6.6V)

MG996R 0.921 Nm 1.079 Nm

SG90 0.117 Nm 0.157 Nm

Operating Speed:

Motor Operating Speed-(at 4.8V) Operating Speed-(at 6.6V)

MG996R 5.51 rad/s 6.98 rad/s

SG90 6.98 rad/s 8.73 rad/s

3.4 Calculation for Maximum Payload:

The maximum payload of the robotic arm is determined by calculating the torque at each

joint for different payloads and comparing it with the torque capacities of the servo motors.

The SG90 has a maximum torque of 0.1568 Nm, whereas the MG996R, which is utilized

for the first three joints, has a maximum torque of 1.079 Nm. The worst-case situation, in

which the arm is fully stretched horizontally and the torque is at its maximum, is assumed

in the calculations. The heaviest load for which all joint torques stay within the motors'

bounds and guarantee safe and effective operation is known as the maximum payload.

From the above analysis of torque results for various payloads and the torque capacities of

the selected motors, it was determined that the maximum payload the robotic arm can

lift without failure is 200 g. This ensures that the calculated torques at all joints remain

[23]
within the maximum torque limits of the MG996R and SG90 servo motors, ensuring safe

and efficient operation of the robotic arm.

3.4 Range of the Robotic Arm:

The maximum distance a robotic arm can go from its base to the end-effector when fully

extended is referred to as its range. When the arm is fully extended in a straight line, this is

computed as the sum of the link lengths.

When fully extended in a straight line, the total range is 326 mm. This range ensures that

the robotic arm can effectively perform pick-and-place tasks within its designated

workspace, maximizing its operational capability.

Chapter 4

Kinematic Analysis of Robotic Arm

Understanding an arm's motion without taking into account the forces or torques at play is

the main goal of kinematic analysis. It encompasses ideas like inverse kinematics, which

establishes the necessary joint angles for a specified end-effector position, and forward

kinematics, which computes the end-effector's position and orientation based on joint

parameters. In addition, the study models the arm's movements using Denavit-Hartenberg

(DH) parameters and links joint velocities to the end-effector's velocity using the Jacobian

matrix. In order to provide precise movement in applications like pick-and-place,

assembly, and path planning, this analysis is crucial for developing the arm's control

system.

[24]
4.1 Types of Joints:

Revolute Joints:

Revolute joints, like a door's hinge, permit rotation along a fixed axis. Because they allow

for angular movements at the wrist, elbow, and shoulder, they are the most often utilized

joints in robotic arms. These joints are crucial for articulated robotic arms because they

offer the flexibility needed for complex jobs and precise positioning.

Prismatic Joints:

The arm can extend or retract thanks to prismatic joints, which allow linear motion in a

straight line. They are frequently utilized in telescopic or scissor-lift devices, among other

applications where straight-line movement is crucial. For activities requiring simple and

accurate translational motion, these joints are essential.

4.2 Kinematics:

Forward Kinematics (FK):

In forward kinematics, the end-effector of a robotic arm is positioned and oriented

according to known joint characteristics, such as linear displacements for prismatic joints

or angles for revolute joints. The overall position and orientation of the end-effector in the

workspace is determined by multiplying transformation matrices that represent the motion

of each joint according to the Denavit-Hartenberg (DH) protocol. For tasks like trajectory

planning and simulating robotic arm movements, forward kinematics offers a simple

solution and is crucial.

[25]
Figure 4.1: Forward and inverse kinematics in robotics

Inverse Kinematics (IK):

Inverse kinematics is the process of figuring out the joint parameters needed to get the end-

effector in the desired position and orientation. Inverse kinematics is more complicated

than forward kinematics and frequently results in different solutions, no solution, or

singularities. In order to solve a set of nonlinear equations, iterative numerical methods or

geometric approaches are usually used. Real-world applications like as pick-and-place

tasks, where exact control over the end-effector's position is required, depend heavily on

inverse kinematics.

4.2 Denavit-Hartenberg (DH) Convention:

A standardized technique in robotics for representing the spatial relationship between

successive links of a robotic arm is the Denavit-Hartenberg (DH) convention. By

specifying a set of parameters for every joint and link, it simplifies the intricate kinematic

equations. These parameters are then utilized to determine the transformation matrices.

The end-effector's position and orientation can be systematically calculated thanks to these

matrices.

4.2.1 Denavit-Hartenberg Convention to assign frame:

Rule-1 Rule-2

[26]
The Z axis must be the axis of rotation for The X axis must be perpendicular both to

a revolute joint, or the direction of motion its own Z axis, and the Z axis of the frame

for a prismatic joint. before it.

Rule-3 Rule-4

All frames must follow the right-hand Each X axis must intersect the Z axis of

rule. the frame before it

Figure 4.2: Diagram showing a 6-DOF robotic arm with Denavit-Hartenberg parameters

labeled.

4.2.2 DH Parameters:

The DH convention uses four parameters to describe the relationship between two

successive coordinate frames attached to the robotic arm's joints.

Joint Angle(θ):

The angle of rotation around the Z-axis of the current joint to align it with the next

joint.Variable for revolute joints and constant for prismatic joints.

Link Offset(d):

The distance along the Z-axis from the origin of the current joint to the origin of the next

joint.Variable for prismatic joints and constant for revolute joints.


[27]
Link Length(a):

The distance along the X-axis from the Z-axis of the current joint to the Z-axis of the next

joint. It represents the physical length of the link between two joints.

Link Twist (α):

The angle of rotation around the X-axis to align the Z-axis of the current joint with the Z-

axis of the next joint. It describes how the link is twisted.

Table 4.1: DH parameters for a 6-DOF robotic arm

Link θi αi ai di

1 θ₁ 90° a2 a1

2 θ₂ 0° a3 0

3 θ₃ + 90 90° 0 0

4 θ₄ -90° 0 a4

5 θ₅ 90° 0 0

6 θ₆ 0° 0 a5

4.2.3 Homogeneous Transformation Matrix:

A 4x4 matrix called the Homogeneous Transformation Matrix (HTM) is used in robotics to

show the orientation and location of a joint or end-effector on a robotic arm in a single

matrix. By combining the displacement vector (3x1) with the rotation matrix (3x3), it

offers a consistent method of characterizing changes across frames in space.

Displacement Vector:

The 3x1 displacement vector indicates the location of the joint or end-effector of the

robotic arm in three dimensions. It specifies the component's precise coordinates (X, Y, Z)

[28]
in relation to a base frame. The displacement vector is essential for figuring out the arm's

overall location during tasks like pick-and-place operations since it allows one to compute

how far the arm has moved in space.

Figure 4.2: Displacement vector between two coordinate


frames

Rotation Matrix:

A 3x3 matrix known as the rotation matrix indicates how a robotic arm's end-effector or

joint is oriented in relation to a base or prior joint. Determining the arm's orientation in

space requires knowing how much a component has rotated around the X, Y, or Z axes.

The rotation matrix is utilized to record the alignment of the various arm parts following

each movement in both forward and inverse kinematics.

[29]
Figure 4.3: Illustration of a rotation matrix transforming a coordinate frame.

Homogeneous Transformation Matrix:

Figure 4.4: Illustration of a homogeneous transformation matrix representing both


rotation and translation.

4.2.4 Steps to Apply DH Convention:

Assign Coordinate Frames: Attach a coordinate frame to each joint of the robotic arm.

Define DH Parameters: Using the geometry of the robotic arm, define the values of

𝜃,𝑑,𝑎,𝛼 for each link.

Construct Transformation Matrices: For each link, create a transformation matrix using

the DH parameters.

Compute Forward Kinematics: Multiply the transformation matrices sequentially to

calculate the position and orientation of the end-effector.

Advantages of DH Convention:

 Simplifies the representation of kinematics for multi-link robotic arms.

 Provides a systematic way to compute forward kinematics.

[30]
 Universally adopted, making it easier to compare and share robotic arm designs.

[31]
Chapter 5

Approach to Robotic Arm Kinematics

In order to implement robotic arm kinematics, theoretical kinematic models must be

converted into functional code that can control the arm's movements. The method utilized

to precisely and effectively control the end-effector by coding the robotic arm's forward

and inverse kinematics is described in this section.

5.1 Tools and Programming Environment:

Programming Language: Python

Libraries Used: NumPy for matrix operations, including transformations and

multiplications. Matplotlib for visualizing the robotic arm’s movements in a 2D or 3D

workspace.

5.2 Kinematics Code Flow for Robotic Arm:

Defining the Problem: The objective was to use forward kinematics to create a 6-DOF

robotic arm simulation. We had to use joint characteristics to determine the end effector's

orientation and position.

Import Required Libraries: We imported the required libraries, including matplotlib for

graph plotting if necessary for visualization, NumPy for numerical computations, and

Sympy for symbolic mathematics (used for matrices and transformations).

[32]
Defining Arm Parameters: The link lengths and additional constants, such as a1, a2, a3,

a4, and a5, indicate the robotic arm's actual physical dimensions. These characteristics

serve as the foundation for the Denavit-Hartenberg (DH) table setup.

Set up the DH Table: We developed a Denavit-Hartenberg parameter table that contains

the constant and the joint angles (variables such as q1, q2, etc.). These specify how

successive joints relate to one another in terms of translation and rotation.

DH Transformation Matrix Function: Using the DH parameters, this function creates

the homogeneous transformation matrix for every pair of joints. We obtain both translation

and rotation between joints using the transformation matrix.

Iteratively Compute Transformation Matrices: The function's final matrix, which

provides the end effector's position and orientation, is obtained by multiplying the

individual transformation matrices as it iterates through the DH parameters for each joint.

Apply the Matrices: The final homogeneous transformation matrix is obtained by

multiplying the matrices at each step as they are applied sequentially from the robotic arm's

base to the end effector.

Finalize and Visualize: We can display the end effector's path for various joint

configurations or utilize the results of computing the final transformation matrix to

ascertain the end effector's position.

[33]
Figure 5.1: Flowchart illustrating the steps involved in robotic arm kinematics

Figure 5.2: 3D plot illustrating the visualization of a text and a circle in a 3D coordinate

system with x, y, and z axes

[34]
Chapter 6

Results and Discussion

6.1 Results:

Table 6.1: CAD Modelling Specifications

S. No. Material Specifications

1 Weight of Robotic Arm 800g

2 Payload 200g

3 Servo Motors Used / Torque Rating MG996R/ 11 kg-cm


SG90/ 1.6 kg-cm

Table 6.2: 3D Printing Specifications

S. No. Material Specifications

1 3D Printing Material Used Polylactic Acid (PLA)

2 Density of PLA 1.24-1.28g/cm³

3 Melting Temperature 160-180°C

[35]
4 Tensile Strength 50-70MPa

5 Elongation at Break 3-6%

6 Working Temperature for 3D Printing 210-220°C

7 3D Printing Time Around 20hours

8 Material Used in 3D Printing Around 900grams

[36]
6.2 Discussion:

[37]
References

1. Oluwajobi, A.O., & Oridate, A.A., Design and Development of an Educational 5-

DoF Robotic Arm, International Journal of Robotics and Automation Technology,

6, 55-65, 2019.

2. Spong, M. W., Hutchinson, S., & Vidyasagar, M. Robot Modeling and Control.

Wiley, 2nd Edition, 2020.

3. Craig, J. J. Introduction to Robotics: Mechanics and Control. Pearson Education,

4th Edition, 2017.

4. Denavit, J., & Hartenberg, R. S. A kinematic notation for lower-pair mechanisms

based on matrices, Journal of Applied Mechanics, 22, pp. 215–221, 1955.

5. Paul, R. P. Robot, Manipulators: Mathematics, Programming, and Control, The

MIT Press, 1981.

[38]

You might also like