%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% PARAMETERS Returns a data structure containing the parameters of the Mitsubishi PA10 robot with 6DOF. Author: Arturo Gil. Universidad Miguel Hernández de Elche. email: arturo.gil@umh.es date: 03/01/2012 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
0001 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 0002 % PARAMETERS Returns a data structure containing the parameters of the 0003 % Mitsubishi PA10 robot with 6DOF. 0004 % 0005 % Author: Arturo Gil. Universidad Miguel Hernández de Elche. 0006 % email: arturo.gil@umh.es date: 03/01/2012 0007 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 0008 0009 % Copyright (C) 2012, by Arturo Gil Aparicio 0010 % 0011 % This file is part of ARTE (A Robotics Toolbox for Education). 0012 % 0013 % ARTE is free software: you can redistribute it and/or modify 0014 % it under the terms of the GNU Lesser General Public License as published by 0015 % the Free Software Foundation, either version 3 of the License, or 0016 % (at your option) any later version. 0017 % 0018 % ARTE is distributed in the hope that it will be useful, 0019 % but WITHOUT ANY WARRANTY; without even the implied warranty of 0020 % MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 0021 % GNU Lesser General Public License for more details. 0022 % 0023 % You should have received a copy of the GNU Leser General Public License 0024 % along with ARTE. If not, see <http://www.gnu.org/licenses/>. 0025 function robot = parameters() 0026 0027 robot.name='Mitsubishi PA-10 6DOF robotic arm'; 0028 0029 %kinematic data 0030 robot.DH.theta= '[q(1) q(2)+pi/2 q(3)+pi/2 q(4) q(5) q(6)]'; 0031 robot.DH.d='[0.315 0 0 0.5 0 0.08]'; 0032 robot.DH.a='[0 0.45 0 0 0 0]'; 0033 robot.DH.alpha= '[pi/2 0 pi/2 -pi/2 pi/2 0]'; 0034 0035 %number of degrees of freedom 0036 robot.DOF = 6; 0037 0038 %rotational: R, translational: T 0039 robot.kind=['R' 'R' 'R' 'R' 'R' 'R']; 0040 0041 %Jacobian matrix 0042 robot.J=[]; 0043 0044 0045 %Function name to compute inverse kinematic 0046 % options(1)=1 elbow up solution 0047 % options(1)=-1 elbow down solution 0048 % options(2)=1 wrist up solution 0049 % options(2)=-1 wrist down solution 0050 robot.inversekinematic_fn = 'inversekinematic_pa_10_6DOF(robot, T)'; 0051 0052 0053 0054 %minimum and maximum rotation angle in rad 0055 robot.maxangle =[deg2rad(-177) deg2rad(177); %Axis 1, minimum, maximum 0056 deg2rad(-91) deg2rad(91); %Axis 2, minimum, maximum 0057 deg2rad(-137) deg2rad(137); %Axis 3 0058 deg2rad(-255) deg2rad(255); %Axis 4: Unlimited (400º default) 0059 deg2rad(-165) deg2rad(165); %Axis 5 0060 deg2rad(-360) deg2rad(360)]; %Axis 6: Unlimited (800º default) 0061 0062 %maximum absolute speed of each joint rad/s or m/s 0063 robot.velmax = [deg2rad(200); %Axis 1, rad/s 0064 deg2rad(200); %Axis 2, rad/s 0065 deg2rad(260); %Axis 3, rad/s 0066 deg2rad(360); %Axis 4, rad/s 0067 deg2rad(360); %Axis 5, rad/s 0068 deg2rad(450)];%Axis 6, rad/s 0069 % end effectors maximum velocity 0070 robot.linear_velmax = 2.5; %m/s 0071 robot.accelmax=robot.velmax/0.1; % 0.1 is here an acceleration time 0072 0073 %base reference system 0074 robot.T0 = eye(4); 0075 0076 %INITIALIZATION OF VARIABLES REQUIRED FOR THE SIMULATION 0077 %position, velocity and acceleration 0078 robot=init_sim_variables(robot); 0079 robot.path = pwd; 0080 0081 % GRAPHICS 0082 robot.graphical.has_graphics=1; 0083 robot.graphical.color = [25 20 40]; 0084 %for transparency 0085 robot.graphical.draw_transparent=0; 0086 %draw DH systems 0087 robot.graphical.draw_axes=1; 0088 %DH system length and Font size, standard is 1/10. Select 2/20, 3/30 for 0089 %bigger robots 0090 robot.graphical.axes_scale=1; 0091 %adjust for a default view of the robot 0092 robot.axis=[-1.5 1.5 -1.5 1.5 0 1.5]; 0093 %read graphics files 0094 robot = read_graphics(robot); 0095 0096 %DYNAMICS 0097 robot.has_dynamics=0;