Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | File List | Namespace Members | Class Members | File Members | Related Pages

GT2004Parameters Class Reference

Parameters for GT2004WalkingEngine. More...

#include <GT2004ParameterSet.h>

Inheritance diagram for GT2004Parameters:

Inheritance graph
[legend]
Collaboration diagram for GT2004Parameters:

Collaboration graph
[legend]
List of all members.

Public Types

enum  FootMode {
  rectangle = 0, halfCircle, circle,
  rounded, optimized, freeFormQuad,
  numOfFootModes
}

Public Member Functions

 GT2004Parameters (int index=-1, Pose2D requestedMotion=Pose2D(0, 0, 0), double foreHeight=0, double foreWidth=0, double foreCenterX=0, double hindHeight=0, double hindWidth=0, double hindCenterX=0, double foreFootLift=0, double hindFootLift=0, double foreFootTilt=0, double hindFootTilt=0, int stepLen=80, int footMode=(int) rectangle, double groundPhaseF=0.5, double liftPhaseF=0, double loweringPhaseF=0, double groundPhaseH=0.5, double liftPhaseH=0, double loweringPhaseH=0, double legPhase0=0, double legPhase1=0.5, double legPhase2=0.5, double legPhase3=0, long headTilt=jointDataInvalidValue, long headPan=jointDataInvalidValue, long headRoll=jointDataInvalidValue, long mouth=jointDataInvalidValue)
 Constructor.

 GT2004Parameters (const InvKinWalkingParameters &invKinParam)
 Constructor.

bool reportRealMotion (const Pose2D &real)
 report a measured (and may be averaged) speed of that walk parameters with this function.

virtual void getDimension (int &dim1, int &dim2)
virtual void getValue (int index1, int index2, double &min, double &max, double &value, ValueType &type)
virtual void setValue (int index1, int index2, double value)
void interpolate (GT2004Parameters &p1, GT2004Parameters &p2, double factor1)

Public Attributes

int index
 good parameters now, which index they have in a parametersSet

Pose2D requestedMotion
 these parameters are optimized for this requestedMotion

Pose2D correctedMotion
 these parameters use correctedMotion to get something like requestedMotion as result

double foreHeight
 fore walking height

double foreWidth
 fore walking width distance robot center to foot

double foreCenterX
 fore x-axis foot center position

double hindHeight
 hind walking height

double hindWidth
 hind walking width distance robot center to foot

double hindCenterX
 hind x-axis foot center position

double foreFootLift
 height of lifted fore foots

double hindFootLift
 height of lifted hind foots

double foreFootTilt
 tangens of tilt angle for fore foot movement

double hindFootTilt
 tangens of tilt angle for hind foot movement

int stepLen
 number of ticks for one complete step

FootMode footMode
 how to move the feet

double groundPhase [2]
 part of leg phase with foot on ground, front/hind legs

double legPhase [4]
 relative leg phases, time indexes for lifting each leg

double liftPhase [2]
 part of leg phase lifting foot, front/hind legs

double loweringPhase [2]
 part of leg phase lowering foot, front/hind legs

double bodyShiftX
 value for shifting body away from lifted legs in x direction (mm when leg fully lifted)

double bodyShiftY
 value for shifting body away from lifted legs in y direction (mm when leg fully lifted)

double bodyShiftOffset
 value by which the shift body motion is delayed (relative part of leg phase)

long headTilt
 joint angles for joints not used for walking these must be jointDataInvalidValue to enable head motion use these for special walks that use the head eg for grabbing the ball

long headPan
 joint angles for joints not used for walking these must be jointDataInvalidValue to enable head motion use these for special walks that use the head eg for grabbing the ball

long headRoll
 joint angles for joints not used for walking these must be jointDataInvalidValue to enable head motion use these for special walks that use the head eg for grabbing the ball

long mouth
 joint angles for joints not used for walking these must be jointDataInvalidValue to enable head motion use these for special walks that use the head eg for grabbing the ball


Detailed Description

Parameters for GT2004WalkingEngine.

Author:
Uwe Düffert

