00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022 #include <chain.hpp>
00023 #include "models.hpp"
00024
00025 namespace KDL{
00026 Chain Puma560(){
00027 Chain puma560;
00028 puma560.addSegment(Segment());
00029 puma560.addSegment(Segment(Joint(Joint::RotZ),
00030 Frame::DH(0.0,M_PI_2,0.0,0.0),
00031 RigidBodyInertia(0,Vector::Zero(),RotationalInertia(0,0.35,0,0,0,0))));
00032 puma560.addSegment(Segment(Joint(Joint::RotZ),
00033 Frame::DH(0.4318,0.0,0.0,0.0),
00034 RigidBodyInertia(17.4,Vector(-.3638,.006,.2275),RotationalInertia(0.13,0.524,0.539,0,0,0))));
00035 puma560.addSegment(Segment());
00036 puma560.addSegment(Segment(Joint(Joint::RotZ),
00037 Frame::DH(0.0203,-M_PI_2,0.15005,0.0),
00038 RigidBodyInertia(4.8,Vector(-.0203,-.0141,.070),RotationalInertia(0.066,0.086,0.0125,0,0,0))));
00039 puma560.addSegment(Segment(Joint(Joint::RotZ),
00040 Frame::DH(0.0,M_PI_2,0.4318,0.0),
00041 RigidBodyInertia(0.82,Vector(0,.019,0),RotationalInertia(1.8e-3,1.3e-3,1.8e-3,0,0,0))));
00042 puma560.addSegment(Segment());
00043 puma560.addSegment(Segment());
00044 puma560.addSegment(Segment(Joint(Joint::RotZ),
00045 Frame::DH(0.0,-M_PI_2,0.0,0.0),
00046 RigidBodyInertia(0.34,Vector::Zero(),RotationalInertia(.3e-3,.4e-3,.3e-3,0,0,0))));
00047 puma560.addSegment(Segment(Joint(Joint::RotZ),
00048 Frame::DH(0.0,0.0,0.0,0.0),
00049 RigidBodyInertia(0.09,Vector(0,0,.032),RotationalInertia(.15e-3,0.15e-3,.04e-3,0,0,0))));
00050 puma560.addSegment(Segment());
00051 return puma560;
00052 }
00053
00054 }