Public Types | Public Member Functions | Static Public Attributes | Private Member Functions | Private Attributes | Friends
FRICheck Class Reference

#include <FRICheck.hh>

List of all members.

Public Types

enum  HandSide { NONE = 0, LEFT = 1, RIGHT = 2 }

Public Member Functions

void adjust (float *pos, float rate, float safety_factor)
 adjust desired position according to past commands.
 FRICheck ()
float * pos ()
 robot joint angles
void setHandLimits (double *j5_angles, double *j6_min, double *j6_max, int length)
 Set the array for hand limits testing.
bool setHandSide (HandSide side)
 convenience method to set the hand limit checking
void setPos (float *pos)
 set robot joint angles

Static Public Attributes

static double j5_angles_left [24] = {-130.0 DEG, -120.0 DEG, -100 DEG, -80 DEG, -60 DEG, -50 DEG, -40 DEG, -35 DEG, -30 DEG, -25 DEG, -20 DEG, -10 DEG, 0 DEG, 10 DEG, 20 DEG, 30 DEG, 40 DEG, 50 DEG, 60 DEG, 70 DEG, 80 DEG,100 DEG, 120 DEG, 130 DEG}
static double j5_angles_right [24] = {-130 DEG,-120 DEG, -100 DEG, -80 DEG, -60 DEG, -50 DEG, -40 DEG, -35 DEG, -30 DEG, -25 DEG, -20 DEG, -10 DEG, 0 DEG, 10 DEG, 20 DEG, 30 DEG, 40 DEG, 50 DEG, 60 DEG, 70 DEG, 80 DEG, 100 DEG, 120 DEG, 130 DEG}
static double j6_max_left [24] = {-2 DEG, 0 DEG, 0 DEG, 0 DEG, 0 DEG, 4 DEG, 20 DEG, 47 DEG, 65 DEG, 78 DEG, 90 DEG, 110 DEG, 170 DEG, 170 DEG, 170 DEG, 142 DEG, 140 DEG, 140 DEG, 134 DEG, 134 DEG, 138 DEG, 138 DEG, 125 DEG, 112 DEG}
static double j6_max_right [24] = { 90 DEG, 95 DEG, 84 DEG, 90 DEG, 96 DEG, 102 DEG, 123 DEG, 145 DEG, 156 DEG, 160 DEG, 170 DEG, 170 DEG, 170 DEG, 170 DEG, 170 DEG, 170 DEG, 170 DEG, 170 DEG, 170 DEG, 170 DEG, 170 DEG, 170 DEG, 170 DEG, 170 DEG}
static double j6_min_left [24] = {-170 DEG, -170 DEG, -170 DEG, -170 DEG, -170 DEG,-170 DEG,-170 DEG,-170 DEG,-170 DEG,-170 DEG,-170 DEG,-170 DEG,-170 DEG,-170 DEG,-170 DEG,-155 DEG,-122 DEG,-97 DEG,-90 DEG,-86 DEG,-82 DEG,-82 DEG,-82 DEG, -87 DEG}
static double j6_min_right [24] = {-115 DEG, -130 DEG, -138 DEG, -140 DEG, -140 DEG, -138 DEG, -132 DEG, -132 DEG, -135 DEG, -150 DEG, -165 DEG, -170 DEG, -170 DEG, -170 DEG, -170 DEG, -70 DEG, -27 DEG, -12 DEG, -5.5 DEG, -3 DEG, -4 DEG, -3 DEG, 0 DEG}
static const int length_left = 24
static const int length_right = 24
static const float lim_acc_ [7] = {1200 DEG, 1200 DEG, 1600 DEG, 1600 DEG, 2500 DEG, 4400 DEG, 4400 DEG}
static const float lim_high_ [7] = { 170 DEG, 120 DEG, 170 DEG, 120 DEG, 170 DEG, 120 DEG, 170 DEG}
static const float lim_low_ [7] = {-170 DEG, -120 DEG, -170 DEG, -120 DEG, -170 DEG, -120 DEG, -170 DEG}
static const float lim_vel_ [7] = {120 DEG, 120 DEG, 160 DEG, 160 DEG, 250 DEG, 220 DEG, 220 DEG}
static const float margin_ = 0.5 DEG