Definition at line 27 of file GT2004ParameterSet.h.


Member Enumeration Documentation

enum GT2004Parameters::FootMode
 

Enumeration values:
rectangle 
halfCircle 
circle 
rounded 
optimized 
freeFormQuad 
numOfFootModes 

Definition at line 50 of file GT2004ParameterSet.h.

Referenced by GT2004Parameters().


Constructor & Destructor Documentation

GT2004Parameters::GT2004Parameters int  index = -1,
Pose2D  requestedMotion = Pose2D(0,0,0),
double  foreHeight = 0,
double  foreWidth = 0,
double  foreCenterX = 0,
double  hindHeight = 0,
double  hindWidth = 0,
double  hindCenterX = 0,
double  foreFootLift = 0,
double  hindFootLift = 0,
double  foreFootTilt = 0,
double  hindFootTilt = 0,
int  stepLen = 80,
int  footMode = (int)rectangle,
double  groundPhaseF = 0.5,
double  liftPhaseF = 0,
double  loweringPhaseF = 0,
double  groundPhaseH = 0.5,
double  liftPhaseH = 0,
double  loweringPhaseH = 0,
double  legPhase0 = 0,
double  legPhase1 = 0.5,
double  legPhase2 = 0.5,
double  legPhase3 = 0,
long  headTilt = jointDataInvalidValue,
long  headPan = jointDataInvalidValue,
long  headRoll = jointDataInvalidValue,
long  mouth = jointDataInvalidValue
[inline]
 

Constructor.

Definition at line 82 of file GT2004ParameterSet.h.

References correctedMotion, FootMode, footMode, groundPhase, headRoll, legPhase, liftPhase, and loweringPhase.

GT2004Parameters::GT2004Parameters const InvKinWalkingParameters invKinParam  ) 
 

Constructor.

Definition at line 14 of file GT2004ParameterSet.cpp.

References correctedMotion, footMode, InvKinWalkingParameters::footMode, InvKinWalkingParameters::foreCenterX, foreCenterX, InvKinWalkingParameters::foreFootLift, foreFootLift, InvKinWalkingParameters::foreFootTilt, foreFootTilt, InvKinWalkingParameters::foreHeight, foreHeight, InvKinWalkingParameters::foreWidth, foreWidth, InvKinWalkingParameters::groundPhase, groundPhase, InvKinWalkingParameters::headPan, InvKinWalkingParameters::headRoll, headRoll, InvKinWalkingParameters::headTilt, InvKinWalkingParameters::hindCenterX, hindCenterX, InvKinWalkingParameters::hindFootLift, hindFootLift, InvKinWalkingParameters::hindFootTilt, hindFootTilt, InvKinWalkingParameters::hindHeight, hindHeight, InvKinWalkingParameters::hindWidth, hindWidth, InvKinWalkingParameters::legPhase, legPhase, InvKinWalkingParameters::liftPhase, liftPhase, InvKinWalkingParameters::loweringPhase, loweringPhase, InvKinWalkingParameters::maxStepSizeX, InvKinWalkingParameters::maxStepSizeY, InvKinWalkingParameters::mouth, requestedMotion, InvKinWalkingParameters::stepLen, and stepLen.


Member Function Documentation

bool GT2004Parameters::reportRealMotion const Pose2D real  ) 
 

report a measured (and may be averaged) speed of that walk parameters with this function.

It will modify correctedMotion accordingly if this seems to be usefull.

Parameters:
real measured motion speed in real life
Returns:
true if correctedMotion was successfully changed, otherwise its unlikely that requestedMotion is reachable with this params - you might want to evolve params or reduce requestedMotion

Definition at line 75 of file GT2004ParameterSet.cpp.

References correctedMotion, requestedMotion, Pose2D::rotation, Pose2D::translation, Vector2< double >::x, and Vector2< double >::y.

Referenced by GT2004BasicBehaviorSendCurrentGT2004ParametersAndChooseNext::execute().

virtual void GT2004Parameters::getDimension int &  dim1,
int &  dim2
[inline, virtual]
 

Implements Individual.

