%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% PARAMETERS Returns a data structure containing the parameters of the example 5R parallel mechanism Author: Arturo Gil. Universidad Miguel Hernández de Elche. email: arturo.gil@umh.es date: 05/03/2012 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
0001 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 0002 % PARAMETERS Returns a data structure containing the parameters of the 0003 % example 5R parallel mechanism 0004 % 0005 % Author: Arturo Gil. Universidad Miguel Hernández de Elche. 0006 % email: arturo.gil@umh.es date: 05/03/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 %global robot 0027 0028 0029 %For this special case, the mechanism is divided into two different serial 0030 %arms, Namely 2 two dof planar arms. 0031 %Thus, the robot structure contains two different arms named robot1 and 0032 %robot2 0033 robot1=load_robot('example','2dofplanar'); 0034 robot2=load_robot('example','2dofplanar'); 0035 0036 robot=[]; 0037 robot.name='Example 5R parallel'; 0038 robot.robot1=robot1; 0039 robot.robot2=robot2; 0040 robot.nserial=2; %number of serial links connecting base and end effector 0041 0042 %displacement along x of the second arm 0043 robot.L=2.5; %m%this value can be edited 0044 0045 T=eye(4); 0046 T(1,4)=robot.L; 0047 robot.robot2.T0=T; 0048 0049 %yes, consider it as a special case 0050 %treated separately in the plotting tools 0051 robot.parallel=1; 0052 0053 %this considers the 4 rotational joints and misses the rotational joint 0054 %that connects both 2dof arms 0055 robot.DOF=4; 0056 0057 robot.axis=[-1.2 4.2 -2.2 2.2 0 2.2] 0058 0059 robot.debug=1; 0060 0061 %Function name to compute inverse kinematic 0062 robot.inversekinematic_fn = 'inversekinematic_5R(robot, T)'; 0063 robot.directkinematic_fn = 'directkinematic_5R(robot, q)'; 0064 0065 robot.q=zeros(1, robot.DOF); 0066