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 }