Private Member Functions

int find_index (float j5)
void hand_check (float vel[7], float vel_old[7], float pos[7], float rate)
double interpolate (double x, double x1, double y1, double x2, double y2)
double max_j6 (float j5, int index)
double min_j6 (float j5, int index)
void safety_check (float vel[7], float vel_old[7], float pos[7], float rate, float safety_factor)
double slope (double x1, double y1, double x2, double y2)
double slope_max_j6 (int index)
double slope_min_j6 (int index)

Private Attributes

int j56_length_
double * j5_angles_
double * j6_max_
double * j6_min_
float pos_ [7]
float vel_old_ [7]

Friends

class FRICheck_test

Detailed Description

Definition at line 4 of file FRICheck.hh.


Member Enumeration Documentation

Enumerator:
NONE 
LEFT 
RIGHT 

Definition at line 57 of file FRICheck.hh.


Constructor & Destructor Documentation

Definition at line 18 of file FRICheck.cc.


Member Function Documentation

void FRICheck::adjust ( float *  pos,
float  rate,
float  safety_factor 
)

adjust desired position according to past commands.

Definition at line 32 of file FRICheck.cc.

int FRICheck::find_index ( float  j5) [private]

Definition at line 87 of file FRICheck.cc.

void FRICheck::hand_check ( float  vel[7],
float  vel_old[7],
float  pos[7],
float  rate 
) [private]

Definition at line 138 of file FRICheck.cc.

double FRICheck::interpolate ( double  x,
double  x1,
double  y1,
double  x2,
double  y2 
) [private]

Definition at line 74 of file FRICheck.cc.

double FRICheck::max_j6 ( float  j5,
int  index 
) [private]

Definition at line 129 of file FRICheck.cc.

double FRICheck::min_j6 ( float  j5,
int  index 
) [private]

Definition at line 121 of file FRICheck.cc.

float* FRICheck::pos ( ) [inline]

robot joint angles

Definition at line 52 of file FRICheck.hh.

void FRICheck::safety_check ( float  vel[7],
float  vel_old[7],
float  pos[7],
float  rate,
float  safety_factor 
) [private]

Definition at line 190 of file FRICheck.cc.

void FRICheck::setHandLimits ( double *  j5_angles,
double *  j6_min,
double *  j6_max,
int  length 
)

Set the array for hand limits testing.

Definition at line 249 of file FRICheck.cc.

convenience method to set the hand limit checking

Definition at line 257 of file FRICheck.cc.

void FRICheck::setPos ( float *  pos)

set robot joint angles

Definition at line 26 of file FRICheck.cc.

double FRICheck::slope ( double  x1,
double  y1,
double  x2,
double  y2 
) [private]

Definition at line 82 of file FRICheck.cc.

double FRICheck::slope_max_j6 ( int  index) [private]

Definition at line 115 of file FRICheck.cc.

double FRICheck::slope_min_j6 ( int  index) [private]

Definition at line 110 of file FRICheck.cc.


Friends And Related Function Documentation

friend class FRICheck_test [friend]

Definition at line 47 of file FRICheck.hh.


Member Data Documentation

int FRICheck::j56_length_ [private]

Definition at line 33 of file FRICheck.hh.

double* FRICheck::j5_angles_ [private]

Definition at line 30 of file FRICheck.hh.

double FRICheck::j5_angles_left = {-130.0 DEG, -120.0 DEG, -100 DEG, -80 DEG, -60 DEG, -50 DEG, -40 DEG, -35 DEG, -30 DEG, -25 DEG, -20 DEG, -10 DEG, 0 DEG, 10 DEG, 20 DEG, 30 DEG, 40 DEG, 50 DEG, 60 DEG, 70 DEG, 80 DEG,100 DEG, 120 DEG, 130 DEG} [static]

Definition at line 16 of file FRICheck.hh.

