PUMA560AKB Load kinematic and dynamic data for a Puma 560 manipulator PUMA560AKB Defines the object 'p560m' in current workspace which describes the kinematic and dynamic characterstics of a Unimation Puma 560 manipulator modified DH conventions and using the data and conventions of: Armstrong, Khatib and Burdick 1986. "The Explicit Dynamic Model and Inertial Parameters of the Puma 560 Arm" Also define the vector qz which corresponds to the zero joint angle configuration, qr which is the vertical 'READY' configuration, and qstretch in which the arm is stretched out in the X direction. See also: ROBOT, PUMA560, STANFORD, TWOLINK.
0001 %PUMA560AKB Load kinematic and dynamic data for a Puma 560 manipulator 0002 % 0003 % PUMA560AKB 0004 % 0005 % Defines the object 'p560m' in current workspace which describes the 0006 % kinematic and dynamic characterstics of a Unimation Puma 560 manipulator 0007 % modified DH conventions and using the data and conventions of: 0008 % 0009 % Armstrong, Khatib and Burdick 1986. 0010 % "The Explicit Dynamic Model and Inertial Parameters of the Puma 560 Arm" 0011 % 0012 % Also define the vector qz which corresponds to the zero joint 0013 % angle configuration, qr which is the vertical 'READY' configuration, 0014 % and qstretch in which the arm is stretched out in the X direction. 0015 % 0016 % See also: ROBOT, PUMA560, STANFORD, TWOLINK. 0017 0018 % Copyright (C) 1993-2008, by Peter I. Corke 0019 % 0020 % This file is part of The Robotics Toolbox for Matlab (RTB). 0021 % 0022 % RTB is free software: you can redistribute it and/or modify 0023 % it under the terms of the GNU Lesser General Public License as published by 0024 % the Free Software Foundation, either version 3 of the License, or 0025 % (at your option) any later version. 0026 % 0027 % RTB is distributed in the hope that it will be useful, 0028 % but WITHOUT ANY WARRANTY; without even the implied warranty of 0029 % MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 0030 % GNU Lesser General Public License for more details. 0031 % 0032 % You should have received a copy of the GNU Leser General Public License 0033 % along with RTB. If not, see <http://www.gnu.org/licenses/>. 0034 0035 clear L 0036 % alpha A theta D sigma 0037 L{1} = link([0 0 0 0 0], 'mod'); 0038 L{2} = link([-pi/2 0 0 0.2435 0], 'mod'); 0039 L{3} = link([0 0.4318 0 -0.0934 0], 'mod'); 0040 L{4} = link([pi/2 -0.0203 0 .4331 0], 'mod'); 0041 L{5} = link([-pi/2 0 0 0 0], 'mod'); 0042 L{6} = link([pi/2 0 0 0 0], 'mod'); 0043 0044 L{1}.m = 0; 0045 L{2}.m = 17.4; 0046 L{3}.m = 4.8; 0047 L{4}.m = 0.82; 0048 L{5}.m = 0.34; 0049 L{6}.m = .09; 0050 0051 % rx ry rz 0052 L{1}.r = [0 0 0 ]; 0053 L{2}.r = [0.068 0.006 -0.016]; 0054 L{3}.r = [0 -0.070 0.014 ]; 0055 L{4}.r = [0 0 -0.019]; 0056 L{5}.r = [0 0 0 ]; 0057 L{6}.r = [0 0 .032 ]; 0058 0059 % Ixx Iyy Izz Ixy Iyz Ixz 0060 L{1}.I = [0 0 0.35 0 0 0]; 0061 L{2}.I = [.13 .524 .539 0 0 0]; 0062 L{3}.I = [.066 .0125 .066 0 0 0]; 0063 L{4}.I = [1.8e-3 1.8e-3 1.3e-3 0 0 0]; 0064 L{5}.I = [.3e-3 .3e-3 .4e-3 0 0 0]; 0065 L{6}.I = [.15e-3 .15e-3 .04e-3 0 0 0]; 0066 0067 L{1}.Jm = 291e-6; 0068 L{2}.Jm = 409e-6; 0069 L{3}.Jm = 299e-6; 0070 L{4}.Jm = 35e-6; 0071 L{5}.Jm = 35e-6; 0072 L{6}.Jm = 35e-6; 0073 0074 L{1}.G = -62.6111; 0075 L{2}.G = 107.815; 0076 L{3}.G = -53.7063; 0077 L{4}.G = 76.0364; 0078 L{5}.G = 71.923; 0079 L{6}.G = 76.686; 0080 0081 % viscous friction (motor referenced) 0082 % unknown 0083 0084 % Coulomb friction (motor referenced) 0085 % unknown 0086 0087 % 0088 % some useful poses 0089 % 0090 qz = [0 0 0 0 0 0]; % zero angles, L shaped pose 0091 qr = [0 -pi/2 pi/2 0 0 0]; % ready pose, arm up 0092 qstretch = [0 0 pi/2 0 0 0]; % horizontal along x-axis 0093 0094 p560m = robot(L, 'Puma560-AKB', 'Unimation', 'AK&B'); 0095 clear L