You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

88 lines
2.6 KiB

%MDL_STANFORD Create model of Stanford arm
%
% mdl_stanford
%
% Script creates the workspace variable stanf which describes the
% kinematic and dynamic characteristics of the Stanford (Scheinman) arm.
%
% Also defines the vectors:
% qz zero joint angle configuration.
%
% Note::
% - Gear ratios not currently known, though reflected armature inertia
% is known, so gear ratios are set to 1.
%
% References::
% - Kinematic data from "Modelling, Trajectory calculation and Servoing of
% a computer controlled arm". Stanford AIM-177. Figure 2.3
% - Dynamic data from "Robot manipulators: mathematics, programming and control"
% Paul 1981, Tables 6.4, 6.6
%
% See also SerialLink, mdl_puma560, mdl_puma560akb, mdl_twolink.
% Copyright (C) 1993-2011, by Peter I. Corke
%
% This file is part of The Robotics Toolbox for Matlab (RTB).
%
% RTB is free software: you can redistribute it and/or modify
% it under the terms of the GNU Lesser General Public License as published by
% the Free Software Foundation, either version 3 of the License, or
% (at your option) any later version.
%
% RTB is distributed in the hope that it will be useful,
% but WITHOUT ANY WARRANTY; without even the implied warranty of
% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
% GNU Lesser General Public License for more details.
%
% You should have received a copy of the GNU Leser General Public License
% along with RTB. If not, see <http://www.gnu.org/licenses/>.
clear L
% th d a alpha
L(1) = Link([ 0 0.412 0 -pi/2 0]);
L(2) = Link([ 0 0.154 0 pi/2 0]);
L(3) = Link([ -pi/2 0 0 0 1]);
L(4) = Link([ 0 0 0 -pi/2 0]);
L(5) = Link([ 0 0 0 pi/2 0]);
L(6) = Link([ 0 0.263 0 0 0]);
L(1).m = 9.29;
L(2).m = 5.01;
L(3).m = 4.25;
L(4).m = 1.08;
L(5).m = 0.630;
L(6).m = 0.51;
L(1).Jm = 0.953;
L(2).Jm = 2.193;
L(3).Jm = 0.782;
L(4).Jm = 0.106;
L(5).Jm = 0.097;
L(6).Jm = 0.020;
L(1).G = 1;
L(2).G = 1;
L(3).G = 1;
L(4).G = 1;
L(5).G = 1;
L(6).G = 1;
L(1).I = [0.276 0.255 0.071 0 0 0];
L(2).I = [0.108 0.018 0.100 0 0 0];
L(3).I = [2.51 2.51 0.006 0 0 0 ];
L(4).I = [0.002 0.001 0.001 0 0 0 ];
L(5).I = [0.003 0.0004 0 0 0 0];
L(6).I = [0.013 0.013 0.0003 0 0 0];
L(1).r = [0 0.0175 -0.1105];
L(2).r = [0 -1.054 0];
L(3).r = [0 0 -6.447];
L(4).r = [0 0.092 -0.054];
L(5).r = [0 0.566 0.003];
L(6).r = [0 0 1.554];
qz = [0 0 0 0 0 0];
stanf = SerialLink(L, 'name', 'Stanford arm');
stanf.plotopt = {'workspace', [-2 2 -2 2 -2 2]};