Definition at line 158 of file GT2004ParameterSet.h.

virtual void GT2004Parameters::getValue int  index1,
int  index2,
double &  min,
double &  max,
double &  value,
ValueType type
[inline, virtual]
 

Implements Individual.

Definition at line 164 of file GT2004ParameterSet.h.

References correctedMotion, groundPhase, legPhase, max, min, Pose2D::translation, Vector2< double >::x, and Vector2< double >::y.

virtual void GT2004Parameters::setValue int  index1,
int  index2,
double  value
[inline, virtual]
 

Implements Individual.

Definition at line 201 of file GT2004ParameterSet.h.

References correctedMotion, groundPhase, legPhase, Pose2D::translation, Vector2< double >::x, and Vector2< double >::y.

void GT2004Parameters::interpolate GT2004Parameters p1,
GT2004Parameters p2,
double  factor1
[inline]
 

Definition at line 242 of file GT2004ParameterSet.h.

References correctedMotion, footMode, foreCenterX, foreFootLift, foreFootTilt, foreHeight, foreWidth, groundPhase, headPan, headRoll, headTilt, hindCenterX, hindFootLift, hindFootTilt, hindHeight, hindWidth, interpolateInvalid, legPhase, liftPhase, loweringPhase, mouth, requestedMotion, Pose2D::rotation, stepLen, and Pose2D::translation.

Referenced by GT2004ParametersSet::calculateMergedParameterSet(), and GT2004WalkingEngine::nextParametersInterpolation().


Member Data Documentation

int GT2004Parameters::index
 

good parameters now, which index they have in a parametersSet

Definition at line 30 of file GT2004ParameterSet.h.

Referenced by GT2004WalkingEngine::executeParameterized(), GT2004BasicBehaviorEvolveOmniParameters::GT2004BasicBehaviorEvolveOmniParameters(), GT2004BehaviorControl::GT2004BehaviorControl(), GT2004ParametersSet::GT2004ParametersSet(), GT2004WalkingEngine::handleMessage(), GT2004BehaviorControl::handleMessage(), InvKinWalkingParameters::InvKinWalkingParameters(), GT2004ParametersSet::mirrorThis(), GT2004WalkingEngine::nextParametersInterpolation(), operator<<(), operator>>(), and GT2004WalkingEngine::setNextParameters().

Pose2D GT2004Parameters::requestedMotion
 

these parameters are optimized for this requestedMotion

Definition at line 31 of file GT2004ParameterSet.h.

Referenced by GT2004WalkingEngine::calculateLegSpeeds(), GT2004BasicBehaviorNextGT2004ParametersToBeMeasured::execute(), GT2004BasicBehaviorSendCurrentGT2004ParametersAndChooseNext::execute(), GT2004BehaviorControl::GT2004BehaviorControl(), GT2004Parameters(), GT2004ParametersSet::GT2004ParametersSet(), GT2004BehaviorControl::handleMessage(), interpolate(), GT2004ParametersSet::mirrorThis(), operator<<(), operator>>(), and reportRealMotion().

Pose2D GT2004Parameters::correctedMotion
 

these parameters use correctedMotion to get something like requestedMotion as result

Definition at line 32 of file GT2004ParameterSet.h.

Referenced by GT2004WalkingEngine::calculateLegSpeeds(), GT2004BasicBehaviorSendCurrentGT2004ParametersAndChooseNext::execute(), GT2004BasicBehaviorMeasureGT2004ParametersBlind::execute(), GT2004BasicBehaviorMeasureGT2004Parameters::execute(), getValue(), GT2004Parameters(), GT2004ParametersSet::GT2004ParametersSet(), interpolate(), InvKinWalkingParameters::InvKinWalkingParameters(), GT2004ParametersSet::mirrorThis(), operator<<(), operator>>(), reportRealMotion(), and setValue().

double GT2004Parameters::foreHeight
 

fore walking height

Definition at line 34 of file GT2004ParameterSet.h.

