Week 3.2 - 2R Robotic Arm Challenge
AIM : WRITE A PROGRAM IN MATLAB TO SIMULATE THE FORWARD KINEMATICS OF A 2R ROBOTIC ARM
PROCEDURE : (EXPLANATION OF CODE)
- NOW FIRST GIVE INPUTS OF LENGTH LINK 1 & LINK 2
- FOR MULTIPLE VALUES OF THETA LINSPACE COMMAND FROM 0 TO 90 DEG 10 VALUES
- USING COUNTOR FOR EXECUTION OF VALUES
- USING FOR LOOP FOR MUTLIPLE VALUES OF THETA 1
- INDEXING THETA 1
- AGAIN USING FOR LOOP FOR MULTIPLE VALUES OF THETA 2
- INDEXING THETA 2
- METIONING 3 CO-ORDINATES IN FOR LOOP
- PLOT COMMAND FOR PLOTTING CO-ORDINATES
- AXIS COMMAND FOR SETTING LIMITS OF X & YAXIS
- PAUSE COMMSND FOR SLOWER ANIMATION EFFECT
- GETFRAME COMMAND AND SAVED IT IN M ARRAY
- FOR LOOP END
- MOVIE COMMAND FOR ANIMATION
- CREATE A VIDEO FILE USING VIDEOWRITER COMMAND
- OPEN VIDEO FILE
- WRITE EACH FRAME IN THE FILE
- CLOSE VIDEO
clear all
close all
clc
%inputs
l1 = 1;
l2 = 0.5;
theta1 = linspace(0,90,10);
theta2 = linspace(0,90,10);
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);
plot([x0 x1],[y0 y1],[x1 x2],[y1 y2],'linewidth',3)
axis([-0.1 1.5 0 1.5])
pause(0.03)
M(ct) = getframe(gcf);
ct = ct+1;
end
end
movie(M)
videofile = VideoWriter('forward_kinematics.avi','Uncompressed AVI');
open(videofile)
writeVideo(videofile,M)
close(videofile)
YOUTUBE VIDEO LINK : https://youtu.be/m9iO77h7UQQ