|
This example illustrates a computation with specific joint values for the offset articulate manipulator Jacobian. See textbook example description for an interpretation of the screw coordinates.
%clear all
a2 = 43; % cm d3 = 18; % cm d4 = 43; % cm
theta1 = 90; % deg theta2 = 90; % deg theta3 = -180; % deg theta23 = theta2 + theta3; % deg theta4 = 90; % deg theta5 = 90; % deg theta6 = -90; % deg
U511 = cosd(theta5)*cosd(theta6); U512 = -cosd(theta5)*sind(theta6); U521 = sind(theta5)*cosd(theta6); U522 = -sind(theta5)*sind(theta6); U411 = -sind(theta4)*sind(theta6) + U511*cosd(theta4); U412 = -sind(theta4)*cosd(theta6) + U512*cosd(theta4); U413 = -cosd(theta4)*sind(theta5); U421 = cosd(theta4)*sind(theta6) + U511*sind(theta4); U422 = cosd(theta4)*cosd(theta6) + U512*sind(theta4); U423 = -sind(theta4)*sind(theta5); U311 = U411*cosd(theta3) - U521*sind(theta3); U312 = U412*cosd(theta3) - U522*sind(theta3); U313 = -sind(theta3)*cosd(theta5) + U413*cosd(theta3); U314 = -d4*sind(theta3); U321 = U411*sind(theta3) + U521*cosd(theta3); U322 = U412*sind(theta3) + U522*cosd(theta3); U323 = cosd(theta3)*cosd(theta5) + U413*sind(theta3); U324 = d4*cosd(theta3); U211 = U411*cosd(theta23) - U521*sind(theta23); U212 = U412*cosd(theta23) - U522*sind(theta23); U213 = -sind(theta23)*cosd(theta5) + U413*cosd(theta23); U214 = a2* cosd(theta2) - d4*sind(theta23); U221 = U411*sind(theta23) + U521*cosd(theta23); U222 = U412*sind(theta23) + U522*cosd(theta23); U223 = cosd(theta23)*cosd(theta5) + U413*sind(theta23); U224 = a2*sind(theta2) + d4*cosd(theta23);
Jacobian(:,1) = [ U221; U222; U223; d3*U211 + U214*U421; d3*U212 + U214*U422; d3*U213 + U214*U423];
Jacobian(:,2) = [-U421; -U422; -U423; U214*U221 - U211*U224; U214*U222 - U212*U224; U214*U223 - U213*U224];
Jacobian(:,3) = [-U421; -U422; -U423; U314*U321 - U311*U324; U314*U322 - U312*U324; U314*U323 - U313*U324];
Jacobian(:,4) = [ U521; U522; cosd(theta5); 0; 0; 0];
Jacobian(:,5) = [ -sind(theta6); -cosd(theta6); 0; 0; 0; 0];
Jacobian(:,6) = [0; 0; 1; 0; 0; 0];
J6Res6 = Jacobian
J6Res6 = -1 0 0 0 1 0 0 0 0 1 0 0 0 1 1 0 0 1 0 -43 -43 0 0 0 18 -43 0 0 0 0 -43 0 0 0 0 0
This MATLAB example illustrates a computation from the textbook Fundamentals of Robot Mechanics by G. L. Long, Quintus-Hyperion Press, 2015. See http://www.RobotMechanicsControl.info for additional relevant files.