Referenced by GT2004WalkingEngine::calculateFootPositions(), GT2004WalkingEngine::calculateParams(), GT2004Parameters(), interpolate(), InvKinWalkingParameters::InvKinWalkingParameters(), operator<<(), and operator>>().

double GT2004Parameters::foreWidth
 

fore walking width distance robot center to foot

Definition at line 35 of file GT2004ParameterSet.h.

Referenced by GT2004WalkingEngine::calculateFootPositions(), GT2004WalkingEngine::calculateLegSpeeds(), GT2004Parameters(), interpolate(), InvKinWalkingParameters::InvKinWalkingParameters(), operator<<(), and operator>>().

double GT2004Parameters::foreCenterX
 

fore x-axis foot center position

Definition at line 36 of file GT2004ParameterSet.h.

Referenced by GT2004WalkingEngine::calculateFootPositions(), GT2004WalkingEngine::calculateLegSpeeds(), GT2004Parameters(), interpolate(), InvKinWalkingParameters::InvKinWalkingParameters(), operator<<(), and operator>>().

double GT2004Parameters::hindHeight
 

hind walking height

Definition at line 38 of file GT2004ParameterSet.h.

Referenced by GT2004WalkingEngine::calculateFootPositions(), GT2004WalkingEngine::calculateParams(), GT2004Parameters(), interpolate(), InvKinWalkingParameters::InvKinWalkingParameters(), operator<<(), and operator>>().

double GT2004Parameters::hindWidth
 

hind walking width distance robot center to foot

Definition at line 39 of file GT2004ParameterSet.h.

Referenced by GT2004WalkingEngine::calculateFootPositions(), GT2004WalkingEngine::calculateLegSpeeds(), GT2004Parameters(), interpolate(), InvKinWalkingParameters::InvKinWalkingParameters(), operator<<(), and operator>>().

double GT2004Parameters::hindCenterX
 

hind x-axis foot center position

Definition at line 40 of file GT2004ParameterSet.h.

Referenced by GT2004WalkingEngine::calculateFootPositions(), GT2004WalkingEngine::calculateLegSpeeds(), GT2004Parameters(), interpolate(), InvKinWalkingParameters::InvKinWalkingParameters(), operator<<(), and operator>>().

double GT2004Parameters::foreFootLift
 

height of lifted fore foots

Definition at line 42 of file GT2004ParameterSet.h.

Referenced by GT2004WalkingEngine::calculateFootPositions(), GT2004Parameters(), interpolate(), InvKinWalkingParameters::InvKinWalkingParameters(), operator<<(), and operator>>().

double GT2004Parameters::hindFootLift
 

height of lifted hind foots

Definition at line 43 of file GT2004ParameterSet.h.

Referenced by GT2004WalkingEngine::calculateFootPositions(), GT2004Parameters(), interpolate(), InvKinWalkingParameters::InvKinWalkingParameters(), operator<<(), and operator>>().

double GT2004Parameters::foreFootTilt
 

tangens of tilt angle for fore foot movement

Definition at line 45 of file GT2004ParameterSet.h.

Referenced by GT2004WalkingEngine::calculateFootPositions(), GT2004Parameters(), interpolate(), InvKinWalkingParameters::InvKinWalkingParameters(), operator<<(), and operator>>().

double GT2004Parameters::hindFootTilt
 

tangens of tilt angle for hind foot movement

Definition at line 46 of file GT2004ParameterSet.h.

Referenced by GT2004WalkingEngine::calculateFootPositions(), GT2004Parameters(), interpolate(), InvKinWalkingParameters::InvKinWalkingParameters(), operator<<(), and operator>>().

int GT2004Parameters::stepLen
 

number of ticks for one complete step

Definition at line 48 of file GT2004ParameterSet.h.

Referenced by GT2004WalkingEngine::calculateFootPositions(), GT2004WalkingEngine::calculateLegSpeeds(), GT2004WalkingEngine::calculateParams(), GT2004WalkingEngine::calculateRelativeFootPosition(), GT2004Parameters(), interpolate(), InvKinWalkingParameters::InvKinWalkingParameters(), GT2004WalkingEngine::nextParametersInterpolation(), operator<<(), and operator>>().

