All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Defines
Classes | Public Member Functions | Private Types | Private Member Functions | Private Attributes | Static Private Attributes
KNI::KatanaKinematics6M180 Class Reference

#include <KatanaKinematics6M180.h>

Inheritance diagram for KNI::KatanaKinematics6M180:
Inheritance graph
[legend]

List of all members.

Classes

struct  angles_calc
struct  position

Public Member Functions

void DK (coordinates &solution, encoders const &current_encoders) const
void IK (encoders::iterator solution, coordinates const &pose, encoders const &cur_angles) const
void init (metrics const &length, parameter_container const &parameters)

Private Types

typedef std::vector< angles_calcangles_container

Private Member Functions

void _setLength (metrics const &length)
void _setParameters (parameter_container const &parameters)
bool angledef (angles_calc &a) const
bool AnglePositionTest (const angles_calc &a) const
void IK_b1b2costh3_6M180 (angles_calc &a, const position &p) const
bool PositionTest6M180 (const angles_calc &a, const position &p) const
void thetacomp (angles_calc &a, const position &p_m) const

Private Attributes

metrics _length
parameter_container _parameters

Static Private Attributes

static const int _nrOfPossibleSolutions = 8
static const double _tolerance = 0.001

Detailed Description

Author:
Tiziano Mueller <tiziano.mueller@neuronics.ch>
Christoph Voser <christoph.voser@neuronics.ch>

Definition at line 40 of file KatanaKinematics6M180.h.


Member Typedef Documentation

Definition at line 71 of file KatanaKinematics6M180.h.


Member Function Documentation

void KNI::KatanaKinematics6M180::_setLength ( metrics const &  length) [inline, private]

Definition at line 79 of file KatanaKinematics6M180.h.

void KNI::KatanaKinematics6M180::_setParameters ( parameter_container const &  parameters) [inline, private]

Definition at line 80 of file KatanaKinematics6M180.h.

Definition at line 142 of file KatanaKinematics6M180.cpp.

Definition at line 166 of file KatanaKinematics6M180.cpp.

void KNI::KatanaKinematics6M180::DK ( coordinates solution,
encoders const &  current_encoders 
) const [virtual]

Direct Kinematic. Calculates the actual position in cartesian coordinates using the given encoders

Parameters:
solutionThis is where the algorithm will store the solution to (in cartesian coordinates)
current_encodersThe encoder values which are being used for the calculation
Note:
strong guarantee provided

Implements KNI::KatanaKinematics.

Definition at line 31 of file KatanaKinematics6M180.cpp.

void KNI::KatanaKinematics6M180::IK ( encoders::iterator  solution,
coordinates const &  pose,
encoders const &  cur_angles 
) const [virtual]

Inverse Kinematic. Calculates one set of encoders (=one solution) for the given cartesian coordinates. You also have to provide the current encoders to allow the algorithm to choose between different valid solutions.

Parameters:
solutionThis is where the algorithm will store the solution to (in encoders)
poseThe target position in cartesian coordinates plus the euler angles for the direction of the gripper
cur_anglesThe current angles (in encoders) of the robot
Note:
strong guarantee provided

Implements KNI::KatanaKinematics.

Definition at line 190 of file KatanaKinematics6M180.cpp.

void KNI::KatanaKinematics6M180::IK_b1b2costh3_6M180 ( angles_calc a,
const position p 
) const [private]

Definition at line 100 of file KatanaKinematics6M180.cpp.

void KNI::KatanaKinematics6M180::init ( metrics const &  length,
parameter_container const &  parameters 
) [virtual]

Initialize the parameters for the calculations. This is needed to validate the calculated angles and to choose an appropriate solution You have to provide 5 or 6 length's and parameters, depending on you robot type

Implements KNI::KatanaKinematics.

Definition at line 92 of file KatanaKinematics6M180.cpp.

bool KNI::KatanaKinematics6M180::PositionTest6M180 ( const angles_calc a,
const position p 
) const [private]

Definition at line 126 of file KatanaKinematics6M180.cpp.

void KNI::KatanaKinematics6M180::thetacomp ( angles_calc a,
const position p_m 
) const [private]

Definition at line 112 of file KatanaKinematics6M180.cpp.


Member Data Documentation

Definition at line 73 of file KatanaKinematics6M180.h.

const int KNI::KatanaKinematics6M180::_nrOfPossibleSolutions = 8 [static, private]

Definition at line 77 of file KatanaKinematics6M180.h.

Definition at line 74 of file KatanaKinematics6M180.h.

const double KNI::KatanaKinematics6M180::_tolerance = 0.001 [static, private]

Definition at line 76 of file KatanaKinematics6M180.h.


The documentation for this class was generated from the following files:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Defines


kni
Author(s): Neuronics AG (see AUTHORS.txt); ROS wrapper by Martin Günther
autogenerated on Tue May 28 2013 14:52:56