FINAL INDEPENDENT PROJECT
clear all
close all
clc
% Inputs
% Length of robotic arms
l1 = 1;
l2 = 0.5;
% Set of angles for the movement of robotic arms
theta1 = linspace(0,90,10);
theta2 = linspace(0,90,10);
ct=1; % Counter with starting value assigned as 1
for i = 1:length(theta1) % Iterating i from 1 to 10 as theta1 has 10 values
THETA1 = theta1(i);
for j = 1:length(theta2)
THETA2 = theta2(j);
% Coordinates of start point of first arm
x0 = 0;
y0 = 0;
% Coordinates of end point of 1st arm / start point of 2nd arm
x1 = l1*cosd(THETA1);
y1 = l1*sind(THETA1);
% Coordinates of end point of 2nd arm
x2 = x1 + l2*cosd(THETA2);
y2 = y1 + l2*sind(THETA2);
% Plotting
% Coordinates of arms assigned over a set of theta1 and theta2
plot([x0 x1],[y0 y1],[x1 x2],[y1 y2],'linewidth',3,'marker','*');
% The limits of x-axis and y-axis
axis([-0.1 1.5 0 1.5]);
% To cease the animation from jumping between subsequent figures
pause(0.03)
% Collecting frames of figures to comprise a movie/animation
M(ct) = getframe(gcf);
ct=ct+1;
end
end
% To make a movie of the collected frames
movie(M)
% Saving the movies in '.avi' format
videofile = VideoWriter('forward_kinematics.avi','Uncompressed AVI');
open(videofile)
% Writing the movie in the videofile created
writeVideo(videofile,M)
close(videofile)