Challenge

Week 2- 2R Robotic Arm Challenge

Aim :- To Write a program in Matlab to simulate the forward kinematics of a 2R Robotic Arm.

Objective :-

  • Write a program to simulate forward kinematics of a 2R Robotic Arm
  • To create a Movie/Animation from the plots obtained from the program

Theory:-

-A robotic arm is a type of mechanical arm, usually programmable , with similar functions to a human arm; the arm may be the sum total of the mechanism or may be part of a more complex robot. The links of such a manipulator are connected by joints allowing either rotational motion (such as in an articulated robot) or translational (linear) displacement. The links of the manipulator can be considered to form a kinematic chain. The terminus of the kinematic chain of the manipulator is called the end effector and it is analogous to the human hamd.

-In this project, we consider a 2R robotic arm. A 2R robotic arm represents a robotic arm with two rotations. i.e. it has two links which rotate or work over a two-dimensional plane with each of links having a single degree of freedom.

-Also, both the links are restricted to a 90° rotation with respect to the axes. Fig below shows the 2R robotic arm having many parts as described.

  • Let , L1 & L2 be the lengths of the link-1 & link-2 Respectively.
  • Let , θ1">be the angle formed by link-1 with horizontal.
  • Let , θ2">be the angle formed by link-2 with horizontal.
  • Let , the starting and end co-ordinates of link-1 to be (x, y) and (x, y)
  • Let , the starting and end co-ordinates of link-2 to be (x, y) and (x, y)

Code Explanation :-

  • Programing Language used Matlab Online
  • starting the program by using comments
  • Providing the input variables like Predefining the length/values of the robotic arms, i.e. l1and l2
  • Providing the values for theta-1 & theta-2 using linspace command for theta=0 to 90degrees for 12 values
  • Providing the Cr (compression ratio ) value as a specific digit.
  • Now Using ‘for’ commandfor iterating the values of the desired variable.
    Again using ‘for’ commandfor providing movement to the second robotic arm.
  • Providing the eqn for the x1,y1,x2,y2 or say Defining the coordinates of both the robotic arms
  • Plotting all the coordinate values and providing the axis no. Using the pause command to make the plot look realistic
  • Incrementing the cr or compression ratio value by +1 each time it executes for loop.
  • All figures are assigned to a variable M, one at a time usingcr
  • Ending the ‘for’ loop twice .
  • using movie commandis to combine all the figures saved in the M file to make ananimation/movie. At end saving the movie in .avi format.

Matlab Code :-

% Program for 2R Robotic Arm Challenge
clear all

%Inputs
l1=1;
l2=0.5;
theta1=linspace(0,90,12);
theta2=linspace(0,90,12);
ct=1;
for i=1:length(theta1)
THETA1=theta1(i);
for j=1:length(theta2)
THETA2=theta2(j);
x0=0;
y0=0;
x1=l1*cosd(THETA1);
y1=l1*sind(THETA1);
x2=x1+l2*cosd(THETA2);
y2=y1+l2*sind(THETA2);
%Plotting
plot([x0,x1],[y0,y1] , [x1,x2],[y1,y2],'Linewidth',2)
axis([-0.1 2 0 1.5])
pause(0.01)
M(ct)=getframe(gcf);
ct=ct+1;
end
end
movie(M)
Videofile=VideoWriter('robotic_arm.avi','Uncompressed AVI');
open(Videofile)
writeVideo(Videofile,M)
close(Videofile)

Result/Conclusion :-


Thus we have simulated 2R robotic arm by using the matlabprogramming and also created a Movie/Animation from the plots obtained from theprogram


- below is the link given for the program output for movie/animation of a 2R robotic arm

https://www.youtube.com/watch?v=_S6kz6-VUX8

Your portfolio, next

Ship work like this
in your own course.

Talk to a career counsellor

Free 20-minute call. We'll map the right course to where you want to work.

By submitting you agree to our Terms and Privacy Policy.