FootMode GT2004Parameters::footMode
 

how to move the feet

Definition at line 60 of file GT2004ParameterSet.h.

Referenced by GT2004WalkingEngine::calculateRelativeFootPosition(), GT2004Parameters(), interpolate(), InvKinWalkingParameters::InvKinWalkingParameters(), operator<<(), and operator>>().

double GT2004Parameters::groundPhase[2]
 

part of leg phase with foot on ground, front/hind legs

Definition at line 61 of file GT2004ParameterSet.h.

Referenced by GT2004WalkingEngine::calculateParams(), getValue(), GT2004Parameters(), interpolate(), InvKinWalkingParameters::InvKinWalkingParameters(), operator<<(), operator>>(), and setValue().

double GT2004Parameters::legPhase[4]
 

relative leg phases, time indexes for lifting each leg

Definition at line 62 of file GT2004ParameterSet.h.

Referenced by GT2004WalkingEngine::calculateParams(), getValue(), GT2004Parameters(), interpolate(), InvKinWalkingParameters::InvKinWalkingParameters(), operator<<(), operator>>(), and setValue().

double GT2004Parameters::liftPhase[2]
 

part of leg phase lifting foot, front/hind legs

Definition at line 64 of file GT2004ParameterSet.h.

Referenced by GT2004WalkingEngine::calculateParams(), GT2004Parameters(), interpolate(), InvKinWalkingParameters::InvKinWalkingParameters(), operator<<(), and operator>>().

double GT2004Parameters::loweringPhase[2]
 

part of leg phase lowering foot, front/hind legs

Definition at line 65 of file GT2004ParameterSet.h.

Referenced by GT2004WalkingEngine::calculateParams(), GT2004Parameters(), interpolate(), InvKinWalkingParameters::InvKinWalkingParameters(), operator<<(), and operator>>().

double GT2004Parameters::bodyShiftX
 

value for shifting body away from lifted legs in x direction (mm when leg fully lifted)

Definition at line 66 of file GT2004ParameterSet.h.

double GT2004Parameters::bodyShiftY
 

value for shifting body away from lifted legs in y direction (mm when leg fully lifted)

Definition at line 67 of file GT2004ParameterSet.h.

double GT2004Parameters::bodyShiftOffset
 

value by which the shift body motion is delayed (relative part of leg phase)

Definition at line 68 of file GT2004ParameterSet.h.

long GT2004Parameters::headTilt
 

joint angles for joints not used for walking these must be jointDataInvalidValue to enable head motion use these for special walks that use the head eg for grabbing the ball

Definition at line 79 of file GT2004ParameterSet.h.

Referenced by GT2004WalkingEngine::calculateData(), interpolate(), and InvKinWalkingParameters::InvKinWalkingParameters().

long GT2004Parameters::headPan
 

joint angles for joints not used for walking these must be jointDataInvalidValue to enable head motion use these for special walks that use the head eg for grabbing the ball

Definition at line 79 of file GT2004ParameterSet.h.

Referenced by GT2004WalkingEngine::calculateData(), interpolate(), and InvKinWalkingParameters::InvKinWalkingParameters().

long GT2004Parameters::headRoll
 

joint angles for joints not used for walking these must be jointDataInvalidValue to enable head motion use these for special walks that use the head eg for grabbing the ball

Definition at line 79 of file GT2004ParameterSet.h.

Referenced by GT2004WalkingEngine::calculateData(), GT2004Parameters(), interpolate(), and InvKinWalkingParameters::InvKinWalkingParameters().

long GT2004Parameters::mouth
 

joint angles for joints not used for walking these must be jointDataInvalidValue to enable head motion use these for special walks that use the head eg for grabbing the ball

Definition at line 79 of file GT2004ParameterSet.h.

Referenced by GT2004WalkingEngine::calculateData(), interpolate(), and InvKinWalkingParameters::InvKinWalkingParameters().


The documentation for this class was generated from the following files:
Generated on Thu Sep 23 20:07:46 2004 for GT2004 by doxygen 1.3.6