Challenge

Week 2- 2R Robotic Arm Challenge

animation video link

%Robotic arm animation
l1 = 1;
l2 = 0.5;
theta1 = linspace(0,90,10);
theta2 = linspace(0,90,10);
x0 =0;
y0= 0;
c = 1; % loop counter for frames
for i = 1:length(theta1)
    for j = 1:length(theta2)
        x1 = l1*cosd(theta1(i));
        y1 = l1*sind(theta1(i));
        
        x2 = x1 + l2*cosd(theta2(j));
        y2 = y1 + l2*sind(theta2(j));
        %plotting
        plot([x0,x1],[y0,y1],[x1,x2],[y1,y2], 'linewidth',3);
        axis([-1 2 0 2]);
        pause(0.001)
        M(c) = getframe(gcf);
        c = c + 1;
    end
end
%creating a movie using the frames
movie(M)
videofile = VideoWriter('forward kinematics.avi', 'Uncompressed AVI');
open(videofile);
writeVideo(videofile,M);
close(videofile);

Explanation-

the values of theta1 and theta2 are stored as arrays

both the lines are printed in one command with this line

changing the x axis from -1 to 2 and y axis from 0 to 2

pausing the plots by 0.001s for visibility and presentation

M is an array that stores the frames. gcf - get current figure

the counter is increased in the end. This way all the frames will be stored.

creating a movie using the frames M and storing it as 'forward kinematics.avi.'

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.