double FRICheck::j5_angles_right = {-130 DEG,-120 DEG, -100 DEG, -80 DEG, -60 DEG, -50 DEG, -40 DEG, -35 DEG, -30 DEG, -25 DEG, -20 DEG, -10 DEG, 0 DEG, 10 DEG, 20 DEG, 30 DEG, 40 DEG, 50 DEG, 60 DEG, 70 DEG, 80 DEG, 100 DEG, 120 DEG, 130 DEG} [static]

Definition at line 21 of file FRICheck.hh.

double* FRICheck::j6_max_ [private]

Definition at line 32 of file FRICheck.hh.

double FRICheck::j6_max_left = {-2 DEG, 0 DEG, 0 DEG, 0 DEG, 0 DEG, 4 DEG, 20 DEG, 47 DEG, 65 DEG, 78 DEG, 90 DEG, 110 DEG, 170 DEG, 170 DEG, 170 DEG, 142 DEG, 140 DEG, 140 DEG, 134 DEG, 134 DEG, 138 DEG, 138 DEG, 125 DEG, 112 DEG} [static]

Definition at line 18 of file FRICheck.hh.

double FRICheck::j6_max_right = { 90 DEG, 95 DEG, 84 DEG, 90 DEG, 96 DEG, 102 DEG, 123 DEG, 145 DEG, 156 DEG, 160 DEG, 170 DEG, 170 DEG, 170 DEG, 170 DEG, 170 DEG, 170 DEG, 170 DEG, 170 DEG, 170 DEG, 170 DEG, 170 DEG, 170 DEG, 170 DEG, 170 DEG} [static]

Definition at line 22 of file FRICheck.hh.

double* FRICheck::j6_min_ [private]

Definition at line 31 of file FRICheck.hh.

double FRICheck::j6_min_left = {-170 DEG, -170 DEG, -170 DEG, -170 DEG, -170 DEG,-170 DEG,-170 DEG,-170 DEG,-170 DEG,-170 DEG,-170 DEG,-170 DEG,-170 DEG,-170 DEG,-170 DEG,-155 DEG,-122 DEG,-97 DEG,-90 DEG,-86 DEG,-82 DEG,-82 DEG,-82 DEG, -87 DEG} [static]

Definition at line 17 of file FRICheck.hh.

double FRICheck::j6_min_right = {-115 DEG, -130 DEG, -138 DEG, -140 DEG, -140 DEG, -138 DEG, -132 DEG, -132 DEG, -135 DEG, -150 DEG, -165 DEG, -170 DEG, -170 DEG, -170 DEG, -170 DEG, -70 DEG, -27 DEG, -12 DEG, -5.5 DEG, -3 DEG, -4 DEG, -3 DEG, 0 DEG} [static]

Definition at line 23 of file FRICheck.hh.

const int FRICheck::length_left = 24 [static]

Definition at line 19 of file FRICheck.hh.

const int FRICheck::length_right = 24 [static]

Definition at line 24 of file FRICheck.hh.

const float FRICheck::lim_acc_ = {1200 DEG, 1200 DEG, 1600 DEG, 1600 DEG, 2500 DEG, 4400 DEG, 4400 DEG} [static]

Definition at line 13 of file FRICheck.hh.

const float FRICheck::lim_high_ = { 170 DEG, 120 DEG, 170 DEG, 120 DEG, 170 DEG, 120 DEG, 170 DEG} [static]

Definition at line 11 of file FRICheck.hh.

const float FRICheck::lim_low_ = {-170 DEG, -120 DEG, -170 DEG, -120 DEG, -170 DEG, -120 DEG, -170 DEG} [static]

Definition at line 10 of file FRICheck.hh.

const float FRICheck::lim_vel_ = {120 DEG, 120 DEG, 160 DEG, 160 DEG, 250 DEG, 220 DEG, 220 DEG} [static]

Definition at line 12 of file FRICheck.hh.

const float FRICheck::margin_ = 0.5 DEG [static]

Definition at line 9 of file FRICheck.hh.

float FRICheck::pos_[7] [private]

Definition at line 28 of file FRICheck.hh.

float FRICheck::vel_old_[7] [private]

Definition at line 27 of file FRICheck.hh.


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


kuka_fri
Author(s): Ingo Kresse, Alexis Maldonado
autogenerated on Thu May 23 2013 05:28:18